Pages:
Author

Topic: [GUIDE] Bitcoin-CLI via Command Prompt (Windows) - page 2. (Read 722 times)

member
Activity: 247
Merit: 17
Secara umum tidak, karena semua argument pada Bitcoin-cli juga bisa digunakan pada Bitcoin-Qt melalui fungsi Console. Tetapi ada yang perlu agan pahami terlebih dahulu, Bitcoin-cli hanyalah sebuah wadah (sarana) untuk mengirimkan perintah-perintah RPC ke Bitcoind, bahkan pada saat agan menjalankan bitcoin-qt ditambah dengan argument -server, maka akan bisa melakukan perintah RPC ke Bitcoin-Qt melalui Bitcoin-cli.

Tetapi dari sisi tampilan (bitcoin-cli + bitcoind) dan Bitcoin-Qt keduanya mempunyai interface yg berbeda, dan menurut saya pribadi kinerja dari Bitcoin cli pada saat melakukan RPC call ke Bitcoind sedikit lebih ringan daripada Bitcoin-Qt yg notabene membutuhkan kinerja memory (ram) sedikit lebih besar.
I see...
Jadi intinya, Bitcoin-CLI ini merupakan dasar dari dari Bitcoin GUI atau bitcoin-qt ya

Bisa digunakan untuk orang yang mempunyai VPS, dimana tampilan hanya berupa terminal/console (tidak ada GUI).
Iya juga ya, kok saya gak kepikiran, logika kalau mau buka mainet bitcoin yang size nya 200GB++ harus pake koneksi super strong Cheesy
jr. member
Activity: 89
Merit: 6
Waduh gimana lagi tuh gan? saya masih awam kalau soal beginian.  Roll Eyes

Beberapa bahan bacaan untuk mempelajari + menerapkan pruning:
- https://bitcoin.org/en/release/v0.12.0#wallet-pruning
- https://coinguides.org/bitcoin-blockchain-pruning/
- https://bitcoin.org/en/full-node#reduce-storage

Cara melakukannya mudah kok gan, ga begitu sulit. Kalok ada masalah bisa search di Google dulu atau tanya di sini.
legendary
Activity: 2254
Merit: 2253
From Zero to 2 times Self-Made Legendary

Tadi saya coba download, bener disini kan  downloadnya?
Link : https://bitcoincore.org/bin/bitcoin-core-0.17.1/
Saya pilih yang "bitcoin-0.17.1-win64-setup.exe" size nya cuma 15mb?


Usahakan selalu mendownload Bitcoin core melalui link yang ditunjukkan oleh (official) forum bitcointalk pada bagian kiri atas (diatas tab Home, Help, dll)

Link >> https://bitcoin.org/en/download


Untuk ukuran installer Bitcoin core memang hanya sekitar 15Mb, tetapi jika agan nantinya telah mencapai 100% sinkronisasi maka data blockchain yg tersimpan didalam storage akan sebesar ~ 230GB (mainnet) dan ~ 25GB (testnet)

Tetapi jika agan menjalankan Prune node, maka kebutuhan storage akan menyesuaikan dengan ukuran prune block yg telah agan atur sebelumnya.
full member
Activity: 345
Merit: 114
Ukuran data testnet cuma 10% dari data mainnet (sekitar 230 GB) ... Untuk melakukan copy di CMD tinggal diblok bagian yg ingin di copy trus tekan "enter", dan untuk melakukan paste tinggal menggunakan shortcut "Ctrl + V"
Eh iya lupa ini kan pake CMD di windows  Grin
Tadi saya coba download, bener disini kan  downloadnya?
Link : https://bitcoincore.org/bin/bitcoin-core-0.17.1/
Saya pilih yang "bitcoin-0.17.1-win64-setup.exe" size nya cuma 15mb?

Jika masih dianggap besar, bisa menggunakan mode pruning dimana bitcoind hanya menyimpan beberapa block terakhir (tergantung ukuran prune yang diatur).
Tetapi beberapa perintah CLI tidak bisa dipakai.
Waduh gimana lagi tuh gan? saya masih awam kalau soal beginian.  Roll Eyes
legendary
Activity: 2870
Merit: 7490
Crypto Swap Exchange
Sekedar informasi, jika ingin menggunakan semua fitur di bitcoin-cli, bisa mengaktifkan -txindex di parameter startup bitcoind.
Salah satu fitur yang bisa dipakai adalah getrawtransaction untuk mendapatkan transaksi raw dari transaksi yang telah dikonfirmasi.

Contoh :

  • Input

Code:
getrawtransaction 9b0fc92260312ce44e74ef369f5c66bbb85848f2eddd5a7a1cde251e54ccfdd5

  • Output

