Algoritma Kriptografi

Ketika protokol Bitcoin mulai berlaku tahun 2009, dunia disuguhkan dengan sistem mata uang jenis baru yang diamankan dan diterbitkan dengan cara yang sepenuhnya berbeda dengan uang tradisional.

Mata uang fiat seperti Dolar AS atau Yen Jepang dijamin oleh kepercayaan pada sistem perbankan lama dan diterbitkan oleh bank sentral masing-masing negara. Setiap mata uang baru memasuki peredaran berdasarkan kebijakan moneter fleksibel yang diputuskan oleh masing-masing pemerintah dalam negeri. Dalam arti tertentu, mata uang fiat didukung oleh kepercayaan pada kekuatan finansial masing-masing negara dan militer yang melindungi kekuatan tersebut.

Sebaliknya, Bitcoin, dan selanjutnya semua mata uang kripto yang diciptakan setelah peluncuran Bitcoin, diamankan dan diterbitkan menggunakan praktik ilmiah “kriptografi.”

Pada akhirnya, Bitcoin beroperasi berdasarkan kebijakan moneter yang telah ditentukan sebelumnya dan dikendalikan oleh komputer yang tidak dapat diubah oleh satu orang, perusahaan, atau pemerintah. Daripada menaruh kepercayaan pada pemerintah atau lembaga, pengguna Bitcoin menaruh kepercayaan pada kriptografi dan serangkaian aturan transparan dari protokol yang memungkinkannya beroperasi dengan andal terlepas dari harga pasar atau sentimen pasar.

Apa Itu Kriptografi?

Kriptografi adalah ilmu yang mempelajari tentang enkripsi dan dekripsi informasi. Singkatnya, kriptografi adalah praktik mengubah pesan sehingga hanya pengirim dan penerima yang dituju yang dapat memahaminya.

Jika pesan terenkripsi dicegat oleh pihak lain selain penerima yang dituju, kriptografi akan membuat penyadap hampir tidak mungkin untuk memahami informasi apa yang terkandung di dalamnya.

Salah satu contoh kriptografi paling awal berasal dari abad ke-7 SM ketika orang Yunani kuno melilitkan potongan kulit dengan pesan rahasia yang ditulis di atasnya di sekeliling tongkat – sebuah metode enkripsi yang dikenal sebagai scytale. Setelah dibuka, potongan kulit tersebut akan memiliki coretan huruf disepanjang bagiannya yang hanya dapat diuraikan oleh orang dengan tongkat serupa dengan diameter yang sama.

Selama masa perang, kriptografi telah memainkan peran penting dalam mengamankan komunikasi yang dapat disadap antara pasukan yang tersebar. Dalam Perang Dunia II, penggunaan kriptografi untuk menguraikan transmisi radio Nazi yang dienkripsi dari mesin sandi Enigma terbukti penting dalam mengakhiri invasi di Eropa.

Maju cepat ke hari ini dan kriptografi sekarang memainkan peran mendasar dalam keamanan dan penerbitan mata uang kripto seperti bitcoin .

Kriptografi merupakan komponen penting dari mata uang kripto, yang digunakan untuk:

  • Buat pasangan kunci dompet kripto

  • Terbitkan bitcoin baru melalui proses penambangan

  • Menandatangani pesan transaksi secara digital

Bagaimana Bitcoin Menggunakan Kriptografi?

Keamanan Jaringan

Jumlah total sumber daya komputasi yang diarahkan untuk menambang bitcoin membantu mengamankan jaringan dari serangan siber. Hal ini secara kolektif dikenal sebagai "laju hash" jaringan. Semakin banyak penambang di jaringan, semakin tinggi laju hash dan semakin besar jumlah daya komputasi yang dibutuhkan untuk menguasai jaringan dengan mayoritas 51%.

Serangan 51% merupakan salah satu ancaman terbesar bagi jaringan blockchain publik. Agen jahat yang mampu mengumpulkan sumber daya yang cukup untuk mengendalikan setidaknya 51% dari hash rate blockchain memperoleh kemampuan untuk memblokir transaksi masuk, mengubah urutan transaksi, dan membelanjakan dana dua kali. Namun, dengan membuat proses komputasi menjadi sulit, jaringan bitcoin mencegah pelaku jahat mengambil alih kendali jaringan.

Kekekalan

