Simon (şifreleme)

Vikipedi, özgür ansiklopedi
Simon

Simon, Haziran 2013'te Ulusal Güvenlik Ajansı (NSA) tarafından halka açık bir şekilde yayınlanmış bir hafif blok şifreleme ailesidir.[1][2] Simon, donanım uygulamaları için optimize edilmişken, kardeş algoritması Speck, yazılım uygulamaları için optimize edilmiştir.[3][4]

NSA, 2011 yılında Simon ve Speck şifreleri üzerinde çalışmaya başlamıştır. Ajans, ABD federal hükûmetindeki bazı ajansların kabul edilebilir bir güvenlik seviyesinde, çeşitli Nesnelerin İnterneti cihazlarında iyi çalışacak bir şifreleme algoritmasına ihtiyaç duyacağını öngörmüştür.[5]

Şifrenin tanımı[değiştir | kaynağı değiştir]

Simon blok şifresi, n- bit kelimeli bir dengeli Feistel şifresidir ve blok uzunluğu 2 n'dir. Anahtar uzunluğu(m), n'nin 2, 3 veya 4 katıdır. Bu nedenle, bir Simon şifreleme uygulaması Simon2n/nm olarak gösterilebilir. Örneğin, Simon64/128, 64-bitlik düz metin bloğunda (n = 32), 128 bit anahtar kullanmaktadır.[2] Blok yapısı Simon implementasyonları arasında aynıdır, ancak anahtar oluşturma adımları seçilen anahtar uzunluğuna göre farklılık göstermektedir.

Simon aşağıdaki blok boyutu, anahtar boyutu ve tur sayısı kombinasyonlarını destekler:

Blok boyutu (bit) Anahtar boyutu (bit) Tur sayısı
32 64 32
48 72 36
96 36
64 96 42
128 44
96 96 52
144 54
128 128 68
192 69
256 72

Anahtar çizelgesinin tanımı[değiştir | kaynağı değiştir]

, bit sola doğru dairesel kaydırmaolsun.

Anahtar çizelgesi matematiksel olarak aşağıdaki şekilde tanımlanır:

Anahtar çizelgesi yapısı dengeli olmayabilir. Anahtar kelime sayısı , anahtar genişlemesinin yapısını belirlemek için kullanılır ve toplam bit genişliği olur. Anahtar kelime genişlemesi; sağa kaydırma, XOR ve sabit bir diziden oluşmaktadır. Her turda bir kez anahtar kelimenin en düşük bitine uygulanmaktadır.[4]

Sabit dizinin tanımı[değiştir | kaynağı değiştir]

Sabit dizi, , Linear Feedback Shift Register (LFSR) tarafından oluşturulur. Dizilerin sıralaması, anahtar ve blok boyutlarının değerlerine göre belirlenmektedir. LFSR, 5 bit alan ile oluşturulur. Her turda bir kere, anahtar çizelgesine anahtara bağlı olmayan entropi eklemek için en düşük bitte uygulanmaktadır. LFSR'nin her dizi için farklı yapısı vardır ancak, şifreleme için başlangıç durumu aynıdır. Şifre çözme için LFSR'nin başlangıç durumu turlar arası değişir.

Sabit Dizi

Kriptanaliz

Tasarımcılar, Simon'ın "hafif" bir şifre olmasına rağmen, standart seçilmiş düz metin (CPA) ve seçilmiş şifreli metin (CCA) saldırılarına karşı her blok ve anahtar boyutu için mümkün olan tam güvenliğe sahip olacak şekilde tasarlandığını iddia ediyor. İlişkili anahtar saldırılara karşı direnç de bir hedef olarak belirtildi ancak bu modeldeki saldırılar tipik kullanım durumları ile ilgili olmadığı için daha az önemli bir hedef. [9] : 2 [6]:2 Bilinen anahtar ayırt edici saldırı modelinde saldırılara direnmek için hiçbir çaba gösterilmedi ve tasarımcılar Simon'u bir karma işlevi olarak kullanmak için değerlendirmediler . [10].[7]

