Apa Maksud Smart Contract? Cara Berfungsi, Ciri & Fungsi

Jika Anda memang seorang aktivis dalam dunia cryptocurrency sudah tentu Anda sering mendengar perkataan (Smart Contract).

Pada asasnya teknologi ini membolehkan semua orang mengeluarkan token yang boleh digunakan untuk pengumpulan dana.

Sistem ini boleh ditubuhkan untuk membina aplikasi decentralized yang sudah ada di rangkaian blockchain.

Anda perlu tahu bahawa token tidak akan dapat melarikan diri dari smart contract berdasarkan rangkaian blockchain.

Walaupun pada dasarnya Bitcoin telah menggunakan smart contract ini untuk masa yang lama. Tetapi smart contract ini semakin popular apabila diperkenalkan oleh pengasas Ethereum, Vitalik Buterin.

Anda perlu tahu bahawa setiap rangkaian blockchain boleh menggunakan kaedah yang berbeza dalam melaksanakan smart contract.

Artikel ini akan menumpukan pada smart contract berjalan pada EVM (Ethereum Virtual Machine), yang merupakan salah satu bahagian terpenting dalam rangkaian blockchain Ethereum.

Okay, untuk mengetahui lebih lanjut mengenai smart contract, mari kita lihat artikel ini!

Apa Itu Smart Contract?

apa itu smart contract
Credit: techfor.id

Anda perlu tahu bahawa Nick Szabo mula-mula menggambarkan smart contract pada tahun 1990.

Pada masa itu, Nick Szabo mentakrifkan smart contract sebagai alat yang boleh melakukan formalization dan menjamin rangkaian komputer dengan cara menggabungkan pelbagai protokol dengan interface pengguna.

Dalam kes ini Szabo mengadakan perbincangan mengenai potensi penggunaan smart contract dalam pelbagai bidang yang melibatkan kelulusan kontrak, seperti pemprosesan pembayaran, pengurusan hak cipta, dan sistem kredit.

Dalam dunia cryptocurrency, kita boleh mentakrifkan smart contract sebagai aplikasi atau program yang beroperasi pada rangkaian blockchain.

Dalam erti kata lain, smart contract ini mempunyai peranan sebagai kelulusan digital yang terikat dengan pelbagai peraturan tertentu.

Pelbagai peraturan ini dipratakrifkan oleh kod komputer, yang direplikasi dan juga dilaksanakan oleh semua nod rangkaian sedia ada.

Pada asasnya, smart contract dalam rangkaian blockchain boleh membolehkan penciptaan protokol yang tidak memerlukan kepercayaan.

Ini bermakna bahawa kedua-dua pihak yang akan membuat transaksi atau apa sahaja, boleh membuat komitmen dengan menggunakan rangkaian blockchain tanpa perlu mengenali dan mempercayai satu sama lain.

Dalam kes ini mereka dapat memastikan bahawa jika pelbagai keperluan tidak dipenuhi, maka kontrak tidak akan dilaksanakan.

Di samping itu, peranan smart contract ini adalah untuk menghapuskan keperluan untuk perkhidmatan perantara, menghapuskan kos operasi yang tinggi, dan sebagainya. Oleh itu, dengan menggunakan smart contract, proses transaksi akan menjadi lebih cekap.

Cara Smart Contract Berfungsi

cara smart contract berfungsi
Credit: medium.com

Jika ditafsirkan dalam istilah yang mudah, smart contract ini mempunyai fungsi sebagai aplikasi atau program deterministic.

Program ini akan menyelesaikan tugas-tugas tertentu apabila dan jika keadaan tertentu dapat dipenuhi.

Oleh itu, sistem smart contract ini sering mengikuti kenyataan “if… then…”. Walau bagaimanapun, selain daripada terminology yang popular (smart contract), program ini bukan kontrak undang-undang, dan juga tidak pintar. Program ini hanyalah kod yang dijalankan pada sistem terdesentralisasi.

