Neden özeldir


12

Gelen Minik Şifreleme Algoritması :

Mermilerin simetrisine dayanan basit saldırıları önlemek için farklı bir sihirli sabitin katları kullanılır. Sihirli sabiti, 2654435769 veya 9E3779B9 16 olacak şekilde seçilir 232/ϕ , φ altın oranıdır.

232/ϕ bu bağlamda faydalı kılan hangi özelliklere sahiptir?


Yanıtlar:


11

AFAIK, bu tür "sihirli" değerler aşağıdaki iki özelliğe sahiptir:

  1. Bir şekilde benzersizler ve rastgele görünüyorlar.
  2. Cebirsel işlemlere tekrar tekrar katılabilirler; yani, belirli bir işlemi (çarpma veya üs alma) defalarca uyguladıktan sonra bile, "sihirli" değer hala yeni değerler üretebilir.

MD5'te benzer bir durum bulabilirsiniz . Aşağıdaki satırı düşünün:

k[i] := floor(abs(sin(i + 1)) × (2 pow 32))

Burada, sin(i + 1)sihirli değerler üretmek içindir; benzersiz, rastgele görünümlü ve bir çok şey için çalışabilir i. (Aslında, i0..63 arasında değişir).

Düzenleme: TEA ile ilgili orijinal makaleyi okuduğunuzda, "Steven Stadnicki" tarafından verilen cevabın doğru olduğu anlaşılmaktadır. Sihirli sabitin isim deltası olduğuna dikkat edin:

Her turda farklı bir delta katsayısı kullanılır, böylece katlamanın hiçbir biti sık sık değişmez. Algoritmanın deltanın değerine çok duyarlı olmadığından şüpheleniyoruz ve sadece kötü bir değerden kaçınmamız gerekiyor. Delta'nın kesilme veya en yakın yuvarlama ile garip olduğu ortaya çıkacaktır, bu nedenle toplam rakamlarının değişmesini sağlamak için ek önlem alınması gerekmez.

Sadece 32 kat delta kullanıldığından (her turda bir tane), algoritmanın herhangi bir deltaya çok duyarlı olmaması garip değildir. (Daha fazla bilgi için Steven Stadnicki'nin cevabına bakınız.)

Düzenleme 2: Bu arada, MD4 işlemlerinde "sihirli" sabitler olarak 2 (0x5a827999) ve 3 (0x6ed9eba1) kareköklerini kullanır. Kitabın Bölüm 5.4.4 Ağ Güvenliği: Özel İletişim Kamu Dünyada da bu açıklıyor:

Tasarımcıların bilerek sabitin şeytani değerini seçmediklerini göstermek için, sabit 2'nin kareköküne dayanmaktadır.

Bu açıklama, Gilles tarafından yapılan bir yorumda aşağıda belirtilen nokta ile aynıdır.


Kulağa makul geliyor. Peki 2 ^ 32 / pi veya 2 ^ 32 / sqrt (2) de aynı şekilde çalışır mıydı?

@Tim: Sanırım öyle, ama TEA iç operasyonları bağlamında yeni sihirli sayıları iki kez kontrol etmek etkili.
MS Dousti

5
Ayrıca, kabul edilebilir özelliklere sahip rastgele oluşturulmuş bir değer yerine 2 ^ 32 / phi gibi bir matematiksel sabit seçmenin bir nedeni, bunun ek gizlenmemiş özellikler için seçilen bir değer olmadığına (arka kapı değeri) güven duygusunu vermektir. .
Gilles 'SO- kötü olmayı kes'

2
@Gilles, gerçekten de, bu nedenle "kol numaramı yukarı hiçbir şey" bile denir, bkz. En.wikipedia.org/wiki/Nothing_up_my_sleeve_number
Henno Brandsma

12

φnφφ{nφ}{nα}α

Cπ=232/π=1367130551(355Cπ)mod232=41157Cφ=232/φ=2654435769n|(nCφ)mod232|216n=28657XnXn+kBazı ufacık için doğrusal bir uyumlu rasgele sayı üretecinin ; yine de, çoğunlukla, bu sayının küçük mod olan küçük katlarının , herhangi bir teorik sonuçtan daha kötü olacağı sezgisine dayanarak folklorik kara büyü vardır .k232


1
Sadeq: 'mod 1' katların kesirli kısmına karşılık gelir - bu durumda bunlar [.62, .24, .85, .47, .09, .71, .33, .94, .56, olacaktır. 18]. Sınırda eşit dağılım, [0, 1] 'in herhangi bir alt aralığının [a, b], bu değerlerin beklenen oranını (ba) içerdiği anlamına gelir; herhangi bir irrasyonel sayının katlarının kesirli kısımlarının [0, 1] üzerine eşit olarak dağıldığı ortaya çıkarken, altın oranın dağılımları diğer sayılara göre daha hızlı dağıtılır; birim aralığında 'topak' yapmazlar.
Steven Stadnicki

8
π '355/113 ile in yakın bir değer, örneğin, araçlarının olmalıdır 've değerlerin kesirli bir kümeleme gibi bu görüntüler kadar ondan daha bir tam sayı çok daha yakın olacak'; istisnai olarak yakın olacaktır . Altın oranın böyle iyi bir yaklaşımı yoktur; tüm yaklaşımları ondan 'maksimum düzeyde' uzaktır. ( en.wikipedia.org/wiki/… bunu kapsar)113π{(n+113)π}{nπ}
Steven Stadnicki

8
Bu altın oranın çok temiz bir özelliği
Suresh Venkat

2
Harika açıklama için teşekkürler. Gerçekten harikaydı! k[i]MD5'te tanımlandığı gibi yorumlarınız var mı? (Yukarıdaki cevabımı gör.)
MS Dousti

2
Maalesef bilmiyorum; - akla gelen tek şey, yaklaşık doğrusal bağımsızlık için seçilebilmeleridir, çünkü işlevleri üzerinde doğrusal olarak bağımsızdır - ancak bu belirli değer kümesinin olması gerektiğine inanmak için herhangi bir neden bilmiyorum herhangi bir doğrusal ilişkide için nispeten büyük değerlere yol açar . sin(nx)xaiΣaik[i]=0
Steven Stadnicki
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.