2018 itibarıyla, herhangi bir varyanttan tam kapsamlı Simon'a başarılı bir saldırı bilinmemektedir. Simon ve Speck'e olan ilgi nedeniyle, üzerlerinde yaklaşık 70 kriptanaliz makalesi yayınlandı. [9] : 10 [6]:10 Yinelenen şifreler için tipik olduğu gibi, azaltılmış tur varyantları başarıyla saldırıya uğradı. Standart saldırı modelinde (bilinmeyen anahtarlı CPA/CCA) Simon'a yapılan en iyi yayınlanmış saldırılar, diferansiyel kriptanaliz saldırılarıdır. Bunlar, çoğu varyantın turlarının yaklaşık %70-75'ini başarır, ancak bu en iyi saldırılar kaba kuvvetten yalnızca marjinal olarak daha hızlıdır . [11] [12] [13] [9] : 12 [6]:12[8] [9][10] Tasarım ekibi, Simon'u tasarlarken, diferansiyel saldırıları sınırlayıcı saldırılar, yani en çok raundda başarılı olan saldırı türü olarak bulduklarını belirtiyor; daha sonra AES- 128'lere benzer bir güvenlik marjı bırakacak tur sayısını yaklaşık %30 olarak ayarlarlar. [9] : 12-13 [6]:12–13

Simon'a yapılan bilinen en iyi saldırılar (standart saldırı modelinde)
Variant Rounds attacked Time complexity Data complexity Attack type
Simon128/256 53/72 (74%) 2248 2127.6 Linear Hull[8]
Simon128/192 51/69 (74%) 2184 2127.6 Linear Hull[8]
Simon128/128 49/68 (72%) 2120 2127.6 Linear Hull[8]
Simon96/144 38/54 (70%) 2136 295.2 Linear Hull[8]
Simon96/96 37/52 (71%) 288 295.2 Linear Hull[8]
Simon64/128 31/44 (70%) 2120 263.5 Linear Hull[8]
Simon64/96 30/42 (71%) 288 263.5 Linear Hull[8]
Simon48/96 25/36 (69%) 280 247.9 Linear Hull[8]
Simon48/72 24/36 (67%) 256 247.9 Linear Hull[8]
Simon32/64 24/32 (75%) 263 232 Integral[9]

Simon, ChaCha20 gibi daha muhafazakar şifrelere kıyasla çok küçük bir güvenlik marjına sahip olduğu için yani en iyi saldırılar ve tam şifre arasında çok az tur olduğu için eleştirildi . [14] .[11] Küçük güvenlik marjlarına sahip şifrelerin, kriptanalizdeki gelecekteki gelişmeler tarafından kırılması daha olasıdır . Simon'ın tasarım ekibi, özellikle hafif cihazlarda gereksiz derecede büyük güvenlik marjlarının gerçek bir dünya maliyeti olduğunu, tasarım aşamasında kriptanalizin tur sayısının uygun şekilde ayarlanmasına izin verdiğini ve AES'in güvenlik marjını hedeflediklerini söylüyor. [9] : 17 [6]:17

Simon, anahtar programa yuvarlak bir sayaç ekler . Tasarımcılar, bunun kayma ve rotasyonel kriptanaliz saldırılarını engellemek için dahil edildiğini belirtiyor. [9] : 16 [6]:16 Speck gibi ilgili şifrelerin azaltılmış yuvarlak sürümlerine karşı ayırt ediciler bulmak için rotasyonel-XOR kriptanalizi kullanılmıştır . [15] [12] Yazarlar, ayırıcılarına dayalı olarak standart anahtar kurtarma saldırılarını tanımlamasalar da, belirli zayıf anahtarlar için bilinen anahtar ayırt edici saldırı modelinde en iyi ayırıcıları Simon32 ve Simon48'dir. Sınıflar, en iyi diferansiyel ayırıcılardan biraz daha fazla tur atıyor. Yazarlardan biri, araştırmasının kaynak kısıtlı olduğunu ve daha fazla turda rotasyonel-XOR ayırıcılarının muhtemelen mümkün olduğunu söyledi. Tasarımcılar ayrıca, Simon'ın bilinen anahtar ayırt edici saldırılara (şifrelerin gizliliğini doğrudan tehlikeye atmayan) direnmek için tasarlanmadığını belirtiyorlar. [10] : 8 [7]:8