Dalam rangkaian blockchain Ethereum, smart contract mempunyai tanggungjawab untuk melaksanakan dan menguruskan operasi rangkaian blockchain yang berlaku apabila pengguna (address) berinteraksi antara satu sama lain.

Dalam kes ini mana-mana alamat yang bukan smart contract akan dikategorikan sebagai akaun milik luaran, atau biasanya dipanggil EOA (externally owned account).

Oleh itu, smart contract dikawal oleh kod komputer, manakala EOA (externally owned account) dikawal oleh pengguna.

Pada asasnya, smart contract yang digunakan dalam rangkaian blockchain Ethereum dibuat daripada kod kontrak dan 2 kunci awam (public key).

Kunci awam pertama adalah yang disediakan oleh pencipta kontrak, sementara kunci awam kedua adalah untuk mewakili kontrak itu sendiri.

Dalam kes ini, kunci awam kedua akan bertindak sebagai pengecam digital yang unik untuk setiap smart contract.

Penentuan setiap smart contract ini dibuat melalui transaksi yang berlaku di rangkaian blockchain, dan hanya akan diaktifkan menggunakan EOA atau smart contract lain. Tetapi pemicu pertama selalu disebabkan oleh EOA (pengguna).

Ciri Smart Contract

ciri smart contract
Credit: blog.waostudio.com

Terdapat beberapa ciri yang wujud dalam smart contract Ethereum, iaitu seperti berikut:

1. Distributed

Dalam kes ini, smart contract direplikasi dan juga diedarkan di seluruh nod rangkaian blockchain Ethereum. Ini adalah salah satu perbezaan utama dari penyelesaian lain berdasarkan server berpusat.

2. Deterministic

Anda perlu tahu bahawa smart contract hanya melaksanakan tindakan yang direka bentuk atau dibuat hanya untuk smart contract, jika semua keperluan yang disediakan telah dipenuhi.

Di samping itu, output yang dijana daripada smart contract ini akan sentiasa sama, tidak kira siapa yang melaksanakan pelaksanaannya.

3. Autonomous

Dalam kes ini, smart contract boleh membuat semua jenis tugas selesai secara automatik, dan boleh berfungsi seperti program yang dilaksanakan sendiri.

Tetapi, dalam kebanyakan kes, jika tiada apa yang dicetuskan, smart contract akan menjadi tidak aktif atau “dormant”, dan tidak akan mengambil apa-apa tindakan.

4. Immutable

Anda perlu tahu bahawa tiada siapa yang boleh membuat perubahan kepada smart contract selepas digunakan. Dalam kes ini smart contract hanya boleh dikeluarkan jika fungsi sebelumnya digunakan.

Oleh itu, kita boleh mengatakan bahawa smart contract ini boleh menyediakan kod yang tidak boleh diubah atau biasanya dirujuk sebagai tamper-proof code.

5. Customizable

Sebelum penggunaan berlaku, smart contract boleh dikodkan dalam pelbagai cara. Oleh itu, smart contract boleh digunakan untuk membuat pelbagai jenis aplikasi decentralized atau dikenali sebagai DApps.

Sudah tentu ini mempunyai kaitan dengan hakikat bahawa Ethereum adalah rangkaian blockchain Turing Complete.

6. Trustless

Dalam kes ini dua atau lebih pihak boleh membuat transaksi menggunakan smart contract tanpa perlu tahu dan mempercayai satu sama lain.

Di samping itu, teknologi rangkaian blockchain dapat memastikan bahawa data yang disediakan memang benar-benar tepat.

7. Transparent

Oleh kerana sistem smart contract berdasarkan teknologi rangkaian blockchain awam, kod sumber bukan sahaja kekal, tetapi dapat dilihat oleh semua orang.

Fungsi Smart Contract

fungsi smart contract
Credit: medium.com

