Skein (hash işlevi) - Skein (hash function)

Skein
Skein permütasyon.png
Genel
Tasarımcılar Bruce Schneier , Niels Ferguson , vd.
Elde edilen Üç balık
Sertifikasyon SHA-3 finalisti
Detay
Özet boyutları keyfi
Yapısı Benzersiz Blok Yineleme
Mermi 72 (256 ve 512 blok boyutu), 80 (1024 blok boyutu)
Hız 6.1 CPB ile Core 2 .
Threefish Mix İşlevi

Skein , bir kriptografik karma işlevdir ve NIST karma işlevi yarışmasında beş finalistten biridir . SHA-1 ve SHA-2'nin halefi olan SHA-3 standardı olmaya aday olarak girildi ve sonuçta NIST karma adayı Keccak'a yenildi .

Skein adı, Skein fonksiyonunun girdiyi bir iplik çileğine benzer şekilde nasıl iç içe geçtiğini ifade eder .

Tarih

Skein, Bruce Schneier , Niels Ferguson , Stefan Lucks , Doug Whiting, Mihir Bellare , Tadayoshi Kohno, Jon Callas ve Jesse Walker tarafından yaratıldı .

Skein , Matyas – Meyer – Oseas hash modunun bir varyantı olan Unique Block Iteration (UBI) zincirleme modu kullanılarak sıkıştırılmış Threefish tweakable blok şifresini temel alırken, esneklik için isteğe bağlı bir düşük ek yük argüman sisteminden yararlanır.

Skein'in algoritması ve bir referans uygulaması kamu malı verildi .

İşlevsellik

Skein, 256, 512 ve 1024 bit dahili durum boyutlarını ve isteğe bağlı çıktı boyutlarını destekler.

Yazarlar , 64 bit modda bir Intel Core 2 Duo üzerindeki herhangi bir çıktı boyutu için bayt başına 6.1 döngü iddia ediyorlar .

Threefish'in çekirdeği, tek bir toplama, sabit bir döndürme ve XOR kullanarak 2 adet 64 bitlik kelimeyi dönüştüren bir MIX işlevine dayanır. UBI zincirleme modu, bir girdi zincirleme değerini rastgele uzunlukta bir girdi dizesiyle birleştirir ve sabit boyutlu bir çıktı üretir.

Threefish'in doğrusal olmama durumu tamamen toplama işlemlerinin ve özel OR'lerin kombinasyonundan gelir ; S-box kullanmaz . İşlev, 64 bit işlemciler için optimize edilmiştir ve Skein kağıdı, rastgele karma , paralelleştirilebilir ağaç karma , bir akış şifresi , kişiselleştirme ve bir anahtar türetme işlevi gibi isteğe bağlı özellikleri tanımlar .

Kriptanaliz

Ekim 2010'da birleştiren bir saldırı dönme kriptanaliz ile ribaund saldırı yayınlandı. Saldırı, Threefish-256'da 72 turun 53'ünde ve Threefish-512'de 72 turun 57'sinde rotasyonel çarpışmalar bulur. Ayrıca Skein hash işlevini de etkiler. Bu, Şubat ayında yayınlanan ve sırasıyla 39 ve 42 turu kıran önceki saldırının devamı niteliğindedir.

Skein ekibi, hash'in bu ince ayarlar olmadan yine de güvenli olacağına inanmalarına rağmen, bu saldırıyı daha az etkili hale getirmek için NIST hash fonksiyonu yarışmasının 3. turu için ana program sabitini değiştirdi .

Skein hash örnekleri

Boş dizenin karma değerleri.

Skein-256-256("")
c8877087da56e072870daa843f176e9453115929094c3a40c463a196c29bf7ba
Skein-512-256("")
39ccc4554a8b31853b9de7a1fe638a24cce6b35a55f2431009e18780335d2621
Skein-512-512("")
bc5b4c50925519c290cc634277ae3d6257212395cba733bbad37a4af0fa06af41fca7903d06564fea7a2d3730dbdb80c1f85562dfcc070334ea4d1d9e72cba7a

Mesajdaki küçük bir değişiklik bile (çok büyük bir olasılıkla) çığ etkisinden dolayı çoğunlukla farklı bir hash ile sonuçlanacaktır . Örneğin, cümlenin sonuna nokta eklemek:

Skein-512-256("The quick brown fox jumps over the lazy dog")
b3250457e05d3060b1a4bbc1428bc75a3f525ca389aeab96cfa34638d96e492a
Skein-512-256("The quick brown fox jumps over the lazy dog.")
41e829d7fca71c7d7154ed8fc8a069f274dd664ae0ed29d365d919f4e575eebb
Skein-512-512("The quick brown fox jumps over the lazy dog")
94c2ae036dba8783d0b3f7d6cc111ff810702f5c77707999be7e1c9486ff238a7044de734293147359b4ac7e1d09cd247c351d69826b78dcddd951f0ef912713
Skein-512-512("The quick brown fox jumps over the lazy dog.")
658223cb3d69b5e76e3588ca63feffba0dc2ead38a95d0650564f2a39da8e83fbb42c9d6ad9e03fbfde8a25a880357d457dbd6f74cbcb5e728979577dbce5436

Referanslar

Dış bağlantılar

Uygulamalar