JTAG steht für Joint Test Action Group, die Gruppe, die den Standard Ende der 1980er-Jahre entwickelt hat. Über wenige Kontakte auf der Platine kann ein Gerät mit den Chips sprechen, ohne dass das Betriebssystem läuft. Hersteller testen so in der Fertigung, ob alle Lötverbindungen stimmen. Entwickler suchen damit Fehler in der Software, und Datenretter lesen Speicher aus.
Wie JTAG funktioniert
Auf der Platine sitzen kleine Kontaktflächen, die Testpunkte. An diese werden feine Drähte gelötet oder Prüfspitzen angesetzt. Ein JTAG-Adapter am Computer sendet Befehle an den Prozessor. So lassen sich Register lesen, der Speicher ansprechen und einzelne Pins schalten. Ursprünglich war das vor allem für den sogenannten Boundary Scan gedacht: Der Hersteller prüft, ob alle Pins eines Chips richtig verlötet sind, ohne jede Verbindung einzeln zu messen.
Wo JTAG heute eine Rolle spielt
| Bereich | Beispiel |
|---|---|
| Fertigung | Prüfung der Lötverbindungen nach dem Bestücken |
| Entwicklung | Fehlersuche in Firmware |
| Reparatur | Neu-Programmieren von Chips bei manchen Geräten |
| Datenrettung und Forensik | Auslesen von Speicher bei älteren oder unverschlüsselten Geräten |
Grenzen bei modernen Geräten
Bei aktuellen Smartphones ist JTAG in der Regel ab Werk gesperrt oder stark eingeschränkt. Hersteller deaktivieren die Schnittstelle, damit niemand darüber Sicherheitsfunktionen umgehen kann. Hinzu kommt die Verschlüsselung: Selbst wenn der Speicher ausgelesen wird, sind die Daten ohne den Schlüssel im Prozessor nicht lesbar. Ähnlich wie bei Chip-Off ist JTAG deshalb vor allem bei älteren Geräten und einfacheren Elektronikbauteilen relevant.
Für dich wichtig
Wenn ein modernes Handy nicht mehr startet und Daten gerettet werden sollen, ist die Reparatur der Platine meist der bessere Weg als ein direktes Auslesen. So kannst du das Gerät danach mit deinem Code entsperren und sichern.
JTAG in der Praxis
Für eine JTAG-Verbindung werden auf der Platine feine Drähte an die Testpunkte gelötet, oft mit einem Durchmesser von nur Bruchteilen eines Millimeters. Dafür braucht es ein Mikroskop, eine ruhige Hand und Erfahrung im Mikrolöten. Anschließend erkennt eine Software, welcher Chip vorhanden ist, und spricht ihn an. Bei älteren Android-Handys und manchen Routern oder Konsolen war das ein bewährter Weg, einen beschädigten Bootloader neu zu schreiben.
Für dich als Kunden spielt JTAG meist keine direkte Rolle. Es ist eines von vielen Werkzeugen, die in Entwicklung und Spezialreparaturen zum Einsatz kommen.
Woher JTAG kommt
JTAG steht für Joint Test Action Group, eine Gruppe von Elektronikherstellern, die in den 1980er-Jahren ein Problem lösen wollte. Platinen wurden immer dichter bestückt, und Bauteile mit Anschlüssen unter dem Gehäuse ließen sich nicht mehr mit Messspitzen prüfen. Die Gruppe entwickelte deshalb eine Schnittstelle, über die sich Chips von innen heraus testen lassen.
1990 wurde das Verfahren als Norm IEEE 1149.1 veröffentlicht. Seitdem ist JTAG in sehr vielen Chips eingebaut, von Mikrocontrollern über Prozessoren bis zu programmierbaren Logikbausteinen. Ursprünglich war es nur für den Test in der Fertigung gedacht, wurde dann aber schnell auch für die Fehlersuche in der Entwicklung und das Programmieren von Chips genutzt.
Der Name JTAG hat sich so stark durchgesetzt, dass er heute für die Schnittstelle selbst steht und nicht mehr für die Gruppe, die sie entwickelt hat.
Die Signale der JTAG-Schnittstelle
| Signal | Bedeutung | Aufgabe |
|---|---|---|
| TCK | Test Clock | Taktsignal für die Übertragung |
| TMS | Test Mode Select | Steuert den Zustand der Schnittstelle |
| TDI | Test Data In | Daten in den Chip |
| TDO | Test Data Out | Daten aus dem Chip |
| TRST | Test Reset | Optionaler Reset der Schnittstelle |
Diese wenigen Leitungen reichen, um tief in einen Chip hineinzuschauen. Mehrere Chips können hintereinander geschaltet werden, sodass eine einzige Schnittstelle viele Bausteine auf einer Platine erreicht. Man spricht dann von einer Kette.
Auf vielen Platinen sind die JTAG-Signale über kleine Testpunkte oder Stiftleisten zugänglich. Bei Smartphones sind sie oft nur winzige Kupferflächen ohne Beschriftung. Wer sie nutzen will, muss sie erst anhand von Schaltplänen oder durch Messungen finden.
Neben dem klassischen JTAG mit vier oder fünf Leitungen gibt es sparsamere Varianten. Bei Prozessoren mit Arm-Architektur ist zum Beispiel Serial Wire Debug verbreitet, das mit nur zwei Leitungen auskommt. Das spart Platz auf der Platine und Anschlüsse am Chip.
Boundary Scan: Platinen von innen prüfen
Die ursprüngliche Aufgabe von JTAG heißt Boundary Scan. Dabei werden die Anschlüsse eines Chips über JTAG gesteuert und abgefragt. Ein Chip kann so an einem Anschluss ein Signal ausgeben, und ein anderer Chip prüft, ob es an seinem Anschluss ankommt. So lässt sich feststellen, ob die Leiterbahn dazwischen und die Lötstellen in Ordnung sind.
Das ist besonders bei BGA-Chips wertvoll, deren Lötkugeln unter dem Gehäuse verborgen sind. Mit Boundary Scan wird geprüft, ob jede Kugel richtig verlötet ist, ohne dass ein Röntgengerät nötig ist. In der Fertigung ist das ein Standardverfahren.
Lötstellen prüfen
Auch unter BGA-Chips.
Leiterbahnen testen
Unterbrechungen und Kurzschlüsse finden.
Bauteile identifizieren
Chips melden ihre Kennung.
JTAG in Datenrettung und Forensik
Lange Zeit war JTAG ein wichtiges Werkzeug, um Daten von beschädigten Smartphones zu retten. Bei älteren Android-Geräten ließ sich über die JTAG-Schnittstelle des Prozessors der gesamte Speicher auslesen, auch wenn das Gerät nicht mehr startete. Ermittlungsbehörden nutzten das Verfahren für die Auswertung von Geräten.
Mit der Einführung der Verschlüsselung hat sich das geändert. Ein ausgelesener Speicher ist heute bei modernen Geräten nutzlos, weil die Daten verschlüsselt sind und der Schlüssel im Prozessor oder in einem Sicherheitsbereich steckt. Ohne den Gerätecode und den passenden Prozessor lassen sich die Daten nicht entschlüsseln.
Hinzu kommt, dass Hersteller die JTAG-Schnittstelle in Seriengeräten oft deaktivieren. Bei der Produktion wird eine Art Sicherung im Chip durchgebrannt, die den Zugang dauerhaft sperrt. So wird verhindert, dass Angreifer über JTAG an Daten oder Schlüssel kommen.
Für Hersteller ist diese Sperre ein wichtiger Baustein der Gerätesicherheit. Ein Angreifer mit physischem Zugriff auf das Gerät soll keine Möglichkeit haben, den Prozessor anzuhalten und Schlüssel aus dem Speicher zu lesen.
ISP als Weiterentwicklung
Neben JTAG nutzen Datenretter und Werkstätten bei Android-Geräten oft ISP, In-System Programming. Dabei wird der Speicherchip direkt auf der Platine über seine eigenen Datenleitungen angesprochen, ohne den Prozessor. Das ist oft schneller als JTAG und funktioniert auch, wenn der Prozessor beschädigt ist.
Auch hier gilt aber: Bei verschlüsselten Geräten bringt das Auslesen des Speichers allein wenig. ISP ist vor allem bei älteren oder unverschlüsselten Geräten sinnvoll oder um beschädigte Firmware neu aufzuspielen, damit das Gerät wieder startet. Danach kann das Gerät mit dem eigenen Code entsperrt werden.
Was das für dich bedeutet
Für dich als Nutzer ist JTAG ein Werkzeug, das du nie direkt siehst. Es zeigt aber, wie sich Datenrettung verändert hat. Früher ließen sich Daten oft auch von schwer beschädigten Geräten auslesen. Heute ist bei modernen Smartphones meist entscheidend, dass das Gerät selbst wieder startet.
Deshalb setzen wir bei der Datenrettung vor allem auf die Reparatur der Platine. Wenn Prozessor und Speicher wieder zusammenarbeiten und du deinen Code eingibst, sind die Daten zugänglich. Ein regelmäßiges Backup bleibt aber der zuverlässigste Schutz.
JTAG in der Entwicklung
Für Entwickler von Elektronik ist JTAG ein unverzichtbares Werkzeug. Über die Schnittstelle lässt sich ein Prozessor anhalten, Schritt für Schritt durch ein Programm führen und der Inhalt von Registern und Speicher auslesen. So finden Entwickler Fehler in der Firmware, die sonst kaum zu entdecken wären.
Auch das erstmalige Programmieren eines Chips läuft oft über JTAG. Ein leerer Mikrocontroller in einem Haushaltsgerät oder ein Netzwerkchip in einem Router bekommt seine Firmware in der Fertigung häufig über diese Schnittstelle. Bei manchen Geräten nutzen Bastler JTAG, um defekte Router oder andere Elektronik nach einem fehlgeschlagenen Update wiederzubeleben.
Für diese Arbeiten gibt es spezielle Adapter, die den Computer mit der JTAG-Schnittstelle verbinden. Die Software dafür ist oft herstellerspezifisch, es gibt aber auch offene Lösungen, die viele Chips unterstützen.
JTAG bei anderen Geräten
Außerhalb von Smartphones ist JTAG weiterhin weit verbreitet. In Routern, Spielkonsolen, Industriesteuerungen und Fahrzeugsteuergeräten wird die Schnittstelle für Tests und Programmierung genutzt. Bei vielen dieser Geräte ist sie auch in der Serie noch zugänglich.
Für Sicherheitsforscher ist eine offene JTAG-Schnittstelle deshalb ein interessanter Angriffspunkt. Über sie lässt sich die Firmware auslesen und auf Schwachstellen untersuchen. Hersteller sicherheitskritischer Geräte sperren die Schnittstelle deshalb zunehmend oder schützen sie mit Passwörtern und Verschlüsselung.
Zusammengefasst ist JTAG eine Schnittstelle aus der Welt der Elektronikentwicklung, die lange auch für Datenrettung und Forensik eine große Rolle spielte. Bei modernen, verschlüsselten Smartphones hat sie an Bedeutung verloren. Für Tests, Programmierung und die Reparatur vieler anderer Geräte bleibt sie aber ein wichtiges Werkzeug.
Für die Datenrettung bei aktuellen Smartphones heißt das: Der Weg führt fast immer über die Reparatur des Geräts selbst, damit Prozessor, Sicherheitschip und Speicher wieder gemeinsam arbeiten.
Häufige Fragen
Hat jedes Gerät JTAG?
Viele Chips haben die Schnittstelle, bei Endgeräten ist sie aber oft deaktiviert.
Ist JTAG dasselbe wie Chip-Off?
Nein. Bei JTAG bleibt der Chip auf der Platine.
Wird JTAG bei Konsolen genutzt?
Bei manchen älteren Konsolen wurde es zum Ändern der Firmware genutzt.
Kann JTAG ein gebricktes Gerät retten?
Manchmal, wenn sich der Bootloader darüber neu schreiben lässt und die Schnittstelle offen ist.