Apa itu Teknologi Blok Rantai (Blockchain)?

Jika kita biasa dengan bacaan-bacaan mengenai teknologi blockchain, nama yang sering dikaitkan dengan teknologi ini adalah Bitcoin. Namun, blockchain tidak terhad kepada bitcoin sahaja, tetapi penggunaannya boleh merangkumi pelbagai aspek seperti kewangan, logistik, pilihanraya, penyimpanan data malah politik sekalipun.

Artikel ini merangkumi subtopik-subtopik utama mengenai teknologi blockchain ini iaitu:

  1. Ciri-ciri utama teknologi blockchain
  2. Sejarah teknologi blockchain
  3. Mengapa blockchain?
  4. Bagaimana blockchain berfungsi?
  5. Integriti blockchain
  6. Kaedah serangan blockchain
  7. Maklumat tambahan
  8. Rujukan

Ciri-ciri utama

Walaupun teknologi blockchain merangkumi pelbagai aspek, terdapat persamaan antara ciri-ciri teknologi blockchain yang digunakan. Ciri-ciri ini adalah seperti berikut:

  1. Blockchain menyimpan maklumat dalam satu blok.
  2. Tiada satu badan atau satu pemain utama yang terlibat memastikan integriti data yang tersimpan dalam blok. Setiap blok ini dipantau dan disahkan oleh semua pemain yang terlibat. (Pemencaran kuasa/decentralization)
  3. Maklumat dalam blok tak boleh diubah oleh satu-satu pemain.
  4. Apabila maklumat dalam satu blok ini sudah selesai disimpan, ia akan dirantai dengan blok sebelumnya.
  5. Bagi mengubah kandungan satu-satu blok, satu persetujuan perlu diadakan antara majoriti pemain yang terlibat.
  6. Jika ada seseorang pemain cuba mengubah mana-mana blok, pemain-pemain lain akan sedar akan perubahan ini, dan integriti blok dapat dikekalkan.
This Photo by Unknown Author is licensed under CC BY-SA-NC

Sejarah teknologi blockchain

Aplikasi blockchain pertama iaitu Bitcoin mula diperkenalkan oleh seorang individu tak dikenali, Satoshi Nakamoto sekitar tahun 2008. Namun, sejarah blockchain bermula sebelum daripada tahun 2008. [1]

Sekitar tahun 1980-an dan 1990-an, telah wujud usaha untuk memperkenalkan sistem kewangan elektronik yang tidak bergantung kepada mana-mana institusi kewangan seperti bank. Namun, kebanyakan sistem ini mengalami masalah yang sukar dielakkan. Masalah terbesar ialah perbelanjaan dua-kali (double spending). [2]

Pada tahun 1991, Stuart Haber dan W. Scott Stornetta telah menerbitkan sebuah artikel mengenai kaedah untuk mencap waktu (time-stamping) sesuatu dokumen digital. Pengecapan waktu bagi sesuatu dokumen adalah penting untuk mengetahui tarikh wujud sesuatu dokumen digital itu. Jika sesuatu dokumen digital itu tiada tarikh wujud, maka sesiapa pun boleh mendakwa bahawa dialah yang menghasilkan dokumen itu. Ini boleh menimbulkan masalah berkenaan hak cipta sesuatu dokumen digital. [3]

Pada tahun 1998, Wei Dai telah memperkenalkan b-money sebagai satu matawang/aset digital yang tidak diselia oleh mana-mana institusi kewangan. Namun, b-money tidak berjaya direalisasikan kerana tiada kaedah perlaksanaan yang dipersetujui oleh pemain-pemain yang terlibat. [4]

Pada tahun yang sama, Nick Szabo telah memperkenalkan Bit Gold, satu jenis aset digital yang menjadi pelopor kepada Bitcoin. Bit Gold mempunyai pelbagai elemen yang serupa dengan Bitcoin, namun Bit Gold tidak dimulakan seperti Bitcoin. Ia hanya kekal sebagai satu konsep pada kertas. Szabo merupakan pelopor teknologi blockchain. [5]

Pada tahun 1997, Adam Back telah memperkenalkan satu elemen penting yang memacu teknologi blockchain dalam bitcoin, iaitu hashcash. Hashcash pada asalnya adalah satu mekanisma untuk mengelakkan daripada berlakunya serangan nafi khidmat (Denial of Service/DoS) pada e-mel spam. Dalam bitcoin, ia digunakan sebagai bukti kerja dilaksanakan (proof of work) atau lebih popular dikenali sebagai penggalian (mining).

This Photo by Unknown Author is licensed under CC BY-SA

Pada tahun 2005, Hal Finney telah memperkenalkan konsep bukti kerja boleh dilaksanakan guna semula (reusable proof of work). Konsep ini juga memperkenalkan matawang/aset kripto, namun ia tidak berjaya direalisasikan kerana masih memerlukan satu pusat utama untuk beroperasi.

Akhirnya, pada tahun 2008, seorang individu yang tidak diketahui identiti sebenarnya telah menerbitkan satu kertas putih (whitepaper) yang membawa konsep bitcoin, satu matawang/aset kripto yang tidak berpusat, bebas daripada inflasi, dan menyelesaikan masalah-masalah yang wujud daripada usaha-usaha sebelumnya. Individu tersebut adalah Satoshi Nakamoto. [1]

Mengapa blockchain?

Dalam kehidupan bermasyarakat, ada pelbagai interaksi yang dilakukan antara seseorang individu, dengan individu lain dalam masyarakat tersebut. Interaksi-interaksi ini adalah seperti perbualan, pemberian barang, pengundian, transaksi jual-beli dan media sosial.

Secara kita tidak sedari, sebahagian daripada interaksi ini memerlukan pihak ketiga yang dipercayai oleh kedua-dua belah pihak. Lihat sahaja pada badan-badan kerajaan dan swasta yang ada seperti institusi kewangan, institusi kehakiman, suruhanjaya pilihanraya, syarikat kiriman barang, pembekal internet dan pelbagai contoh lain yang ada di sekeliling kita.

Kewujudan pihak ketiga ini bukanlah suatu yang negatif secara mutlak. Malah, tanpa kewujudan pihak ketiga, manusia tidak dapat maju seperti keadaan hari ini. Namun, kewujudan pihak ketiga juga boleh membawa masalah jika kepercayaan yang diberikan, dikhianati oleh pihak ini. Masalah korupsi, salah guna kuasa, penyeludupan dan penjualan data peribadi adalah antara contoh yang berkait dengan pihak ketiga.

This Photo by Unknown Author is licensed under CC BY

Dalam interaksi yang memerlukan pihak ketiga, ada dua elemen penting yang terlibat iaitu pemindahan barang/maklumat dan kepercayaan. Kita ambil dua contoh yang mudah, penghantaran barang, dan sistem pilihanraya.

Dalam penghantaran barang jarak jauh, wujud tiga pihak, iaitu pemilik asal, pemilik baharu dan pihak pengirim barang(syarikat pos). Pemilik asal memberikan barang kepada pihak pengirim, dan pihak pengirim menghantar barang tersebut kepada pemilik baharu. Dalam proses penghantaran, kedua-dua pemilik asal dan pemilik baharu meletakkan kepercayaan kepada syarikat yang mengirimkan barang untuk menghantar barang tersebut.

Dalam sistem pilihanraya pula, tiga pihak yang terlibat ialah pengundi, calon, dan institusi pilihanraya. Pengundi memilih calon berdasarkan undian. Undian tersebut diselia oleh institusi pilihanraya, dan keputusan undian dibuat oleh institusi pilihanraya.

Dalam kedua-dua contoh di atas, pihak ketiga boleh melakukan pengkhianatan terhadap kepercayaan yang diberikan.

Teras utama dalam teknologi blockchain ialah menghapuskan sepenuhnya atau mengurangkan peranan pihak ketiga, dan mengagihkan kuasa tersebut secara adil kepada semua individu yang terlibat.

Bagaimana blockchain berfungsi?

Blockchain bukanlah suatu blok fizikal yang dirantai. Namun, gambaran fizikal tersebut adalah satu analogi yang sesuai dengan konsep blockchain itu sendiri.

Pertama, dalam sesebuah blok tersimpan segala maklumat berkaitan interaksi antara dua pihak yang terlibat. Maklumat ini seperti transaksi wang, undian, lokasi barang kiriman dan data individu. Blok yang dimaksudkan boleh terdiri dalam bentuk pangkalan data umum (public database)

Kedua, bagi menjamin integriti sesebuah blok, data di dalam blok tersebut perlu disahkan dan dipersetujui oleh semua pihak yang terlibat. Pengesahan dan persetujuan ini dibuat secara umum melalui tandatangan digital yang tidak boleh dipalsukan.

Ketiga, pengesahan dan persetujuan bersama antara semua pihak ini direkodkan dalam satu tandatangan digital yang unik (istilah teknikal ialah Hash). Tandatangan ini kemudiannya diumumkan kepada semua pihak dan didaftarkan sebagai tandatangan unik bagi keseluruhan maklumat dalam blok tersebut. Jika mana-mana pihak cuba mengubah maklumat asal, maka tandatangan unik tersebut akan berubah, dan semua pihak akan menyedari perubahan tersebut, dan boleh bertindak menafikan perubahan itu.

Keempat, apabila maklumat dalam sesebuah blok telah lengkap, ia akan dirantai kepada blok sebelumnya. ‘Rantai’ ini dibuat dengan menggabungkan tandatangan blok sebelumnya, dengan tandatangan unik dalam blok yang terbaru. Gabungan kedua-dua tandatangan ini, menjadi tandatangan utama bagi blok tersebut.

Integriti Blockchain

Integriti maklumat yang wujud di dalam sesebuah blok, tidak memerlukan mana-mana pihak ketiga untuk menjaga blok tersebut. Semua pihak yang terlibat, berperanan mengesahkan integriti maklumat yang disimpan, dan membuat persetujuan bersama.

Integriti ini diperkukuhkan lagi dengan merantai sesebuah blok, dengan blok sebelumnya. Jika maklumat di dalam sesebuah blok diubah, maka keseluruhan tandatangan pada blok itu, dan blok-blok yang dirantai selepasnya, akan berubah. Oleh yang demikian, apa-apa pengkhianatan terhadap maklumat di dalam sesebuah blok, dapat dikesan oleh semua pihak yang terlibat, dan bukan pihak ketiga.

Kaedah serangan blockchain

Dalam interaksi yang memerlukan pihak ketiga, sesuatu serangan boleh dilakukan dengan menyerang pihak ketiga tersebut. Serangan ini boleh dilaksanakan oleh mana-mana individu, termasuklah pihak ketiga sendiri. Antara contoh serangan yang telah berlaku adalah pencerobohan data dan korupsi pihak ketiga. Serangan-serangan ini dapat dielakkan dengan menetapkan undang-undang tertentu bagi menghukum penyerang. Namun sistem ini juga masih terdedah kepada masalah sama kerana undang-undang itu dilaksanakan oleh pihak ketiga.

Adakah blockchain ini terbukti selamat daripada apa-apa serangan?

Walaupun integriti blockchain itu dipelihara melalui persetujuan bersama, ia masih terdedah kepada serangan. Antara serangan yang boleh berlaku ialah serangan 51% dan serangan komputer kuantum.

Serangan 51% berlaku apabila majoriti daripada pihak yang terlibat, merancang untuk mengubah maklumat yang tersimpan pada blok. Serangan ini sukar berlaku kerana sukar bagi majoriti sesebuah masyarakat itu untuk menyerang maklumat yang melibatkan majoriti masyarakat itu sendiri.

Serangan daripada komputer kuantum boleh berlaku dengan menembusi keselamatan pada tandatangan digital setiap blok. Piawaian keselamatan yang digunakan hari ini adalah berdasarkan daripada SHA-256 (Secure Hash Algorithm) dan ECC (Elliptic curve cryptography). Algoritma Grover tidak mampu menembusi SHA-256. Ia hanya mampu mengurangkan kesukarannya daripada O(N) penilaian, kepada O(N1/2) penilaian menggunakan serangan hentam kromo (brute force attack). Algoritma ini berbeza dengan algoritma Shor yang menyerang terus kepada algoritma ECC dan RSA, dan mengurangkan masa penilaian secara eksponen (daripada masa eksponen kepada masa polinomial).

This Photo by Unknown Author is licensed under CC BY

Maklumat tambahan

·      Perbelanjaan dua-kali 

Pernahkah anda tertanya, apabila anda menggunakan e-wallet TnGo, apa yang menghalang anda daripada membuat 2 pembayaran sekaligus pada satu-satu masa? Andaikan ada dua pengimbas yang mengimbas kod QR anda pada satu-satu masa. Adakah anda berjaya membuat 2 transaksi sekaligus?

Bayangkan situasi ini pula: Andaikan anda mempunyai RM 100 dalam dompet elektronik yang tidak diselia oleh mana-mana institusi kewangan.  Anda boleh menciplak duit anda sesuka hati, daripada RM100 menjadi RM200, menjadi RM400 dan seterusnya. Kemudian, anda boleh membelanjakan wang anda ini di kedai. Maka, nilai duit ini sudah tidak boleh dikawal dan terdedah kepada inflasi.

  • Tandatangan blok

Sesuatu blok pada satu rantaian blokchain, mempunyai tandatangan masing-masing yang unik. Tandatangan ini datang dalam bentuk Hash yang terhasil daripada beberapa gabungan maklumat lain. Istilah teknikal yang digunakan ialah Hash dan saya akan gunakan istilah ini bagi menerangkan pendetilan tandatangan tersebut.

Apabila sesuatu maklumat didaftarkan pada blok, ia bukanlah datang dalam bentuk sebenar seperti ‘Identiti A mengundi calon 1, Identiti B mengundi calon 2, …’. Tetapi, maklumat ini didaftarkan dalam bentuk Hash yang menggunakan algoritma SHA-256.[13] Hash ini unik bagi setiap maklumat yang tersimpan didalamnya. Anda boleh gunakan pautan berikut untuk mencuba: https://andersbrownworth.com/blockchain/blockchain  

  • Rantaian Blok

Apabila maklumat pada sesebuah blok telah lengkap, ia akan dirantai dengan blok sebelumnya dengan menggabungkan Hash daripada blok sebelumnya dengan segala maklumat di dalamnya untuk membentuk Hash bagi blok tersebut. Lihat pada gambar sebelum ini, andaikan pihak daripada calon 1 ingin mengubah undian pada blok pertama. Ia akan mengubah Hash bagi blok tersebut, dan blok-blok seterusnya. Dalam bahasa mudah, rantaian tersebut telah putus, dan kesemua pihak dapat mengesan perbuatan calon 1 tersebut. Keseluruhan proses ini berlaku tanpa kewujudan pihak ketiga.

  • Bukti kerja dilaksanakan (Proof of Work/PoW)

Bukti kerja dilaksanakan adalah satu komponen utama dalam teknologi blockchain, terutamanya bitcoin. Istilah yang lebih kerap digunakan ialah penggalian (mining). Pihak-pihak yang terlibat dalam penggalian ini menunjukkan bukti kerja dilaksanakan dengan mencari nonce pada sesuatu blok yang menghasilkan Hash dengan permulaan beberapa digit 0. Dalam rajah di atas (blok berwarna hijau), setiap blok mempunyai Hash yang bermula dengan 4 digit kosong.

Apabila maklumat baharu dimasukkan dan lengkap dalam sesuatu blok, pihak yang terlibat perlu mencari nonce yang baharu supaya Hash yang dihasilkan, bermula dengan beberapa digit 0 yang telah ditetapkan. Hash yang terhasil itu mengandungi 3 maklumat iaitu maklumat pada blok, maklumat Hash daripada blok sebelumnya, dan nonce bagi blok tersebut.

Bagi bitcoin, kesukaran mencari nonce ditetapkan pada kadar 10 minit setiap blok. Ini bermaksud, segala transaksi melibatkan bitcoin, akan disahkan dalam masa 10 minit sahaja, iaitu apabila blok tersebut telah dirantai dengan blok sebelumnya.

Rujukan

  1. Bitcoin: A Peer-to-Peer Electronic Cash System. Satoshi Nakamoto. (diperoleh melalui: https://bitcoin.org/bitcoin.pdf ).
  2. A Next-Generation Smart Contract and Decentralized Application Platform. Vitalik Buterin.(diperoleh melalui: https://ethereum.org/en/whitepaper/ ).
  3. Haber, S., & Stornetta, W. S. (1991). How to time-stamp a digital document. Journal of Cryptology, 99–111. doi: https://doi.org/10.1007/BF00196791
  4. B-Money. Wei Dai. (Diperoleh melalui: http://www.weidai.com/bmoney.txt ).
  5. Bit Gold. Nick Szabo. (Diperoleh melalui: https://nakamotoinstitute.org/bit-gold/ ).
  6. Hashcash – A Denial of Service Counter-Measure. Adam Back. (Diperoleh melalui: http://www.hashcash.org/papers/hashcash.pdf ).
  7. Shelling Out: The Origins of Money. Nick Szabo. (Diperoleh melalui: https://nakamotoinstitute.org/shelling-out/ ).
  8. RPOW – Reusable Proofs of Work. Hal Finney. (Diperoleh melalui: https://nakamotoinstitute.org/rpow/ ).
  9. https://www.investopedia.com/terms/b/blockchain.asp
  10. https://www.forbes.com/sites/rogerhuang/2020/12/21/heres-why-quantum-computing-will-not-break-cryptocurrencies/?sh=54f49bd9167b
  11. Shor, Peter W. (1995) Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer. https://doi.org/10.1137/S0036144598347011
  12. Grover, L.K. (1996) A fast quantum mechanical algorithm for database search. https://arxiv.org/abs/quant-ph/9605043
  13. https://www.n-able.com/blog/sha-256-encryption
Total
98
Shares
Leave a Reply

Your email address will not be published.

Related Posts