Hashing SHA-256 juga bertanggung jawab untuk membuat transaksi berbasis blockchain tidak dapat diubah. Setelah transaksi digabungkan ke dalam blok baru dan diverifikasi oleh semua relawan lain dalam jaringan, setiap pesan transaksi di-hash menggunakan algoritma kriptografi SHA-256.

Transaksi yang sudah di-hash ini kemudian di-hash secara sistematis secara berpasangan untuk menciptakan sesuatu yang dikenal sebagai "Merkle Tree." Pasangan transaksi di-hash bersama hingga akhirnya semua transaksi dalam blok diwakili oleh satu nilai hash. Nilai tunggal ini menjadi Merkle Root dan disimpan di header blok.

Karena hash bersifat deterministik – artinya input yang sama akan selalu menghasilkan nilai output unik yang sama – setiap upaya oleh pelaku kejahatan untuk mengubah blok transaksi akan menghasilkan nilai Merkle Root yang sama sekali baru. Relawan lain dalam sistem akan dapat melihat Merkle Root yang diubah dibandingkan dengan blok yang valid dan menolaknya, sehingga mencegah korupsi dengan suara bulat.

Operasi Tanpa Kepercayaan

Sifat deterministik algoritma kriptografi memungkinkan pengguna jaringan untuk bertransaksi bitcoin tanpa memerlukan perantara untuk memverifikasi pembayaran.

Dengan tetap terdesentralisasi dan menghilangkan keterlibatan manusia, transaksi dapat diproses secara signifikan lebih cepat dan biayanya seringkali jauh lebih murah daripada solusi perbankan tradisional.

Kriptografi Apa yang Digunakan Bitcoin?

Membuat Kunci Pribadi dan Publik

Bitcoin menggunakan kriptografi kurva eliptik (ECC) dan Secure Hash Algorithm (SHA-256) untuk menghasilkan kunci publik dari kunci privat masing-masing.

Kunci publik digunakan untuk membuat alamat dompet kripto untuk menerima transaksi masuk, sedangkan kunci privat diperlukan untuk menandatangani transaksi dan membuktikan kepemilikan dana.

Anda dapat menganggap kunci pribadi sebagai nomor PIN bank Anda dan kunci publik sebagai nomor rekening bank Anda. Peretas membutuhkan keduanya untuk melakukan sesuatu yang tidak diinginkan terhadap keuangan Anda.

Kunci pribadi merupakan bagian penting dari pasangan kunci dan disimpan dalam dompet kripto. Secara teknis, dompet kripto menyimpan akses seseorang ke dana kripto mereka. Dana itu sendiri hanyalah entri data yang direkam pada blockchain dan dapat diidentifikasi dan dibuka menggunakan kunci yang disimpan di dompet Anda.

Kriptografi Kurva Eliptik

ECC adalah penggunaan kurva matematika khusus yang simetris secara horizontal. Jika Anda menggambar garis apa pun melalui kurva ini, garis tersebut akan memotong bentuknya hingga maksimal tiga kali. ECC adalah bagian penting dari mata uang kripto dan memungkinkan pengguna untuk membuat kunci publik. Untuk membuat pasangan kunci Bitcoin, Anda harus membuat kunci pribadi terlebih dahulu.

Kunci pribadi bitcoin adalah angka 256-bit yang dibuat secara acak (antara 1 dan 2²56, atau dua pangkat dua ratus lima puluh enam – angka yang sangat besar!). Pada layanan seperti Kraken, angka ini dibuat secara otomatis saat menyiapkan dompet kripto baru.

Kunci publik kemudian dibuat dari angka ini menggunakan perkalian kurva eliptik. Ini melibatkan pengambilan titik awal pada kurva eliptik (dikenal sebagai titik generator) dan mengalikannya dengan angka kunci privat acak untuk menghasilkan titik baru pada kurva.

Titik baru ini menjadi kunci publik dengan koordinat x dan y tertentu. Menemukan kunci privat sambil mengetahui kunci publik hampir mustahil karena betapa sulitnya menebak angka acak 256-bit. Ada sekitar satu dari 150.000 miliar miliar miliar miliar miliar miliar miliar peluang untuk menebaknya dengan benar.

Secara teori, dibutuhkan komputer kuantum dengan lebih dari 13.000.000 qubit fisik untuk menemukan angka ini dalam sehari. Hingga saat ini, salah satu komputer kuantum tercanggih di dunia, prosesor IBM Eagle , hanya memiliki 127 qubit (atau 0,00097% dari jumlah qubit yang dibutuhkan).