Tasarımcılar, NSA kriptoanalizinin, algoritmaların hiçbir zayıf yanı olmadığını ve anahtar uzunluklarıyla orantılı güvenlik bulduğunu belirtiyor. [8] : 2.[5]:2 Tasarım ekibi, kriptanalizlerinin Matsui'nin algoritması ve SAT/SMT çözücüleri gibi standart teknikleri kullanan doğrusal ve diferansiyel kriptanalizi içerdiğini söylüyor, ancak kullanılan tekniklerin tam listesi verilmemiş. [9] : 10 [6]:10 Simon'ın tasarımcıları, şifrelerin NSA kriptanalizi hakkında daha fazla ayrıntı sağlamadıkları için eleştirildi. [16][13]

NSA, Simon128/256 ve Speck128/256'yı ABD Ulusal Güvenlik Sistemlerinde kullanım için onayladı ancak AES-256 kısıtlamasız uygulamalar için hala tavsiye ediliyor. [17].[14]

Standardizasyon çabaları ve tartışmalar

Simon ve Speck'i standartlaştırmaya yönelik ilk girişimler, sürecin gerektirdiği Uluslararası Standardizasyon Örgütü süper çoğunluğunu karşılayamadı ve şifreler kabul edilmedi. [18] [16] [13][15] Almanya, Japonya ve İsrail de dahil olmak üzere birçok ülkeden ISO'ya uzmanlar, NSA'nın Simon ve Speck şifrelerini standartlaştırma çabalarına karşı çıkarak, NSA'nın kendi standartlaştırması için zorladığı endişelerini dile getirdiler. Konum, şifrelerdeki zayıflıkların kısmi kanıtlarına, yeni şifrelerin standardizasyonuna yönelik açık ihtiyaç eksikliğine ve NSA'nın arka kapılı Dual_EC_DRBG şifreleme algoritmasının oluşturulmasına ve tanıtımına daha önce dahil olmasına dayanıyordu.[19][16]

Endişelere yanıt olarak, NSA, dünyanın önde gelen kriptograflarından bazılarına ait 70'ten fazla güvenlik analizi raporunun, NSA'nın algoritmaların güvenli olduğu yönündeki sonucunu desteklediğini ve NSA'nın, kendisinin veya başka birinin bunu yapmasına izin verecek herhangi bir kriptanalitik tekniğin farkında olmadığını teyit ettiğini belirtti. Simon veya Speck'i kullanın.

Şifreleri standartlaştırmaya yönelik ilk girişimler başarısız olduktan sonra, ISO, Simon ve Speck'i diğer çalışma gruplarında standart hale getirdi. Ekim 2018 itibarıyla, Simon ve Speck şifreleri, RFID hava arayüzü standardı, Uluslararası Standart ISO/29167-21 (Simon için) ve Uluslararası Standart ISO/29167-22 (Speck için) kapsamında ISO tarafından standardize edilmiştir. ticari kuruluşlar tarafından kullanılabilir.

Ayrıca bakınız[değiştir | kaynağı değiştir]

