Über den DS28E01-Chip
Der DS28E01-100 ist ein 1-Wire®-Chip mit einer eindeutigen 64-Bit-ROM-Registrierungsnummer und einer leistungsstarken Authentifizierungs-Engine, der eine sichere Methode zum Aufbau einer Vertrauensbasis in eingebetteten Systemen bietet. Er arbeitet mit dem 1-Wire-Protokoll, das die Kommunikation mit einem Mikrocontroller über nur einen einzigen Datenpin ermöglicht. Das Gerät unterstützt eine Versorgungsspannung von 1,8 V bis 5,5 V und einen breiten Temperaturbereich von -40 °C bis +85 °C.
Funktionsübersicht
- Geringer Stromverbrauch;
- Sichere Authentifizierungs-Engine;
- 1-Wire-Kommunikationsprotokoll;
- Kryptografische Authentifizierung;
- 64-Bit-ROM-Registrierungsnummer;
- Eindeutige, werkseitig gelaserte 64-Bit-ROM-Kennung;
- 1-Wire-Seriellschnittstelle mit starken Sicherheitsfunktionen;
- Hochpräziser Temperatursensor auf dem Chip;
- On-Chip-Spannungsüberwachung;
- Automatische Überprüfung der Datenintegrität;
- Open-Drain-Ausgang zum Ansteuern von LEDs und anderen Geräten;
- Unterstützt Overdrive-Modus für schnellere Kommunikation;
- Integrierter Selbsttest für Entwicklungs- und Produktionsumgebungen.
Leistungsparameter
- 64 Byte Benutzer-EEPROM;
- 256-Bit-1-Wire-SHA-2-Authentifizierung;
- 2 KB geschützter Speicher;
- 1-Wire-Kommunikationsprotokoll;
- 3-Pin-SOT-23-Gehäuse;
- Betriebsspannungsbereich von 1,8 V bis 5,5 V;
- Betriebstemperaturbereich von -40 °C bis +85 °C.
Pin-Konfiguration
Der DS28E01-100 verfügt über ein 3-poliges SOT-23-Gehäuse mit folgender Pin-Konfiguration:
1 – GND (Masse)
2 – DQ (Datenpin)
3 – Vcc (Versorgungsspannung)
Blockdiagramm
Der DS28E01-100 besteht aus den folgenden Funktionsblöcken:
1-Wire-Schnittstelle
64-Bit-ROM
Starke Authentifizierungs-Engine
Power-On-Reset und Oszillator
Versorgungsspannungsüberwachung
Schreibschutz und Schreibzyklussteuerung
Anwendungen
Manipulationssichere Systeme;
Zugangskontrolle und sichere Speicherung;
Sichere Identifizierung und Authentifizierung;
Sicherer Start und Firmware-Updates in eingebetteten Systemen.
Unterstützter Chip der DALLAS-Serie
Nachfolgend finden Sie unsere verfügbaren Dallas-Chip-Modelle für die Entschlüsselung:
- DS1205
- DS1920
- DS1820
- DS1954
- DS1955
- DS1961
- DS1963L
- DS1963S
- DS1971
- Digitales selektives Anrufen 1982
- Digitaler Temperatursensor
- DS1990A
- DS1991
- DS1994
- DS1995
- DS1992
- Digitales selektives Anrufen 1985
- Digitales selektives Anrufen 1986
- DS1993
- DS1996
- DS2405
- DS2406
- Zweistufiger 2430A
- DS2431
- DS2432
- DS2433
- DS2436
- Digitaler Signalprozessor 2002
- Digitaler Signalprozessor 2503
- Digitaler Signalprozessor 2505
- Zweistöckiges Haus
Wie funktioniert DS28E01?
Der DS28E01-Chip verwendet ein SHA-160-Verschlüsselungsmodul, um die im Algorithmus verwendeten Daten zu schützen. Die 55 Byte Daten bestehen aus einem 8-Byte-Schlüssel, einer 5-Byte-Zufallszahl, die vom Benutzer festgelegt wird, 32 Byte EEPROM-Inhalt, einer 7-Byte-ROMID, einem 2-Byte-Festwert (0xFF) und einer 1-Byte-EEPROM-Adresse TA1.
Die MCU kann die Sicherheit des Chips überprüfen, indem sie den von SHA verschlüsselten 20-Byte-Hashwert liest und ihn mit dem Hashwert vergleicht, den die MCU mit demselben Algorithmus berechnet hat. Um sicherzustellen, dass die MCU denselben Verschlüsselungsvorgang durchführt, muss sie genau die 55-Byte-Nachricht generieren, die sich im Chip befindet.
Der 8-Byte-Schlüssel wird von der MCU generiert und geschrieben, die 5-Byte-Zufallszahl wird in den Scratchpad geschrieben, bevor der Chip SHA ausführt, Die 32 Byte EEPROM-Daten werden vom Chip zurückgegeben, bevor der 20-Byte-Hashwert gelesen wird. Die 7-Byte-ROMID kann jederzeit gelesen werden, der 2-Byte-Festwert kann dem Handbuch entnommen werden und der 1-Byte-TA1 wird von der MCU geschrieben.
Wie schaltet man Dallas-Chips frei?
Das Entsperren von Dallas-Chips kann auf zwei Arten erfolgen. Die erste Methode besteht darin, den Code des Hauptsteuerchips zu disassemblieren und zu dekompilieren, um den verschlüsselten Verifizierungscode zu finden und ihn entweder zu umgehen oder den Speicher-RAM zu modifizieren. Diese Methode ist sehr effektiv, aber auch komplex und erfordert Fachwissen in den Bereichen Assemblerbefehle, Chiparchitektur, Verschlüsselungschips und Entwicklungswerkzeuge. Sie ist jedoch kommerziell nicht rentabel, da das Ergebnis des Knackens ungewiss ist und der Kunde für den Knackvorgang bezahlen muss, bevor er den entschlüsselten Maschinencode erhält.
Die zweite Methode besteht darin, die Kommunikationswellenform während des Verifizierungsprozesses zu simulieren. Bei langsamen Kommunikationsprotokollen kann ein Ein-Chip-Mikrocomputer für die Simulation verwendet werden, während bei Hochgeschwindigkeitsprotokollen ein CPLD verwendet werden muss. Bei dieser Methode wird jedes Mal dieselbe Zufallszahl generiert.
Wie verwendet man DS28E01?
Schritt 1: Initialisieren Sie den DS28E01-Schlüssel.
Der Initialisierungsschlüssel wird nur im Werk vor der Herstellung des Produkts betätigt und muss nur einmal betätigt werden.
Vorgehensweise:
1. Lesen Sie die Chip-ROMID.
2. Generieren Sie einen eindeutigen 64-Bit-Schlüssel durch einen bestimmten Algorithmus, um sicherzustellen, dass die von jedem Motherboard generierten Schlüssel unterschiedlich sind.
3. Schreiben Sie den Schlüssel in den temporären Speicherbereich des Chips und lesen Sie ihn zurück, um zu überprüfen, ob das Schreiben korrekt ist.
4. Führen Sie den Befehl „Chip Load Key“ aus, damit der Chip den 64-Bit-Schlüssel aus dem temporären Speicherbereich in den Schlüsselspeicherbereich speichert.
5. Fertig.
Schritt 2: Überprüfen Sie den DS28E01-Schlüssel.
Die Verifizierung des Schlüssels erfolgt in der Produktanwendung. Bei jedem Start des Produkts wird überprüft, ob der DS28E01-Schlüssel korrekt ist.
Wenn die Überprüfung erfolgreich ist, läuft das Produkt normal. Ist die Überprüfung nicht korrekt, funktioniert das Produkt auf bestimmte Weise nicht ordnungsgemäß.
Vorgehensweise:
1. Lesen Sie die Chip-ROMID.
2. Generieren Sie mithilfe desselben Algorithmus wie beim Initialisierungsprozess einen 64-Bit-Schlüssel.
3. Schreiben Sie eine 8-Byte-Zufallszahl in den temporären Speicherbereich des Chips (es werden nur 5 Byte verwendet) und lesen Sie diese zur Überprüfung zurück.
4. Senden Sie einen verschlüsselten Authentifizierungsbefehl an den Chip, der 32 Byte EEPROM-Daten und 20 Byte Hash-Wert zurücklesen kann.
5. Verwenden Sie die oben gelesenen Daten, generieren Sie eine 55-Byte-Digest-Nachricht und führen Sie eine SHA1-Operation durch.
6. Vergleichen Sie, ob der von Ihnen berechnete Hash-Wert mit dem vom Chip zurückgelesenen Hash-Wert übereinstimmt.




