Dalam Algoritma Enkripsi Kecil :
Kelipatan yang berbeda dari konstanta sihir digunakan untuk mencegah serangan sederhana berdasarkan simetri putaran. Konstanta ajaib, 2654435769 atau 9E3779B9 16 dipilih menjadi , dengan ϕ adalah rasio emas.
Properti apa yang dimiliki yang membuatnya berguna dalam konteks ini?
cr.crypto-security
MS Dousti
sumber
sumber
Jawaban:
AFAIK, nilai "ajaib" tersebut memiliki dua properti berikut:
Anda dapat menemukan kasus serupa di MD5 . Pertimbangkan baris berikut:
k[i] := floor(abs(sin(i + 1)) × (2 pow 32))
Di sini,
sin(i + 1)
dimaksudkan untuk menghasilkan nilai-nilai ajaib; yang unik, tampak acak, dan dapat bekerja untuk banyaki
. (Sebenarnya,i
berkisar 0,63).Sunting: Membaca makalah asli tentang TEA , orang memahami bahwa jawaban yang diberikan oleh "Steven Stadnicki" benar. Perhatikan bahwa konstanta ajaib adalah nama delta:
Karena hanya 32 kelipatan dari delta yang digunakan (satu per setiap putaran), tidak aneh bahwa algoritma ini tidak terlalu sensitif terhadap delta tertentu. (Lihat jawaban Steven Stadnicki untuk info lebih lanjut.)
Sunting 2: Secara kebetulan, MD4 menggunakan akar kuadrat dari 2 (0x5a827999) dan 3 (0x6ed9eba1) sebagai konstanta "ajaib" dalam operasinya. Bagian 5.4.4 buku Keamanan Jaringan: Komunikasi Pribadi di Dunia Publik menjelaskan hal ini dengan baik:
Penjelasan ini sama dengan poin yang dibuat di bawah ini dalam komentar oleh Gilles.
sumber
sumber
k[i]
, sebagaimana didefinisikan dalam MD5? (Lihat jawaban saya di atas.)