Sebagai kod yang boleh diprogramkan, sudah tentu smart contract sangat mudah untuk disesuaikan dan boleh direka dengan cara yang berbeza, menawarkan banyak perkhidmatan dan penyelesaian masalah.

Sebagai program yang boleh dikatakan decentralized dan juga berdikari, smart contract ini dapat memberikan ketelusan yang lebih tinggi dan juga dapat mengurangkan kos operasi.

Ini sudah tentu bergantung kepada pelaksanaan, smart contract keseluruhan boleh meningkatkan kecekapan dan juga boleh mengurangkan kos birokrasi.

Pada asasnya smart contract ini sangat berguna dalam keadaan yang melibatkan penghantaran dan juga pertukaran aset antara dua atau lebih pihak.

Maksudnya, smart contract ini memang direka dengan tujuan agar boleh digunakan dalam pelbagai cara.

Beberapa contoh termasuk penciptaan aset token, crypto wallet, game, decentralized exchange, sistem pengundian dan aplikasi mudah alih.

Di samping itu, smart contract juga boleh digunakan bersama-sama dengan penyelesaian rangkaian blockchain lain yang menangani bidang amal, rantaian bekalan, kerajaan, penjagaan kesihatan dan DeFi (decentralized finance).

Had Smart Contract

had smart contract

Smart contract pada dasarnya adalah kode komputer yang dibuat oleh manusia. Sudah tentu segala-galanya yang dibuat oleh manusia mempunyai kelemahannya, termasuk smart contract.

Dalam kes ini smart contract boleh membawa risiko yang tinggi kerana seperti yang kita tahu bersama-sama jika kod komputer sangat terdedah kepada bugs.

Oleh itu, smart contract mesti diwujudkan dan juga digunakan oleh pengaturcara yang sudah mempunyai banyak pengalaman, terutamanya apabila melibatkan pelbagai maklumat yang sangat sensitif atau sejumlah besar wang.

Di samping itu, sesetengah orang berpendapat bahawa sistem berpusat boleh menyediakan sebahagian besar penyelesaian serta fungsi yang ditawarkan oleh smart contract.

Dalam kes ini perbezaan utama yang dapat dilihat ialah smart contract berjalan pada rangkaian P2P yang diedarkan, bukan pada server berpusat.

Dan kerana smart contract berdasarkan teknologi rangkaian blockchain, smart contract mempunyai kecenderungan untuk tidak berubah atau sangat sukar untuk berubah.

Mempunyai sifat yang tidak dapat dipulihkan pastinya merupakan perkara yang baik dalam keadaan tertentu, tetapi perkara yang buruk dalam keadaan lain.

Sebagai contoh, apabila The DAO (Decentralized Autonomous Organization) pada tahun 2016 digodam, berjuta-juta Ether (ETH) dicuri kerana kod smart contract yang mereka buat sangat lemah.

Oleh kerana smart contract ini mempunyai sifat yang tidak boleh diubah, pemaju tidak dapat menetapkan kod. Akhirnya ini membawa kepada hard fork, dan akan melahirkan chain Ethereum kedua.

Ringkasnya, satu chain akan membalikkan hack dan mengembalikan dana kepada pemilik yang sah (ini adalah sebahagian daripada rangkaian blockchain Ethereum hari ini).

Rantaian lain memutuskan untuk tidak mengganggu hack, dan menganggap pelbagai perkara yang berlaku kepada rangkaian blockchain tidak dapat dipulihkan (rantaian ini kini dikenali sebagai Ethereum Classic).

Satu lagi had dalam smart contract adalah berkaitan dengan status undang-undangnya yang sehingga kini masih tidak jelas.

Bukan sahaja smart contract tidak menerima kejelasan dari beberapa negara, tetapi juga kerana smart contract tidak mematuhi rangka kerja undang-undang hari ini.

Sebagai contoh, banyak kontrak memerlukan kedua-dua pihak yang membuat transaksi mesti dikenal pasti dengan betul dan berusia lebih dari 18 tahun.