Secure Hash Algorithm (SHA) merupakan algoritma hash yang digunakan oleh pihak otoritas sertifikasi untuk menandatangani sertifikat dan CRL (Certificates Revocation List). SHA ini pertama kali diperkenalkan pada tahun 1993 oleh NSA yang diawali dengan SHA 0. Fungsi ini dimanfaatkan untuk menghasilkan nilai hash yang unik untuk melindungi file.
Perkembangan teknologi juga mengharuskan melakukan pengembangan kriptografi keamanan hash. Hal tersebut mengahasilkan solusi kriptografi pengembangan SHA dari segala macam bentuk evaluasi untuk menghilangkan segala macam bentuk kelemahan SHA. Oleh karena itu ada beberapa versi SHA 0, SHA 1, dan SHA 2 bahkan ada beberapa yang mengatakan SHA 256.
Apa Itu Hash?
Hash ini merupakan kriptografi yang dibentuk menggunakan angka sebagai kode unik. Fungsi hash kriptografis yang baik berbentuk algoritma matematika yang dapat dijalankan pada file apapun. Misalnya pada dokumen, suara, video, gambar dan lain sebagainya. Hasil dari proses hash pada file yang telah dimasukkan akan menghasilkan output yang sama, namun pada proses pengiriman akan melakukan proses kriptografi yang menghasilkan fungsi kriptografi. Kriptografi hash ini merupakan poin penting yang terjadi pada proses otentikasi dan integritas digital.
Layanan otoritas sertifikasi PKI Certificate Authority (CA) menggunakan kriptografi hash untuk mengkonfirmasi identitas dan permintaan sertifikat digital, baik itu konfirmasi serta melakukan penandatanganan sertifikat (Code signing certificate). Jika kriptografi hash yang digunakan oleh PKI tidak dapat dipercaya maka tidak akan dapat melakukan validasi sertifikat digital yang telah ditandatangani CA.
Serangan Hash
Kekuatan kriptografi hash terletak pada kemampuan untuk memastikan bahwa seluruh konten yang dikirimkan mampu menghasilkan kode unik yang sama antar input dan output.
Terdapat dua jenis serangan hash yakni, A collision (Tabrakan) dan the preimage. Serangan a collision terjadi ketika dua file berbeda dapat menghasilkan hash yang identik. Sedangkan serangan hash the preimage melakukan duplikasi file dari hasil hash yang diterima. Dimana penyerang hanya mendapatkan hasil hash file yang berupa kode unik matematika, namun mampu membuat file yang sama dengan yang dikirimkan.
Kriptografi hash memiliki satuan bit, dan dapat dinyatakan kuat jika memiliki panjang bit efektif yang telah dinyatakan dikurangi 1. Contoh jika sertifikat memiliki kriptografi hash 128 bit, maka dapat dinyatakan kuat jika panjang bit efektif sebesar 127 bit.
Secure Hashing Algorithm 1 (SHA 1)
SHA 1 merupakan hashing yang dikembangkan oleh United States National Security Agency (NSA) dan diterbitkan sebagai standard federal pada tahun 1995 oleh United States National Institute for Standards and Technology (NIST).
Pada tahun 2017, SHA 1 memiliki masalah serangan collision (tabrakan) yang merusak nama baik dan tidak dipercaya kembali sebagai bentuk perlindungan penandatanganan sertifikat. Hal tersebut mengangkat SHA 2 sebagai standard hashing.
Seluruh vendor browser ternama seperti Microsoft, google, Mozilla, dan apple telah melakukan peringatan agar seluruh pelanggan, pengguna layanan dan produk mereka yang masih menggunakan SHA 1 beralih ke SHA 2. Browser mengharapakan bahwa pengaturan kriptografi sertifikat digital seperti SSL sudah menggunakan SHA 2 sebagai standard utama. Masih menggunakan kriptografi SHA 1, browser akan menampilkan kesalahan atau tingkat konfigurasi sertifikat digital Anda tidak akan maksimal. Hal tersebut akan sangat mempengaruhi tingkat keamanan situs Anda meskipun sudah menggunakan sertifikat digital keamanan (SSL).
Sayangnya, perpindahan dari SHA 1 ke SHA 2 adalah operasi satu arah di sebagian besar skenario server. Misalnya, setelah Anda memindahkan sertifikat server web dari SHA 1 ke SHA 2, klien yang tidak memahami sertifikat SHA 2 dapat melihat peringatan atau kesalahan atau gagal. Pastikan Anda memahami proses konfigurasi perpindahan penggunaan hash SHA 1 ke SHA 2 agar tidak terjadi kesalahan fatal yang berakibat pada tingkat keamanan situs Anda.
Anda dapat membaca kembali perbedaan SHA 1 dan SHA 2 pada blog SSL Indonesia sebelumnya. Lakukan subscribe untuk mendapatkan informasi menarik terkait dengan perkembangan keamanan website.