Code:
01000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0704ffff001d010bffffffff0100f2052a010000004341047211a824f55b505228e4c3d5194c1fcfaa15a456abdf37f9b9d97a4040afc073dee6c89064984f03385237d92167c13e236446b417ab79a0fcae412ae3316b77ac00000000

Buset, untuk aplikasi CLI gedhe juga sizenya

Jika masih dianggap besar, bisa menggunakan mode pruning dimana bitcoind hanya menyimpan beberapa block terakhir (tergantung ukuran prune yang diatur).
Tetapi beberapa perintah CLI tidak bisa dipakai.

Apakah Bitcoin-CLI mempunyai kelebihan tersendiri ketimbang versi GUI atau bitcoin-qt?

Bisa digunakan untuk orang yang mempunyai VPS, dimana tampilan hanya berupa terminal/console (tidak ada GUI).
legendary
Activity: 2254
Merit: 2253
From Zero to 2 times Self-Made Legendary
Apakah Bitcoin-CLI mempunyai kelebihan tersendiri ketimbang versi GUI atau bitcoin-qt?

Secara umum tidak, karena semua argument pada Bitcoin-cli juga bisa digunakan pada Bitcoin-Qt melalui fungsi Console. Tetapi ada yang perlu agan pahami terlebih dahulu, Bitcoin-cli hanyalah sebuah wadah (sarana) untuk mengirimkan perintah-perintah RPC ke Bitcoind, bahkan pada saat agan menjalankan bitcoin-qt ditambah dengan argument -server, maka akan bisa melakukan perintah RPC ke Bitcoin-Qt melalui Bitcoin-cli.

Tetapi dari sisi tampilan (bitcoin-cli + bitcoind) dan Bitcoin-Qt keduanya mempunyai interface yg berbeda, dan menurut saya pribadi kinerja dari Bitcoin cli pada saat melakukan RPC call ke Bitcoind sedikit lebih ringan daripada Bitcoin-Qt yg notabene membutuhkan kinerja memory (ram) sedikit lebih besar.
member
Activity: 247
Merit: 17
Apakah Bitcoin-CLI mempunyai kelebihan tersendiri ketimbang versi GUI atau bitcoin-qt?
legendary
Activity: 2254
Merit: 2253
From Zero to 2 times Self-Made Legendary
Buset, untuk aplikasi CLI gedhe juga sizenya
Btw yang bikin saya penasaran, setahu saya itu di CLI gabisa copy paste, apakah addressnya harus ngetik manual?

Ukuran data testnet cuma 10% dari data mainnet (sekitar 230 GB) ... Untuk melakukan copy di CMD tinggal diblok bagian yg ingin di copy trus tekan "enter", dan untuk melakukan paste tinggal menggunakan shortcut "Ctrl + V"
full member
Activity: 345
Merit: 114
snip
Requirement
- Bitcoin core 0.17.1
- Storage untuk menyimpan data-data testnet (sekitar 22-25 Gb)
Buset, untuk aplikasi CLI gedhe juga sizenya
Btw yang bikin saya penasaran, setahu saya itu di CLI gabisa copy paste, apakah addressnya harus ngetik manual?
copper member
Activity: 2324
Merit: 2142
Slots Enthusiast & Expert
Sedikit menambahkan untuk yang malas install-install dan cuma ingin coba-coba bisa mengakses API JSON-RPC-nya di http://chainquery.com/bitcoin-api
Agan bisa menggunakan perintah-perintah (tidak semua) yang digunakan pada contoh-contoh di atas.

Misalnya pada agan ingin mencari data pada block #2

1. Cari blockhash
Code:
getblockhash/2

Hasilnya:
Code:
{
"result": "000000006a625f06636b8bb6ac7b960a8d03705d1ace08b1a19da3fdcc99ddbd",
"error": null,
"id": null
}

2. Ambil data block dari blockhash-nya
Code:
getblock/000000006a625f06636b8bb6ac7b960a8d03705d1ace08b1a19da3fdcc99ddbd/true

Hasilnya:
Code:
{
"result": {
"hash": "000000006a625f06636b8bb6ac7b960a8d03705d1ace08b1a19da3fdcc99ddbd",
"confirmations": 572571,
"strippedsize": 215,
"size": 215,
"weight": 860,
"height": 2,
"version": 1,
"versionHex": "00000001",
"merkleroot": "9b0fc92260312ce44e74ef369f5c66bbb85848f2eddd5a7a1cde251e54ccfdd5",
"tx": [
"9b0fc92260312ce44e74ef369f5c66bbb85848f2eddd5a7a1cde251e54ccfdd5"
],
"time": 1231469744,
"mediantime": 1231469665,
"nonce": 1639830024,
"bits": "1d00ffff",
"difficulty": 1,
"chainwork": "0000000000000000000000000000000000000000000000000000000300030003",
"previousblockhash": "00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048",
"nextblockhash": "0000000082b5015589a3fdf2d4baff403e6f0be035a5d9742c1cae6295464449"
},
"error": null,
"id": null
}

PS: Jangan gunakan data-data yang private pada website ini.
legendary
Activity: 2254
Merit: 2253
From Zero to 2 times Self-Made Legendary

Bitcoin-cli Regtest


Regtest adalah adalah sebuah jaringan private Blockchain atau bisa juga disebut sebagai jaringan lokal Bitcoin. Setiap node yang menjalankan jaringan Regtest mempunyai kontrol penuh terhadap jaringan blockchain tersebut, karena jaringan regtest tidak terkoneksi dengan jaringan mainnet maupun testnet.



Guide

● Untuk menjalankan Bitcoin regtest tidak diperlukan sinkronisasi pada wallet dan tidak membutuhkan storage yg besar.

● Memasukkan parameter ke file "bitcoin.conf" atau buat file "bitcoin.conf" (jika belum ada) dengan argument sbb :
Code:
rpcuser="user"
rpcpassword="pass"

● File "bitcoin.conf" bisa ditemukan/dibuat di folder
Code:
C:\Users\username\AppData\Roaming\Bitcoin
atau
Code:
%appdata%\Bitcoin\

● Jalankan "bitcoind" pada CMD (admin) dengan perintah sebagai berikut [1]
Code:
bitcoind -regtest



● Selanjutnya buka jendela CMD (admin) baru untuk menjalankan perintah bitcoin-cli dan selalu awali dengan argument sbb :
Code:
bitcoin-cli -regtest -rpcuser="user" -rpcpassword="pass"
Note : rpcuser & rpcpassword sesuaikan dengan parameter yg ada di "bitcoin.conf"

● Untuk membuat sebuah address baru gunakan perintah berikut [2]
Code:
bitcoin-cli -regtest -rpcuser="user" -rpcpassword="pass" getnewaddress "label" "address_type"



● Untuk membuat sebuah/beberapa block baru (include reward) gunakan perintah berikut [3]
Code:
bitcoin-cli -regtest -rpcuser="user" -rpcpassword="pass" generate "nblock"



● Untuk membuat block baru dan me-mining block tsb ke spesifik address gunakan perintah sbb [4]
Code:
bitcoin-cli -regtest -rpcuser="user" -rpcpassword="pass" generatetoaddress "nblock" "address"



● Pada saat anda memeriksa balance wallet, maka balance akan tetap 0 karena didalam regtest dibutuhkan 100 konfirmasi block supaya balance tersebut menjadi mature.

● Untuk melihat detail dari Blockchain (jumlah block, header, difficulty, dll) gunakan perintah berikut [5]



● Buat 100 Block baru, supaya reward dari ketiga block pertama tadi menjadi mature balance [6]
Code:
bitcoin-cli -regtest -rpcuser="user" -rpcpassword="pass" generate 100



● Cek balance (dari keseluruhan address yg ada didalam wallet) dan seharusnya ada balance sebesar 150 BTC [7]



● Untuk melihat unspent balance dari address tertentu gunakan perintah berikut [8]
Code:
bitcoin-cli -regtest -rpcuser="user" -rpcpassword="pass" listunspent "minconf" "maxconf" "[\"address\"]"



● Untuk argument-argument lainnya bisa dilihat dengan menggunakan perintah dibawah ini
Code:
bitcoin-cli -regtest help




Note
- Pada saat menjalankan mainnet atau testnet, maka pengaturan di bitcoin.conf harus diatur ulang (dikembalikan ke settingan sebelumnya)
- Jika anda tidak menggunakan parameter "rpcuser" & "rpcpassword" maka tidak diperlukan file "bitcoin.conf". Maka pada saat menjalankan "bitcoin-cli" hanya menggunakan perintah bitcoin-cli -regtest

legendary
Activity: 2254
Merit: 2253
From Zero to 2 times Self-Made Legendary

Intro


Mungkin jarang sekali orang yang menggunakan program Bitcoin-cli, mungkin alasannya karena kurang familiar dengan argument-argument yang digunakan dalam program tersebut (lebih nyaman menggunakan GUI Wallet / Bitcoin-Qt). Padahal dengan Bitcoin-cli kita bisa lebih mengenal secara mendalam tentang hal-hal yang ada didalam jaringan Bitcoin itu sendiri.



Tujuan

