Saya belum mencoba script di atas, namun ada sedikit pertanyaan;
Pada script di atas dituliskan beberapa kali kata "testnet", seperti contoh pada: const testnet = bitcoin.networks.testnet, apakah mesti demikian sementara untuk mainnet tidak perlu dituliskan karena sudah default?
Iya bener Om, jika memang script ditujukan untuk kegunaan pada jaringan Testnet Bitcoin, maka syntax
const testnet = bitcoin.networks.testnet harus ditambahkan. Sementara jika yang diinginkan adalah script untuk Bitcoin Mainnet, maka untuk penggunaan syntax testnet bisa dihilangkan.
Testnetconst testnet = bitcoin.networks.testnet;
const root = bip32.fromSeed(seed, testnet);
Mainnetconst testnet = bitcoin.networks.testnet;
const root = bip32.fromSeed(seed);
atau bisa juga dituliskan seperti ini (untuk jaringan mainnet)
const network = bitcoin.networks.bitcoin;
const root = bip32.fromSeed(seed, network);
Pada bagian derivation path juga perlu diperhatikan
const path2 = "m/44'/1'/0'/0/0"
const child1 = root.derivePath(path2);
const privkey = child1.toWIF();
const publick = child1.publicKey;
const p2pkh = bitcoin.payments.p2pkh({pubkey: child1.publicKey, network: testnet}).address;
* Simbol
1' pada struktur Derivation Path menyatakan "Coin Type = Bitcoin Testnet"
Jika script diperuntukan buat jaringan mainnet, maka penulisannya sebagai berikut :
const path2 = "m/44'/0'/0'/0/0"
const child1 = root.derivePath(path2);
const privkey = child1.toWIF();
const publick = child1.publicKey;
const p2pkh = bitcoin.payments.p2pkh({pubkey: child1.publicKey}).address;
tidak banyak yg ane bisa dengan nodejs, tapi kalok hanya menampilkan tulisan hello world atau tulisan2 lain, ane masih bisa.
apakah ada yg salah dengan instalasi nodejs di pc ane, perasaan udah ane impor jga modules2 yg diperlukan, namun tiap kali menjalankan code2 tersebut, hasilnya selalu gagal n muncul perringatan.
(node:13396) Warning: To load an ES module, set "type": "module" in the package.json or use the .mjs extension.
(Use `node --trace-warnings ...` to show where the warning was created)
C:\Users\2nx-8astian\testing.js:1
import * as bitcoin from "bitcoinjs-lib";
^^^^^^
SyntaxError: Cannot use import statement outside a module
Saya asumsikan pada saat agan menjalankan Node JS, masih menggunakan file "package.json" default dari bawaan installasi Node JS. Sehingga untuk fungsi "import" module / library tidak dapat dijalankan, dan untuk mengganti fungsi "import" digunakan fungsi "const require"
import * as bitcoin from "bitcoinjs-lib" diganti dengan
const bitcoin = require('bitcoinjs-lib')Jika ingin menjalankan Node JS dengan fungsi import berjalan sebagaimana mestinya, maka agan harus membuat (memodifikasi) file "package.json" sendiri.
- Copy file "package.json" dan folder "node_modules"
- Paste keduanya ke Folder Baru
- Buka file "package.json" (di Folder Baru) dan ganti isinya dengan :
{
"type": "module"
}
- Buat file xxxxx.js pada Folder Baru
- Buka file xxxxx.js menggunakan notepad atau notepad++, dan paste-kan script (Bitcoin) yang ingin dieksekusi, selalu "save" sebelum mengeksekusi
- Jalankan CMD dan arahkan ke directory dimana Folder Baru tersimpan
- Untuk mengeksekusi script yang dituliskan di notepad, jalankan perintah sebagai berikut :
node xxxxx.js