Blockchain


Teknologi blockchain merupakan struktur data yang membentuk sebuah
buku besar digital dan mendistribusikan buku besar tersebut melalui jaringan [11].
Blockchain dikembangkan pertama kali oleh Stuart Haber dan W Scott Storneta
pada tahun 1998. Kemudian blockchain dikembangkan lagi oleh Satoshi Nakamoto
dalam paper nya berjudul “A Peer to Peer Electronic Cash System” dengan
mengimplementasikannya pada salah satu cryptocurrency yaitu Bitcoin sebagai
pembayaran elektronik pada jaringan peer to peer yang bersifat terdesentralisasi
[12].
Dalam paper yang berjudul “Blockchain: Powering the Internet of Value”
menjelaskan bahwa, blockchain pada dasarnya merupakan database yang berisi
data riwayat transaksi seperti catatan atau logs yang terdistribusi pada semua node
yang tergabung pada jaringan tersebut. Namun, terdapat suatu perbedaan pada
blockchain dan database pada umumnya. Perbedaan tersebut terletak pada sifat
immutable yang dimiliki oleh teknologi blockchain, dimana data yang tercatat dan
tersimpan pada suatu block, saling terhubung dengan block yang lain pada jaringan
tersebut dan tidak dapat berubah [13]. Selain itu, blockchain juga menerapkan
consensus atau kesepakatan bersama dalam memasukkan data ke setiap block yang
ada dalam jaringan blockchain tersebut. Hal ini bertujuan agar data yang tersimpan
dalam blockchain tidak ada yang tidak valid [14].
Penginputan data ke dalam blockchain, dilakukan melalui lima tahapan
yaitu:

  • Proses transaksi merupakan tahapan dimana pengguna akan melakukan
    transaksi dan transaksi tersebut terkirim melalui jaringan blockchain.
  • Autentikasi transaksi merupakan tahapan dimana akan dilakukan digital
    signature. Setelah itu transaksi tersebut akan diletakkan pada transactions
    pool. Transactions pool merupakan wadah yang mengumpulkan data-data
    transaksi dari berbagai pengguna yang belum dimasukkan ke dalam suatu
    block.
  • Creating block merupakan tahapan yang dimana beberapa transaksi dari
    Smart Contract Halal…, William Chandra, Universitas Multimedia Nusantara
    transactions pool dikumpulkan dan dimasukkan ke suatu block yang
    kemudian akan dikirim ke jaringan blockchain untuk divalidasi.
  • Validasi block, merupakan tahapan dimana block akan divalidasi oleh node.
    Teknik memvalidasi block pada setiap jaringan blockchain berbeda-beda
    tergantung consensus yang ditetapkan oleh jaringan tersebut. Sebuah situs
    yang bernama Investopedia.com menyebutkan terdapat lima consensus yang
    saat ini digunakan yaitu proof of work, proof of stake, proof of capacity, proof
    of activity, dan proof of burn. Namun proof of work merupakan consensus
    yang saat ini umum digunakan dalam memvalidasi suatu block [15].
  • Block chaining merupakan tahapan ketika block sudah divalidasi, maka akan
    ditambahkan ke dalam blockchain yang kemudian isi buku besar tersebut akan
    disebarkan pada jaringan sehingga, setiap node memiliki data dengan isi data
    yang sama.
    Proof of work merupakan mekanisme kesepakatan bersama yang dilakukan
    oleh node yaitu miner untuk memvalidasi suatu block dan menambahkan ke
    blockchain. Dalam mekanisme proof of work, para node yang telah menjadi
    miner akan mencari hash kriptografi dalam bentuk SHA-256 yang valid, untuk
    menjadikan block tersebut valid sehingga dapat ditambahkan kedalam jaringan
    blockchain. Hash yang valid terbentuk melalui proses komputasi yang melibatkan
    nonce, timestamp, previous hash, dan merkle root atau kumpulan transaksi. Hash
    yang telah didapatkan melalui proses proof of work, akan digunakan kembali untuk
    pemvalidasian pada block selanjutnya yang dimana hash tersebut akan menjadi
    previous hash yang digunakan untuk mendapatkan hash yang valid pada block
    selanjutnya [16].
    Keamanan pada blockchain terletak pada konsep kriptografi hash khususnya
    pada previous hash yang saling terhubung antar block dalam jaringan. Hashing
    merupakan metode kriptografi yang mengubah isi data kedalam suatu bentuk yang
    unik yang disebut sebagai hash. Hash pada setiap block selain mengamankan
    suatu informasi, juga berperan sebagai identitas pada block tersebut. Hash yang
    dihasilkan memiliki beberapa sifat yaitu:
  1. Deterministic
    Deterministic merupakan salah satu sifat hash yang terjadi ketika terdapat
    suatu kalimat ataupun data, jika diberi metode kriptografi berulang kali, hash
    yang dihasilkan akan tetap sama. Sebagai contoh:
    6
    Smart Contract Halal…, William Chandra, Universitas Multimedia Nusantara
  • Terdapat suatu data ‘kota’ yang diberi hashing menjadi
    “0XAKDOIBJKDIEOFF”, ketika diberi metode tersebut berulang
    kali hasilnya akan tetap sama menjadi “0XAKDOIBJKDIEOFF”.
  1. Collision Resistant
    Collision Resistant merupakan merupakan salah satu sifat hash yang
    menunjukkan bahwa tidak terdapat hasil hash yang sama dengan satu hash
    yang lainnya sehingga setiap hash yang dihasilkan akan selalu unique.
  2. Fast Computation
    Fast Computation merupakan merupakan salah satu sifat hash yang
    menunjukkan bahwa tidak memerlukan banyak sumber daya komputasi untuk
    memproses suatu fungsi hash.
  3. Avalance Effect
    Avalance Effect merupakan merupakan salah satu sifat hash yang
    menunjukkan jika terdapat perubahan pada data maka hasil hash yang
    dihasilkan akan berbeda dari yang sebelumnya. Sebagai contoh:
  • Terdapat suatu data yaitu ‘kota’ dengan hash “0XAKDOIBJKDIEOFF”
    kemudian data tersebut diubah menjadi ‘kotak’ yang menyebabkan
    hash yang dihasilkan akan berubah secara menyeluruh menjadi
    “0XAKDOIBJKDEEEEE”.
    Pada jaringan blockchain, block sebelumnya terhubung dengan block
    selanjutnya melalui previous hash atau hash yang sudah divalidasi pada block
    sebelumnya. Sehingga ketika data dalam block sebelumnya diubah maka block
    selanjutnya hingga block seterusnya akan berubah menjadi tidak valid dikarenakan
    terhubung dengan previous hash dan karakteristik yang dimiliki oleh hash