Dengan kata lain, sistem yang digunakan oleh mata uang kripto, setidaknya untuk saat ini, sepenuhnya aman.

SHA-256

Untuk membuat alamat dompet bitcoin, koordinat x dan y dimasukkan melalui algoritma SHA-256.

Fungsi hash kriptografi ini dikembangkan dan diterbitkan oleh Badan Keamanan Nasional Amerika Serikat (NSA) pada tahun 2001, dan pada dasarnya mengubah setiap masukan (dalam hal ini, koordinat kunci publik) menjadi kode 256 bit yang unik dan panjangnya tetap.

Kode ini disajikan dalam format heksadesimal 64 karakter, berisi campuran angka 0 hingga 9 dan huruf AF.

Fungsi kriptografi ECC dan SHA-256 dikenal sebagai fungsi “trapdoor” atau “deterministik”. Ini berarti keduanya hanya bekerja dengan satu cara dan tidak dapat dibalik untuk mengungkap input asli.

Meskipun memungkinkan untuk membuat kunci publik dari kunci pribadi, mustahil untuk membalikkan proses dan mengungkap kunci pribadi. Hal yang sama berlaku untuk mencoba menemukan kunci publik apa yang digunakan untuk membuat alamat dompet bitcoin. Hanya pemegang kunci publik yang memiliki informasi tersebut dan dapat menggunakannya untuk membuktikan kepemilikan alamat dompet bitcoin.

Perlu cara yang lebih baik untuk memahami hal ini? Bayangkan seseorang telah mencampur berbagai macam cat berwarna dari pilihan, seperti yang telah kita catat sebelumnya, 150.000 miliar miliar miliar miliar miliar miliar miliar pilihan untuk menciptakan satu warna yang unik.

Jika Anda mengetahui jumlah cat yang tepat, Anda akan dapat menghasilkan warna yang sama persis. Namun, bagaimana jika tidak? Mencoba membalikkan proses tersebut hampir mustahil.

Pada hakikatnya, beginilah cara kerja fungsi kriptografi jebakan ini dan apa yang menyebabkan masukannya tidak dapat dikenali jika dibandingkan dengan keluarannya.

Menerbitkan Bitcoin Baru

Unit bitcoin baru memasuki peredaran melalui proses yang disebut penambangan (mining machine). Penambangan adalah bagian dari mekanisme konsensus bukti kerja yang digunakan oleh blockchain Bitcoin untuk menambahkan blok data baru.

Hal ini dilakukan melalui penggunaan hashing SHA-256. Ribuan relawan jaringan – yang dikenal sebagai node penambangan – bersaing satu sama lain menggunakan komputer yang dirancang khusus untuk menghasilkan triliunan hash per detik.

Penambang pertama-tama mengambil header blok – bagian yang berisi semua informasi tingkat atas tentang blok termasuk cap waktunya, nilai target yang harus dikalahkan penambang, dan komponen penting lainnya – dari blok terbaru dalam rantai dan menyesuaikan jumlah yang disebut nonce .

Nonce adalah mnemonik yang mewakili angka yang hanya digunakan satu kali . Ini adalah bagian dari header blok yang dapat diubah untuk membuat nilai hash baru.

Tujuan dari kompetisi penambangan berbasis kriptografi sederhana saja. Para penambang menggunakan mesin mereka untuk secara otomatis menyesuaikan nomor nonce di header blok dan menjalankannya melalui algoritma hashing SHA-256 untuk menghasilkan suatu nilai.

Penambang mana pun yang menghasilkan nilai yang memiliki angka nol yang sama atau lebih di depannya dibandingkan dengan nilai target akan memenangkan kompetisi. Jika nilainya tidak mengalahkan nilai target, penambang menyesuaikan angka nonce lagi, mengulang header blok, dan menghasilkan nilai baru.

Proses ini diulang hingga seseorang berhasil.

Bitcoin yang baru dicetak diberikan kepada setiap penambang yang berhasil berdasarkan jadwal penerbitan tetap yang diprogram sebelumnya ke dalam kode sumber Bitcoin oleh penciptanya, Satoshi Nakamoto.

Kriptografi memainkan peran penting dalam memproses transaksi bitcoin dan menjaga keamanan jaringan melalui proses penambangan. Anda dapat membaca artikel Kraken Learn Center berjudul Apa itu Penambangan Bitcoin? untuk mempelajari lebih lanjut.

