Apa itu hash dan mengapa itu penting dalam enkripsi?

Hashing adalah proses mendasar dalam enkripsi yang mengubah data dengan ukuran variabel menjadi output dengan ukuran tetap. Prosedur ini dilakukan melalui rumus matematis yang disebut fungsi hash, yang diimplementasikan sebagai algoritma.

Meskipun tidak semua fungsi hash melibatkan enkripsi, fungsi hash kriptografi memainkan peran penting dalam dunia cryptocurrency. Berkat mereka, blockchain dan sistem terdistribusi lainnya dapat mencapai tingkat integritas dan keamanan data yang signifikan.

Salah satu karakteristik penting dari fungsi hash, baik konvensional maupun enkripsi, adalah determinismenya. Ini berarti bahwa, dengan input yang sama, algoritma hash akan selalu menghasilkan output yang sama, yang juga dikenal sebagai digest atau hash.

Algoritma hash yang digunakan dalam cryptocurrency umumnya dirancang sebagai fungsi satu arah. Ini berarti bahwa, meskipun relatif mudah untuk menghasilkan output dari input, proses sebaliknya sangat kompleks, memerlukan sumber daya komputasi yang substansial. Secara umum, semakin sulit untuk memulihkan input asli, semakin aman algoritma hashing tersebut dianggap.

Cetak bagaimana fungsi hash bekerja?

Berbagai fungsi hash dapat menghasilkan output dengan ukuran yang bervariasi, tetapi untuk setiap algoritma tertentu, ukuran output selalu konstan. Misalnya, algoritma SHA-256 selalu menghasilkan output sebesar 256 bit, sementara SHA-1 selalu menghasilkan digest sebesar 160 bit.

Untuk mengilustrasikan, mari kita terapkan algoritma hash SHA-256 ( yang digunakan di Bitcoin) pada kata-kata "Gate" dan "Gate":

SHA-256

Masuk | Keluar (256 bit) --------|------------------ Gate | 7f43c1b0e1e6c6e5c5cb62d3f9a4e3cb9b7d3d3b3e3d3d3b3e3d3d3b3e3d3d3b Gate | 9b3e3d3d3b3e3d3d3b3e3d3d3b3e3d3d3b3e3d3d3b3e3d3d3b3e3d3d3b3e3d3d

Perhatikan bahwa sedikit perubahan (kapitalisasi huruf pertama) menghasilkan nilai hash yang sama sekali berbeda. Namun, karena kita menggunakan SHA-256, keluaran selalu akan memiliki ukuran tetap 256 bit (atau 64 karakter heksadesimal) - terlepas dari ukuran input. Selain itu, tidak peduli berapa kali kita menjalankan algoritma dengan input yang sama, keluaran akan tetap konstan.

Mengapa fungsi hash itu penting?

Fungsi hash konvensional memiliki berbagai aplikasi, termasuk pencarian dalam basis data, analisis file besar, dan manajemen data. Di sisi lain, fungsi hash enkripsi banyak digunakan dalam aplikasi keamanan informasi, seperti autentikasi pesan dan generasi tanda tangan digital. Dalam konteks Bitcoin, fungsi hash enkripsi sangat penting untuk proses penambangan dan juga berperan penting dalam generasi alamat dan kunci baru.

Potensi sejati dari hashing terwujud saat menangani volume informasi yang besar. Misalnya, mungkin untuk memproses sebuah file atau kumpulan data yang luas melalui fungsi hash dan menggunakan keluaran tersebut untuk memverifikasi dengan cepat akurasi dan integritas data. Ini mungkin dilakukan karena sifat deterministik dari fungsi hash: masukan yang sama akan selalu menghasilkan keluaran yang terkompresi dan disederhanakan (hash). Teknik ini menghilangkan kebutuhan untuk menyimpan dan "mengingat" sejumlah besar data.

Hashing sangat berguna dalam konteks teknologi blockchain. Blockchain Bitcoin, misalnya, melibatkan berbagai operasi hashing, terutama dalam proses penambangan. Faktanya, hampir semua protokol cryptocurrency bergantung pada hashing untuk mengelompokkan dan mengkonsolidasikan transaksi ke dalam blok, serta membuat tautan enkripsi antara setiap blok, secara efektif membentuk blockchain.

Fungsi hash enkripsi dan properti-properti mereka

Sebuah fungsi hash yang menerapkan teknik enkripsi disebut fungsi hash enkripsi. Secara umum, memecahkan fungsi hash enkripsi memerlukan sejumlah besar percobaan brute force. Untuk "membalikkan" fungsi hash enkripsi, diperlukan untuk menebak masukan melalui percobaan dan kesalahan sampai keluaran yang sesuai dihasilkan.

Untuk dianggap benar-benar aman, sebuah fungsi hash enkripsi harus memiliki tiga properti mendasar: ketahanan terhadap tabrakan, ketahanan terhadap pra-citra, dan ketahanan terhadap pra-citra kedua.

Ketahanan terhadap tabrakan

Sebuah tabrakan terjadi ketika input yang berbeda menghasilkan hash yang persis sama. Sebuah fungsi hash dianggap tahan terhadap tabrakan ketika kemungkinan menemukan tabrakan sangat rendah sehingga akan memerlukan waktu komputasi yang tidak praktis.

Resistensi terhadap pra-citra

Properti ini terkait dengan konsep fungsi satu arah. Sebuah fungsi hash dianggap tahan terhadap pra-citra ketika ada kemungkinan yang sangat rendah bagi seseorang untuk menemukan input yang menghasilkan output tertentu.

Resistensi terhadap pra-citra kedua

Sebuah serangan pra-citra kedua terjadi ketika seseorang berhasil menemukan sebuah input spesifik yang menghasilkan output yang sama dengan input lain yang sudah dikenal. Setiap fungsi hash yang tahan terhadap tabrakan juga tahan terhadap serangan pra-citra kedua.

Aplikasi dalam penambangan enkripsi

Dalam proses penambangan Bitcoin, fungsi hash memainkan peran penting. Para penambang perlu melakukan sejumlah besar operasi hashing untuk menemukan solusi yang valid untuk blok berikutnya. Secara spesifik, seorang penambang perlu menghasilkan hash untuk blok kandidatnya yang dimulai dengan jumlah nol tertentu, yang ditentukan oleh tingkat kesulitan penambangan.

Kesulitan penambangan secara otomatis disesuaikan oleh protokol Bitcoin untuk menjaga waktu rata-rata penambangan sebuah blok mendekati 10 menit, terlepas dari fluktuasi dalam tingkat hash jaringan.

Pertimbangan akhir

Fungsi hash adalah alat yang sangat penting dalam ilmu komputer, terutama saat berurusan dengan volume data yang besar. Ketika dikombinasikan dengan teknik enkripsi, algoritma hash menjadi sangat serbaguna, menawarkan keamanan dan autentikasi dengan berbagai cara. Fungsi hash kriptografi sangat penting untuk hampir semua jaringan cryptocurrency, menjadikan pemahaman tentang sifat dan mekanisme kerjanya penting bagi siapa saja yang tertarik dengan teknologi blockchain.

BTC0.22%
Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
  • Hadiah
  • Komentar
  • Posting ulang
  • Bagikan
Komentar
0/400
Tidak ada komentar
  • Sematkan
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)