SHA-3 ("'Keccak"') adalah algoritma variabel-bit hashing dikembangkan oleh sebuah kelompok yang dipimpin oleh Joan Dimen pada tahun 2012. Pada 5 Agustus 2015, algoritma ini disetujui dan diterbitkan sebagai FIPS 202 standar. Algoritma Sha-3 berdasarkan prinsip dari kriptografi spons.
Pada tahun 2004-2005, beberapa algoritma hashing diserang, termasuk serangan serius terhadap algoritma SHA-1 yang disetujui oleh Institut Nasional Standar dan teknologi (NIST).
Dalam respon, NIST mengadakan seminar terbuka dan mengumumkan kompetisi untuk mengembangkan algoritma hashing baru pada 2 November 2007.
Pada 2 Oktober 2012, pemenang kontes adalah algoritma Korcak dan standardisasi sebagai algoritma SHA-3 baru.
Pada 5 Agustus 2015, algoritma ini disetujui dan diterbitkan sebagai FIPS 202 standar.
Algoritma dikembangkan oleh Guido Bertoni, Joan Dimen, Gilles van Asche dari Stmicroelektronik dan Michael Peters dari NXP.
Algoritmanya didasarkan pada fungsi hash sebelumnya Panama dan Radogatún. Panama dikembangkan oleh Dimen dan Craig Clapp pada tahun 1998, RadioGatún dilaksanakan atas dasar Panama Dimen, Peters dan van Ashe pada tahun 2006.
Selama kontes, kontestan diizinkan untuk membuat perubahan algoritma mereka untuk memperbaiki masalah yang terdeteksi. Perubahan dibuat untuk algoritma Korcak:
Fungsi dari Keccak consists of the berikut: Keccak[r,c](M) {
Tahap menyerap dapat diwakili sebagai fungsi berikut: Keccak-f[b](A)
Operasi yang dilakukan pada setiap putaran mewakili fungsi berikut: Round[b](A,RC)
Di sini,fungsi membusuk(X, n) menunjukkan pergeseran siklik elemen X oleh posisi n.
R[] array adalah set nilai yang telah ditentukan berapa banyak bytes untuk shift di setiap putaran: