Algoritma pengkomputeran, reka bentuk mekanisme, dan kriptografi yang diedarkan membentuk triniti suci teknologi blockchain. Pengkomputeran yang diedarkan menggunakan rangkaian komputer yang terdesentralisasi dan ada sebelum adanya blockchain dalam bentuk rangkaian torrenting.

Namun, laman torrent tidak mempunyai cara untuk mengatur tingkah laku peserta, di mana reka bentuk mekanisme memasuki blockchain. Ini memberi insentif kepada peserta rangkaian untuk bekerja untuk kebaikan rangkaian.

Kriptografi adalah yang berfungsi sebagai keselamatan untuk melindungi insentif tersebut. Kertas putih Bitcoin seminal ini menjelaskan bagaimana ketiga-tiga prinsip saintifik ini dapat dimainkan bersama untuk membentuk pertukaran nilai peer-to-peer yang selamat yang akan menghilangkan keperluan pihak ketiga dalam transaksi kewangan.

Walaupun masing-masing prinsip ini layak mendapat penjelasannya sendiri, artikel ini akan memfokuskan pada kriptografi, dan bagaimana algoritma penyulitan melayani blockchain.

Sejarah Kriptografi Ringkas

Kriptografi dalam beberapa bentuk telah wujud sejak zaman Mesir kuno. Sebelum zaman pengkomputeran, ini bermaksud menggunakan algoritma kriptografi sederhana yang disebut cipher untuk menghantar mesej. Salah satu yang paling kerap disebut adalah Caesar cipher, digunakan oleh Julius Caesar untuk berkomunikasi dengan jeneralnya di Empayar Rom. The Caesar cipher menggantikan setiap huruf pesan dengan huruf yang muncul tiga tempat setelahnya dalam abjad, jadi A menjadi D, B menjadi E dan sebagainya. Selagi sistem yang digunakan untuk menghasilkan ciphertext tetap rahsia, mesej itu juga boleh kekal rahsia.

Julius Caesar

Caesar melakukan lebih daripada sekadar membuat salad yang hebat, anda tahu

Kemudian, pada abad ke-16, Vigenere memperkenalkan konsep kunci penyulitan untuk algoritma kriptografi, yang dapat mendekripsi mesej berkod. Menggunakan Vigenere cipher, teks mesej ditranskripsikan ke dalam satu kata kunci yang diulang sehingga sesuai dengan panjang watak mesej asal. Kata kunci ini kemudian menghasilkan ciphertext menggunakan jadual.

Perkembangan kritikal di sini ialah keselamatan mesej yang dihantar menggunakan Vigener cipher bergantung pada kerahsiaan kunci, bukan sistem itu sendiri.

Perkembangan Abad ke-20

Masalah dengan jenis kod ini adalah bahawa mereka mudah pecah dengan menganalisis kekerapan huruf. Orang Jerman menggunakan Mesin Enigma secara meluas semasa Perang Dunia 2 kerana dapat menghasilkan ciphertext yang tidak dapat dipatahkan dengan menganalisis kekerapan huruf.

Mesin menggunakan sistem beberapa rotor untuk menghasilkan ciphertext. Jadi huruf “e” dalam pesan asli akan sesuai dengan berbagai huruf yang berbeda dalam teks penyekat. Kuncinya adalah pengaturan awal pemutar.

Mesin Enigma

Mesin Enigma dianggap tidak dapat dipecahkan

Walaupun Jerman berpendapat bahawa kod itu tidak dapat dipecahkan, Enigma adalah retak oleh orang Poland seawal tahun 1932. Cryptographers yang bekerja untuk tentera Inggeris di Bletchley Park, termasuk Alan Turing yang kini legenda, kemudian menemui cara untuk mengetahui kunci harian yang digunakan oleh orang Jerman.

Subuh Pengkomputeran

Pasca perang, tuntutan enkripsi dalam ruang perniagaan dan komersial meningkat sebagai alat untuk melindungi rahsia korporat. Semasa tahun 1970-an, IBM mengembangkan algoritma kriptografi Data Encryption Standard (DES). Namun, ia menggunakan kunci penyulitan kecil. Seiring dengan bertambahnya usia pengkomputeran, DES menjadi mudah menjadi kekuatan kasar, dan oleh itu terdapat permintaan untuk pembaruan. Standard Penyulitan Lanjutan yang diadopsi pada tahun 2000.

