Keccak

İleri Seviye

“Ketçak” olarak telaffuz edilen Keccak; Guido Bertoni, Joan Daemen, Michaël Peeters ve Gilles Van Assche tarafından tasarlanan çok yönlü bir şifreleme işlevidir. Keccak her ne kadar başka amaçlar için kullanılabilse de, SHA-1 ve SHA-2 gibi eski hash algoritmalarına kıyasla daha yüksek güvenlik seviyeleri sunan bir hash işlevi olarak bilinmektedir.

SHA, Secure Hash Algorithm'in kısaltmasıdır ve ABD Ulusal Standartlar ve Teknoloji Enstitüsü (NIST) tarafından yayınlanan bir dizi kriptografik karma işlevini ifade etmektedir. Hem SHA-1 hem de SHA-2, ABD Ulusal Güvenlik Ajansı (NSA) tarafından tasarlanmıştır ve bu nedenle benzer bir yapıya sahiptir.

Keccak işlevi (diğer adıyla SHA-3), 2007’de gerçekleşen NIST'in düzenlediği halka açık bir yarışmada geliştirilmeye başlanmıştır. Bunun yapılmasının arkasındaki amaç  SHA-1 ve SHA-2’nin kusurlarını gideren bir hash işlevi arayışının olmasıdır.

2004’te SHA-1’e yönelik bazı teorik saldırılar gerçekleştirilmiştir ve bu saldırılar daha sonra 2005'te halka duyurulmuştur. Daha sonra 2011’de yeni hash işlevlerinde kullanılmak üzere SHA-2  NIST tarafından yeni standart şifreleme işlevi olarak belirlenmiştir. Bununla birlikte, SHA-1'den SHA-2'ye geçiş oldukça yavaş gerçekleşmiştir ve 2017'nin başlarında, geliştiricilerin ve bilgisayar bilimcilerinin büyük bir yüzdesi nihayet SHA-2'ye geçişlerini yapmıştır. Kısa bir süre sonra Google, Şubat 2017'de başarılı bir SHA-1 çarpışma saldırısı (collision attack) olduğunu anons etmiştir ve o zamandan beri SHA-1’e olan güven azalmış ve kullanım açısından artık tavsiye edilmemektedir.

Henüz SHA-2'ye yönelik önemli bir saldırı gerçekleşmemiş olmasına rağmen, hash fonksiyonları zamanla etkinliklerini kaybedip kırılabilmektedirler ve yeni bir standart fonksiyonun geliştirilmesi yıllar alan bir süreçtir.Ve işte tam da bu yüzden NIST, 2004 ve 2005 yıllarında SHA-1'e karşı gerçekleştirilen başarılı saldırılarla beraber, yeni bir kriptografik hash algoritmasına ihtiyaç duyulduğu sonucuna ulaşmıştır. Daha sonra 2012 yılında NIST, Keccak'ı yarışmanın kazanan algoritması olarak ilan etmiş ve Keccak’ı SHA ailesinin (dolayısıyla SHA-3) en yeni üyesi olarak standartlaştırmıştır.

Keccak'ın NIST tarafından seçilmesinin nedenlerinden biri, diğer algoritmalardan daha güvenli ve verimli olduğu kanıtlayan yenilikçi yapısından kaynaklanmaktadır. Teknik olarak incelendiğinde, SHA-3 algoritması, SHA-1 ve SHA-2 tarafından kullanılan Merkle Damgård yapısının aksine, sünger işlevlerine dayanmaktadır.

Şimdilik, SHA-2 hala güvenli kabul edilen bir hash işlevidir ve yaygın olarak kullanılmaya devam edilmektedir. Örneğin, SHA-256, Bitcoin ve diğer kripto para birimleri tarafından kullanılan bir işlevdir ve madencilik sürecinde çok önemli bir rol oynar. Başarılı bir şekilde saldırıya uğramaktan çok uzak göründüğü için ileriye dönük SHA-3 kullanımının arttığını görebiliriz. Bununla birlikte, kriptografi alanı geliştikçe ve yeni kusurlar keşfedildikçe, önümüzdeki yıllarda daha fazla kriptografik karma algoritmaları geliştirilecektir.