Sebenarnya untuk mengenal argument (command-list) buat Bitcoin-cli bisa dilihat di bitcoin-rpc.github.io. Akan tetapi fungsi-fungsi pada command-list tersebut akan terlihat hasilnya jika kita mempraktekkannya secara langsung, sehingga proses mempelajari bitcoin-cli akan lebih maksimal hasilnya.




Implementasi


Untuk belajar argument-argument dari bitcoin-cli, langkah yang paling mudah ialah dengan menjalankan Bitcoin-cli pada jaringan testnet Bitcoin

Requirement
- Bitcoin core 0.17.1
- Storage untuk menyimpan data-data testnet (sekitar 22-25 Gb)

Langkah-Langkah

- Download & install bitcoin core

- Kemudian jalankan Command Prompt (Admin) dan arahkan ke direktori dimana bitcoind dan bitcoin-cli terinstall [1]
Code:
cd C:\Program Files (x86)\Bitcoin\daemon


- Setelah itu tuliskan argument dibawah ini (dan tunggu proses sinkronisasi testnet selesai) [2]
Code:
bitcoind -testnet




- Selanjutnya buka Command Prompt (Admin) baru dan arahkan juga ke direktori dimana bitcoind dan bitcoin-cli terinstall [3]
Code:
cd C:\Program Files (x86)\Bitcoin\daemon


- Lalu agan bisa membuat address baru dengan beberapa perintah berikut
Code:
bitcoin-cli -testnet getnewaddress "label" "address_type"

Contoh
Quote
bitcoin-cli -testnet getnewaddress wallet-test-legacy legacy [4]
label = wallet-test-legacy ; address_type = "legacy"

bitcoin-cli -testnet getnewaddress wallet-test-segwit p2sh-segwit [5]
label = wallet-test-segwit ; address_type = "p2sh-segwit"



- Untuk mendapatkan BTC (gratis) pada jaringan testnet anda bisa memperolehnya disini
https://testnet-faucet.mempool.co/


- Setelah 6 konfirmasi block BTC tersebut akan masuk ke masing-masing address anda, untuk melihat seluruh balance didalam wallet gunakan perintah berikut [6]
Code:
bitcoin-cli -testnet getbalance


- Untuk melihat jumlah BTC yg diterima pada spesifik address, gunakan perintah berikut [7]
Code:
bitcoin-cli -testnet getreceivedbyaddress "address"



- Untuk melihat info pada wallet (fee, unconfirmed balance, balance, dll) [8]
Code:
bitcoin-cli -testnet getwalletinfo

- Untuk merubah fee transaksi (dengan satuan BTC/Kb), gunakan perintah berikut [9]
Code:
bitcoin-cli -testnet settxfee amount



- Untuk mengirimkan BTC ke wallet lainnya, gunakan perintah berikut [10]
Code:
bitcoin-cli -testnet sendtoaddress "address" "amount"

- Untuk mengirimkan BTC dengan tambahan fungsi "replaceable" (untuk keperluan bumpfee / merubah besaran fee jika transaksi stuck) [11]
Code:
bitcoin-cli sendtoaddress "address" "amount" "comment" "comment_to" subtractfeefromamount replaceable
subtractfeefromamount : true (fee diambil dari BTC yg dikirimkan) / false (fee dari balance wallet)
replaceable : true (bisa untuk proses bumpfee) / false (non-replaceable)





- Untuk melihat detail transaksi (amount, fee, replaceable, confirmation, dll) [12]
Code:
bitcoin-cli -testnet gettransaction "txid"



- Untuk melihat detail Block dari transaksi tersebut berada, gunakan perintah sebagai berikut [13]
Code:
bitcoin-cli -testnet getblock "blockhash"



- Untuk argument-argument lainnya bisa dilihat dengan menggunakan perintah dibawah ini
Code:
bitcoin-cli -testnet help



Note :

- Jika anda juga mempunyai tujuan untuk menggunakan Bitcoin core (Qt, bitcoind dan cli) pada jaringan mainnet dikemudian hari, maka jalankan Bitcoin-Qt/Bitcoind dan tunggu sampai proses sinkronisasi selesai.

- Bitcoin mainnet  dan testnet bisa dirunning secara bersama-sama, karena kedua jaringan mempunyai direktori data yg berbeda.

- Segala BTC yang ada didalam jaringan testnet tidak bisa digunakan pada jaringan Mainnet (begitu juga sebaliknya)

- Ukuran blockchain testnet sekitar 23.6 GB (tidak sebesar blockchain mainnet, sehingga proses sinkronisasi juga cepat)

- Jika ingin menyimpan blockchain pada direktori yg berbeda, maka pada saat menjalankan bitcoind (testnet) tambahkan argument
Code:
bitcoind -testnet -datadir=Path_Directory
Pages:
Jump to: