RSS Amplifier

Indirect Resource · May 2, 2021

Alicecoin: Bagian 2

0
Sign in to vote or save

This page did not load. You can still read it on the original site — the toolbar below keeps your place in the directory.

Sebuah Cerita Fiksi untuk Memahami Bagaimana Cara Bitcoin Bekerja

Pengantar

Pembaruan Terkini: 19 November 2022
Sumber: Unsplash

Pada artikel sebelumnya, Alice menawarkan sebuah proposal (Alicecoin Whitepaper) yang dinamakan sebagai Alicecoin ke kelas (X), untuk memecahkan masalah single point of attack/failure apabila kelas (X) memutuskan untuk menunjuk satu pihak (Charlie) sebagai “bank” untuk mengatur sistem uang kas di kelas tersebut.

Hanya satu orang dari kelas (X), yaitu Bob, yang tertarik untuk mendengarkan penjelasan lebih lanjut mengenai Alicecoin.


“Ok, Alice. Mohon dilanjutkan penjelasannya.” pinta Bob.

“Ok, Bob. Thanks sebelumnya.” sahut Alice.


Alicecoin Protocol

Agar Alicecoin tersebut dapat berjalan dengan baik, Alice menyadari bahwa dengan tidak adanya seseorang di kelas (X) yang ditunjuk secara spesifik untuk melakukan pengawasan dan pencatatan, dibutuhkan cara main (protokol) yang baru untuk para partisipan yang terlibat dalam sebuah sistem yang baru ini.

Atau juga bisa disebut sebuah mekanisme persetujuan atau konsensus (consensus mechanism/consensus protocol).

Untuk mudahnya kita sebut saja Alicecoin Protocol.

Consensus mechanisms (also known as consensus protocols or consensus algorithms) allow distributed systems (networks of computers) to work together and stay secure.

~ Jake Frankenfield (Investopedia)

Mekanisme konsensus dari Alicecoin, adalah sebagai berikut:

A. Siapapun Boleh Berpartisipasi Sebagai Pengawas dan Pencatat di Alicoin Network

Seperti layaknya sebuah jaringan peer-to peer (P2P):

  1. Setiap orang di kelas (X) dapat berpartisipasi dan mengambil peran apapun (tidak ada hirarki) di dalam di jaringan Alicoin (Alicecoin Network) ini, apakah baik sebagai pengawas dan pencatat dan/atau sebagai pengguna di dalam jaringan ini.

  2. Dan siapapun yang sudah berpartisipasi dalam jaringan ini, memiliki hak untuk meninggalkan jaringan ini kapanpun juga dan apabila memutuskan untuk bergabung kembali, satu-satunya aturan yang harus dipatuhi, tanpa harus mempercayai siapapun, adalah menerima semua isi dari sebuah buku besar bersifat publik (public ledger) di Alicecoin Network.

B. Sistem Transaksi di Alicecoin Network

Siapapun di kelas (X) yang ingin melakukan sebuah transaksi harus:

  1. Menggunakan Alicecoin (disingkat: ALC) yang dia dapatkan dari sebuah/beberapa transaksi sebelumnya (previous transaction) persis seperti transaksi tunai di dunia nyata — yang sudah tercatat (valid) di dalam public ledger dari ALC Network.

  2. Dalam melakukan sebuah transaksi, siapapun harus menyampaikan pesan transaksinya secara langsung ke seluruh orang (broadcast) yang mengambil peran sebagai pengawas dan pencatat (kita sebut saja: petugas) dari ALC Network tersebut.

    Apabila tidak memungkinkan, setidaknya komunikasi tersebut harus disampaikan ke salah satu petugas dan petugas tersebut harus meneruskan (forward) ke petugas lainnya dan seterusnya sampai pada akhirnya semua petugas mendengar pesan transaksi tersebut. Seperti sebuah pesan berantai.

  3. Semua transaksi yang sudah valid dan tercatat di dalam public ledger, tidak dapat dikembalikan atau diubah (immutable) TANPA alasan apapun.

C. Sistem Pengawasan dan Pencatatan di Alicecoin Network

Dalam melakukan pencatatan ke dalam public ledger dari ALC Network:

  1. Setiap petugas WAJIB mengecek kepemilikan dan jumlah ALC (memverifikasi) dari siapapun yang membuat dan mengirim pesan transaksi tersebut.

  2. Apabila poin.1 di atas valid, setiap petugas WAJIB melakukan pencatatan transaksi tersebut ke dalam public ledger dari ALC Network.

  3. Setiap pencatat harus mencatat semua transaksi yang terjadi di kelas (X) dengan menggunakan buku dengan jumlah total baris per halaman yang sama dan total jumlah halaman yang sama pula.

    Ada atau tidak adanya transaksi yang terjadi, setiap 10 (sepuluh) menit, seluruh petugas harus pindah ke halaman/lembar baru…


“Tunggu!” kata Bob.

