Keccak

Tingkat Lanjut

Keccak (diucap “ketchak”) adalah fungsi kriptografi serbaguna yang dirancang oleh Guido Bertoni, Joan Daemen, Michaël Peeters, dan Gilles Van Assche. Meskipun dapat digunakan untuk tujuan lain, Keccak dikenal terutama sebagai fungsi hash yang memberikan peningkatan level keamanan dibandingkan dengan algoritma hash yang lebih lama, seperti SHA-1 dan SHA-2.

SHA adalah singkatan dari Secure Hash Algorithm yang mengacu pada serangkaian fungsi hash kriptografi yang diterbitkan oleh US National Institute of Standards and Technology (NIST). SHA-1 dan SHA-2 dirancang oleh US National Security Agency (NSA), sehingga menyajikan struktur yang serupa. Meskipun Keccak mendukung ukuran output (panjang hash) yang sama dengan SHA-2, mekanisme kerjanya cukup berbeda. Meskipun demikian, Keccak merupakan bagian dari jajaran SHA dan sering kali disebut SHA-3.

Theoretical attack (serangan teoretis) terhadap SHA-1 dilakukan pada tahun 2004 dan disediakan secara publik pada tahun 2005. Beberapa tahun kemudian, yaitu tahun 2011, SHA-2 dinyatakan oleh NIST sebagai fungsi hash standar baru yang akan digunakan. Namun, migrasi dari SHA-1 ke SHA-2 cukup lambat. Baru pada awal tahun 2017, sebagian besar pengembang dan ilmuwan komputer akhirnya bermigrasi ke SHA-2. Beberapa saat setelahnya, Google mengumumkan keberhasilan collision attack (serangan tabrakan) SHA-1 pada bulan Februari 2017 dan sejak saat itu, SHA-1 tidak lagi dianggap aman dan penggunaannya tidak disarankan.
Fungsi Keccak (SHA-3) mulai dikembangkan sekitar tahun 2007 setelah NIST mengumumkan kompetisi publik dan proses pemeriksaan untuk mencari fungsi hash kriptografi baru yang dapat mengatasi potensi kelemahan SHA-1 dan SHA-2 yang mendahuluinya.

Meskipun belum ada serangan yang signifikan terhadap SHA-2, fungsi hash diperkirakan menjadi lemah seiring waktu dan diperlukan beberapa tahun untuk mengembangkan fungsi standar baru. Dengan mempertimbangkan hal tersebut, bersama dengan keberhasilan serangan yang dilakukan terhadap SHA-1 pada tahun 2004 dan 2005, NIST merasakan perlunya pembuatan algoritma hash kriptografi baru. Pada tahun 2012, NIST menyatakan Keccak sebagai algoritma pemenang dari kompetisi tersebut, lalu Keccak distandarkan sebagai anggota terbaru dari jajaran SHA (karena itu disebut SHA-3). 

Salah satu alasan Keccak dipilih oleh NIST adalah struktur inovatifnya yang terbukti lebih aman dan efisien daripada algoritma lainnya. Secara teknis, algoritma SHA-3 mengandalkan fungsi spons (atau konstruksi spons) - berbeda dengan konstruksi Merkle Damgård yang digunakan oleh SHA-1 dan SHA-2.

SHA-2 masih dianggap aman dan digunakan secara luas untuk saat ini. Misalnya, SHA-256 digunakan oleh Bitcoin dan mata uang kripto lainnya, serta berperan penting dalam proses mining. Adopsi SHA-3 mungkin akan meningkat di waktu mendatang karena tampaknya masih belum berhasil diserang sama sekali. Meskipun demikian, akan ada lebih banyak algoritma hash kriptografi yang dikembangkan dalam beberapa tahun ke depan seiring dengan kemajuan bidang kriptografi dan ditemukannya kelemahan baru.