Tło na walecie
„Jest uniwersalny dla wszystkich marek telefonów, więc musi mieć nazwę”, w rzeczywistości tak nie jest. Przez lata istniało wiele telefonów wykorzystujących różne złącza. „Standardowa” technologia nie jest formalnym standardem, takim jak to, co uważa się za jakikolwiek ze standardów IEEE. Przemysł z czasem ewoluował, aby używać tego, co wszyscy znamy jako gniazdo audio.
Typowe gniazdo tylko audio ma 3 dzwonki, zwykle nazywane Tip, Ring, Sleeve (TRS). Zazwyczaj są mapowane na Lewo, Prawo i Ląd. Producenci telefonów chcieli, aby to gniazdo działało z istniejącymi słuchawkami, dlatego używali złącza z 4 pierścieniami, zwanego Tip, Ring, Ring, Sleeve (TRRS). Są one odwzorowane na lewy, prawy i uziemienie, podobnie jak 3 pierścienie, ale końcowe złącze mapowane jest na mikrofon. To sprawia, że jeśli podłączysz do niego kabel audio, wejście mikrofonu zostanie podłączone do ziemi, więc nic nie zostanie zranione. Oznacza to również, że jeśli zestaw słuchawkowy z mikrofonem jest podłączony do urządzenia audio, mikrofon jest podłączony do uziemienia, również nie raniąc niczego. Istnieją podobne złącza w 2,5 mm (używane w niektórych telefonach, aby zaoszczędzić miejsce), 3,5 mm (dla telefonów, odtwarzacza mp3 itp.) I .25 "(dla większych słuchawek, gitar itp.).
Dane na temat Jacka
O ile „dane” przez to przechodzą, są one czysto analogowe. Niektóre osoby ponownie wykorzystały te kable do przesyłania danych szeregowych, ale są one bardzo specyficzne dla aplikacji. W przypadku urządzeń wykorzystujących gniazdo do innych celów mogą robić, co chcą, o ile sygnał na linii jest ograniczony pasmem, co oznacza, że nie są używane wysokie częstotliwości. Powodem tego jest to, że na wejściu znajduje się filtr blokujący zbyt wysokie częstotliwości. Ta częstotliwość zmienia się w zależności od samego urządzenia, ale zwykle wynosi około 12 KHz.
Metoda, za pomocą której ludzie przesyłają dane, jest zwykle bardzo podobna do działania modemów linii telefonicznej. Ogólna koncepcja polega na tym, że istnieje mapowanie między przesyłanymi częstotliwościami a danymi szeregowymi. Jeśli chcesz odtworzyć system, musisz nagrać linię i sprawdzić, jakie są częstotliwości. Trudność polega na ustaleniu, co mają znaczyć uzyskane dane.
Dwukierunkowa komunikacja
Chciałbym również zauważyć, że komunikacja dwukierunkowa jest możliwa w tych systemach. Linia mikrofonu służy do wysyłania informacji do telefonu, a linie wyjścia audio służą do wysyłania informacji z powrotem do urządzenia zewnętrznego. Jeśli próbujesz dokonać inżynierii wstecznej urządzenia, możesz spojrzeć na Mikrofon, Lewo i Prawo, aby sprawdzić, czy istnieje jakakolwiek komunikacja dwukierunkowa.
Inżynieria odwrotna
Wspomniałem, że inżynieria odwrotna będzie trudna. Oto metoda, którą bym to zrobił:
- Sprawdź, które wiersze zawierają dane. Do przechwytywania danych możesz użyć gniazda audio komputera. To będzie prawdopodobnie najłatwiejsza metoda na sprawdzenie danych.
- Określ szybkość symbolu. Zasadniczo, patrząc na przechwycone dane, powinieneś zobaczyć bardzo konkretne punkty, które zmieniają częstotliwości.
- Sprawdź, czy używane są dyskretne częstotliwości i ile jest używanych jednocześnie. Na przykład może być 6 KHz, 8 KHz, 10 KHz i 12 KHz. Mogą one zostać zmapowane do 4 bitów na symbol. Więc jeśli zobaczysz 6 i 8 na raz, może to oznaczać 1100 (a może 0011). Spójrz na następny symbol, a może to być 6, 8 i 12 i może oznaczać 1101. Oczywiście, jeśli jest to niestandardowy protokół, może naprawdę oznaczać wszystko, co chcą. Ale to przynajmniej da ci początek.
- Zakładając, że zebrałeś dane na karcie, dla której znasz dane, możesz szukać wzorców. Oto informacje zawarte na kartach. Możesz zrobić takie rzeczy, jak jeśli twoja karta ma krótką sekwencję, która się powtarza, sprawdź, czy twoje symbole mają podobny powtarzalny wzór. Kiedy już wypracujesz niektóre z tych wzorców, powinieneś być w stanie wykonać porównanie 1 do 1 dla pozostałych liczb, w końcu powinieneś być w stanie uzyskać całkiem niezły pomysł na to, co jest wysyłane.
Mogą zostać wysłane pewne dane, które nie mają nic wspólnego z kartą i możesz nigdy nie wiedzieć, co to znaczy, ale dopóki znasz pozycję danych, na których Ci zależy, to wszystko, czego potrzebujesz. Musisz tylko mieć nadzieję, że producent sprzętu nie wprowadził żadnych środków zapobiegających hakowaniu lub ponownego wykorzystywania. Potencjalnie projektant mógł użyć komunikacji dwukierunkowej w celu zapewnienia szyfrowania. Możliwe jest również, że po prostu pomieszają wszystkie dane, więc trudno jest ustalić, co jest. Powiedziałbym, że jest mało prawdopodobne, aby zrobili coś takiego.