Ethereum Private Network - Buat Ethereum Blockchain Anda sendiri!



Dalam tutorial Jaringan Pribadi Ethereum ini, Anda akan belajar cara membuat Blockchain Ethereum Anda sendiri dan cara melakukan transaksi antara dua akun.

Sebelumnya Tutorial Truffle Ethereum , Anda mempelajari Truffle Suite dan mengembangkan file Ethereum DApp. Untuk mengembangkan aplikasi ethereum yang kompleks, Anda mungkin ingin menjalankannya di jaringan pribadi untuk melihat cara kerjanya sebelum menerapkannya. Jadi, dalam tutorial Jaringan Pribadi Ethereum ini, Anda akan belajar cara membuat file Jaringan Ethereum Pribadi dan cara melakukan transaksi antara dua akun.

Tertarik dengan Pengembangan Ethereum? Lihat Live .





Tutorial Jaringan Pribadi Ethereum

Ini adalah topik yang akan saya bahas dalam tutorial ini:

Apa itu Jaringan Pribadi Ethereum?

Jaringan Pribadi Ethereum adalah Blockchain yang sepenuhnya pribadi yang diisolasi dari jaringan Ethereum Utama. Jaringan Pribadi Ethereum terutama dibuat oleh organisasi untuk membatasi izin baca dari Blockchain. Hanya node dengan izin yang tepat yang dapat mengakses Blockchain ini. Node dalam jaringan ini tidak terhubung ke node jaringan utama dan jangkauannya hanya dibatasi untuk Blockchain pribadi ini.



Privat dan Publik -Ethereum Private Network tutorial - Edureka

Mengapa Jaringan Pribadi Ethereum digunakan?

Ethereum Private Network digunakan oleh organisasi untuk menyimpan data pribadi yang seharusnya tidak terlihat oleh orang di luar organisasi mereka. Ethereum Private Network juga digunakan untuk menguji dan bereksperimen dengan Blockchain jika seseorang tidak ingin menggunakan jaringan pengujian publik.

Fitur Jaringan Pribadi Ethereum

Seperti yang disebutkan di bagian sebelumnya, Jaringan Pribadi Ethereum digunakan untuk tujuan pengujian. Tetapi mengapa seseorang bersusah payah membuat jaringan baru ketika jaringan pengujian publik sudah tersedia? Nah, Jaringan Pribadi Ethereum memiliki serangkaian fiturnya sendiri seperti yang tercantum di bawah ini:



  • Ini bertindak sebagai Database Terdistribusi
  • Blockchain di Jaringan Pribadi Ethereum dapat berisi data pribadi (karena jaringan tersebut bukan untuk publik)
  • Akses bisa berbasis izin
  • Melakukan transaksi bisa gratis
  • Akun dapat dialokasikan dengan etersendiri yang bahkan tidak perlu membeli eter virtual

Selanjutnya, mari kita ke bagian langsung dari tutorial Jaringan Pribadi Ethereum ini.

Menginstal Ethereum di Ubuntu

Untuk membuat Jaringan Pribadi Ethereum, pertama-tama kita harus menginstal Ethereum di sistem kita. Di bagian Tutorial Jaringan Pribadi Ethereum ini, Anda akan belajar cara menginstal Ethereum di Ubuntu.

Untuk menginstal Ethereum, jalankan perintah berikut di terminal:

$ sudo apt-get install software-properties-common $ sudo add-apt-repository -y ppa: ethereum / ethereum $ sudo apt-get update $ sudo apt-get install ethereum

Selesai! Ini akan menginstal Ethereum di sistem Anda.

Mari kita mulai dengan pembuatan Jaringan Pribadi.

Demo: Membuat Jaringan Pribadi Ethereum dan melakukan Transaksi

Dalam Tutorial Jaringan Pribadi Ethereum ini, kami akan mengirimkan eterdari satu akun ke akun lainnya dan karenanya, kami membutuhkan akun. Sekarang mari kita lihat cara membuat akun untuk Blockchain kami.

Membuat Akun Untuk Jaringan Pribadi Ethereum

Sebelum membuat akun baru, mari kita buat direktori baru untuk tempat kerja kita. Lihat perintah di bawah ini untuk melakukan ini:

$ mkdir private-ethereum $ cd private-ethereum

Untuk melakukan transaksi, kita membutuhkan setidaknya dua akun: Penerima dan pengirim.

Untuk membuat dua akun, jalankan perintah berikut dua kali:

$ geth --datadir ./datadir akun baru

Masukkan frasa sandi untuk setiap akun saat ditanya. Jangan lupakan frasa sandi ini!

Setelah perintah ini berhasil dijalankan, dua akun akan dibuat dan alamat akun akan ditampilkan di layar.

Simpan alamat ini di suatu tempat karena kita akan menggunakannya lebih jauh.

Membuat File Genesis

File Genesis berisi properti yang menentukan Blockchain. File Genesis adalah titik awal dari Blockchain dan karenanya, wajib membuat file Genesis untuk membuat Blockchain. Sekarang, mari buat Genesismengajukan.

Pertama, buat file bernama genesis.json

$ nano genesis.json

Dan sekarang salin dan tempel kode berikut di file itu:

{'config': {'chainId': 2019, 'homesteadBlock': 0, 'eip155Block': 0, 'eip158Block': 0, 'byzantiumBlock': 0}, 'trouble': '400', 'gasLimit': ' 2000000 ',' alokasi ': {' 82c440bba462220c9b54600e584373014706c177 ': {' balance ':' 10000000000000000000000000 '},' 9db5b590fdecc10cdb04b85a3503e94e61b2070000ca '0000: {'balance': '12000000 }0000}

catatan: Pada kode di atas, ganti alamat di bawah mengalokasikan bagian dengan alamat akun yang Anda buat di langkah sebelumnya.

Simpan dan keluar.

Izinkan saya menjelaskan isi file Genesis secara singkat:

chainId - Ini adalah nomor identifikasi rantai yang digunakan untuk membedakan antara Blockchain
homesteadBlock, eip155Block, eip158Block, byzantiumBlock - properti ini terkait dengan percabangan rantai dan pembuatan versi. Kita tidak membutuhkan ini untuk tutorial kita, jadi mari kita setel ke 0.
kesulitan - Angka ini menentukan seberapa sulit balok akan menambang. Untuk jaringan Pribadi, sebaiknya setel angka yang lebih rendah karena memungkinkan Anda menambang blok dengan cepat, yang menghasilkan transaksi cepat.
gasLimit - Jumlah ini adalah jumlah total gas yang dapat digunakan di setiap blok. Kami tidak ingin jaringan kami mencapai batas, jadi kami telah menetapkan ini setinggi ini.
mengalokasikan - Bagian ini digunakan untuk mengalokasikan eter ke akun yang sudah dibuat.

File Genesis sudah siap. Sekarang, saatnya memulai Blockchain.

Membuat Instansiasi Direktori Data

Sebelum memulai Blockchain, kita harus membuat instance direktori data. Direktori Data adalah direktori tempat penyimpanan data yang terkait dengan Blockchain. Untuk membuat instance direktori data, jalankan perintah berikut:

$ geth --datadir ./myDataDir init ./genesis.json

Pada pembuatan instance yang berhasil, Anda akan melihat keluaran berikut:

Dengan Direktori Data yang dibuat, sekarang kita dapat memulai Blockchain.

Memulai Ethereum Private Blockchain

Untuk memulai Blockchain, jalankan perintah berikut:

$ geth --datadir ./myDataDir --networkid 1114 konsol 2 >> Eth.log

Selesai! Blockchain Ethereum pribadi Anda sudah aktif dan berjalan.

Pada perintah di atas, kami mengirimkan semua log dalam file terpisah bernama Eth.log . Geth secara otomatis akan membuat file baru jika tidak ditemukan.

Output dari kode ini akan terlihat seperti ini:

Sekarang, kita telah masuk ke file geth menghibur di mana kami dapat menjalankan perintah untuk Blockchain kami.

Membaca Log

Di bagian sebelumnya, saya menyebutkan bahwa kami menyimpan log di file lain. Di bagian ini, saya akan memberi tahu Anda cara membaca log dari file ini.

Kami akan membaca log dari terminal terpisah, jadi pertama-tama mari kita buka terminal baru. Pertama,beralih ke pribadi-ethereum direktori dan kemudian jalankan perintah berikut untuk membaca log:

$ tail -f Eth.log

Sekarang Anda dapat melihat log di terminal. Log ini diperbarui secara dinamis setiap kali ada beberapa aktivitas di Blockchain.

Mengimpor akun ke Jaringan Pribadi

Anda mungkin ingat bahwa kami membuat dua akun untuk melakukan transaksi. Namun, kami tidak menambahkan akun tersebut ke jaringan kami. Jadi, di bagian tutorial Jaringan Pribadi Ethereum ini, saya akan memberi tahu Anda cara mengimpor akun.

Saat kami membuat akun, semua detail akun disimpan di file UTC mengajukan di direktori yang disebutkan selama pembuatan akun (jalur: ./datadir/keystore ). Untuk mengimpor akun, kita perlu menyalin file-file ini dan menempelkannya di keystore direktori di bawah Direktori Data(jalur: ./myDataDir/keystore )

Itu saja! Akun tersebut diimpor. Sederhana, bukan? Untuk memverifikasi impor, kami akan menjalankan perintah berikut di geth menghibur.

> eth.accounts

Ini akan menampilkan daftar semua akun yang tersedia.

Untuk memeriksa saldo akun ini, kami akan menggunakan perintah berikut:

> web3.fromWei (eth.getBalance (), 'ether')

Kami siap dengan segala yang dibutuhkan untuk bertransaksi. Kenapa menunggu? Ayo lakukan!

Melakukan Transaksi

Dalam tutorial Jaringan Pribadi Ethereum ini, kami akan mengirimkan beberapa eterdari satu akun ke akun lainnya.

Sintaks untuk mengirim eter adalah sebagai berikut:

> eth.sendTransaction ({dari: ”alamat”, ke: ”alamat”, nilai: web3.toWei (jumlah, 'ether')})

Kami akan mengirim 1000 eter dari akun 1 ke akun 2 menggunakan perintah berikut:

java menemukan nomor terbesar dalam daftar
> eth.sendTransaction ({from: eth.accounts [0], ke: eth.accounts [1], nilai: web3.toWei (1000, 'ether')})

Tidak berhasil? Jangan khawatir. Tidak berhasil untuk saya juga. Ini karena akun dikunci secara default dan tidak mengizinkan transaksi.

Jadi, pertama-tama, kita perlu membuka kunci akun pengirim. Ingat frasa sandi yang Anda gunakan saat membuat akun? Ya, Anda harus, karena Anda harus menggunakannya untuk membuka kunci akun. Kami akan membuka kunci akun dengan perintah berikut:

personal.unlockAccount (eth.accounts [0], '')

Sekarang kami akan mengirim eterberhasil:

> eth.sendTransaction ({from: eth.accounts [0], ke: eth.accounts [1], nilai: web3.toWei (1000, 'ether')})

Ini harus mengembalikan ID Transaksi.

Selesai! Anda berhasil melakukan transaksi!

Untuk memverifikasi transaksi, mari kita periksa saldo di kedua akun.

> web3.fromWei (eth.getBalance ('0x82c440bba462220c9b54600e584373014706c177'), 'ether')
> web3.fromWei (eth.getBalance ('0x9db5b590fdecc10cdb04b85a3503e94e61b207ca'), 'ether')

Yay! Kita bisa melihat 1000 eter itudikirim dari satu akun ke akun lain!

Selamat! Anda telah membuat Jaringan Pribadi Ethereum dan melakukan transaksi. Saya harap tutorial Jaringan Pribadi Ethereum ini informatif dan membantu Anda memahami tentang Jaringan Pribadi Ethereum. Sekarang, lanjutkan dan coba bereksperimen dengan jaringan Pribadi yang baru dibuat.

Ada pertanyaan untuk kami? Silakan posting di dan kami akan menghubungi Anda kembali.

Jika Anda ingin mempelajari Blockchain dan membangun karier di Teknologi Blockchain, lihat kami yang dilengkapi dengan pelatihan langsung yang dipimpin instruktur dan pengalaman proyek kehidupan nyata. Pelatihan ini akan membantu Anda memahami apa itu Blockchain secara menyeluruh dan membantu Anda mencapai penguasaan atas subjek tersebut.