Im kleinen Verschlüsselungsalgorithmus :
Verschiedene Vielfache einer magischen Konstante werden verwendet, um einfache Angriffe aufgrund der Symmetrie der Runden zu verhindern. Die magische Konstante 2654435769 oder 9E3779B9 16 wird zu , wobei ϕ der goldene Schnitt ist .
Welche Eigenschaften hat , die es in diesem Zusammenhang nützlich machen?
cr.crypto-security
MS Dousti
quelle
quelle
Antworten:
AFAIK, solche "magischen" Werte haben die folgenden zwei Eigenschaften:
Möglicherweise finden Sie einen ähnlichen Fall im MD5 . Betrachten Sie die folgende Zeile:
k[i] := floor(abs(sin(i + 1)) × (2 pow 32))
Hier
sin(i + 1)
sollen magische Werte erzeugt werden; die einzigartig sind, zufällig aussehen und für viele funktionieren könneni
. (Tatsächlichi
reicht in 0..63).Bearbeiten: Lesen Sie die Originalarbeit auf TEA , versteht man, dass die Antwort von "Steven Stadnicki" richtig ist. Beachten Sie, dass die magische Konstante der Name Delta ist:
Da nur 32 Vielfache von Delta verwendet werden (eines pro Runde), ist es nicht ungewöhnlich, dass der Algorithmus für ein bestimmtes Delta nicht sehr empfindlich ist. (Weitere Informationen finden Sie in der Antwort von Steven Stadnicki.)
Edit 2: übrigens MD4 verwendet Quadratwurzeln 2 (0x5a827999) und 3 (0x6ed9eba1) als "magische" Konstanten in ihrer Tätigkeit. Abschnitt 5.4.4 des Buches Netzwerksicherheit: Private Kommunikation in einer öffentlichen Welt erklärt dies gut:
Diese Erklärung entspricht dem unten in einem Kommentar von Gilles gemachten Punkt.
quelle
quelle
k[i]
, wie in MD5 definiert? (Siehe meine Antwort oben.)