Ada beberapa hal yang belum dimengerti:

  1. Dari mana asalnya ALC ? Bagaimana dapat melakukan sebuah transaksi apabila tidak ada seseorang yang berlaku untuk membuat atau menerbitkan (mint) ALC? Seperti semacam “bank sentral”.

  2. Kalau ada sebuah sistem atau beberapa orang yang ditunjuk untuk melakukan penerbitan ALC, apakah ALC itu berbentuk seperti uang kertas atau koin?

  3. Bagaimana seorang petugas mau menjalankan tugasnya dengan benar dan jujur apabila terdiri dari banyak petugas yang melakukan pengawasan dan pencatatan dalam waktu yang bersamaan? Bagaimana caranya?

“Pertanyaan yang bagus, Bob!” sahut Alice.

Masih ingat bahwa tujuan dari ALC adalah untuk membuat sebuah sistem transaksi tunai TAPI dapat dicatat dan dilacak oleh siapapun/setidaknya di kelas (X)?

Kalau iya, mari kita lanjutkan terlebih dahulu.


D. Mekanisme Imbalan (Insentif) untuk Para Pengawas dan Pencatat di ALC Network

Tentunya apabila sistem transaksi ini mau berjalan baik, perlu dipikirkan bagaimana sebuah mekanisme insentif (incentive mechanism) yang baik agar para petugas mau menjalankan tugasnya dengan benar dan jujur.

Oleh karena itu selama mereka melakukan pencatatan dalam kurun waktu setiap 10 menit tersebut:

  1. Di saat yang bersamaan setiap petugas harus menebak sebuah soal matematika yang berasal dari halaman sebelumnya — hal ini terdengar tidak masuk akal, betul, tapi ingat ini hanyalah sebuah analogi dari sebuah cerita imajiner saja — dan hasil jawaban dari soal tersebut dapat dianggap sebagai BUKTI bahwa petugas telah melakukan sebuah usaha (KERJA) untuk menebak (proof-of-work) WAJIB dicantumkan di bagian kepala (header) sebelum isi dari berbagai transaksi yang ada di halaman tersebut.

  2. Hasil jawaban harus segera diumumkan ke seluruh petugas di ALC Network. Apabila ada salah satu petugas yang berhasil menjawab pertanyaan itu dengan benar/mendekati, petugas tersebut memiliki HAK untuk “menghadiahi dirinya sendiri” sejumlah ALC “baru” dari sebuah transaksi pertama di halaman tersebut (coinbase transaction) yang hanya ditujukan untuk dirinya sendiri sesuai dengan aturan penerbitan ALC (di bawah).

  3. Dan lembar halaman dari petugas yang “memenangkan” halaman tersebut harus diterima dan di copy oleh semua petugas lainnya sebagai sebuah bukti hasil proof-of-work (disingkat: PoW) sekaligus sebagai kebenaran yang harus diterima oleh siapapun yang akan menggunakan maupun menjalankan ALC Network setelahnya.

  4. ALC “baru” yang telah didapatkan oleh petugas yang menang ini, baru dapat digunakan (ditransaksikan) setelah melewati 24 jam atau setara dengan 144 halaman ledger.

  5. Petugas memiliki HAK (tidak wajib) untuk meminta imbalan berupa ALC dari setiap transaksi (transaction fee) yang terjadi di ALC Network.


“Jadi, sebenarnya tidak ada uang kertas atau koin untuk ALC.” ujar Bob.

“Betul, Bob.”

“ALC hanyalah sebuah rangkaian catatan dari perpindahan kepemilikan ALC yang tercatat di dalam public ledger dari ALC Network saja.” tambah Alice.


E. Sistem Penerbitan ALC “baru” di ALC Network

Total ALC hanya akan ada sejumlah 1.314.000 (Satu Juta Tiga Ratus Empat Belas Ribu) koin saja (fixed supply), yang di mana aturan penerbitannya adalah sbb:

  1. Dalam 3 (tiga) bulan (1 kuarter) pertama ALC “baru” yang terbit (insentif untuk para petugas) adalah sejumlah 50 ALC pada setiap halaman ledger nya atau per setiap kurang lebih dalam 10 menit. Yang di mana 1 ALC sama dengan 10.000.000 (sepuluh juta) alice — sebagai satuan terkecil dari ALC.

  2. Dalam kuarter kedua (bulan ke-4 sampai ke-6) ALC “baru” yang diterbitkan pada setiap halamannya akan berkurang setengahnya (dibagi dua) dari 50 ALC, yaitu menjadi 25 ALC. Kuarter ketiga menjadi 12,5 ALC.

Dan seterusnya. Sampai seluruh 1.314.000 ALC diterbitkan.

Apabila sesuai skenario, seluruh koin akan habis diterbitkan sampai pada kurang lebih di kuarter ke-2 dari tahun ke-10 atau akhir dari bulan ke 120 (seratus dua puluh) dari semenjak ALC Network dimulai.


“Wow! menarik! “

