Kriptografi (cryptography) adalah elemen penting dari mata uang kripto (cryptocurrency); tanpa kriptografi, tidak ada transaksi yang bisa diamankan. Ini bisa diibaratkan seperti, misalnya, saat Anda melakukan transaksi P2P, data Anda akan terekspos tanpa enkripsi, dan siapa saja dapat mencoba membaca struktur data. Oleh karena itu, public key dan private key adalah komponen utama untuk melakukan otorisasi transaksi ini.
Pada dasarnya, public key dan private key berperan untuk mengamankan transaksi, akan tetapi public key dan private key memiliki perbedaan dari segi tujuan penggunaan. Secara ringkas, kunci publik atau public key digunakan pada proses verifikasi transaksi yang telah diizinkan oleh pengguna. Kunci publik dapat diibaratkan seperti alamat dompet (wallet) dari suatu pengguna yang digunakan untuk menerima cryptocurrency dari pengguna lainnya.
Sementara itu, kunci pribadi atau private key digunakan untuk otorisasi transaksi pada akun dana cryptocurrency pengguna. Kunci publik bebas dibagikan kepada siapa pun, sedangkan kunci pribadi, seperti namanya, bersifat privat dan alamat private key tidak boleh seorang pun tahu, kecuali pengguna itu sendiri. Kenapa demikian? Karena private key memberikan akses ke akun dompet dana kripto suatu pengguna. Jika pengguna lain mengetahuinya, ada potensi terjadinya pencurian dana.
Oleh karena itu, public key dan private key adalah dua elemen penting yang harus dipahami konsep dan penggunaannya. Nah, artikel ini akan membahas lebih lanjut tentang apa itu public key dan private key.
Apa Itu Public Key dan Private Key
Public key dan private key digunakan untuk mendekripsi (decrypt) pesan yang dienkripsi dalam algoritma matematika kompleks pada metodologi kriptografi. Kunci publik dapat didistribusikan secara luas, sedangkan kunci pribadi dalam konteks penggunaan aset kripto hanya digunakan atau disimpan secara rahasia sebagai kata sandi (password) untuk melindungi aset digital yang ada di crypto wallet pengguna.
Private key biasanya bervariasi tergantung pada jenis crypto yang digunakan, meskipun umumnya semuanya menggunakan enkripsi 256-bit. Ini termasuk pada mata uang kripto Bitcoin (BTC), Ethereum (ETH), dan banyak lagi.
Sebagai contoh, format private key BTC adalah sebagai berikut: 0x01 dan 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4140. Ini mewakili hampir semua rentang nilai 2256-1. Sementara itu, contoh format kunci publik adalah sebagai berikut: 3048 00C9 18FA 0241 CF8D EFD5 FD37 EB2D 89B9 EA97 FC20 E069 5E35 EE31 C4FB F577 C6E4 7D86 BC8F 4811 362F 922B BAFA 2F40 C744 F01B C0DD 2881 2654 E0301 CA2B 4003 D673 CB266 0001233.
Pada dasarnya, key adalah urutan simbol acak tertentu yang tersedia untuk semua orang (dalam hal ini public key), sementara hanya boleh diketahui oleh pemiliknya saja (dalam hal ini private key). Dari sini, Anda sudah dapat membedakan seperti apa konsep dan tujuan penggunaan dari public key dan private key.
Public Key dan Private Key pada Crypto Wallet
Dompet mata uang kripto (crypto wallet) adalah tempat aset atau dana kripto Anda disimpan. Crypto wallet bisa menjadi contoh yang ideal dalam penggunaan public key dan private key. Dalam hal ini, public key pada cryptocurrency adalah alamat dompet (wallet address) dari pengguna yang boleh dikonsumsi publik dan digunakan untuk menerima aset kripto dari pengguna lain. Sementara itu, untuk mengirim dana kripto dan mengonfirmasi transaksi, maka dibutuhkan private key.
Masih sulit membedakan antara public key dan private key? Mari kita analogikan pada sebuah email. Dalam hal ini, public key diibaratkan seperti alamat email Anda, misalnya jojontampan@gmail.com, sedangkan private key adalah password dari akun email Anda. Tentu saja, alamat email boleh diakses atau diketahui oleh orang banyak, sedangkan password akun email hanya Anda saja yang boleh mengetahuinya.
Metode Kriptografi pada Cryptocurrency
Ada sejumlah metode kriptografi pada cryptocurrency, yaitu sebagai berikut:
- Hashing
- Symmetric Encryption
- Asymmetric Encryption
#1. Hashing
Hash atau hashing adalah salah satu fungsi kriptografi yang digunakan untuk memenuhi tuntutan terenkripsi dalam proses penyelesaian komputasi blockchain. Hash dirancang khusus untuk menciptakan sandi alamat akun pengguna untuk mengenkripsi transaksi antar akun. Agar enkripsi aman, huruf dan angka akan dimasukkan ke nilai yang disimpan (stored value) untuk meminimalkan risiko dekripsi yang mudah.
Sementara itu, stored value akan mengacu pada sidik jari digital (nilai hash) setelah konversi selesai. Biasanya, panjang hash akan tetap, dan jika seandainya ada suatu pihak yang berusaha memecahkan blockchain, itu mustahil untuk menebak panjang hash.
Baca selengkapnya: Mengenal Hash pada Blockchain.
#2. Enkripsi Simetris (Symmetric Encryption)
Symmetric encryption adalah jenis enkripsi yang paling populer, mudah, dan efektif. Pesan dienkripsi hanya dengan satu kunci yang mana kuncinya bisa berbeda atau identik antar pihak secara bersamaan. Kemudian, ini akan ditransmisikan ke penerima dan akan didekripsi setelah berhasil diterima dan diverifikasi.
#3. Enkripsi Asimetris (Asymmetric Encryption)
Berbeda dengan enkripsi simetris, enkripsi dan dekripsi pesan akan melibatkan dua kunci, yakni private key dan public key. Kunci publik digunakan untuk melakukan verifikasi transaksi setelah diminta, sedangkan kunci pribadi untuk menguraikan pesan atau transaksi. Konsep dari asymmetric encryption adalah menjaga keaslian transaksi dan meminimalkan risiko penurunan keamanan. Yang perlu diingat bahwa transaksi tidak dapat ditarik (diambil) kembali karena diotorisasi.
Cara Kerja Public key dan Private key
Cara kerja public key dan private key pada transaksi mata uang kripto adalah sebagai berikut:
- Pengirim dana memperoleh public key dari penerima.
- Pengirim dana mengenkripsi informasi berdasarkan public key
- Pengirim dana mengirimkan informasi terenkripsi kepada penerima.
- Penerima menggunakan private key miliknya untuk mendekripsi data.
Contoh kasus: Anda ingin mengirimkan 5 Bitcoin (BTC) kepada Katy (penerima). Anda telah mengetahui kunci publik Katy dan menggunakannya untuk mengenkripsi transaksi. Kemudian, Katy akan menerima transaksi dan mendekripsi transfer Anda sebesar 5 BTC dengan kunci pribadi Anda. Dalam hal ini, Katy harus menjadi satu-satunya pihak yang dapat mengotorisasi transaksi karena hanya dia yang tahu kunci pribadinya.
Jadi, kunci pribadi pada cryptocurrency adalah aset digital pribadi pengguna yang mana pengguna bebas mengelola dan mengotorisasi transaksi apa saja. Jika orang lain mengetahui kunci pribadi si pengguna, maka dana (aset) akan berisiko diambil atau dicuri.
Padangan Akhir
Jadi, public key dan private key adalah komponen penting dalam transaksi digital, dan isu keamanan kemudian jauh lebih diprioritaskan. Kunci publik boleh diakses oleh siapa aja, sementara kunci pribadi tidak, hanya pemilik yang boleh mengetahuinya, karena menyangkut akses ke dana di dalam wallet. Sebagai pengguna, Anda mesti berhati-hati dan penting, sekali lagi, memahami apa itu public key dan private key, serta bagaimana konsep dan penggunaannya.