Keccak
Keccak ("ketchak" olarak telaffuz edilir), Guido Bertoni, Joan Daemen, Michaël Peeters ve Gilles Van Assche tarafından tasarlanan çok yönlü bir şifreleme işlevidir. Keccak başka amaçlar için kullanılabilse de, en iyi SHA-1 ve SHA-2 gibi eski karma algoritmalarla karşılaştırıldığında daha yüksek güvenlik seviyeleri sağlayan bir karma işlevi olarak bilinir.
SHA, Güvenli Karma Algoritması anlamına gelir ve ABD Ulusal Standartlar ve Teknoloji Enstitüsü (NIST) tarafından yayınlanan bir dizi kriptografik karma işlevine atıfta bulunur. Hem SHA-1 hem de SHA-2, ABD Ulusal Güvenlik Ajansı (NSA) tarafından tasarlandı ve bu nedenle benzer bir yapı sunuyor. Keccak, SHA-2 ile aynı çıktı boyutunu (karma uzunlukları) desteklemesine rağmen, çalışma mekanizması oldukça farklıdır. Yine de Keccak, SHA ailesinin bir parçasıdır ve genellikle SHA-3 olarak anılır.
SHA-1'e teorik saldırılar 2004'te gerçekleştirildi ve 2005'te halka açıldı. Birkaç yıl sonra, 2011'de SHA-2, kullanılacak yeni standart karma işlevi olarak NIST tarafından ilan edildi. Ancak, SHA-1'den SHA-2'ye geçiş oldukça yavaştı ve geliştiricilerin ve bilgisayar bilimcilerinin büyük bir yüzdesinin nihayet SHA-2'ye geçişi ancak 2017'nin başlarında gerçekleşti. Kısa bir süre sonra Google, Şubat 2017'de başarılı bir SHA-1 çarpışma saldırısını duyurdu ve o zamandan beri SHA-1 artık güvenli kabul edilmemekte ve kullanımı önerilmemektedir.
Keccak işlevi (SHA-3), NIST'in önceki SHA-1 ve SHA-2'nin potansiyel kusurlarının üstesinden gelebilecek yeni bir kriptografik karma işlevi arayan bir kamu rekabeti ve inceleme sürecini duyurmasından sonra 2007 civarında geliştirilmeye başlandı.
Henüz SHA-2'ye önemli bir saldırı gösterilmemiş olsa da, hash fonksiyonlarının zamanla kırılması bekleniyor ve yeni bir standart fonksiyonun geliştirilmesi yıllar alıyor. Bunu hesaba katarak, 2004 ve 2005'te SHA-1'e gerçekleştirilen başarılı saldırılarla birlikte NIST, yeni bir kriptografik hash algoritmasının oluşturulması gereğini algıladı. 2012 yılında NIST, Keccak'ı yarışmanın kazanan algoritması olarak ilan etti ve SHA ailesinin en yeni üyesi (dolayısıyla SHA-3) olarak standardize edildi.
Keccak'ın NIST tarafından seçilmesinin nedenlerinden biri, diğer algoritmalardan daha güvenli ve verimli olduğu kanıtlanmış yenilikçi yapısından kaynaklanmaktadır. Teknik olarak konuşursak, SHA-3 algoritması, SHA-1 ve SHA-2 tarafından kullanılan Merkle Damgård yapısının aksine sünger işlevlerine (veya sünger yapısına) dayanır.
Şimdilik, SHA-2 hala güvenli kabul ediliyor ve yaygın olarak kullanılıyor. Örneğin, SHA-256, Bitcoin ve diğer kripto para birimleri tarafından kullanılır ve madencilik sürecinde çok önemli bir rol oynar. Başarılı bir şekilde saldırıya uğramaktan uzak göründüğü için, SHA-3'ün artan bir şekilde benimsendiğini görebiliriz. Bununla birlikte, kriptografi alanı ilerledikçe ve yeni kusurlar keşfedildikçe, önümüzdeki yıllarda daha fazla kriptografik hash algoritmasının geliştirildiğini göreceğiz.