Kaynakça[değiştir | kaynağı değiştir]

  1. ^ "SIMON and SPECK: New NSA Encryption Algorithms". Schneier on Security. 1 Temmuz 2013 tarihinde kaynağından arşivlendi. Erişim tarihi: 17 Temmuz 2013. 
  2. ^ a b The Simon and Speck Families Of Lightweight Block Ciphers (PDF). ePrint. 22 Aralık 2019 tarihinde kaynağından arşivlendi (PDF). Erişim tarihi: 16 Haziran 2016. 
  3. ^ "NSA Offers Block Ciphers to Help Secure RFID Transmissions". RFID Journal. 17 Temmuz 2015. 17 Temmuz 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 19 Nisan 2020. 
  4. ^ a b Brian Degnan and Gregory Durgin (10 Kasım 2017). "Simontool: Simulation Support for the Simon Cipher". IEEE Journal of Radio Frequency Identification. 1 (2). ss. 195-201. 
  5. ^ a b "Simon and Speck: Block Ciphers for the Internet of Things" (PDF). 9 Temmuz 2015. 1 Aralık 2017 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 23 Kasım 2017. 
  6. ^ a b c d e f g "Notes on the design and analysis of Simon and Speck" (PDF). 19 Ocak 2018. 9 Temmuz 2017 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 13 Haziran 2018. 
  7. ^ a b Beaulieu, Ray; Shors, Douglas; Smith, Jason; Treatman-Clark, Stefan; Weeks, Bryan; Wingers, Louis (19 Haziran 2013). "The SIMON and SPECK Families of Lightweight Block Ciphers". 3 Eylül 2013 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Eylül 2016. 
  8. ^ a b c d e f g h i j Chen, Huaifeng; Wang, Xiaoyun (19 Ocak 2018). "Improved Linear Hull Attack on Round-Reduced SIMON with Dynamic Key-guessing Techniques" (PDF). 8 Eylül 2015 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 13 Haziran 2018. 
  9. ^ a b Chu, Zhihui; Chen, Huaifeng; Xiaoyun, Wang; Dong, Xiaoyang; Li, Lu (19 Ocak 2018). "Improved Integral Attacks on SIMON32 and SIMON48 with Dynamic Key-Guessing Techniques". Security and Communication Networks. 2018: 5160237:1-5160237:11. doi:10.1155/2018/5160237Özgürce erişilebilir. 
  10. ^ Lee, HoChang; Kim, Seojin; Kang, HyungChul; Hong, Deukjo; Sung, Jaechul; Hong, Seokhie (February 2018). "Calculating the Approximate Probability of Differentials for ARX-Based Cipher Using SAT Solver". Journal of the Korea Institute of Information Security and Cryptology (Korece). 28 (1): 15-24. doi:10.13089/JKIISC.2018.28.1.15. 
  11. ^ @ (12 Nisan 2016). "NSA claims that having 70% of Simon+Speck broken is ok" (Tweet) – Twitter vasıtasıyla. ; Eksik ya da boş |kullanıcı= (yardım); Eksik ya da boş |numara= (yardım)
  12. ^ Liu, Yunwen; De Witte, Glenn; Ranea, Adrián; Ashur, Tomer (2017). "Rotational-XOR Cryptanalysis of Reduced-round SPECK" (PDF). 14 Haziran 2018 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 13 Haziran 2018. 
  13. ^ a b Ashur, Tomer. "[PATCH v2 0/5] crypto: Speck support". 2 Haziran 2018 tarihinde kaynağından arşivlendi. 
  14. ^ National Security Agency (18 Kasım 2016). "Algorithms to Support the Evolution of Information Assurance Needs". 6 Nisan 2021 tarihinde kaynağından arşivlendi. 
  15. ^ "Insights an reasons why Speck and Simon have been rejected from ISO standardization". 13 Aralık 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 23 Mart 2022. 
  16. ^ "Distrustful U.S. allies force spy agency to back down in encryption fight". Reuters. 21 Eylül 2017. 23 Mart 2022 tarihinde kaynağından arşivlendi. Erişim tarihi: 23 Mart 2022. 

Şablon:Cryptography navbox