Tanda Tangan Digital

Tanda tangan digital sangat penting untuk memungkinkan pengirim membuktikan bahwa mereka memiliki kunci privat yang sesuai dengan kunci publik tertentu tanpa harus mengungkapkan kunci privat mereka kepada seseorang.

Bitcoin menggunakan algoritma tanda tangan digital kurva eliptik (ECDSA) untuk menyetujui dan mengirim transaksi secara kriptografis dari dompet kripto.

Hal ini melibatkan pengirim yang mengambil pesan transaksi hash – yang terdiri dari alamat dompet penerima, jumlah BTC yang dikirim, biaya apa pun yang dikenakan, dan asal bitcoin aslinya – menambahkan kunci pribadi mereka ke dalamnya dan membuat tanda tangan digital menggunakan proses matematika satu arah yang lain.

Lebih khusus lagi, ini melibatkan proses yang serupa dengan pembuatan kunci publik dari kunci privat yang disebutkan sebelumnya, dengan penambahan beberapa langkah ekstra.

Angka acak dibuat (mirip dengan kunci pribadi), yang kemudian dikalikan dengan titik generator yang sama yang digunakan untuk membuat kunci publik dompet, untuk membuat titik baru pada kurva elips. Sebut saja ini Titik A.

Koordinat X dari Titik A kemudian dikalikan dengan kunci pribadi pengirim dan ditambahkan ke pesan transaksi yang di-hash. Semua ini kemudian dibagi dengan angka acak yang dihasilkan di awal untuk menghasilkan nilai baru. Nilai ini berfungsi sebagai tanda tangan digital.

Untuk memverifikasi tanda tangan digital, penerima memperoleh dua titik pada kurva eliptik. Pertama, pesan dibagi dengan nilai tanda tangan digital untuk mendapatkan titik generator. Kemudian, koordinat X dari titik generator dibagi dengan nilai tanda tangan digital untuk menampilkan titik kedua pada kurva.

Terakhir, dengan memplot garis melalui kedua titik ini akan menghasilkan titik ketiga dan terakhir pada kurva elips. Titik terakhir ini harus memiliki koordinat X yang sama persis dengan Titik A, sehingga membuktikan bahwa tanda tangan digital dibuat menggunakan kunci privat yang sesuai.

Untungnya, dompet kripto digital melakukan semua proses verifikasi ini secara otomatis, tanpa memerlukan masukan apa pun dari pengguna.

Mengapa Kriptografi Penting?

Kriptografi memainkan peran penting tidak hanya dalam mengamankan jaringan mata uang kripto dari kerusakan, tetapi juga menyediakan cara yang tak terbantahkan untuk membuktikan kepemilikan dana tanpa memaksa pengguna menyerahkan informasi kunci pribadi sensitif mereka.

Tanpanya, jaringan mata uang kripto kemungkinan besar akan terpaksa mengandalkan perantara tepercaya dan tersentralisasi untuk mengamankan informasinya dan memfasilitasi pembayaran—sesuatu yang sepenuhnya bertentangan dengan sifat desentralisasi mata uang kripto publik berbasis blockchain.

Kriptografi memastikan kepercayaan dan keamanan dalam pengaturan blockchain dan berbagai blockchain menggunakan metode tanda tangan kriptografi yang berbeda. Elliptic Curve Digital Signature Algorithm (ECDSA) dan Schnorr signature adalah dua skema tanda tangan populer yang digunakan dalam platform blockchain. Bitcoin dan Ethereum, di antara sistem kriptografi lainnya, menggunakan ECDSA. Schnorr signature, yang awalnya diusulkan sebagai alternatif untuk ECDSA, juga digunakan dalam beberapa jaringan blockchain, seperti Polkadot.

Cardano menggunakan Edwards-curve Digital Signature Algorithm (EdDSA) dengan kurva eliptik Curve25519 sebagai kurva dasarnya (juga dikenal sebagai Ed25519). Hal ini memberikan verifikasi tanda tangan yang cepat dan ukuran tanda tangan yang kecil, yang membantu meningkatkan kinerja dan keamanan keseluruhan blockchain. Selain itu, Ed25519 dirancang untuk tahan terhadap beberapa jenis serangan kriptografi, sehingga menjadi pilihan yang lebih aman. Monero, Ripple, dan yang lainnya juga menggunakan Ed25519 sebagai algoritma tanda tangan mereka.

Update: 09 May 2025