Mengenal Ethereum Blockchain¶
DI BAB INI
Melihat bagaimana dan mengapa Ethereum dimulai
Menemukan blockchain Ethereum
Mengungkap peretasan blockchain
Memulai dengan Ethereum
Membangun organisasi otonom yang terdesentralisasi
Membangun kontrak pintar dan perusahaan terdesentralisasi
Proyek Ethereum adalah salah satu blockchain yang paling berkembang dan mudah diakses di ekosistem. Proyek ini juga merupakan pemimpin industri dalam inovasi dan kasus penggunaan blockchain. Memahami teknologi ini penting karena memimpin dalam kontrak pintar dan organisasi terdesentralisasi.
Dalam bab ini, saya membahas struktur Ethereum dan menjelaskan cara baru untuk membangun organisasi dan perusahaan di blockchain Ethereum. Saya juga mendalami keamanan dan aplikasi bisnis praktis dari blockchain Ethereum. Saya akan menjelaskan bagaimana proyek ini dimulai dan ke mana rencananya akan mengarah.
Bab ini mempersiapkan Anda untuk membuat organisasi terdesentralisasi Anda sendiri. Saya menjelaskan cara menambang mata uang kripto di jaringan uji untuk mendukung proyek Anda. Setelah membaca bab ini, Anda akan dapat menyiapkan dompet Ethereum Anda sendiri dan memperdagangkan token tersebut.
Menjelajahi Sejarah Singkat Ethereum¶
Ethereum pertama kali dijelaskan pada tahun 2013 dalam sebuah whitepaper yang ditulis oleh Vitalik Buterin, yang sangat aktif di komunitas Bitcoin sebagai penulis dan programmer. Buterin melihat bahwa terdapat potensi yang jauh lebih besar dalam Bitcoin daripada kemampuan untuk memindahkan nilai tanpa otoritas pusat. Ia telah berkontribusi pada upaya koin berwarna dalam Bitcoin untuk memperluas utilitas Bitcoin melampaui perdagangan token aslinya. Buterin percaya bahwa kasus penggunaan bisnis dan pemerintah lain yang memerlukan otoritas pusat untuk mengendalikannya juga dapat dibangun dengan struktur blockchain.
Pada saat itu, terdapat perdebatan sengit tentang jaringan Bitcoin yang "membengkak" oleh banyaknya transaksi bernilai rendah dari aplikasi yang mengamankan dirinya terhadap Bitcoin. Kekhawatiran utamanya adalah bahwa aplikasi tambahan, yang dibangun di atas protokol Bitcoin, akan mengalami masalah dalam penskalaan volume. Bitcoin tidak dibangun untuk menangani jumlah transaksi yang dibutuhkan oleh aplikasi tersebut. Vitalik dan banyak orang lainnya melihat bahwa agar orang dapat membangun aplikasi terdesentralisasi di blockchain Bitcoin, blockchain tersebut memerlukan perombakan kode secara besar-besaran atau mereka perlu membangun blockchain baru secara keseluruhan.
Bitcoin sudah mapan pada saat itu. Jelas bahwa jenis peningkatan kode inti yang dibutuhkan jauh melampaui apa yang realistis. Politik Bitcoin akan menghambat perubahan apa pun pada jaringan. Vitalik dan timnya mendirikan Ethereum Foundation pada awal 2014 untuk mengumpulkan dana guna membangun blockchain dengan bahasa pemrograman yang tertanam di dalamnya.
Pengembangan awal didanai oleh penjualan massal publik daring selama Juli dan Agustus 2014. Yayasan ini awalnya mengumpulkan rekor $18 juta melalui penjualan token mata uang kripto yang disebut ether. Banyak orang berdebat sengit tentang apakah penjualan massal semacam ini ilegal karena mungkin merupakan sekuritas tanpa izin.
Zona abu-abu regulasi tidak menghalangi proyek ini. Malahan, sifat mutakhir proyek ini telah menarik lebih banyak perhatian dan bakat ke yayasan. Para pengembang dan pengusaha yang tidak puas dan kehilangan haknya dari seluruh dunia telah berbondong-bondong ke proyek ini. Desentralisasi dipandang sebagai solusi sempurna bagi otoritas pusat yang korup dan represif.
$18 juta yang terkumpul dari penjualan token memberikan dana kepada yayasan untuk mempekerjakan tim pengembangan yang besar untuk membangun Ethereum. Ethereum Frontier, rilis pertama jaringan Ethereum, diluncurkan ke publik pada bulan Juli 2015. Rilisan ini merupakan rilis perangkat lunak sederhana yang hanya dapat digunakan oleh mereka yang lebih paham teknis untuk membangun aplikasi mereka sendiri.
Homestead, rilis perangkat lunak Ethereum saat ini, tersedia pada tahun 2016. Jauh lebih ramah pengguna. Hampir semua orang dapat menggunakan templat aplikasi yang tersedia di dalamnya. Homestead memiliki antarmuka pengguna yang intuitif dan ramah serta komunitas pengembang yang besar dan berdedikasi.
Metropolis adalah rilis Ethereum yang direncanakan berikutnya. Perbedaan utamanya adalah aplikasinya akan dikembangkan sepenuhnya dan teruji dengan baik. Homestead juga akan menampilkan aplikasi yang lebih mudah digunakan dan memiliki daya tarik pasar yang lebih besar di mana bahkan individu non-teknis pun akan merasa nyaman menggunakannya.
Serenity adalah fase terakhir yang direncanakan dalam pengembangan Ethereum. Di sinilah Ethereum akan beralih dari konsensus proof-of-work (di mana para penambang bersaing untuk menciptakan blok berikutnya) ke model proof-of-stake. Dalam model proof-of-stake, node dipilih secara pseudo-acak dengan kemungkinan terpilihnya meningkat berdasarkan kepemilikan mereka di jaringan. Kepemilikan mereka diukur berdasarkan jumlah mata uang kripto yang mereka miliki. Manfaat utama dari perubahan ini adalah pengurangan biaya energi yang terkait dengan proof-of-work. Hal ini dapat membuatnya lebih menarik bagi individu untuk menjalankan node di jaringan, yang akan meningkatkan desentralisasi dan meningkatkan keamanan.
Ethereum: Komputer Sumber Terbuka Sedunia¶
Ethereum mungkin merupakan salah satu blockchain paling kompleks yang pernah dibangun. Ia memiliki bahasa pemrograman Turing-complete-nya sendiri (bahasa pemrograman yang berfungsi penuh yang memungkinkan pengembang untuk membangun semua jenis aplikasi). Protokol Ethereum dapat melakukan hampir semua hal yang dapat dilakukan oleh bahasa pemrograman pada umumnya, kecuali ia dibangun di dalam blockchain dan memiliki manfaat serta keamanan tambahan yang menyertainya. Jika Anda dapat membayangkan sebuah proyek perangkat lunak, proyek tersebut dapat dibangun di atas Ethereum.
Ekosistem Ethereum saat ini merupakan tempat terbaik untuk membangun aplikasi terdesentralisasi. Mereka memiliki dokumentasi yang luar biasa dan antarmuka yang ramah pengguna yang membuat Anda dapat langsung menggunakannya. Waktu pengembangan yang cepat, keamanan untuk aplikasi kecil, dan kemampuan aplikasi untuk berinteraksi satu sama lain dengan mudah merupakan karakteristik utama dari sistem ini.
Kontrak pintar, seperti yang Anda buat di Bab 3, juga dapat dibangun di Ethereum. Protokol Ethereum telah membuka genre aplikasi yang benar-benar baru. Anda dapat mengambil hampir semua proses bisnis, pemerintahan, atau organisasi dan membangun representasi digitalnya di dalam Ethereum. Saat ini, platform Ethereum sedang dieksplorasi untuk mengelola aset digital (kelas aset baru yang tersedia daring dan dapat mewakili seluruh aset digital seperti token Bitcoin atau representasi digital dari aset dunia nyata seperti komoditas jagung), instrumen keuangan (seperti sekuritas yang didukung hipotek), mencatat kepemilikan aset seperti tanah, dan organisasi otonom terdesentralisasi (DAO), cara baru untuk mengatur bisnis, nirlaba, pemerintahan, atau badan lain yang perlu mencapai kesepakatan dan bekerja sama untuk kepentingan bersama. DAO dibangun terutama di platform Ethereum.
Aplikasi Terdesentralisasi: Selamat Datang di Masa Depan¶
Manifestasi Ethereum yang paling revolusioner dan kontroversial adalah aplikasi terdesentralisasi dan swakelola (DAPP). DAPP dapat mengelola hal-hal seperti aset digital dan DAO.
DAPP diciptakan untuk menggantikan manajemen aset dan organisasi yang terpusat. Struktur ini sangat menarik karena banyak orang percaya bahwa kekuasaan absolut dapat merusak secara absolut. Bagi mereka yang takut kehilangan kendali, jenis struktur ini memiliki implikasi yang sangat besar.
Etheria (www.etheria.world), sebuah gim yang mirip Minecraft, adalah contoh menarik dari teknologi ini yang sedang bekerja (lihat Gambar 5-1). Gim ini tidak dapat disensor atau dihapus dan akan tetap ada selama Ethereum masih ada. Ketika sesuatu diciptakan di dalam Ethereum, bahkan jika ada alasan kuat untuk menghapus suatu struktur atau organisasi, hal itu praktis mustahil dilakukan.
Kekuatan organisasi otonom terdesentralisasi¶
DAO adalah jenis aplikasi Ethereum yang mewakili entitas virtual di dalam Ethereum. Saat Anda membuat DAO, Anda dapat mengundang orang lain untuk berpartisipasi dalam tata kelola organisasi. Para peserta dapat tetap anonim dan tidak pernah bertemu, yang dapat memicu masalah kepatuhan terhadap aturan Kenali Nasabah Anda (KYC) (proses yang harus dilalui bisnis untuk memverifikasi identitas kliennya) dan anti-pencucian uang (AML; hukum dan peraturan yang dirancang untuk menghentikan praktik menghasilkan pendapatan melalui cara ilegal).
DAO telah dibuat untuk mengumpulkan dana investasi, tetapi juga dapat dirancang untuk tujuan sipil atau nirlaba. Ethereum memberi Anda kerangka dasar untuk tata kelola. Terserah kepada penyelenggara untuk menentukan apa yang diatur. Ethereum telah membuat templat bagi Anda untuk membantu dalam pembuatan DAO.
Gambar 5-2 menunjukkan penggambaran organisasi aplikasi Ethereum.
Beginilah cara kerja DAO pada dasarnya:
Sekelompok orang menulis kontrak pintar untuk mengatur organisasi.
- Orang-orang menambahkan dana ke DAO dan diberikan token yang mewakili kepemilikan.
Struktur ini bekerja seperti saham di perusahaan, tetapi para anggota memiliki kendali atas dana tersebut sejak hari pertama.
Setelah dana terkumpul, DAO mulai beroperasi dengan meminta anggota mengusulkan cara penggunaan dana tersebut.
Para anggota memberikan suara atas proposal-proposal ini.
Setelah waktu yang ditentukan berlalu dan jumlah suara yang telah ditentukan terkumpul, proposal tersebut disetujui atau ditolak.
Individu bertindak sebagai kontraktor untuk melayani DAO.
Tidak seperti kebanyakan instrumen investasi tradisional, di mana pihak sentral membuat keputusan tentang investasi, anggota DAO mengendalikan 100 persen aset. Mereka memberikan suara untuk investasi baru dan keputusan lainnya. Jenis struktur ini mengancam akan menggantikan manajer keuangan tradisional.
DAO dibangun dengan kode yang tidak dapat diubah secara instan. Daya tariknya adalah peretas jahat tidak dapat memanipulasi dana dalam pengertian tradisional. Peretas masih dapat menemukan cara untuk mengeksekusi kode dengan cara yang tidak terduga dan menarik dana. Sifat kode DAO yang tidak dapat diubah membuatnya hampir mustahil untuk memperbaiki bug apa pun setelah DAO aktif di Ethereum.
DENGAN KEKUATAN BESAR, DATANGLAH... KEKUATAN BESAR
Dasar DAO Ethereum pertama yang pernah dibangun disebut, cukup membingungkan, "The DAO." Ini adalah contoh dari beberapa bahaya yang datang bersama entitas terdesentralisasi dan otonom. Ini adalah proyek crowdfunding terbesar di dunia — para pendirinya mengumpulkan sekitar $162 juta dalam 26 hari dengan lebih dari 11.000 anggota. Apa yang orang anggap sebagai kekuatan terbesar The DAO justru menjadi kelemahan terbesarnya. Kode yang tidak dapat diubah di dalam The DAO mengunci bagaimana organisasi akan diatur dan bagaimana dana akan didistribusikan. Hal ini memungkinkan para anggota merasa aman dalam investasi mereka. Meskipun kode tersebut telah ditinjau dengan baik, tidak semua bug telah diperbaiki.
Ancaman signifikan pertama bagi Ethereum datang dari peretasan The DAO. Jalur kode yang tak terduga dalam kontrak The DAO memungkinkan setiap pengguna yang canggih untuk menarik dana. Seorang pengguna tak dikenal berhasil menarik sekitar $50 juta sebelum ia dapat dihentikan.
Komunitas Ethereum berdebat sengit tentang apakah mereka bisa atau harus mendapatkan kembali ether tersebut. Peretas DAO secara teknis tidak melakukan kesalahan apa pun atau bahkan meretas sistem. Para fundamentalis dalam komunitas Ethereum merasa bahwa kode adalah hukum dan, oleh karena itu, tidak ada yang harus dilakukan untuk mendapatkan kembali dana tersebut.
Hal yang membuat Ethereum kuat juga merupakan kelemahan terbesarnya. Desentralisasi, kekekalan, dan otonomi berarti tidak ada otoritas pusat yang dapat memutuskan tindakan dengan cepat. Juga tidak ada pihak yang dapat dihukum atas penyalahgunaan sistem. Sistem ini benar-benar tidak memiliki langkah-langkah perlindungan konsumen. Ini adalah sebuah terobosan baru, seperti yang tersirat dari nama perangkat lunaknya.
Setelah menghabiskan beberapa minggu membahas masalah ini, komunitas Ethereum memutuskan untuk menutup The DAO dan membuat Ethereum baru. Proses ini disebut hard forking. Ketika komunitas Ethereum melakukan hard forking pada jaringan, transaksi yang telah dilakukan oleh peretas pun dibatalkan. Hal ini juga menciptakan dua Ethereum: Ethereum dan Ethereum Classic.
Tidak semua orang setuju dengan keputusan ini. Komunitas tersebut terus menggunakan Ethereum Classic. Token untuk Ethereum Classic masih diperdagangkan tetapi telah kehilangan nilai pasar yang signifikan. Token Ethereum yang baru masih belum mencapai titik tertingginya sebelum peretasan.
Keputusan untuk melakukan hard forking mengguncang dunia blockchain. Ini adalah pertama kalinya sebuah proyek blockchain mayoritas melakukan hard forking untuk mendapatkan investor sepenuhnya. Hal ini mempertanyakan banyak prinsip yang membuat teknologi blockchain begitu menarik sejak awal.
Meretas Blockchain¶
Ethereum tidak pernah diretas. Hard fork pada tahun 2016 akibat peretasan DAO yang disebutkan di bilah samping "Dengan kekuatan besar datanglah ... kekuatan besar" bukanlah peretasan sistem yang sebenarnya, tetapi secara membingungkan sering disebut sebagai peretasan. Ethereum bekerja dengan sempurna. Masalahnya adalah terlalu sempurna. Sistem perlu dihidupkan ulang ketika sejumlah besar uang dan mayoritas penggunanya terancam.
Satu-satunya cara untuk memperbaiki tindakan pada blockchain seperti Ethereum adalah dengan melakukan hard fork, yang memungkinkan perubahan mendasar pada protokol. Hard fork membuat blok dan transaksi yang sebelumnya valid menjadi tidak valid.
Ethereum melakukan ini untuk melindungi dana yang ditarik dari DAO pertama oleh seorang pengguna. Peretasan DAO secara konseptual merupakan salah satu bug bounty terbesar yang pernah ada.
Meskipun demikian, banyak penipuan dan upaya peretasan terjadi di dunia mata uang kripto. Sebagian besar serangan ini menargetkan bursa dan aplikasi terpusat. Banyak peretas ingin mencuri mata uang kripto. Mata uang kripto memiliki nilai nyata dan tidak dilindungi dengan cara yang sama seperti uang biasa dilindungi oleh pemerintah. Sifat anonim mata uang kripto juga membuatnya menarik bagi para penjahat. Menangkap dan menuntut individu-individu ini sulit. Namun, komunitas mata uang kripto sedang melawan balik, dan menciptakan langkah-langkah baru untuk melindungi diri mereka sendiri.
Tip
Meretas satu tempat jauh lebih mudah dan lebih murah daripada mencoba mengalahkan jaringan terdesentralisasi. Ketika Anda membaca tentang peretasan di dunia blockchain, kemungkinan besar hanya situs web atau dompet mata uang kripto yang telah diretas, bukan seluruh jaringan.
Memahami Smart Contracts¶
Smart contracts Ethereum mirip dengan perjanjian kontraktual, hanya saja tidak ada pihak sentral yang menegakkan kontrak tersebut. Protokol Ethereum "menegakkan" kontrak pintar dengan memberikan tekanan ekonomi. Protokol ini juga dapat menegakkan implementasi suatu persyaratan jika persyaratan tersebut berada di dalam Ethereum, karena Ethereum dapat membuktikan bahwa kondisi tertentu telah atau belum terpenuhi. Jika persyaratan tersebut tidak berada di dalam Ethereum, penegakannya akan jauh lebih sulit.
Peringatan
Smart Contracts Ethereum belum dapat ditegakkan secara hukum dan mungkin tidak akan pernah dapat ditegakkan karena persepsi yang ada adalah bahwa Anda tidak memerlukan otoritas eksternal untuk menegakkan perjanjian. Sistem hukum dikendalikan oleh pemerintah. Saat ini, pemerintah adalah otoritas pusat —beberapa di antaranya memiliki persetujuan yang lebih atau kurang dan prinsip-prinsip demokrasi. Dalam kontrak pintar Ethereum, setiap peserta memiliki hak suara yang tidak dapat dicabut.
Kontrak pintar Ethereum tidak menyertakan kecerdasan buatan. Ini merupakan kemungkinan yang menarik dalam waktu dekat. Namun untuk saat ini, Ethereum hanyalah kode perangkat lunak yang berjalan di atas blockchain.
Kontrak pintar Ethereum tidak aman. Peretasan DAO adalah contoh yang bagus tentang jenis bahaya yang dapat terjadi. Ini masih tahap awal, dan menginvestasikan banyak uang ke dalam sistem yang belum terbukti bukanlah tindakan yang cerdas. Sebagai gantinya, bereksperimenlah dengan jumlah kecil hingga semua bug telah diatasi pada kontrak baru.
Menemukan mata uang kripto Ether¶
Ether adalah nama mata uang kripto untuk blockchain Ethereum. Namanya diambil dari substansi yang diyakini menembus seluruh ruang dan memungkinkan terciptanya alam semesta. Dalam hal ini, Ether adalah substansi yang memungkinkan Ethereum. Ether memberi insentif kepada jaringan untuk mengamankan dirinya sendiri melalui penambangan proof-of-work, seperti bagaimana token Bitcoin memberi insentif pada jaringan Bitcoin. Ether diperlukan untuk mengeksekusi kode apa pun di dalam jaringan Ethereum. Saat digunakan untuk mengeksekusi kontrak di Ethereum, Ether disebut sebagai gas.
Mengeksekusi kode dalam kontrak pintar juga membutuhkan sejumlah ether. Fitur ini memberikan utilitas tambahan pada token. Selama individu ingin menggunakan Ethereum untuk aplikasi dan kontrak, ether akan memiliki nilai yang tak ternilai harganya.
Pertumbuhan nilai ether yang pesat telah menjadikannya token yang populer untuk berspekulasi. Ether diperdagangkan secara luas di bursa-bursa di seluruh dunia. Beberapa dana lindung nilai baru sedang mempertimbangkannya sebagai instrumen investasi. Namun, sifatnya yang fluktuatif dan kedalaman pasar yang rendah membuat eter menjadi investasi yang berisiko.
Memulai dan Menjalankan Ethereum¶
Di bagian ini, saya akan memandu Anda cara memulai di ekosistem blockchain Ethereum. Sebelum Anda dapat membangun apa pun di Ethereum, Anda membutuhkan dompet Ethereum.
Catatan
Dompet Anda akan menyimpan token Ethereum Anda yang disebut ether. Ether adalah mata uang kripto yang memungkinkan Anda membuat kontrak pintar di dalam Ethereum. Ini terkadang disebut sebagai gas.
Mengunduh dompet Ethereum mungkin membutuhkan waktu, tetapi antarmukanya sangat intuitif dan instruksi yang diberikan di sepanjang proses mudah diikuti.
Tip
Di dalam dompet Ethereum, Anda dapat memenangkan ether uji untuk membangun kontrak uji dan organisasi Anda. Anda tidak perlu menambang ether untuk mempelajari cara kerjanya.
Menambang ether¶
Ethereum dijalankan oleh jaringan komputer di seluruh dunia yang memproses kontrak dan mengamankan jaringan. Komputer-komputer ini terkadang disebut sebagai node, dan mereka menambang kripto Ether.
Sebagai penghargaan atas waktu dan biaya yang dikeluarkan dalam penambangan, ada hadiah lima ether setiap 12 detik. Hadiah tersebut diberikan kepada node yang berhasil menciptakan blok terbaru dalam blockchain Ethereum.
Semua blok baru memiliki daftar transaksi terbaru. Algoritma konsensus proof-of-work menjamin bahwa hadiah paling sering dimenangkan oleh node dengan daya komputasi tertinggi. Komputer yang tidak terlalu kuat juga bisa menang — hanya saja membutuhkan waktu lebih lama. Jika Anda ingin mencoba menambang ether, Anda dapat melakukannya dengan komputer rumah Anda, tetapi akan membutuhkan waktu yang sangat lama untuk berhasil menambang satu blok dan memenangkan ether.
Peringatan
Menambang ether bukan untuk pemula. Anda harus akrab dengan baris perintah. Jika Anda tidak tahu apa itu baris perintah, Anda mungkin ingin melewati proses ini. Selain itu, pastikan untuk mengikuti instruksi terbaru di Ethereum GitHub ( http://github.com/ethereum ).
Menyiapkan dompet Ethereum Anda¶
Untuk menyiapkan dompet Ethereum Anda, ikuti langkah-langkah berikut:
Buka www.ethereum.org.
- Klik tombol Unduh.
Anda perlu menggulir halaman sedikit ke bawah untuk menemukan tombol tersebut. Pastikan untuk menyimpan unduhan dompet Ethereum di tempat yang mudah Anda temukan nanti.
Buka dompet Ethereum.
- Klik Gunakan Jaringan Uji.
Di sini, Anda akan siap untuk menambang ether uji. Proses ini jauh lebih hemat waktu daripada menambang ether sungguhan, tetapi tetap membutuhkan waktu.
- Buat kata sandi yang kuat.
Jangan lupa untuk menyimpan kata sandi Anda di tempat yang aman.
- Klik menu mulai.
Tim Ethereum memiliki beberapa tutorial yang menarik untuk diulas sambil menunggu jaringan uji Anda diunduh. Proses pengunduhan mungkin memakan waktu sekitar sepuluh menit.
- Pilih Kembangkan ⇒ Mulai Menambang.
Jangan lewati langkah ini. Anda membutuhkan ether untuk proyek selanjutnya.
Anda baru saja menyiapkan dompet Anda, dan Anda mendapatkan eter uji untuk proyek kontrak pintar Anda di masa mendatang.
Membangun Organisasi Otonom Terdesentralisasi Pertama Anda¶
DAO akan mengubah cara dunia berbisnis di masa depan. DAO memungkinkan siapa pun di dunia untuk menciptakan jenis perusahaan baru secara daring yang diatur oleh aturan yang telah disepakati sebelumnya yang kemudian diberlakukan melalui jaringan blockchain. Membuat DAO lebih mudah dari yang Anda bayangkan. Di bagian ini, Anda akan membangun DAO uji coba pertama Anda. Saya membagi proyek ini menjadi tiga bagian: pembangunan, kongres, dan tata kelola.
Catatan
Untuk menyelesaikan DAO uji coba Anda dengan sukses, Anda perlu menyiapkan dompet Ethereum Anda dan melakukan penambangan di jaringan uji coba Ethereum (lihat bagian sebelumnya).
Ikuti langkah-langkah berikut untuk membuat DAO uji coba pertama Anda:
Buka www.ethereum.org/dao.
Gulir ke bawah halaman ke kotak Kode (ditunjukkan pada Gambar 5-3) dan salin kodenya.
- Buka dompet Ethereum yang Anda buat sebelumnya.
Anda akan mengembangkan DAO di dompet Ethereum Anda.
Test net dan congress¶
Fase selanjutnya dari proyek DAO Anda adalah menyiapkan kerangka kerja untuk DAO Anda. Ikuti langkah-langkah berikut:
Di dompet Ethereum Anda, pilih Develop ⇒ Network ⇒ Test Net.
- Klik tab Contracts, lalu klik Terapkan Kontrak.
Tim Ethereum telah menyiapkan beberapa templat uji untuk DAO.
Tempel kode yang Anda salin di bagian sebelumnya ke dalam Solidity code box.
Dari Contract Picker, pilih Congress.
- Pilih beberapa variabel ketika diminta.
Berikut adalah pilihan Anda:
Kuorum minimum untuk proposal adalah jumlah suara terkecil yang dibutuhkan suatu proposal sebelum dapat dieksekusi.
Menit untuk debat adalah jumlah waktu tersingkat, dalam menit, yang harus dilewati sebelum dapat dieksekusi.
Margin suara untuk mayoritas. Proposal lolos jika terdapat lebih dari 50 persen suara ditambah margin. Biarkan pada 0 untuk mayoritas sederhana.
Governance dan Voting¶
Sekarang Anda akan menamai dan mengatur tata kelola DAO Anda. Anda perlu menetapkan kuorum minimum untuk proposal (berapa banyak suara yang dibutuhkan proposal baru sebelum disahkan). Anda juga mengatur margin suara untuk mayoritas (berapa banyak suara yang dibutuhkan suatu rencana untuk disahkan) dan waktu yang dialokasikan untuk membahas rencana baru.
- Beri nama DAO baru Anda.
Ini seperti menamai perusahaan.
- Untuk Debate Times, pilih 5 menit.
Ini adalah lamanya proposal baru terbuka untuk dibahas.
- Biarkan Margin Votes for Majority diatur ke 0.
Ini mengatur bagaimana demokrasi kontrak Anda bekerja.
- Konfirmasikan harga DAO.
Anda telah menambang sejumlah Ether di jaringan uji melalui dompet Anda saat pertama kali menyiapkannya. Jika Anda melewatkan langkah itu, kembali dan lakukan sekarang. Anda memerlukan sedikit Ether dari jaringan uji untuk membangun DAO Anda.
- Klik Deploy dan ketik kata sandi Anda.
DAO mungkin memerlukan waktu untuk di-deploy. Saat Anda tiba di dasbor baru, gulir ke bawah, dan Anda akan melihat DAO Anda sedang dibuat.
- Klik ikon Baru.
Ikon unik baru yang mewakili DAO Anda akan muncul.
Selamat! Anda telah membuat DAO pertama Anda.
Mengungkap Masa Depan DAO¶
Kontrak pintar dan organisasi terdesentralisasi menyimpan banyak harapan. Sifat demokratis dan hiperrasionalnya yang murni sangat menarik. Namun, saat ini, terdapat lebih banyak kemungkinan daripada yang diketahui, dan setiap kontrak yang dibuat bisa menjadi terobosan atau kegagalan besar.
Jika Anda menganggap Ethereum sebagai batas baru, Anda akan meraih lebih banyak kesuksesan. Jaringan Ethereum memiliki lebih banyak manfaat daripada kerugian jika Anda berhati-hati. Namun, mengharapkan semuanya berjalan sempurna dan semua peserta bertindak dengan integritas akan membuka peluang kerugian yang lebih besar. Ethereum memiliki banyak bandit, belum lagi para penggemar yang ramah yang ingin Anda sukses.
Peretasan kontrak pintar tahun 2016 telah menyoroti pentingnya keamanan dan peninjauan kontrak yang tepat. Hal ini juga menggambarkan bahwa ada orang-orang berintegritas yang berjuang untuk memperbaiki masalah.
Membaca buku ini hanyalah permulaan. Ini akan memberi Anda dasar yang kuat untuk membangun pengetahuan Anda tentang Ethereum, tetapi seperti semua teknologi baru, Ethereum berkembang pesat. Teruslah meninjau praktik terbaik dan langkah-langkah keamanan.
Di bagian berikut, saya akan menyebutkan beberapa hal yang perlu diingat saat Anda membangun beberapa DAO pertama Anda, membangun kontrak pintar, dan men-debug sistem blockchain baru Anda.
Menempatkan Uang di DAO¶
Jangan mempercayakan sejumlah besar uang kepada kontrak yang belum teruji dan kontrak yang belum sepenuhnya diverifikasi. Kontrak besar lebih sering menjadi sasaran peretas. Peretasan DAO yang dijelaskan sebelumnya di bab ini (lihat bilah sisi “Dengan kekuatan besar, datanglah ... kekuatan besar”) menunjukkan bahwa bahkan kontrak yang dipikirkan dengan matang pun memiliki kelemahan yang tak terduga.
Catatan
Meskipun kontrak pintar dan blockchain memungkinkan Anda melakukan bisnis dengan siapa pun di seluruh dunia, ini masih tahap awal. Anda dapat mengurangi risiko dengan hanya bekerja sama dengan pihak terkenal dan tepercaya.
Tip
Lanskap keamanan akan terus berkembang dengan bug baru. Meninjau semua praktik terbaik baru sangatlah penting. Kelola jumlah uang yang Anda pertaruhkan dan luncurkan kontrak secara perlahan dan bertahap. Ethereum adalah teknologi baru, dan solusi yang matang belum dibangun.
Membangun kontrak pintar yang lebih cerdas¶
Pemrograman kontrak pintar membutuhkan pola pikir yang berbeda dari penulisan kontrak standar. Tidak ada pihak ketiga yang akan memperbaiki keadaan jika kontrak dieksekusi dengan cara yang tidak Anda harapkan atau inginkan. Sifat blockchain yang tidak dapat diubah dan terdistribusi menyulitkan untuk mengubah hasil yang tidak diinginkan.
Kontrak Anda akan memiliki kekurangan dan mungkin gagal. Bangun katup pengaman dalam kontrak Anda agar Anda dapat merespons bug dan kerentanan yang muncul. Kontrak pintar juga memerlukan tombol mati yang memungkinkan Anda menghentikan dan menghentikan kontrak ketika terjadi masalah.
Jika kontrak Anda cukup besar, tawarkan hadiah untuk berburu bug yang mendorong komunitas untuk menemukan kerentanan dan kekurangan dalam kontrak Anda.
Seperti banyak hal lainnya, kompleksitas kontrak Anda juga meningkatkan kemungkinan kesalahan dan vektor serangan. Jaga logika kontrak Anda tetap sederhana. Bangun modul-modul kecil yang menampung setiap bagian kontrak. Membuat kontrak dengan cara ini akan membantu Anda mengelompokkan masalah apa pun.
Menemukan bug dalam sistem¶
Jangan menciptakan kembali roda dengan membangun alat Anda sendiri seperti generator angka acak. Sebaliknya, manfaatkan pekerjaan yang telah dilakukan komunitas dan telah teruji dengan baik.
Peringatan
Anda hanya dapat mengontrol hal-hal dalam kontrak Anda sendiri. Berhati-hatilah terhadap panggilan kontrak eksternal. Mereka dapat mengeksekusi kode berbahaya dan mengambil kendali Anda.
Komunitas Ethereum memiliki daftar bug yang sangat baik dan tips bermanfaat lainnya tentang cara membangun kontrak pintar yang aman di halaman GitHub mereka di https://github.com/ethereum/wiki/wiki/safety.