Skip to main content

Apa itu hash?

Hash adalah rumus matematika yang mengambil serangkaian data dengan panjang variabel, biasanya dalam bentuk teks, dan mengubahnya menjadi nilai numerik panjang yang lebih pendek.Hash sering digunakan dalam database komputer untuk membuat pencarian lebih cepat dan lebih efisien.Mereka juga digunakan dalam enkripsi untuk memastikan bahwa kata sandi tidak dikompromikan dan untuk mengotentikasi tanda tangan digital, di antara penggunaan lainnya.Hash juga digunakan dengan nama fungsi hash, dan juga dapat dianggap sebagai algoritma.

Hash memainkan peran besar dalam memfasilitasi pencarian basis data.Dalam database yang terdiri dari nama, misalnya, jika pengguna mencari "John Doe," komputer harus mencocokkan semua karakter dalam pencarian dengan setiap entri database.Setiap karakter dalam nama akan memiliki 26 kemungkinan berbeda mdash;huruf -huruf alfabet Inggris mdash;Sementara panjang variabel entri juga akan memperlambat pencarian.

Sebaliknya, menerapkan fungsi hash akan membuat kehidupan komputer lebih mudah.Mengubah setiap string teks menjadi serangkaian angka akan menyederhanakan pencarian, karena komputer hanya akan memiliki sepuluh kemungkinan untuk memeriksa setiap karakter: digit "0" ke "9."Panjang tetap dari seri angka juga membantu komputer melakukan pekerjaannya dengan lebih efisien.

Dalam database dengan fungsi hash yang diterapkan, semua entri memiliki nomor unik yang sesuai.Ini disebut kunci hash.Dalam hal ini, ketika Anda melakukan pencarian, komputer pertama kali menerapkan fungsi hash ke input yang Anda tulis, seperti "John Doe."Ini menghasilkan nilai numerik, misalnya "456789."Komputer kemudian dapat dengan cepat mencocokkan hasil ini dengan kunci hash yang sesuai dengan entri yang benar.

Hash juga berfungsi sebagai tanda tangan digital.Misalnya, seorang pengirim, Robert, ingin mengirim dokumen kepada seseorang dan penerima, Mary, ingin memastikan dokumen itu belum dirusak saat dalam perjalanan.Pengirim, Robert, hanya harus menjalankan dokumen melalui fungsi hash, yang menghasilkan nilai numerik.Robert kemudian mengenkripsi kunci hash dan mengirim dokumen bersama dengan kunci terenkripsi.

Mary menerima kedua item dan mendekripsi kunci hash.Dia sekarang dapat melihat nilai numerik yang dihasilkan dari dokumen sebelum dikirim.Untuk memverifikasi bahwa dokumen di tangannya adalah yang persis sama, ia menjalankan dokumen melalui fungsi hash di komputernya.Terakhir, dia membandingkan kedua kunci.Jika mereka sama, maka dokumen itu tidak diubah dalam perjalanan ke penerima.

Ada banyak fungsi hash yang berbeda, masing -masing dengan rumus matematika mereka sendiri.Agar fungsi hash berfungsi, ia harus meminimalkan tabrakan apa pun, yang terjadi ketika dua entri basis data memiliki kunci hash yang sama.Fungsi hash juga harus satu arah.Itu berarti Anda dapat menghasilkan kunci dari entri atau dokumen database, tetapi tidak sebaliknya.Dengan kata lain, Anda tidak dapat "membalikkan rekayasa" dokumen asli dari kunci hashnya.