Which Bitcoin wallet is the best one and how to choose proper

Light Bitcoin wallet

Bitcoin Wallet / April 28, 2017

GreenBits screenshot

Bitcoin Core Wallet RPC/REST (CLI)

  • Get a new address for receiving payment
  • Instantly see your available Bitcoin balance
  • Send a single payment to multiple addresses
  • See what received transactions you can spend
  • Create and send raw transactions
  • Be notified of new blocks and transactions

Learn more: documentation for the RPC and REST interfaces

Lightweight Wallets Using Bitcoin Core

Lightweight wallets usually connect to several random full nodes (like Bitcoin Core) to send and receive all of their data. In the process they leak private data and make themselves more vulnerable to attacks.

mSigma screenshotBut it’s also possible to connect certain lightweight wallets solely to your own Bitcoin Core full node, called a trusted peer. If you do this with a secure and private connection every time you use that lightweight wallet, you’ll get most of the security and privacy benefits of a full node as well as help protect decentralization.

Trusted Peer Support

The following wallets can securely connect to a trusted peer.

GreenBits

GreenBits is a fast and easy to use wallet. Enjoy improved security with a minimal/zero trust approach, optional hardware wallets support, multisignature based 2FA and spending limits functionality.

  1. Open the GreenBits app
  2. Go to the configuration screen
  3. Choose to Enable SPV (default) and tap Only connect to a trusted peer.
  4. Enter your .onion address in the trusted peer field.
  5. Restart the app.

Clear overviewNote that GreenAddress will still be able to see your payments; however, you’ll have enhanced security as well as privacy from random peers on the Bitcoin network.

mSigna

mSIGNA is an advanced yet easy-to-use wallet featuring speed and simplicity, enterprise-level scalability, and strong security. It supports BIP32, multisignature transactions, offline storage, multidevice synchronization, and encrypted electronic and paper backups.

No configuration necessary: just install Bitcoin Core on the same computer you plan to use mSigna, wait for Bitcoin Core to sync the block chain, and then start mSigna—it will automatically connect to your Bitcoin Core full node.

bitcoin-cli -testnet getnewaddress "doc test"

mft61jjkmiEJwJ7Zw3r1h344D6aL1xwhma

bitcoin-cli -testnet getbalance

1.99900000

bitcoin-cli -testnet sendmany \ "test1" \ ''' { "mjSk1Ny9spzU2fouzYgLqGUD8U41iR35QN": 0.1, "mgnucj8nYqdrPFh2JfZSB1NmUThUGnmsqe": 0.2 } ''' \ 6 \ "Example Transaction"

ec259ab74ddff199e61caa67a26edc60f509ce0df4d044e8f4d63d

bitcoin-cli -testnet listunspent 6 99999999 ''' [ "mgnucj8nYqdrPFh2JfZSB1NmUThUGnmsqe" ] '''

[ { "txid" : "d54994ece1d11b868696250ab132b7bd68130e880c9a", "vout" : 1, "address" : "mgnucj8nYqdrPFh2JfZSB1NmUThUGnmsqe", "account" : "test label", "scriptPubKey" : "76a9140dfc8bafc8419853b34d5e072ad37d1a5159f58488ac", "amount" : 0.00010000, "confirmations" : 6210, "spendable" : true } ]

Create a raw transaction:

bitcoin-cli -testnet createrawtransaction ''' [ { "txid": "1eb590cd06127f78bf38ab4140c4cdce56ad9eb8886999eb898ddf4d3b28a91d", "vout" : 0 } ]''' '{ "mgnucj8nYqdrPFh2JfZSB1NmUThUGnmsqe": 0.13 }'

Sign the above raw transaction:

bitcoin-cli -testnet signrawtransaction 1da9283b4ddf8d\ 89eb996988b89ead56cecdc44041ab38bf787f1206cd000000ffff\ ffff01405dcdfc8bafc8419853b34d5e072ad37d1a51\ 59f58488ac00000000

{ "hex" :, "complete" : true }

Send the above signed raw transaction:

bitcoin-cli -testnet sendrawtransaction 1da9283b4ddf8d\ 89eb996988b89ead56cecdc44041ab38bf787f1206cd\ 4402200ebea9f630f3ee35fa467ffc28ecd6eb1c9199eb23c4a16a\ 042ecaf987d295b8dddf8f46ec32ca1915\ ba52d1f6d16d76a49e6c8e2edc1c265d600ec1a64a45153d45c29a\ 2fd0228c24c3a524ffffffff01405dcdfc8bafc84198\ 53b34d5e072ad37d1a5159f58488ac00000000

f5a5ce5988cc72b9b90e8d1d6c910cda177357cc2f2cf0899fbaad

QR codes Proxy configuration

Source: bitcoin.org
Warning:
Text: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone.
File: /home/nex99/domains/bitcoin-and-blockchain.education/code/utils.php
Line: 482

Warning:
Text: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone.
File: /home/nex99/domains/bitcoin-and-blockchain.education/code/utils.php
Line: 482