“Jadi ini semacam penerapan dari teori deflationary money supply yang dilakukan tanpa adanya satu pihak yang spesifik untuk berperan sebagai bank sentral di Alicecoin Network? Tapi Alicecoin diterbitkan karena sebuah hasil jerih payah (proof-of-work) dari para petugas di ALC Network !”

“Dan bukan hanya itu, setiap halaman dari setiap ledger bisa diibaratkan sebagai sebuah kesinambungan dari bukti kerja (ongoing chain of ledger based on proof-of-work), yang dapat dikatakan juga sebagai sebuah bukti kejujuran atau kebenaran dari rangkaian perjalanan Alicecoin di ALC Network, bukankah begitu?” tanya Bob dengan antusias.

“Betul, Bob! Your understanding of Alicecoin is spot on!” jawab Alice.

"Your understanding of Bitcoin is spot on.”
~ Sartoshi wrote back to Martti Malmi

“Berarti, dapat dikatakan juga, petugas yang melakukan pengawasan dan pencatatan ini seperti layaknya seorang “penambang” (miner) dari ALC ya? Karena jumlah ALC selain fixed, skema penerbitannya pun semakin lama semakin sedikit seiring berjalannya waktu.” tanya Bob.

“Haha… kurang lebih seperti itu analoginya Bob.” jawab Alice.

“Hmm…tapi bagaimana seandainya, para petugas atau pengguna melakukan hal yang tidak jujur?” tanya Bob.

Misalnya seperti:

  1. Seorang pengguna mengirim dua transaksi ke dua orang yang berbeda di saat yang bersamaan dengan menggunakan sejumlah ALC yang sama alias double spend?

    Seandainya seorang pengguna memiliki 100 ALC, sebut saja (A), di saat yang bersamaan dia mengirim pesan transaksi ke satu petugas, sebut saja (M) untuk mengirim 50 ALC ke (B) dan dari 50 ALC yang sama dia (A) juga mengirim ke (C) melalui petugas lain, sebut saja (N).

    Besar kemungkinan di dalam saat yang bersamaan ada petugas yang mencatat transaksi dari (A) ke (B) dan beberapa petugas yang mencatat dari (A) ke (C).

  2. Seorang atau beberapa petugas dengan sengaja melakukan pencatatan yang tidak sesuai dengan pesan transaksi dari para pengguna ALC atau dalam konteks yang lebih ekstrim, ada lebih dari 50% (lima puluh persen) petugas yang bersekongkol dan mendominasi (51% attack) dengan melakukan pencatatan menurut versi mereka sendiri?

“Pertanyaan yang menarik, Bob.” kata Alice.


Double Spending Problem dan 51% Attack

Terus terang dua hal tersebut tidak dapat dihindari dalam sebuah sistem yang mengadopsi konsep peer-to-peer (P2P) network ini.

Jenis protokol ini adalah bukan sebuah peraturan yang baku yang dikontrol oleh sebuah pihak ketiga yang spesifik yang dapat membatalkan atau membatasi hal tersebut, tapi melainkan lebih merupakan sebuah mekanisme persetujuan (consensus mechanism) dalam sebuah jaringan yang terdistribusi (distributed network).

Sehingga, tidak tertutup kemungkinan akan adanya sebuah perubahan konsensus yang menyebabkan arah perjalanan dari ALC ini dapat berubah atau bahkan berhenti karena satu dan lain hal.

Oleh karena itu, kehadiran sebuah mekanisme insentif yang dirancang sedemikian rupa, di mana para petugas yang bergabung di saat awal, akan mendapatkan ALC “baru” dalam jumlah yang lebih banyak dibandingkan yang bergabung di 3 bulan berikutnya, dst. cukup menarik bagi para petugas yang bergabung pada saat-saat awal network ini baru berjalan.

Dengan harapan, dalam prosesnya mereka lebih memilih untuk bertindak jujur untuk mendapatkan ALC “baru” sesuai konsensus daripada mereka melakukan sebuah usaha yang bertujuan merugikan para pelaku dan keberlangsungan dari ALC Network itu sendiri.


“Ok, so far cukup dapat dimengerti. Sangat menarik idenya. Boleh saya pinjam whitepaper-nya? Saya mau pelajari lebih lanjut nanti di rumah.” kata Bob.

“Sure thing, Bob.” balas Alice.

Pada malam harinya di hari yang sama, Bob mengontak Alice melalui telepon.

“Alice, let’s do this.” kata Bob.

“Tunggu, maksudnya bagaimana?” tanya Alice.

“Mari kita jalankan Alicecoin Network. Let’s start with two of us, for the sake of experimentation. Supaya kita bisa benar-benar tahu, apakah sistem ini bisa berjalan atau tidak.” balas Bob.

“Ok, kita mulai besok selepas selesai pelajaran sekolah ya! See you tomorrow, Bob.”

“See you.”

Read on budisukmana.substack.com

Comments

Nothing yet. Say the first thing.

    Sign in to join the conversation.