Walaupun banyak orang mungkin tidak menyedarinya, penyulitan kini menjadi sebahagian daripada kehidupan seharian. E-mel dan pemesejan teks, kata laluan, dan lapisan SSL di laman web semuanya melibatkan penggunaan enkripsi. Ia juga membentuk tulang belakang cryptocurrency. Disana ada pelbagai jenis algoritma kriptografi yang merangkumi pelbagai kes penggunaan, kebanyakannya sudah usang. Walau bagaimanapun, penggunaan kriptografi dalam blockchain merangkumi tanda tangan digital dan hashing.

Tandatangan Digital

Pembayaran cryptocurrency memerlukan tandatangan digital, dalam bentuk kunci peribadi. Apabila seseorang memasukkan kunci peribadi mereka terhadap transaksi pembayaran, ini akan menyulitkan transaksi. Apabila pembayaran sampai ke tempat tujuannya, penerima dapat menyahsulitkan transaksi menggunakan kunci awam pengirim.

Ini dikenali sebagai kriptografi asimetri, kerana bergantung pada sepasang kunci yang dihubungkan bersama oleh kriptografi. Ia lebih selamat daripada kriptografi simetri, di mana pengirim dan penerima menggunakan kunci yang sama. Dalam kes ini, kunci itu sendiri juga harus dihantar bersama dengan pembayaran, yang bermaksud lapisan keselamatan tambahan diperlukan untuk melindungi kunci.

Menipu

Blockchain juga bergantung pada hashing. Hashing adalah kaedah kriptografi untuk menukar segala jenis data menjadi rentetan watak. Selain memberikan keselamatan melalui enkripsi, hashing menciptakan penyimpanan data yang lebih efisien, kerana hash adalah ukuran tetap.

Ciri Algoritma Kriptografi Hashing

Algoritma hash kriptografi mesti memenuhi kriteria khusus agar berkesan:

  • Input yang sama mesti selalu menghasilkan output yang sama. Tidak kira berapa kali anda memasukkan data melalui algoritma hash, data mesti menghasilkan hash yang sama dengan watak yang sama dalam rentetan
  • Input tidak dapat disimpulkan atau dihitung menggunakan output. Tidak boleh ada cara untuk membalikkan proses hashing untuk melihat set data asal
  • Sebarang perubahan input mesti menghasilkan output yang sama sekali berbeza. Bahkan mengubah kes satu watak dalam kumpulan data harus membuat hash yang jauh berbeza
  • Hash mesti terdiri daripada bilangan watak yang tetap, tidak kira ukuran atau jenis data yang digunakan sebagai input
  • Membuat hash semestinya merupakan proses pantas yang tidak banyak menggunakan kekuatan pengkomputeran.

Seperti apa algoritma hashing

Bagaimana algoritma hash menghasilkan hash. Kredit Gambar: Wikimedia Commons

Bagaimana Hashing Berfungsi?

Blockchains mencantumkan setiap transaksi sebelum menggabungkannya menjadi blok. Penunjuk Hash menghubungkan setiap blok ke pendahulunya, dengan menahan hash data di blok sebelumnya. Kerana setiap blok menghubungkan ke pendahulunya, data di blockchain tidak dapat diubah. Fungsi hashing bermaksud bahawa perubahan dalam sebarang transaksi akan menghasilkan hash yang sama sekali berbeza, yang akan mengubah hash semua blok berikutnya. Untuk menyebarkan perubahan di seluruh blockchain, 51% rangkaian harus menyetujuinya. Oleh itu, istilah “serangan 51%”.

Blockchain yang berbeza menggunakan algoritma kriptografi yang berbeza. Blockchain Bitcoin menggunakan algoritma SHA256, yang menghasilkan hash 32-byte. Dogecoin dan Litecoin sama-sama menggunakan Scrypt, yang merupakan salah satu algoritma kriptografi yang lebih pantas dan lebih ringan.

Kriptografi adalah sains yang kompleks dan terperinci, yang menjangkau jauh di luar ruang lingkup blockchain. Terdapat banyak pembacaan lebih lanjut mengenai kriptografi, terutamanya bagi yang lebih cenderung secara saintifik atau matematik, ia adalah subjek yang menarik dengan banyak yang boleh diterokai.