Kuznyechik - Kuznyechik

Kuznyechik
Genel
TasarımcılarInfoTeCS JSC[1]
İlk yayınlandı2015
SertifikasyonGOST, ve FSS
Şifre ayrıntısı
Anahtar boyutları256 bit Feistel ağı
Blok boyutları128 bit
Yapısıİkame-permütasyon ağı
Mermi10
En iyi halk kriptanaliz
Bir ortada buluşma saldırısı 5 turda.[2]

Kuznyechik (Rusça: Кузнечик, kelimenin tam anlamıyla "çekirge") simetriktir blok şifreleme. 128 bitlik bir blok boyutuna ve 256 bitlik anahtar uzunluğuna sahiptir. Rusya Federasyonu Ulusal Standardında tanımlanmıştır. GOST R 34.12-2015 İngilizce[3] ve ayrıca RFC 7801.

Şifrenin adı Rusçadan şu şekilde çevrilebilir: çekirge ancak standart, şifrenin İngilizce adının açıkça Kuznyechik (/kʊznˈɛɪk/). Tasarımcılar, Kuznyechik şifresini adlandırarak, telaffuzu zor algoritma isimlerini takip ettiklerini iddia ediyorlar. Rijndael ve Keccak.[4] Ayrıca şifrenin, yaratıcılarının adını aldığına dair bir söylenti var: A. S. Kuzmin,[5] A. A. Nechaev[6] ve Şirket (Rusça: Кузьмин, Нечаев и Компания).[kaynak belirtilmeli ]

Standart GOST R 34.12-2015 eskiye ek olarak yeni şifreyi tanımlar GOST blok şifresi (şimdi Magma olarak adlandırılır) tek olarak ve eski şifrenin geçersiz olduğunu beyan etmez.[7]

Kuznyechik bir ikame-permütasyon ağı olsa da anahtar program bir Feistel ağı.

Tanımlamalar

Sonlu alan .

()

.

.

Açıklama

Şifreleme, şifre çözme ve anahtar üretimi için aşağıdaki işlevler:

, nerede , formun ikili dizeleridir ( dizedir birleştirme ).

ters bir dönüşümdür .

- ters dönüşümü ,

, nerede - dönüşümlerin bileşimi ve vb.

Doğrusal olmayan dönüşüm

Doğrusal olmayan dönüşüm, ikame edilerek verilir S = Bin8 S 'Bin8−1.

İkame değerleri S ' dizi olarak verilir S '= (S' (0), S '(1),…, S' (255)):

Doğrusal dönüşüm

:

Sahada toplama ve çarpma işlemleri yapılır .

Anahtar oluşturma

Anahtar oluşturma algoritması yinelemeli sabiti kullanır , i = 1,2,… 32ve paylaşılan anahtarı aşağıdaki gibi ayarlar: .

Yinelenen anahtarlar:

Şifreleme algoritması

burada - 128 bitlik bir dize.

Şifre çözme algoritması

Kriptanaliz

Riham AlTawy ve Amr M. Youssef, ortada buluşma saldırısı 5 mermi azaltılmış Kuznyechik'te, anahtarın bir zaman karmaşıklığı 2140, bellek karmaşıklığı 2153ve veri karmaşıklığı 2113.[2]

Alex Biryukov, Leo Perrin ve Aleksei Udovenko, S kutuları Kuznyechik ve Streebog yaratılmadı sözde rastgele ancak yapabildikleri gizli bir algoritma kullanarak ters mühendislik.[8]

Daha sonra Leo Perrin ve Aleksei Udovenko, S-box'ın iki alternatif ayrıştırmasını yayınladı ve Belarus şifresi BelT'nin S-kutusuyla bağlantısını kanıtladı.[9] Makalenin yazarları, böyle bir yapının kullanılmasının nedeni belirsiz kalsa da, gizli bir algoritma ile S-kutuları üretmenin, kol numaralarım yok Bu, tasarımlarında kasıtlı olarak hiçbir zayıflığın ortaya konulmadığını kanıtlayabilirdi.

Riham AlTawy, Onur Duman ve Amr M. Youssef iki yayınladı hata saldırıları Şifrenin uygulamalarının korunmasının önemini gösteren Kuznyechik üzerinde.[10]

Benimseme

VeraCrypt (bir çatal TrueCrypt ), desteklenen şifreleme algoritmalarından biri olarak Kuznyechik'i dahil etti.[11]

Kaynak kodu

Referanslar

  1. ^ "Arşivlenmiş kopya". Arşivlenen orijinal 2016-04-24 tarihinde. Alındı 2016-04-13.CS1 Maint: başlık olarak arşivlenmiş kopya (bağlantı)
  2. ^ a b Riham AlTawy ve Amr M. Youssef (2015-04-17). "Azaltılmış Tur Kuznyechik'te Orta Saldırıda Buluş" (PDF). Alıntı dergisi gerektirir | günlük = (Yardım)CS1 Maint: yazar parametresini kullanır (bağlantı)
  3. ^ http://tc26.ru/en/standard/gost/GOST_R_34_12_2015_ENG.pdf Arşivlendi 2017-11-04 at Wayback Makinesi Rusya Federasyonu Ulusal Standardı GOST R 34.12–2015 (İngilizce Versiyon)
  4. ^ https://mjos.fi/doc/rus/gh_ctcrypt.pdf Düşük Ağırlıklı ve Yüksek Kaliteli: Taslak Rus Şifreleme Standardı
  5. ^ https://www.researchgate.net/scientific-contributions/69696703_A_S_Kuzmin
  6. ^ https://www.researchgate.net/profile/A_Nechaev
  7. ^ http://www.itsec.ru/articles2/crypto/gost-r-chego-ozhidat-ot-novogo-standarta GOST R 34.12–2015: yeni bir standarttan ne beklenebilir? (Yalnızca Rusça)
  8. ^ Alex Biryukov, Leo Perrin ve Aleksei Udovenko (2016-02-18). "Streebog, Kuznyechik ve STRIBOBr1'in (Tam Sürüm) S-box'ını Tersine Mühendislik" (PDF). Alıntı dergisi gerektirir | günlük = (Yardım)CS1 Maint: yazar parametresini kullanır (bağlantı)
  9. ^ Léo Perrin, Aleksei Udovenko (2017). "Üstel S-kutuları: BelT ve Kuznyechik / Streebog'un S-kutuları Arasındaki Bağlantı" (PDF).
  10. ^ Riham AlTawy, Onur Duman ve Amr M. Youssef (2015-04-17). "Kuznyechik'in Hata Analizi" (PDF). Alıntı dergisi gerektirir | günlük = (Yardım)CS1 Maint: yazar parametresini kullanır (bağlantı)
  11. ^ "Kuznyechik". VeraCrypt Belgeleri. IDRIX. Alındı 2018-02-03.