Post
Topic
Board Bahasa Indonesia (Indonesian)
Merits 1 from 1 user
Re: [Info & Tutorial] Multi-Signature Wallet
by
Husna QA
on 31/12/2020, 07:44:47 UTC
⭐ Merited by DroomieChikito (1)
Menyambung diskusi sebelumnya tentang multi-signature di https://bitcointalk.org/index.php?topic=4981850.msg55918478#msg55918478
Ini kali pertama saya mencoba mempraktekkan penggunaan multi signature di Electrum merujuk pada panduan dari om abhi, om ryzaadit dan lainnya; namun kali ini dengan menggunakan hardware wallet.

Wallet 1
Wallet: Electrum Testnet 4.0.9 (versi macOS)
Hardware wallet: Trezor T

Wallet 2
Wallet: Electrum Testnet 4.0.9 (versi Windows OS)
Hardware wallet: Ledger Nano X

Secara default, Electrum yang ada di application mac adalah versi mainnet (tidak ada shortcut untuk versi testnet sebagaimana pada versi Windows OS);
Untuk menjalankan Electrum Testnet, buka Terminal dan ketikkan perintah berikut:

Code:
open -n /Applications/Electrum.app --args --testnet

Akan dimunculkan window Electrum - Install Wizard (Testnet);



Note: Tampilan seperti nampak di atas karena sebelumnya saya pernah membuat wallet testnet lain (non mul-sig).
Pada Alternatively pilih Create New Wallet dan beri nama wallet tersebut.



Pada jenis wallet, pilih Multi-Signature wallet



Kemudian tentukan Consigner dan juga jumlah signature yang dibutuhkan agar bisa memproses transaksi di wallet tersebut.



Pada Add cosigner (1 of 2), kali ini saya menggunakan Use a hardware device



Pada Hardware Keystore pilih device yang terhubung lalu klik Next.
- Device di Wallet (Cosigner) 1:



- Device di Wallet (Cosigner) 2:



Pilih type address wallet ; Untuk derivation path saya biarkan secara default



Kemudian catat Master Public Key yang dihasilkannya, kemudian klik next.

- Master Public Key di Cosigner 1:



- Master Public Key di Cosigner 2:



Pada Add Cosigner (2 of 2) pilih Enter cosigner key



Pada wallet 1 isi menggunakan master public key (xpub) wallet 2:



Pada wallet 2 isi menggunakan master public key (xpub) wallet 1:



Buat password untuk meng-encrypt masing-masing walet pada kedua Cosigner.



Buka tab Addresses (Menu View -> Show Addresses), pastikan address di semua Cosigner sama:

- Address Wallet (cosigner) 1:



- Address Wallet (cosigner) 2:



Tes transaksi di Electrum Multi-Signature Wallet

Note: Saya lihat fitur Lightning Network di Electum (pada test kali ini) tidak men-support untuk wallet multi signature.

- Receive

Pada tab Receive pilih New Address;
Pada kolom Expires after saya pilih Never.



Code:
tb1qnrsxytrm3whmrw65lctd3fdpk28er7tudmhwseshdcylyeudmwgslgqwww

Saya coba kirim sejumlah Bitcoin dari Wallet Bitcoin Core (testnet) ke address tersebut di atas.

Code:
https://blockstream.info/testnet/tx/5e42c85dd05dfdeff0f17a03e23ad88fdda98f382d1437cd2ffab523bad94bc2

Wallet (Cosigner) 1 dan Wallet (Cosigner) 2 mendapatkan notifikasi serupa perihal transaksi penerimaan tersebut.

- Send

Pada Wallet (Cosigner) 1, klik tab Send masukkan address Bitcoin si Penerima (Pay to), Description (bisa dikosongkan), dan juga jumlah BTC yang akan dikirim (Amount), kemudian klik Pay...



Tentukan Fee rate kemudian klik Send



Unlock hardware device jika terkunci, dan lakukan konfirmasi untuk mengirim.



Setelah terkonfirmasi di wallet (Cosigner) 1 maka muncul jendela Transaction ID dengan status: Partially signed (1/2)



Klik tombol Export di pojok kiri bawah. Pada test kali ini saya memilih:
For hardware device; include xpubs -> Export to File (bisa juga menggunakan opsi QR code dan lainnya)



Pada Wallet (cosigner) 2, pilih menu Tools -> Load transaction -> From file
Pilih file yang didapatkan dari hasil eksport di Wallet 1 sebelumnya.



Pada jendela Transaction, klik Sign kemudian konfirmasi di hardware device.







Note: sebagian langkah konfirmasi di Ledger Nano X saya skip.

Kembali ke Electrum Klik Broadcast -> OK untuk mengirimkan transaksi multi signature tersebut ke blockchain.



Transaksi selesai:

Code:
https://blockstream.info/testnet/tx/ed17bf23032ed1e49533595a35486da9a95b6b064989e1d428d6b6ac69c571a1