Cryptography Reference
In-Depth Information
ANSI X9.42-2001 Annex C.1 mit nur einem minimalen Unterschied: Ist eine
160-Bit-Zufallszahl größer als q , dann wird q abgezogen. Dieser Schritt ist not-
wendig, damit die Zufallszahl als Schlüssel für den DSA nutzbar ist. Wenn Alice
und Bob das Verfahren jedoch für andere Zwecke nutzen wollen, können sie
diesen Schritt weglassen. FIPS 186-2 (+ change notice 1) Appendix 3.1 wurde im
Rahmen des CRYPTREC-Wettbewerbs als positiv bewertet.
FIPS 186-2 (+ change notice 1) revised Appendix 3.1
Eine Eigenschaft von FIPS 186-2 (+ change notice 1) Appendix 3.1 (und damit
auch von ANSI X9.42-2001 Annex C.1 ) ist folgende: Da A bis zu 512 Bit lang
sein kann, der Hashwert jedoch immer nur 160 Bits hat, wirkt sich die Fortschal-
tung (diese besteht im Wesentlichen aus einer Addition der beiden Werte) nur auf
einen Teil von A aus. Diese Eigenschaft lässt nach Angaben des NIST einen (aller-
dings nur theoretisch interessanten) Angriff zu. Das NIST reichte daher ein leicht
geändertes Verfahren nach, das als FIPS 186-2 (+ change notice 1) revised Appen-
dix 3.1 bezeichnet wird [FIPS-186]. Dieses läuft wie folgt ab (SHA-1 wird wiede-
rum mit vereinfachtem Padding verwendet):
A = A + X (mod 2 b )
1.
2.
Gib als erste Hälfte des Zufallswerts aus: SHA-1( A )
A = A + SHA-1( A ) + 1 (mod 2 b )
3.
A = A + X (mod 2 b )
4.
5.
Gib als zweite Hälfte des Zufallswerts aus: SHA-1( A )
A = A + SHA-1( A ) + 1 (mod 2 b )
6.
Auch hier sieht die Empfehlung vor, den Zufallswert modulo q zu verwenden,
damit er für den DSA nutzbar ist. Wenn Alice und Bob jedoch einen anderen Ver-
wendungszweck im Auge haben, können sie diesen Schritt weglassen. Wie man
leicht erkennt, ist der Unterschied zwischen FIPS 186-2 (+ change notice 1)
Appendix 3.1 und ANSI X9.42-2001 Annex C.1 auf der einen Seite sowie FIPS
186-2 (+ change notice 1) revised Appendix 3.1 auf der anderen Seite minimal.
Ich habe das letztgenannte Verfahren an dieser Stelle nur aufgeführt, weil es im
CRYPTREC-Wettbewerb als dritter und letzter der hier beschriebenen Pseudozu-
fallsgeneratoren positiv bewertet wurde.
15.2.2
Schlüsselabhängige Hashfunktionen als Fortschaltfunktion
Anstatt einer gewöhnlichen kryptografischen Hashfunktion können Alice und
Bob zur Zufallsgenerierung auch eine schlüsselabhängige Hashfunktion verwen-
den. Dies funktioniert etwa mit der folgenden einfachen Methode ( K ist der
Schlüssel):
1.
A = hash K ( A )
2.
Gib als Zufallswert aus: A
Search WWH ::




Custom Search