Cryptography Reference
In-Depth Information
1. Der Master generiert aus dem PKEY und einem Zufallswert ( IN_RAND ) mit
der kryptografischen Hashfunktion E 22 den Initialisation Key . IN_RAND
sendet er an den Slave.
2. Der Slave verfährt auf gleiche Weise wie zuvor der Master: Aus dem PKEY
und IN_RAND berechnet er mit E 22 den Initialisation Key . Der Zweck des
Initialisation Key ist es, dass der PKEY nicht direkt am Protokoll beteiligt
und dadurch besser geschützt ist.
3. Der Master generiert einen weiteren Zufallswert ( LK_RAND A ). Daraus so-
wie aus seiner Geräteadresse berechnet er mit der kryptografischen Hash-
funktion E 21 den Wert K A . Anschließend berechnet er die Exklusiv-oder-Ver-
knüpfung von LK_RAND A und dem Inititialisation Key . Diese Verknüpfung
kommt einer Verschlüsselung (One-Time-Pad) von LK_RAND A mit dem
Initialisation Key gleich. Das Ergebnis der Verschlüsselung sendet er an den
Slave.
4. Der Slave entschlüsselt LK_RAND A mit dem Initialisation Key . Aus LK_
RAND A sowie aus der Geräteadresse des Masters berechnet er mit E 21 den
Wert K A . Außerdem generiert er einen weiteren Zufallswert ( LK_RAND B )
und berechnet anschließend die Exklusiv-oder-Verknüpfung von LK_
RAND B und dem Initialisation Key . Dies kommt einer One-Time-Pad-Ver-
schlüsselung von LK_RAND B gleich. Das Ergebnis der Verschlüsselung sen-
det er an den Master. Außerdem wendet der Slave das Verfahren E 21 auf
LK_RAND B und seine eigene Geräteadresse an, wodurch er K B erhält. Der
Link Key ergibt sich aus K A
K B .
5. Der Master entschlüsselt LK_RAND B mit dem Initialisation Key . Aus
LK_RAND B und der Geräteadresse des Slave berechnet er mit dem Verfah-
ren E 21 den Wert K B . Nun kann auch der Master den Link Key berechnen,
der sich aus K A
K B ergibt.
6.
Aus dem Link Key , einem weiteren Zufallswert ( EN_RAND ) sowie einer
weiteren Variablen (es handelt sich um die Kennung des Authentifizierungs-
prozesses) generiert der Master den Encryption Key . Der Link Key dient da-
bei als Schlüssel für E 3 , die anderen beiden Eingaben als Urbild. EN_RAND
sendet er an den Slave. Außerdem berechnet der Master aus dem Encryption
Key den Constraint Key. Der Constraint Key hat den Zweck, die effektive
Schlüssellänge zu verkürzen, damit die jeweilige Implementierung Gesetzen
entspricht, die die Verwendung oder den Export von Kryptografie beschrän-
ken (in den USA gab es früher Exportbeschränkungen, die nur die Ausfuhr
von maximal 40 Bit effektiver Schlüssellänge zuließen). Die Berechnung des
Constraint Key sieht vor, einen konfigurierbaren Teil des Encryption Key ab-
zuschneiden und das Ergebnis nach einem nichtkryptografischen Verfahren
auf 128 Bit zu expandieren. Da die US-Exportbeschränkungen nicht mehr
aktuell sind, verwenden die meisten Implementierungen den Encryption Key
als Constraint Key .
Search WWH ::




Custom Search