IMPLEMENTASI BLOCKCHAIN SEDERHANA PADA CLOUD COMPU

Erly Krisnanik

Sosial Media


0 orang menyukai ini
Suka

Summary

Blockchain adalah teknologi baru yang dapat memberikan alternatif baru dalam mendapatkan dan berbagi informasi. Teknologi ini diadopsi dari Bitcoin yang terus berkembang. Selain itu teknologi ini juga melibatkan kriptografi (cryptography) sebagai basis utama terciptanya Blockchain. Konsep kerja dari teknologi ini menggunakan peer-to-peer networks (jaringan peer-to-peer), smart contracts (kontrak pintar) serta consensus mechanisms (mekanisme consensus) untuk membuat basisdata baru. Keunggulan yang dimiliki oleh Blockchain menyebabkan teknologi ini menjadi sangat diminati terutama dalam hal keamanan (security).

Description

I. PENGANTAR IMPLEMENTASI BLOCKCHAIN Blockchain adalah teknologi baru yang dapat memberikan alternatif baru dalam mendapatkan dan berbagi informasi. Teknologi ini diadopsi dari Bitcoin yang terus berkembang. Selain itu teknologi ini juga melibatkan kriptografi (cryptography) sebagai basis utama terciptanya Blockchain. Konsep kerja dari teknologi ini menggunakan peer-to-peer networks (jaringan peer-to-peer), smart contracts (kontrak pintar) serta consensus mechanisms (mekanisme consensus) untuk membuat basisdata baru. Keunggulan yang dimiliki oleh Blockchain menyebabkan teknologi ini menjadi sangat diminati terutama dalam hal keamanan (security).

II. TEKNIK – TEKNIK MEMBANGUN BLOCKCHAIN Tulisan ini akan menjelaskan bagaimana teknik untuk membanggun blockchain pada server yang sama dengan port yang berbeda. Serta membangun blockchain pada server yang berbeda dengan port yang berbeda. Tahapan yang harus kita bangun terlebih dahulu adalah membuat server yang akan dijadikan sebagai VM untuk menampung data transaksi yang dihasilkan. Penulis akan menggunakan 3 Virtual Privater Server (VPS) dengan IP Address sebagai berikut: 

1. Virtual Privater Server (VPS) 1: 110.239.68.10 

2. Virtual Privater Server (VPS) 2: 110.239.71.66 

3. Virtual Privater Server (VPS) 3: 110.239.69.130

A. Membangun Blockchain menggunakan IP Address yang sama dengan port berbeda. 

Membuat VM1 dan VM2 pada VPS 3 dengan IP Address 110.239.69.130. untuk membedakan antara VM1 dengan VM2, penulis menggunakan port Port 1: 7374 untuk VM1 dan Port 2: 7071 untuk VM2. Langkah selanjutnya yang harus kita siapkan adalah membuat remote access untuk VM untuk dapat saling berkomunikasi menggunakan aplikasi PuTTY

Tahapan berikutnya adalah kita login sebagai root di server linux yang sudah kita buat pada VM1. Menggunakan user dan password yang sudah di daftarkan oleh administrator.

Setelah berhasil login, kita buat direktory dengan perintah: mkdir [nama_direktori]. 

Contoh mkdir erly. Maka hasilnya adalah: root@ecs-36fb-0001: ~/erly#

Setelah kita selesai membuat direktory baru di server VM1. Langkah selanjutnya adalah kita membuat blockchain.py dengan menggunakan perintah nano. Nano adalah perintah pada linux untuk membuat file baru dan m data perubah data pada file tersebut.

Contoh: root@ecs-36fb-0001: ~/erly# nano blockchain.py

Tampilan pada perintah diatas dapat dilihat pada gambar dibawah ini. Tahapan berikutnya adalah kita akan mengganti port yang sudah ada menjadi 7374 agar tidak sama dengan port yang sudah dimiliki oleh user lain yang menggunakan server dengan IP Address yang sama.

Setelah kita ganti port sesuai dengan yang diinginkan, langkah berikutnya adalah kita jalankan blockchain.py menggunakan python3. Dengan sintak koding sebagai berikut: root@ecs-36fb-0001: ~/erly# python3 blockchain.py.  Luaran dari perintah tersebut dapat dilihat pada gambar dibawah ini.

 

Perintah ini dapat kita gunakan untuk membuat VM2 dengan IP Address yang sama dan port yang berbeda.

Setelah selesai menjalankan Python3 di VM1 dan VM2 yang sudah dibentuk. Tahapan berikutnya adalah kita menjalankan postman untuk membuktikan bahwa antara VM1 dan VM 2 telah terjadi komunikasi dan mereka akan saling berlomba untuk menjadi pemenang menemukan jumlah angka 0 sebanyak 5-digit bedasarkan coding program. 

 

B. Membangun Blockchain menggunakan IP Address yang beda dengan port berbeda.

Membuat Virtual Private Server (VPS) 1 menggunakan IP Address: 110.239.68.10 dengan port: 7071. Kemudian untuk Virtual Privater Server (VPS) 2 menggunakan IP Address: 110.239.71.66 dengan port: 7374. 

Tahapan yang sama dapat kita lakukan seperti point A untuk membangun Blockchain menggunakan IP Address yang sama. 

 

Blockchain.py 

Menggunakan VPS 1: 110.239.68.10

Port: 7071

Pemanggilan VPS 1 menggunakan Postman

Blockchain.py 

Menggunakan VPS 2: 110.239.71.66

Port: 7374

Pemanggilan VPS 2 menggunakan Postman

 

 

C. Membuat LoadBalancer.py

Tahapan membuat loadBalancer dilakukan dengan cara sebagai berikut:

  1. Membuat server LoadBalancer menggunakan server VPS 3 dengan IP Addreass: 110.239.69.130 dan port 0505.
  2. Pastikan blockchain.py pada server yang VPS1 dan VPS2 dengan port yang berbeda sudah dijalankan di PuTTY menggunakan python3. Dengan perintah python3 blockchain.py.
  3. Kemudian buatkan file loadbalancer.py dengan menggunakan sintak nano loadbalancer.py.
  4. Copy koding program loadbalancer.py ke dalam server VPS3. Kemudian ubah port yang berada didalam koding tersebut diganti dengan port yang digunakan pada server VPS1 dan VPS2 untuk blockchain.py. 
  5. Setelah selesai simpan, kemudian jalankan program loadbalancer.py menggunakan python3 dengan sintak: python3 loadbalancer.py
  6. Luaran dari sintak tersebut dapat dilihat pada gambar dibawah ini.

 

 

  1. Langkah selanjutnya adalah pemanggilan loadbalancer melalui aplikasi postman. Pastikan IP Address sesuai dengan yang telah dibuat pada server VPS3. Lihat gambar dibawah ini.

 

 

  1. Masukkan contoh data transaksi statis berikut ini untuk melihat seberapa cepat server VPS1 = VM1 dan VPS2= VM2 dapat membaca data sebanyak 10000000, dengan kondisi jika menemukan terlebih dahulu angka 0 dengan jumlah digit 5 akan menjadi pemenang untuk dapat menambahkan node baru kedalam servernya. 

{

    "sertifikat""sertifikat"

    "Prev_hash""e5a4b0381d7a9b876a159617eaaeba5782942cff6174771f5d57ca3fe5d2cc67"

}

  1. Hasil dari loadbalancer.py dapat dilihat bahwa VM2 menang karena lebih cepat menemukan angka “00000” pada data transaksi yang diolah.

Informasi Course Terkait
  Kategori: Blockchain
  Course: Blockchain Development dengan Python Part 1