Electrum Bitcoin Wallet

Bitcoin people are always telling me to go trustless... so why are they also always telling me to go for Ledger/Trezor?

Serious question. I don't have very much Bitcoin but I truly believe in "not your keys, not your coin" and I keep everything on Electrum, I feel it is safe enough and for 4 years, so far so good.
But I keep reading (and getting told) I need to buy a Ledger for safer storage. But as far as I can see, Ledger isn't open source. And what if something goes wrong with my Ledger one day and the company closes down and I can't get support? Or how do I know it won't bite me one day and just take my money somehow?
I know a lot of people trust the company, and hey that's great. Am I wrong somewhere or have I misunderstood Ledger is not open source?
I even feel I personally trust web wallets (I know the risk) much more if they are open source. Like Counterparty wallet. I see new ones coming up now like Bitamp. Am I gravely mistaken?
submitted by hotwheels7777 to Bitcoin [link] [comments]

Bitcoin Newcomers FAQ - Please read!

Welcome to the /Bitcoin Sticky FAQ

You've probably been hearing a lot about Bitcoin recently and are wondering what's the big deal? Most of your questions should be answered by the resources below but if you have additional questions feel free to ask them in the comments.
It all started with the release of the release of Satoshi Nakamoto's whitepaper however that will probably go over the head of most readers so we recommend the following videos for a good starting point for understanding how bitcoin works and a little about its long term potential:
Some other great resources include Lopp.net, the Princeton crypto series and James D'Angelo's Bitcoin 101 Blackboard series.
Some excellent writing on Bitcoin's value proposition and future can be found at the Satoshi Nakamoto Institute.
Some Bitcoin statistics can be found here and here. Developer resources can be found here. Peer-reviewed research papers can be found here.
Potential upcoming protocol improvements and scaling resources here and here.
The number of times Bitcoin was declared dead by the media can be found here (LOL!)

Key properties of Bitcoin

Where can I buy bitcoins?

Bitcoin.org and BuyBitcoinWorldwide.com are helpful sites for beginners. You can buy or sell any amount of bitcoin (even just a few dollars worth) and there are several easy methods to purchase bitcoin with cash, credit card or bank transfer. Some of the more popular resources are below, also check out the bitcoinity exchange resources for a larger list of options for purchases.
Here is a listing of local ATMs. If you would like your paycheck automatically converted to bitcoin use Bitwage.
Note: Bitcoins are valued at whatever market price people are willing to pay for them in balancing act of supply vs demand. Unlike traditional markets, bitcoin markets operate 24 hours per day, 365 days per year. Preev is a useful site that that shows how much various denominations of bitcoin are worth in different currencies. Alternatively you can just Google "1 bitcoin in (your local currency)".

Securing your bitcoins

With bitcoin you can "Be your own bank" and personally secure your bitcoins OR you can use third party companies aka "Bitcoin banks" which will hold the bitcoins for you.
Note: For increased security, use Two Factor Authentication (2FA) everywhere it is offered, including email!
2FA requires a second confirmation code to access your account making it much harder for thieves to gain access. Google Authenticator and Authy are the two most popular 2FA services, download links are below. Make sure you create backups of your 2FA codes.
Google Auth Authy OTP Auth
Android Android N/A
iOS iOS iOS

Watch out for scams

As mentioned above, Bitcoin is decentralized, which by definition means there is no official website or Twitter handle or spokesperson or CEO. However, all money attracts thieves. This combination unfortunately results in scammers running official sounding names or pretending to be an authority on YouTube or social media. Many scammers throughout the years have claimed to be the inventor of Bitcoin. Websites like bitcoin(dot)com and the btc subreddit are active scams. Almost all altcoins (shitcoins) are marketed heavily with big promises but are really just designed to separate you from your bitcoin. So be careful: any resource, including all linked in this document, may in the future turn evil. Don't trust, verify. Also as they say in our community "Not your keys, not your coins".

Where can I spend bitcoins?

Check out spendabit or bitcoin directory for millions of merchant options. Also you can spend bitcoin anywhere visa is accepted with bitcoin debit cards such as the CashApp card. Some other useful site are listed below.
Store Product
Gyft Gift cards for hundreds of retailers including Amazon, Target, Walmart, Starbucks, Whole Foods, CVS, Lowes, Home Depot, iTunes, Best Buy, Sears, Kohls, eBay, GameStop, etc.
Spendabit, Overstock and The Bitcoin Directory Retail shopping with millions of results
ShakePay Generate one time use Visa cards in seconds
NewEgg and Dell For all your electronics needs
Bitwa.la, Coinbills, Piixpay, Bitbill.eu, Bylls, Coins.ph, Bitrefill, LivingRoomofSatoshi, Coinsfer, and more Bill payment
Menufy, Takeaway and Thuisbezorgd NL Takeout delivered to your door
Expedia, Cheapair, Destinia, Abitsky, SkyTours, the Travel category on Gyft and 9flats For when you need to get away
Cryptostorm, Mullvad, and PIA VPN services
Namecheap, Porkbun Domain name registration
Stampnik Discounted USPS Priority, Express, First-Class mail postage
Coinmap and AirBitz are helpful to find local businesses accepting bitcoins. A good resource for UK residents is at wheretospendbitcoins.co.uk.
There are also lots of charities which accept bitcoin donations.

Merchant Resources

There are several benefits to accepting bitcoin as a payment option if you are a merchant;
If you are interested in accepting bitcoin as a payment method, there are several options available;

Can I mine bitcoin?

Mining bitcoins can be a fun learning experience, but be aware that you will most likely operate at a loss. Newcomers are often advised to stay away from mining unless they are only interested in it as a hobby similar to folding at home. If you want to learn more about mining you can read more here. Still have mining questions? The crew at /BitcoinMining would be happy to help you out.
If you want to contribute to the bitcoin network by hosting the blockchain and propagating transactions you can run a full node using this setup guide. If you would prefer to keep it simple there are several good options. You can view the global node distribution here.

Earning bitcoins

Just like any other form of money, you can also earn bitcoins by being paid to do a job.
Site Description
WorkingForBitcoins, Bitwage, Cryptogrind, Coinality, Bitgigs, /Jobs4Bitcoins, BitforTip, Rein Project Freelancing
Lolli Earn bitcoin when you shop online!
OpenBazaar, Purse.io, Bitify, /Bitmarket, 21 Market Marketplaces
/GirlsGoneBitcoin NSFW Adult services
A-ads, Coinzilla.io Advertising
You can also earn bitcoins by participating as a market maker on JoinMarket by allowing users to perform CoinJoin transactions with your bitcoins for a small fee (requires you to already have some bitcoins.

Bitcoin-Related Projects

The following is a short list of ongoing projects that might be worth taking a look at if you are interested in current development in the bitcoin space.
Project Description
Lightning Network Second layer scaling
Blockstream, Rootstock and Drivechain Sidechains
Hivemind and Augur Prediction markets
Tierion and Factom Records & Titles on the blockchain
BitMarkets, DropZone, Beaver and Open Bazaar Decentralized markets
JoinMarket and Wasabi Wallet CoinJoin implementation
Coinffeine and Bisq Decentralized bitcoin exchanges
Keybase Identity & Reputation management
Abra Global P2P money transmitter network
Bitcore Open source Bitcoin javascript library

Bitcoin Units

One Bitcoin is quite large (hundreds of £/$/€) so people often deal in smaller units. The most common subunits are listed below:
Unit Symbol Value Info
bitcoin BTC 1 bitcoin one bitcoin is equal to 100 million satoshis
millibitcoin mBTC 1,000 per bitcoin used as default unit in recent Electrum wallet releases
bit bit 1,000,000 per bitcoin colloquial "slang" term for microbitcoin (μBTC)
satoshi sat 100,000,000 per bitcoin smallest unit in bitcoin, named after the inventor
For example, assuming an arbitrary exchange rate of $10000 for one Bitcoin, a $10 meal would equal:
For more information check out the Bitcoin units wiki.
Still have questions? Feel free to ask in the comments below or stick around for our weekly Mentor Monday thread. If you decide to post a question in /Bitcoin, please use the search bar to see if it has been answered before, and remember to follow the community rules outlined on the sidebar to receive a better response. The mods are busy helping manage our community so please do not message them unless you notice problems with the functionality of the subreddit.
Note: This is a community created FAQ. If you notice anything missing from the FAQ or that requires clarification you can edit it here and it will be included in the next revision pending approval.
Welcome to the Bitcoin community and the new decentralized economy!
submitted by BitcoinFan7 to Bitcoin [link] [comments]

Reminder from previous bull markets

Usually, bull markets attract a lot of new investors - although speculators should be the right word here - and as usual, a lot of them are going to be crushed a way or another.
First, before putting a single dollar, euro or whatever in the market, you should read a lot to know exactly what you're looking for.
Are you here for the tech and/or the cypherpunk ethos ? Great, there's lot of resources out there (my links are cleaned but as always, do your due diligence) :
Now, you've read and you want to put some skin in the game. Several exchanges are acceptable, a lot of aren't, be careful and assume that none really are (know that I won't post any ref links) :
This was for centralized exchanges aka CEX. Talking about custodial, you'll need wallets to store your (bit)coins. Always try to use non-custodial wallets, which means wallets that give you your private keys. This way, if the software goes down, you can always retreive your money. Now, I won't link to all the existing wallets but will advise you to buy hardware wallets (trezor or ledger but there are others) or to create (on off-gap computers) paper wallets you're able to store safely (against all risks, not only robbery but housefire). You also could use your memory with brain wallets but, my gosh, I wouldn't trust myself. For Bitcoin (or even Litecoin), Electrum software can do a good job (but save your keys).
AGAIN, DON'T KEEP YOUR SAVINGS ON AN EXCHANGE
Now, about trading : it's been repeated and repeated but don't chase pumps and altcoins. Yep, it's probably the fastest way to make money. It's also the fastest to lose it. I won't lie : I made good money during the 2017-bullrun and I took profits but I also forgot to sell some shitcoins thinking it would keep going up, now I'm still holding these bags (although I don't really care). I know that a lot forgot to take profits. Take profits, always take profits, whatever your strategy is. Don't fall for people trying to sell you their bags, for ICOs trying to sell you a product which isn't released yet and obviously, don't fall for people asking for your private key.
Also, know that there's two endgames : accumulating bitcoin or fiat. I'm rather in the first team but whatever your strategy is, take profits. (Yes, I know, some will say accumulating ethereum or something else). It's true that a lot of ethereum holders made a lot of money during the last bullrun (ethereum helped me make money too) but I'm really biased in favor of bitcoin (and monero). So, pick your coin but again, do your due diligence.
A lot of people here or there will talk about the best tech, the fact that bitcoin is old and slow. I would need another post to go further on this point but know that a lof of air flight systems are old too but reliable. Trustless and reliable is the point here.
This is the post from someone who bought bitcoin seven or six years ago, who lost part of them, who spent part of them (but don't regret this at all), who is still learning and I hope it will help others, although it would need a book to be complete.
submitted by EmmanuelBlockchain to CryptoCurrency [link] [comments]

Not your keys, not your crypto -- is there no space for compromise?

You know, people are always asking if we should always always trust only ourselves and I think the answer is always more nuanced than yes or no.
I wonder if, at some point, if you’re holding crypto and savings as part of a risk diversification strategy, then you also want to consider either taking out insurance on your savings — costly — or allocating some of it to something like Kraken, which would, as a Federal bank, include deposit insurances.
It's a point of failure, for sure, just like keeping money at an exchange but perhaps it's never going to be so straightforward. I'm thinking of the future, where sooner or later, we'll need to think of inheritance. What if we don't have kids. What if we don't have spouses or close friends. What if they're not into Bitcoin and don't want to be. We still want to make sure they get it after we pass on. And not get lost forever when private keys are buried with us.
We might then consider engaging such services for custodial services alongside inheritance plans — so when we die, for example, I can have some assurance that my will is carried out and a custodial entity, perhaps a bank like Kraken, would ensure my crypto is passed on properly.
We use Electrum, Trezor, Bitamp or whatever other sole custody wallet because we believe that “not your keys, not your crypto” but we are acutely aware that everything is about context. Everything is about context, don't you agree?
submitted by BitAmp-Official to Bitcoin [link] [comments]

Power of the Command Line (bitcoin-cli, hwi, electrum, trezorctl)

I think some of the console tools available with HW wallets today are greatly under utilized. Here's a quick write-up on how to create and sign a TXN very similar to 43d27...1fc06 found on the SLIP-14 wallet. I'll be using TrezorCTL, Electrum, and HWI for the signing. I won't go much into the setup or install, but feel free to ask if you have questions about it. Note, you don't have to use all three of these. Any one will produce a valid signed TXN for broadcast. I just showed how to do it three ways. Whats more some of the Electrum and HWI steps are interchangeable.
ColdCard also has a utility called ckcc that will do the sign operation instead of HWI, but in many ways they are interchangeable. KeepKey and Ledger both have libraries for scripted signing but no one-shot, one-line console apps that I know of. But HWI and Electrum of course work on all four.

TrezorCTL

This is the what most would think of to use to craft and sign TXNs, and is definitely very simple. The signing uses a script called build_tx.py to create a JSON file that is then used by the btc sign-tx command. The whole process is basically:
  1. tools/build_tx.py | trezorctl btc sign-tx -
This just means, take the output of build_tx and sign it. To copy 43d27...1fc06, I wrote a small script to feed build_tx, so my process looks like:
  1. ~/input.sh | tools/build_tx.py | trezorctl btc sign-tx -
But it's all very simple. Note... I used TrezorCTL v0.12.2 but build_tx.py version 0.13.0 1.

input.sh

```

!/bin/bash

secho() { sleep 1; echo $*}
secho "Testnet" # coin name secho "tbtc1.trezor.io" # blockbook server and outpoint (below) secho "e294c4c172c3d87991b0369e45d6af8584be92914d01e3060fad1ed31d12ff00:0" secho "m/84'/1'/0'/0/0" # prev_out derivation to signing key secho "4294967293" # Sequence for RBF; hex(-3) secho "segwit" # Signature type on prev_out to use secho "" # NACK to progress to outs secho "2MsiAgG5LVDmnmJUPnYaCeQnARWGbGSVnr3" # out[0].addr secho "10000000" # out[1].amt secho "tb1q9l0rk0gkgn73d0gc57qn3t3cwvucaj3h8wtrlu" # out[1].addr secho "20000000" # out[1].amt secho "tb1qejqxwzfld7zr6mf7ygqy5s5se5xq7vmt96jk9x" # out[2].addr secho "99999694" # out[2].amt secho "" # NACK to progress to change secho "" # NACK to skip change secho "2" # txn.version secho "0" # txn.locktime ```

Electrum

Electrum is one of the better GUI wallets available, but it also has a pretty good console interface. Like before you need your Trezor with the SLIP-14 wallet loaded and paired to Electrum. I'll assume Electrum is up and running with the Trezor wallet loaded to make things simple.
Like with TrezorCTL, Electrum feeds on a JSON file, but unlike TrezorCTL it needs that JSON squished into the command line. This is a simple sed command, but I won't bore you with the details, but just assume that's done. So the process in Electrum (v4.0.3) looks like:
  1. electrum serialize (create psbt to sign)
  2. electrum --wallet signtransaction (sign said psbt)
Still pretty simple right! Below is the JSON I smushed for #1

txn.json

{ "inputs": [{ "prevout_hash":"e294c4c172c3d87991b0369e45d6af8584be92914d01e3060fad1ed31d12ff00", "prevout_n": 0, "value_sats": 129999867 }], "outputs": [{ "address": "2MsiAgG5LVDmnmJUPnYaCeQnARWGbGSVnr3", "value_sats": 10000000 },{ "address": "tb1q9l0rk0gkgn73d0gc57qn3t3cwvucaj3h8wtrlu", "value_sats": 20000000 },{ "address": "tb1qejqxwzfld7zr6mf7ygqy5s5se5xq7vmt96jk9x", "value_sats": 99999694 }]}

HWI

HWI is an unsung hero in my book. It's a very small clean and simple interface between HW wallets and Bitcoin Core. It currently supports a good range of HW wallets. It keeps itself narrowly focused on TXN signing and offloads most everything else to Bitcoin Core. Again, I'll assume you've imported your Trezor keypool into Core and done the requisite IBD and rescan. And if you don't have the RPC enabled, you can always clone these commands into the QT-console.
To sign our TXN in HWI (v1.1.2), we will first need to craft (and finalize) it in Bitcoin Core (0.21.1). Like in Electrum, we will have to use simple sed to smush some JSON into command arguments, but I'll assume you have that covered. It will take an inputs.json and an outputs.json named separately.
  1. bitcoin-cli createpsbt (create psbt)
  2. bitcoin-cli -rpcwallet= walletprocesspsbt (process psbt)
  3. hwi -f signtx (sign psbt)
  4. bitcoin-cli -rpcwallet= finalizepsbt (get a signed TXN from psbt)
A little more involved, but still nothing too bad. Plus this gives you the full power of Bitcoin Core including integrations with LND (lightning).

inputs.json

[{ "txid": "e294c4c172c3d87991b0369e45d6af8584be92914d01e3060fad1ed31d12ff00", "vout": 0 }]

outputs.json

[{ "2MsiAgG5LVDmnmJUPnYaCeQnARWGbGSVnr3": 0.10000000 },{ "tb1q9l0rk0gkgn73d0gc57qn3t3cwvucaj3h8wtrlu": 0.20000000 },{ "tb1qejqxwzfld7zr6mf7ygqy5s5se5xq7vmt96jk9x": 0.99999694 }]

Conclusion

This may all seem like very low level coding, but is surprisingly simple once you get a knack for it. Whats more, all these platforms support testnet which allows you to practice with valueless coins until you get the hang of it. And, like many things in bitcoin, this is all (mostly) python, which is one of the easier languages to learn.
Enjoy
Footnotes
1 - https://github.com/trezotrezor-firmware/issues/1296
submitted by brianddk to Bitcoin [link] [comments]

Best option for generating a wallet on debian?

I'm keeping the private key offline and really just using to dump ETH from coinbase and hold for years. I started out printing a paper wallet, but over in /bitcoin, they really don't like paper wallets or address reuse. So now I've got an Electrum wallet for bitcoin that generates addresses and I guess I'm supposed to dump my coinbase coins to a new one each time I buy, and it's kind of a convoluted mess that I'm still working out.
It looks like most of my options for Ethereum, though are javascript-based paper wallets. It also seems like the Ethereum community isn't nearly as worried about address reuse, and change addresses don't really exist within Ethereum?
Is it reasonable to just generate a MEW wallet on an airgapped machine and send my coinbase Ethereum to the same address every time if I'm planning on holding it for years?
Edit: Looks like MyCrypto will actually be the way to go.
submitted by PrettyLadiesAreGreat to ethereum [link] [comments]

Cannot create wallet with Trezor

Hi guys, I am stuck trying to create a wallet for my Trezor with Electrum 4.0.4 on Linux:
I get to the point of entering the password twice and then selecting the path. But after that it just says
'Please wait' and then the window hangs. The only way to do something is either kill the process or send a `SIGINT` signal.
Interestingly after sending a SIGINT the window unfreezes and asks me again for the password (also during the whole freeze the Trezor device writes that I should enter my password). After entering the password again I get an empty error window and on closing it everything closes.
I started electrum with `electrum -v` to get some logs:
$ electrum -v I | logging | Electrum version: 4.0.4 - https://electrum.org - https://github.com/spesmilo/electrum I | logging | Python version: 3.8.6 (default, Sep 30 2020, 04:00:38) [GCC 10.2.0]. On platform: Linux-5.8.14-arch1-1-x86_64-with-glibc2.2.5 I | logging | Logging to file: None I | logging | Log filters: verbosity '*', verbosity_shortcuts '' I/p | plugin.Plugins | registering hardware bitbox02: ('hardware', 'bitbox02', 'BitBox02') I/p | plugin.Plugins | registering hardware coldcard: ('hardware', 'coldcard', 'Coldcard Wallet') I/p | plugin.Plugins | registering hardware digitalbitbox: ('hardware', 'digitalbitbox', 'Digital Bitbox wallet') I/p | plugin.Plugins | registering hardware keepkey: ('hardware', 'keepkey', 'KeepKey wallet') I/p | plugin.Plugins | registering hardware ledger: ('hardware', 'ledger', 'Ledger wallet') I/p | plugin.Plugins | registering hardware safe_t: ('hardware', 'safe_t', 'Safe-T mini wallet') I/p | plugin.Plugins | registering hardware trezor: ('hardware', 'trezor', 'Trezor wallet') I/p | plugin.Plugins | registering wallet type ('2fa', 'trustedcoin') D | util.profiler | Plugins.__init__ 0.0044 I/n | network | blockchains [0] I | exchange_rate.FxThread | using exchange CoinGecko D | util.profiler | Daemon.__init__ 0.0023 I/n | network | starting network I | daemon.Daemon | launching GUI: qt I/n | network | setting proxy None I | daemon.Daemon | starting taskgroup. I/n | network | connecting to electrumx.ftp.sh:50002:s as new interface I/n | network | starting taskgroup. I | gui.qt.history_list | could not import electrum.plot. This feature needs matplotlib to be installed. I | gui.qt.ElectrumGui | Qt GUI starting up... Qt=5.15.1, PyQt=5.15.1 I/i | interface.[localhost:50002] | connection established. version: ['ElectrumPersonalServer 0.2.0', '1.4'] D | util.profiler | ElectrumGui.__init__ 0.1374 I/i | interface.[vmd27610.contaboserver.net:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(gaierror(-2, 'Name or service not known'))) I/n | network | couldn't launch iface vmd27610.contaboserver.net:50002:s -- CancelledError() I/i | interface.[electrumx.ftp.sh:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(gaierror(-2, 'Name or service not known'))) I/n | network | couldn't launch iface electrumx.ftp.sh:50002:s -- CancelledError() I/i | interface.[rbx.curalle.ovh:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(gaierror(-2, 'Name or service not known'))) I/i | interface.[2AZZARITA.hopto.org:50006] | connection established. version: ['ElectrumX 1.15.0', '1.4'] I/n | network | couldn't launch iface rbx.curalle.ovh:50002:s -- CancelledError() I/i | interface.[2AZZARITA.hopto.org:50006] | set blockchain with height 653567 I/i | interface.[2AZZARITA.hopto.org:50006] | skipping header 653566 I/n | network | no height for main interface I/n | network | fee_estimates {25: 46526, 10: 48176, 5: 50745, 2: 50750} I/i | interface.[hsmiths4fyqlw5xw.onion:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(gaierror(-2, 'Name or service not known'))) I/n | network | couldn't launch iface hsmiths4fyqlw5xw.onion:50002:s -- CancelledError() I/n | network | switching to 2AZZARITA.hopto.org:50006:s I/i | interface.[electrum3.hodlister.co:50002] | connection established. version: ['ElectrumX 1.10.0', '1.4'] I/n | network | fee_histogram [[99, 100899], [71, 112316], [61, 132563], [59, 156116], [57, 175394], [54, 114050], [51, 219092], [49, 195934], [48, 565137], [47, 781451], [46, 883591], [45, 259824], [44, 450143], [43, 114488], [42, 22100], [41, 49428], [40, 106542], [38, 151315], [33, 547095], [22, 620244], [13, 648588], [9, 822409], [5, 741398], [3, 1799486], [2, 651429]] I/n | network | fee_histogram [[99, 100899], [71, 112316], [61, 132563], [59, 156116], [57, 175394], [54, 114050], [51, 219092], [49, 195934], [48, 565137], [47, 781451], [46, 883591], [45, 259824], [44, 450143], [43, 114488], [42, 22100], [41, 49428], [40, 106542], [38, 151315], [33, 547095], [22, 620244], [13, 648588], [9, 822409], [5, 741398], [3, 1799486], [2, 651429]] I/i | interface.[bitcoin.corgi.party:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(gaierror(-5, 'No address associated with hostname'))) I/n | network | couldn't launch iface bitcoin.corgi.party:50002:s -- CancelledError() I/i | interface.[electrumx-core.1209k.com:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(OSError(101, 'Network is unreachable'))) I/n | network | couldn't launch iface electrumx-core.1209k.com:50002:s -- CancelledError() I/i | interface.[electrum3.hodlister.co:50002] | set blockchain with height 653567 I/i | interface.[electrum3.hodlister.co:50002] | skipping header 653567 I/n | network | fee_estimates {25: 46526, 10: 48176, 5: 50745, 2: 50749} I/i | interface.[hsmiths5mjk6uijs.onion:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(gaierror(-2, 'Name or service not known'))) I/n | network | couldn't launch iface hsmiths5mjk6uijs.onion:50002:s -- CancelledError() I/i | interface.[dxm.no-ip.biz:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(ConnectionRefusedError(111, "Connect call failed ('77.6.34.45', 50002)"))) I/n | network | couldn't launch iface dxm.no-ip.biz:50002:s -- CancelledError() I/i | interface.[electrum2.eff.ro:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(gaierror(-2, 'Name or service not known'))) I/n | network | couldn't launch iface electrum2.eff.ro:50002:s -- CancelledError() I/i | interface.[electrum.hsmiths.com:50002] | disconnecting due to: ConnectError(ConnectionResetError(104, 'Connection reset by peer')) I/n | network | couldn't launch iface electrum.hsmiths.com:50002:s -- CancelledError() I | storage.WalletStorage | wallet path /home/bene/.electrum/wallets/default_wallet I/i | interface.[bitcoin.aranguren.org:50002] | connection established. version: ['ElectrumX 1.15.0', '1.4'] I | storage.WalletStorage | wallet path /home/bene/.electrum/wallets/default_wallet I/i | interface.[bitcoin.aranguren.org:50002] | set blockchain with height 653567 I/i | interface.[bitcoin.aranguren.org:50002] | skipping header 653566 [240/1884] I/n | network | fee_estimates {25: 46526, 10: 48176, 5: 50745, 2: 50749} I/i | interface.[localhost:50002] | set blockchain with height 653567 I/i | interface.[localhost:50002] | skipping header 653567 I/n | network | fee_estimates {25: 46526, 10: 48175, 5: 50745, 2: 50749} I/p | plugin.Plugins | loaded bitbox02 I/p | plugin.Plugins | loaded coldcard I/p | plugin.Plugins | loaded digitalbitbox I/p | plugin.Plugins | loaded keepkey I/p | plugin.Plugins | loaded ledger I/p | plugin.Plugins | loaded safe_t I/p | plugin.Plugins | loaded trezor I | plugin.DeviceMgr | scanning devices... D | util.profiler | DeviceMgr.scan_devices 0.0244 W | gui.qt.installwizard.InstallWizard | error getting device infos for bitbox02: Missing libraries for bitbox02. // Make sure you install it with python3 W | gui.qt.installwizard.InstallWizard | error getting device infos for coldcard: Missing libraries for coldcard. // Make sure you install it with python3 W | gui.qt.installwizard.InstallWizard | error getting device infos for keepkey: Missing libraries for keepkey. // Make sure you install it with python3 W | gui.qt.installwizard.InstallWizard | error getting device infos for ledger: Missing libraries for ledger. // Make sure you install it with python3 W | gui.qt.installwizard.InstallWizard | error getting device infos for safe_t: Missing libraries for safe_t. // Make sure you install it with python3 I | plugins.trezor.qt.Plugin | connecting to device at webusb:001:3 I | plugins.trezor.qt.Plugin | connected to device at webusb:001:3 I | plugin.DeviceMgr | Registering My TREZOF3342BDD7C90C7F9FBA58136 I | plugin.DeviceMgr | scanning devices... D | util.profiler | DeviceMgr.scan_devices 0.0388 I/i | interface.[localhost:50002] | skipping header 653567 qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 4028, resource id: 14687032, major code: 40 (TranslateCoords), minor code: 0 I | plugin.DeviceMgr | scanning devices... D | util.profiler | DeviceMgr.scan_devices 0.0407 
This is the point where the window freezes. Then I precc `Ctrl+C` to send a SIGINT signal and then this is the rest of the logs:
I/n | network | couldn't launch iface technetium.network:50002:s -- TimeoutError() I/n | network | couldn't launch iface e2.keff.org:50002:s -- TimeoutError() I/n | network | couldn't launch iface electrum-server.ninja:50002:s -- TimeoutError() I/n | network | couldn't launch iface xray587.startdedicated.de:50002:s -- TimeoutError() I/n | network | couldn't launch iface electrum.mindspot.org:50002:s -- TimeoutError() I/i | interface.[electrum.leblancnet.us:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(gaierror(-2, 'Name or service not known'))) I/n | network | couldn't launch iface electrum.leblancnet.us:50002:s -- CancelledError() I/i | interface.[ex01.axalgo.com:50002] | succeeded in getting cert I/i | interface.[electrumx.schulzemic.net:50002] | succeeded in getting cert ^CE | gui.qt.installwizard.InstallWizard | Traceback (most recent call last): File "/uslib/python3.8/site-packages/electrum/base_wizard.py", line 446, in on_hw_derivation xpub = self.plugin.get_xpub(device_info.device.id_, derivation, xtype, self) File "/uslib/python3.8/site-packages/electrum/plugins/trezotrezor.py", line 315, in get_xpub xpub = client.get_xpub(derivation, xtype) File "/uslib/python3.8/site-packages/electrum/plugin.py", line 362, in wrapper return run_in_hwd_thread(partial(func, *args, **kwargs)) File "/uslib/python3.8/site-packages/electrum/plugin.py", line 355, in run_in_hwd_thread return fut.result() File "/uslib/python3.8/concurrent/futures/_base.py", line 434, in result self._condition.wait(timeout) File "/uslib/python3.8/threading.py", line 302, in wait waiter.acquire() KeyboardInterrupt I/i | interface.[ex01.axalgo.com:50002] | connection established. version: ['ElectrumX 1.14.0', '1.4'] I/i | interface.[electrumx.schulzemic.net:50002] | connection established. version: ['ElectrumX 1.15.0', '1.4'] I/i | interface.[ex01.axalgo.com:50002] | set blockchain with height 653567 I/i | interface.[ex01.axalgo.com:50002] | skipping header 653567 I/n | network | fee_estimates {25: 46526, 10: 48176, 5: 50745, 2: 50749} I/i | interface.[electrumx.schulzemic.net:50002] | set blockchain with height 653567 I/i | interface.[electrumx.schulzemic.net:50002] | skipping header 653567 I/n | network | fee_estimates {25: 46526, 10: 48176, 5: 50745, 2: 50749} I/n | network | couldn't launch iface dragon085.startdedicated.de:50002:s -- TimeoutError() I/i | interface.[btc.electroncash.dk:60002] | succeeded in getting cert I/i | interface.[mxhwmwa3nt2si4ufszm24whlpkruu74jle27ys2fyjuiifbbrub6thyd.onion:50006] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(gaierror(-2, 'Name or service not known'))) I/n | network | couldn't launch iface mxhwmwa3nt2si4ufszm24whlpkruu74jle27ys2fyjuiifbbrub6thyd.onion:50006:s -- CancelledError() I/i | interface.[electrum2.villocq.com:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(gaierror(-5, 'No address associated with hostname'))) I/n | network | couldn't launch iface electrum2.villocq.com:50002:s -- CancelledError() I/i | interface.[btc.electroncash.dk:60002] | connection established. version: ['ElectrumX 1.15.0', '1.4'] I/i | interface.[btc.electroncash.dk:60002] | set blockchain with height 653567 I/i | interface.[btc.electroncash.dk:60002] | skipping header 653567 I/n | network | fee_estimates {25: 46526, 10: 48176, 5: 50745, 2: 50749} I/i | interface.[btc.electrum.bitbitnet.net:50002] | connection established. version: ['ElectrumX 1.15.0', '1.4'] I/i | interface.[btc.electrum.bitbitnet.net:50002] | set blockchain with height 653567 [169/1884] I/i | interface.[btc.electrum.bitbitnet.net:50002] | skipping header 653567 I/n | network | fee_estimates {25: 46526, 10: 48176, 5: 50745, 2: 50749} I | plugin.DeviceMgr | scanning devices... D | util.profiler | DeviceMgr.scan_devices 0.0394 W | gui.qt.installwizard.InstallWizard | error getting device infos for bitbox02: Missing libraries for bitbox02. // Make sure you install it with python3 W | gui.qt.installwizard.InstallWizard | error getting device infos for coldcard: Missing libraries for coldcard. // Make sure you install it with python3 W | gui.qt.installwizard.InstallWizard | error getting device infos for keepkey: Missing libraries for keepkey. // Make sure you install it with python3 W | gui.qt.installwizard.InstallWizard | error getting device infos for ledger: Missing libraries for ledger. // Make sure you install it with python3 W | gui.qt.installwizard.InstallWizard | error getting device infos for safe_t: Missing libraries for safe_t. // Make sure you install it with python3 I/i | interface.[bitcoin.aranguren.org:50002] | skipping header 653567 E | daemon.Daemon | GUI raised exception: ReRunDialog(). shutting down. I | gui.qt.ElectrumGui | closing GUI I | daemon.Daemon | shutting down network I/n | network | stopping network I/n | network | couldn't launch iface electrum.hodlister.co:50002:s -- CancelledError() I/n | network | couldn't launch iface orannis.com:50002:s -- CancelledError() I/i | interface.[localhost:50002] | disconnecting due to: CancelledError() I/i | interface.[electrumx.schulzemic.net:50002] | disconnecting due to: CancelledError() I/i | interface.[ex01.axalgo.com:50002] | disconnecting due to: CancelledError() I/i | interface.[2AZZARITA.hopto.org:50006] | disconnecting due to: CancelledError() I/i | interface.[btc.electroncash.dk:60002] | disconnecting due to: CancelledError() I/i | interface.[electrum3.hodlister.co:50002] | disconnecting due to: CancelledError() I/i | interface.[btc.electrum.bitbitnet.net:50002] | disconnecting due to: CancelledError() I/i | interface.[bitcoin.aranguren.org:50002] | disconnecting due to: CancelledError() I/n | network | taskgroup stopped. I | daemon.Daemon | stopping taskgroup I | daemon.Daemon | taskgroup stopped. I | daemon.Daemon | removing lockfile I | daemon.Daemon | stopped E | __main__ | daemon.run_gui errored Traceback (most recent call last): File "/uslib/python3.8/site-packages/electrum/gui/qt/installwizard.py", line 118, in func_wrapper run_next(*out) File "/uslib/python3.8/site-packages/electrum/base_wizard.py", line 193, in on_wallet_type self.run(action) File "/uslib/python3.8/site-packages/electrum/base_wizard.py", line 115, in run f(*args, **kwargs) File "/uslib/python3.8/site-packages/electrum/base_wizard.py", line 225, in choose_keystore self.choice_dialog(title=title, message=message, choices=choices, run_next=self.run) File "/uslib/python3.8/site-packages/electrum/gui/qt/installwizard.py", line 106, in func_wrapper out = func(*args, **kwargs) File "/uslib/python3.8/site-packages/electrum/gui/qt/installwizard.py", line 594, in choice_dialog self.exec_layout(vbox, title) File "/uslib/python3.8/site-packages/electrum/gui/qt/installwizard.py", line 429, in exec_layout raise GoBack from None electrum.base_wizard.GoBack The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usbin/electrum", line 380, in  d.run_gui(config, plugins) File "/uslib/python3.8/site-packages/electrum/daemon.py", line 566, in run_gui self.gui_object.main() File "/uslib/python3.8/site-packages/electrum/gui/qt/__init__.py", line 363, in main if not self.start_new_window(path, self.config.get('url'), app_is_starting=True): File "/uslib/python3.8/site-packages/electrum/gui/qt/__init__.py", line 247, in wrapper return func(self, *args, **kwargs) File "/uslib/python3.8/site-packages/electrum/gui/qt/__init__.py", line 271, in start_new_window wallet = self._start_wizard_to_select_or_create_wallet(path) File "/uslib/python3.8/site-packages/electrum/gui/qt/__init__.py", line 313, in _start_wizard_to_select_or_create_wallet wizard.run('new') File "/uslib/python3.8/site-packages/electrum/base_wizard.py", line 115, in run f(*args, **kwargs) File "/uslib/python3.8/site-packages/electrum/base_wizard.py", line 153, in new self.choice_dialog(title=title, message=message, choices=choices, run_next=self.on_wallet_type) File "/uslib/python3.8/site-packages/electrum/gui/qt/installwizard.py", line 131, in func_wrapper raise ReRunDialog() from e electrum.base_wizard.ReRunDialog I/p | plugin.Plugins | stopped 
submitted by bIacktemplar to Electrum [link] [comments]

Storing your coins safely while not risking loss of keys

This was originally an answer to a question that was asked here, but OP deleted their post.
This might help some newbies (especially the multisig edit at the end), so I want to make sure it's still accessible here.
The original question was whether the Electrum wallet stores a Trezor's private key when using a passphrase.
OP noticed that their Trezor wouldn't connect to their Electrum wallet when entering a different passphrase than they used when creating the wallet. Thus, OP (likely) assumed that the wallet stored the private key, as it somehow knew that a different private key was now used.
Here is my original answer (with some modifications):
IMPORTANT: I'm assuming here that you connected your Trezor by choosing the "hardware wallet" option in Electrum, rather than giving Electrum your 12/24 seed words.
TL;DR: No, your coins are safe :)
I'm assuming by passphrase) you mean the 25th (or 13th) word. When you have this feature enabled, a private key gets generated every time you enter a passphrase. When you enter the same passphrase you used to create the wallet, the wallet with your funds shows up.
Whenever you enter something different, a different private key is generated on your Trezor. This allows you to have multiple different wallets, for example by choosing the passphrases "First Wallet", "Second Wallet", "Third Wallet", or a secret wallet with a secret passphrase.
So whenever you enter a new passphrase when connecting your Trezor to Electrum, the Trezor will send a new public key to Electrum. Electrum will then derive addresses from this public key and check those for balances. It won't find any, as you used a new passphrase.
EDIT: I just realized that you said your wallet doesn't connect to Electrum when you use a different passphrase. This is simply because Electrum doesn't receive the correct public key from the Trezor and therefore Electrum thinks it's a different wallet (which it is).
When you enter the passphrase you used during creation of your wallet, the Trezor will send your actual public key to Electrum, which will then find addresses with balances, which it will show to you. EDIT (to clarify): Connecting your Trezor after creating the wallet is only necessary to send funds or verify addresses, as the public key is already stored in the wallet.dat.
The only thing Electrum actually stores is the public key, which can only be used to look at your Bitcoin, not to move them. You might want to keep this public key a secret as well though, since it links all your funds to you. This is what Electrum stores in the wallet.dat file, which you can just encrypt by choosing a password for it.
Well done using a passphrase by the way! Should someone get their hands on your Trezor, a sophisticated attacker can get the secret key off the device in 15 minutes. Using a passphrase makes this attack almost useless, as the both secret key AND the passphrase are needed to move your funds, and the passphrase is not stored on the device. A passphrase also allows you to hide funds from potential robbers that force you to unlock your wallet.
You can do this by activating the passphrase feature and sending your funds to a wallet with a secret passphrase (do NOT lose this, as losing your passphrase renders your funds inaccessible). Afterwards, you can safely deactivate the passphrase feature, so the device doesn't even ask for one should you get robbed. Simply reactivate it when you need to access your funds.
EDIT: Should you be worried that you might forget your passphrase, you should look into multisig wallets. Depending on how you set this up, you can make it more secure against theft and less likely for you to lose access to your funds.
Say for example you get four wallets: two hardware wallets, a well-protected (airgapped) laptop with Electrum, and a secure mobile wallet that allows for multisig (like Fully Noded).
You can then create a 2-of-4 multisig wallet that requires you to sign transactions with any two of these four wallets.
The increase in security comes from the fact that an attacker now needs full access to two of your devices (or their stored private keys) at once.
At the same time, the fact that you yourself now also need access to only half of your devices means that in the event of a total loss of one (or even two) of them, you can still move your funds to a new wallet.
As long as you do regular checks (e.g. first day of each month), ensuring that you still have access to all your devices' stored private keys, you can always catch a loss of keys and fix this without losing funds (by creating a new multisig wallet and sending the funds there).
This allows you to use a passphrase on your wallets without storing it anywhere physically or digitally. This would usually be very risky, as forgetting the passphrase would lead to a loss of funds, but this risk is now close to eliminated.
(The following part was not in the original answer)
Some IMPORTANT general secruity tips:
  1. Consider including trusted friends and/or family members as co-signers for a multisig wallet. This ensures that it's not even possible for you alone to hand over funds to an attacker. Depending on your level of trust, you might want to make sure that your co-signers can't collaborate to steal your funds (if you include 3 people, create at least a 4-of-n multisig). You could also deliberately make it possible for all or even just some of your co-signers to move your funds (3 co-signers, 3(or less)-of-n multisig) to make sure your funds aren't lost should pass away unexpectedly.
  2. Consider running your own full node and Electrum server (also check the alternatives), which you connect your Electrum wallet to. This ensures that you don't send your public key to anyone else. If someone knows your public key, they know how much BTC you own, making you a potential target.
  3. Always encrypt your wallet.dat (or whatever you called your wallet file), even if it's a watch-only wallet. This protects your public key (see 1. for why you want that).
  4. Create watch-only wallets: Use an airgapped) device to create a wallet with Electrum (make sure to back up the seed phrase) and export the public key. Then create a new watch-only wallet on another device (like your everyday laptop) with that public key to be able to check your funds. To create the initial wallet, you can also use any other hard- or software wallet that allows you to export the master public key.
  5. Hide, or (when using a hardware wallet with a passphrase) even delete your watch-only wallets. Hiding your funds makes you less of a target. When using a hardware wallet, recreating the watch-only wallet is fast and simple, so you don't need to store it if you don't want to check your funds every day. Note that this approach doesn't help much when you don't use a passphrase, as an attacker will obviously check the passphrase-less wallet no matter what.
  6. Keep some funds on your hardware wallet(s). If an attackers sees funds on the wallet(s), they might not force you to enter a passphrase or ask if you have any multisig wallets (lying under pressure is hard).
  7. Hide all your wallets in different places. If someone sees that you have multiple wallets lying around, they might realize you have a multisig wallet.
  8. Don't risk a robber getting (for example) two keys to your 2-of-4 multisig wallet and then racing them to move your funds with the other two keys when they leave. They're gonna come back and be pissed. If it comes to this, you need protection until the robber is caught. STAY SAFE!
  9. The easiest way to solve a problem is to never have it. Don't make yourself a target. If nobody even suspects that you have a multisig (or any wallet at all), they're probably not gonna look for it.
Please correct any mistakes you find and I will edit my post. I will also gladly add more tips to the list. I will of course credit anyone who helps.
Tip for devs who want something cool and important to work on: Make the creation and usage of multisig wallets as noob-friendly as possible. If someone expresses worries about losing access to their funds by forgetting the seed phrase, wallet pin, etc. (someone in my family actually brought this up to me), multisig wallets are the perfect solution as they add redundancy.
submitted by Fittiboy to Bitcoin [link] [comments]

Versus Project Multisig help please.

Hi All, apologies for noobishness but I could really do with a bit of help here. Normally, I like to figure stuff out by myself but I can't make head nor tail of the below instructions on the versus project multisig set up. Please see below for copypasta direct from their website:
-> You'll need the following digital items: -> Electrum Wallet (there are other wallets you can use, but for the sake of keep things streamlined we will recommend Electrum because we know it works for these purposes) -> A fresh standard (not multisig!) electrum wallet ONLY used for Versus Market -> Coinb.in for signing (we will explain this later) -> Bitcoin Public Key used for the transaction (provided by Versus on the order details) -> Bitcoin Private Key matching the public key used for the transaction
II. "Wow, that seems like a lot. Are you sure this isn't complicated?" -> We're sure. :)
III. "Alright, what next?" -> First you will want to set up your Electrum Wallet and identify the first Public Key derived from your xpub and the matching Private Key. You can get the private key by right clciking on the public key and select 'Show private key'. -> Please note, we strongly recommend creating a backup of your Electrum wallet on a separate USB. -> You will need to enter your Bitcoin Private Key into Coinb.in. Remember to download the coinb.in script and use it localy instead of online to sign a transaction!
IV. "I am being told I need to Sign a Bitcoin Transaction, what do I do now?" -> Copy the bitcoin transaction and head on over to Coinbin. -> At Coinbin, go to "SIGN" and paste the transaction code on the lower text fiels. -> You will then need to enter your bitcoin PRIVATE key (which you can easily get from your electrum wallet) on the upper field. -> Click Submit to Sign the transaction. Copy the result back to Versus Market and broadcast the transaction to finish your setup!
V. "Okay, I think I set everything up. Now that I am no longer using traditional escrow, how do I finalize an order so my vendor gets his or her payment?" -> This is very simple. All you need to do is to sign the transaction to release the funds. -> Just like before, copy the Multi Sig transaction from Versus into Coinbin and "SIGN." -> Copy the matching private key to your public key and hit "Submit."
So far I have set up my electrum wallet and located my master public key which I have added to their site to enable multisig (this again was not clear but I worked that out). My stumbling block comes when I'm expected to locate a matching private key, how do I know which one is the matching one? Right clicking on the master public key does nothing so how am I supposed to match anything?
It also asks to submit your private key to something called coinb.in - is this safe? I was under the impression that you should not reveal private keys to anyone at any time. If it is where can I download the coinb.in script from?
Thanks in advance for any help. They seem to have done away with the escrow system they used to use because of their recent hack and I just can't get my head around this.
submitted by coveredinyourpoop to darknet [link] [comments]

Power of the Command Line (bitcoin-cli, hwi, electrum, trezorctl)

I think some of the console tools available with HW wallets today are greatly under utilized. Here's a quick write-up on how to create and sign a TXN very similar to 43d27...1fc06 found on the SLIP-14 wallet. I'll be using TrezorCTL, Electrum, and HWI for the signing. I won't go much into the setup or install, but feel free to ask if you have questions about it. Note, you don't have to use all three of these. Any one will produce a valid signed TXN for broadcast. I just showed how to do it three ways. Whats more some of the Electrum and HWI steps are interchangeable.

TrezorCTL

This is the what most would think of to use to craft and sign TXNs, and is definitely very simple. The signing uses a script called build_tx.py to create a JSON file that is then used by the btc sign-tx command. The whole process is basically:
  1. tools/build_tx.py | trezorctl btc sign-tx -
This just means, take the output of build_tx and sign it. To copy 43d27...1fc06, I wrote a small script to feed build_tx, so my process looks like:
  1. ~/input.sh | tools/build_tx.py | trezorctl btc sign-tx -
But it's all very simple. Note... I used TrezorCTL v0.12.2 but build_tx.py version 0.13.0 1.

input.sh

```

!/bin/bash

secho() { sleep 1; echo $*}
secho "Testnet" # coin name secho "tbtc1.trezor.io" # blockbook server and outpoint (below) secho "e294c4c172c3d87991b0369e45d6af8584be92914d01e3060fad1ed31d12ff00:0" secho "m/84'/1'/0'/0/0" # prev_out derivation to signing key secho "4294967293" # Sequence for RBF; hex(-3) secho "segwit" # Signature type on prev_out to use secho "" # NACK to progress to outs secho "2MsiAgG5LVDmnmJUPnYaCeQnARWGbGSVnr3" # out[0].addr secho "10000000" # out[1].amt secho "tb1q9l0rk0gkgn73d0gc57qn3t3cwvucaj3h8wtrlu" # out[1].addr secho "20000000" # out[1].amt secho "tb1qejqxwzfld7zr6mf7ygqy5s5se5xq7vmt96jk9x" # out[2].addr secho "99999694" # out[2].amt secho "" # NACK to progress to change secho "" # NACK to skip change secho "2" # txn.version secho "0" # txn.locktime ```

Electrum

Electrum is one of the better GUI wallets available, but it also has a pretty good console interface. Like before you need your Trezor with the SLIP-14 wallet loaded and paired to Electrum. I'll assume Electrum is up and running with the Trezor wallet loaded to make things simple.
Like with TrezorCTL, Electrum feeds on a JSON file, but unlike TrezorCTL it needs that JSON squished into the command line. This is a simple sed command, but I won't bore you with the details, but just assume that's done. So the process in Electrum (v4.0.3) looks like:
  1. electrum serialize (create psbt to sign)
  2. electrum --wallet signtransaction (sign said psbt)
Still pretty simple right! Below is the JSON I smushed for #1

txn.json

{ "inputs": [{ "prevout_hash":"e294c4c172c3d87991b0369e45d6af8584be92914d01e3060fad1ed31d12ff00", "prevout_n": 0, "value_sats": 129999867 }], "outputs": [{ "address": "2MsiAgG5LVDmnmJUPnYaCeQnARWGbGSVnr3", "value_sats": 10000000 },{ "address": "tb1q9l0rk0gkgn73d0gc57qn3t3cwvucaj3h8wtrlu", "value_sats": 20000000 },{ "address": "tb1qejqxwzfld7zr6mf7ygqy5s5se5xq7vmt96jk9x", "value_sats": 99999694 }]}

HWI

HWI is an unsung hero in my book. It's a very small clean and simple interface between HW wallets and Bitcoin Core. It currently supports a good range of HW wallets. It keeps itself narrowly focused on TXN signing and offloads most everything else to Bitcoin Core. Again, I'll assume you've imported your Trezor keypool into Core and done the requisite IBD and rescan. And if you don't have the RPC enabled, you can always clone these commands into the QT-console.
To sign our TXN in HWI (v1.1.2), we will first need to craft (and finalize) it in Bitcoin Core (0.21.1). Like in Electrum, we will have to use simple sed to smush some JSON into command arguments, but I'll assume you have that covered. It will take an inputs.json and an outputs.json named separately.
  1. bitcoin-cli createpsbt (create psbt)
  2. bitcoin-cli -rpcwallet= walletprocesspsbt (process psbt)
  3. hwi -f signtx (sign psbt)
  4. bitcoin-cli -rpcwallet= finalizepsbt (get a signed TXN from psbt)
A little more involved, but still nothing too bad. Plus this gives you the full power of Bitcoin Core including integrations with LND (lightning).

inputs.json

[{ "txid": "e294c4c172c3d87991b0369e45d6af8584be92914d01e3060fad1ed31d12ff00", "vout": 0 }]

outputs.json

[{ "2MsiAgG5LVDmnmJUPnYaCeQnARWGbGSVnr3": 0.10000000 },{ "tb1q9l0rk0gkgn73d0gc57qn3t3cwvucaj3h8wtrlu": 0.20000000 },{ "tb1qejqxwzfld7zr6mf7ygqy5s5se5xq7vmt96jk9x": 0.99999694 }]

Conclusion

This may all seem like very low level coding, but is surprisingly simple once you get a knack for it. Whats more, all these platforms support testnet which allows you to practice with valueless coins until you get the hang of it. And, like many things in bitcoin, this is all (mostly) python, which is one of the easier languages to learn.
Enjoy
Footnotes
1 - https://github.com/trezotrezor-firmware/issues/1296
submitted by brianddk to TREZOR [link] [comments]

Cheapskates guide to not buying a hardware wallet and staying 100% safe

  1. Download Tails and install to USB drive
  2. verify Tails using OpenPGP
  3. unplug your eithernet cable or turn off your wifi. Run Tails and open Electrum, it comes preinstalled
  4. Create wallet. Write down or print out SEED and backup wallet to a USB drive. Keep these in a fire safe.
  5. warning the tails usb drive deletes everything, make sure you saved to a 2nd flashdrive or the special storage option they have.
  6. On a different USB drive copy the MASTER PUBLIC KEY to a .txt file.
  7. Remove flash drives. Restart computer and boot windows. Download Electrum and import the MASTER PUBLIC KEY. This creates a Watch-Only wallet that will allow you view and recieve bitcoin.
  8. If you ever want to send bitcoin, just boot into Tails and send from there.
  9. Use the $60 you saved to buy moar bitcoin

Never use this tails drive for exploring on tor or anything except sending bitcoin. keep it pure and clean.
Never plug in your flashdrive with the wallet while running windows.
submitted by atrueretard to Bitcoin [link] [comments]

How to Store Your Bitcoin

Before holding any bitcoin, you need somewhere to store it. Just like in the physical world, you store your bitcoin in a wallet.
Similar to a bank account number, your wallet comes with a wallet address that shows up in a ledger search and is shared with others so you can make transactions. This address, which is a shorter, more usable version of your public key, consists of between 26 and 35 random alphanumeric characters, something like 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa. Keep in mind that every letter and number in that address is important. Before sending any bitcoin to your wallet, double-check the entire address, character by character.
Also tied to your wallet address is one or more private keys, which as the name suggests should not be shared with anyone. Keys are used to verify you own the aforementioned public key, and to sign off on transactions. Some wallets create a secure seed phrase, a set of words that will allow you to unlock your wallet if you lose your keys. Print this phrase out and keep it in a safe place.
The unfortunate truth is your bitcoin wallet is akin to your physical wallet. If you lose the private keys to your wallet, you’re most likely going to lose the currency in it forever.
Your wallet generates a master file where your public and private keys are stored. This file should be backed up in case the original file is lost or damaged. Otherwise, you risk losing access to your funds.
You can store your private keys on your computer, mobile device, on a physical storage gadget or even on a piece of paper. It’s crucial that you keep your private keys safe by generating backups both online and offline.
Remember: Your wallet does not reside on any single device. The wallet itself resides on the Bitcoin blockchain, just as your banking app doesn’t truly “hold” the cash in your checking account.
While wallet apps work well and are relatively safe, the safest option is a hardware wallet you keep offline, in a secure place. The most popular hardware wallets use special layers of security to ensure your keys are not stolen and your bitcoin is safe. But, once again, if you lose the hardware wallet your bitcoins are gone unless you have kept reliable backups of the keys.
The least-secure option is an online wallet, i.e. storing your bitcoin in an exchange. This is because the keys are held by a third party. For many, the online exchange wallets are the easiest to set up and use, presenting an all-too-familiar choice: convenience versus safety.
Many serious bitcoin investors use a hybrid approach: They hold a core, long-term amount of bitcoin offline in so-called “cold storage,” while keeping a spending balance in a mobile account.
Depending on your bitcoin strategy and willingness to get technical, here are the different types of bitcoin wallets available. Bitcoin.org has a helper that will show you which wallet to choose.
Cloud wallets exist online and the keys are usually stored in a distant server run by a third party. Cloud-based wallets tend to have a more user-friendly interface but you will be trusting a third party with your private keys, which makes your funds more susceptible to theft. Some examples of this wallet type are Coinbase, Blockchain and Lumi Wallet. Most cryptocurrencies, including bitcoin, have their own native wallets. Some offer additional security features such as offline storage (Coinbase and Xapo).
With your private keys stored on a server, you have to trust the host’s security measures and also trust the host won’t disappear with your money or close down and deny you access.
Software wallets can be installed directly on your computer, giving you private control of your keys. Most have relatively easy configuration and are free. The disadvantage is you are in charge of securing your keys. Software wallets also require greater security precautions. If your computer is hacked or stolen, the thief can get a copy of your wallet and your bitcoin.
While you can download the original software Bitcoin Core protocol (which stores a ledger of all transactions since 2009 and takes up a lot of space), most wallets in use today are “light” wallets, or SPV (Simplified Payment Verification) wallets, which do not download the entire ledger but sync to it.
Electrum is a well-known SPV desktop bitcoin wallet that also offers “cold storage” (a totally offline option for additional security). Exodus can track multiple assets with a sophisticated user interface. Some (such as Jaxx Liberty) can hold a wide range of digital assets, and some (such as Copay) offer the possibility of shared accounts.
Before downloading any app, please confirm you are downloading a legitimate copy of a real wallet. Some shady programmers create clones of various crypto websites and offer downloads for free, leading to the possibility of a hack.
Mobile wallets are available as apps for your smartphone, especially useful if you want to pay for something in bitcoin in a shop or if you want to buy, sell or send while on the move. All of the online wallets and most of the desktop ones mentioned above have mobile versions, while others – such as Abra, Edge and Bread – were created with mobile in mind. Remember, many online wallets will store your keys on the phone itself, leading to the possibility of losing your bitcoin if you lose your phone. Always keep a backup of your keys on a different device and print out your seed phrase.
Hardware wallets are small devices that connect to the web only to enact bitcoin transactions. They are more secure because they are generally offline and therefore not hackable. They can be stolen or lost, however, along with the bitcoins that belong to the stored private keys, so it’s recommended that you backup your keys. Some large investors keep their hardware wallets in secure locations such as bank vaults. Trezor, Keepkey and Ledger are notable examples.
Paper wallets are perhaps the simplest of all the wallets. Paper wallets are pieces of paper that contain the private and public keys of a bitcoin address. Ideal for the long-term storage of bitcoin (away from fire and water, of course) or for the giving of bitcoin as a gift, these wallets are more secure in that they’re not connected to a network. They are, however, easier to lose.
With services such as WalletGenerator, you can easily create a new address and print the wallet on your printer. When you’re ready to top up your paper wallet you simply send some bitcoin to that address and then store it safely. Whatever option you go for, be sure to back up everything and only tell your nearest and dearest where your backups are stored.
submitted by hackatoshi to u/hackatoshi [link] [comments]

Hello, I am getting more and more into BTC. I do have some questions.

Hey there,
I have owned Bitcoin for about 2y but a small amount and I want to buy more now, I have spend hours looking into BTC and how wallets work. But I still have a question, I have my BTC on a small "bank" like coinbase (I know that isnt smart but I dont have to much) Now I want to get into really owning my own wallet/coins.I have tested with an Electrum wallet, and I understand I have to keep my seed very secure, but how about my private key? Where do I find that? Is it stored on my PC? I first tought that that whas my private keys, but it seems that my private key is my public adres? I dont understand how this works.
Next, I would probably buy a hardware wallet of some sort. I have seen people make a wallet from an old phone that they keep disconnected from the internet to prevent it being hacked, is this smart? I would keep my seed/private key on there.
Also ecxuse me for poor English. Thanks in advanced if you take time to answer my stupid questions.
submitted by xdNiBoR to Bitcoin [link] [comments]

08-31 09:06 - 'Using the "latest on tails" is insanely risky. Much less so if you keep it offline as you suggest, but even then you have problems. There are incompatibilities with recent versions of Electrum on multisig wallets related to...' by /u/brianddk removed from /r/Bitcoin within 732-742min

'''
Using the "latest on tails" is insanely risky. Much less so if you keep it offline as you suggest, but even then you have problems. There are incompatibilities with recent versions of Electrum on multisig wallets related to PBST, and there is no garantee that future version of Electrum will allow non PBST partial transactions.
You really need to do the following every time you boot
  1. Download latest version of electrum
  2. Download electrum sig file
  3. Download ThomasV pubkey file
  4. Initialize GPG
  5. Import ThomasV pubkey
  6. Verify the fingerprint from known published sources
  7. If valid trust the key in GPG
  8. Use GPG to validate electrum download with sig file
  9. If valid proceed
Plus since you can get an actual (crappy) HW-wallet for $10, I fail to see the point from a purely financial standpoint. That being said, Tails is awesome and it a great tool for use in these types of situations.
'''
Context Link
Go1dfish undelete link
unreddit undelete link
Author: brianddk
submitted by removalbot to removalbot [link] [comments]

HowTo: Create and Spend a Electrum Segwit 3of3 Multisig wallet with Trezors

I wrote a simlar post in Bitcoin about creating a MS wallet without a Trezor, this guide will focus on creating a 3of3 MS wallet with three Trezor's. Hopefully it should be obvious how to extend this to N-of-M for any value of N or M. You can also use this as a blueprint to do MS with non-HW Electrum wallets like Android.
It should be noted that this is the most general case method for setting this up. This allows to replace non-HW Electrum wallets into this procedure where HW-wallets are referenced. For the far simpler method, just pick Cosign with hardware device instead of Cosign with key as I outline here. If you choose Cosign with HW you can do the entire process in one wallet file in one session.
The main advantage of multisig is that it reduces the risk of one compromised seed exposing all your funds. Although this is exceedingly complicated, the added layer of complications make it all the more difficult to compromise your funds. Most of the complexity is on the initial wallet setup. Sending is only a bit more complicated, and Receiving is the same as it would be for any electrum wallet.
We will be creating three wallets here, and each will use a Trezor with its own seed, passphrase, and public key (Zpub). If your just wanting to play with this process you could use one Trezor with three different passphrases. Electrum will treat this like three different wallets, since... well since it is. The Zpubs will be calculated by Electrum.
For all references to wallet passphrases or encryption passwords, I highly recommend you generate six-word passphrases. Three simple ways to construct a six-word passphrase would be to either use EFF diceware long wordlist to roll for 6 words, or create a short six-word BIP39 seed and use that as a passphrase, or create a random Electrum seed and use the last 6 words. You will need to take care that all six-word passphrases are equal or less than 50 characters. Longer passphrases can produce some unexpected results. Whenever you need to create a passphrase or password from here on out, create a six-word string as described above.
Assuming your have your Trezors initialized with passphrases enabled, our first order of business will be ensuring the authenticity of Electrum. For the PC's this must be done with PGP/GPG following the procedure spelled out on the Electrum website, or the secondary docs. It is absolutely critical that you are certain your using the correct ThomasV key. As of the time of this writing, the "correct" ThomasV key was:
ThomasV PGP: 6694 D8DE 7BE8 EE56 31BE D950 2BD5 824B 7F94 70E6
Once your Electrum install is validated, here is excruciating detail on creating and spending from a 3of3 multisig wallet. This assumes you have passphrases enabled on all your Trezors and that each has a unique name. For simplicity I will simply refer to their names at "trez-1", "trez-2", and "trez-3"

Three Wallet Creation passes

Do the following first for "trez-1", then for "trez-2" and finally for "trez-3". The order is VERY important:
  1. Wallet->New, name your wallet
  2. Then insert your Trezor ("trez-1", "trez-2", or "trez-3")
  3. Choose Multisig Wallet, then 3of3
  4. Choose Use a hardware device
  5. Select device
  6. Craft (and record) a new 6 word passphrase
  7. Choose Native Segwit derivation
  8. Record Zpub
  9. Unplug your Trezor ("trez-1", "trez-2", or "trez-3")
  10. Choose Add Cosigner Key
  11. Wait at "Add Cosigner 2" dialog

Distribute Zpubs to Finish Wallet Creation

When completing the setup for each wallet below you will be prompted for a wallet encryption password. I recommend you craft a unique six-word string as described above. If Electrum asks to reconnect to your HW wallet simply say "No". You will notice that the order is the reverse of the previous portion. As before, the order is VERY important,.
  1. Swap over to your trez-3 wallet
  2. Click "Enter Cosigner Key"
  3. Enter trez-1 Zpub
  4. Click "Enter Cosigner Key"
  5. Enter trez-2 Zpub
  6. Swap over to your trez-2 wallet
  7. Click "Enter Cosigner Key"
  8. Enter trez-3 Zpub
  9. Click "Enter Cosigner Key"
  10. Enter trez-1 Zpub
  11. Swap over to your trez-1 wallet
  12. Click "Enter Cosigner Key"
  13. Enter trez-2 Zpub
  14. Click "Enter Cosigner Key"
  15. Enter trez-3 Zpub
You can now close each wallet file.
You should now have recorded:
Keep the 12 secrets secure, separate and safe.

Receive funds into your 3of3 MS wallet

Receive just like any other wallet. All three wallets will watch the same set of addresses

Spend funds from your 3of3 MS wallet

  1. Create a TXN as you normally would on your first device
  2. In the TXN dialog hit "Preview" instead of Send
  3. In the Preview screen hit "Sign", then "Export"
  4. Copy the TXN over to your second device
  5. On your second device click Tools->Load Transaction
  6. Enter your partially signed TXN
  7. Verify the Status reads "Partially signed (1/3)"
  8. In the Preview screen hit "Sign", then "Export"
  9. Copy the TXN over to your third device
  10. On your third device click Tools->Load Transaction
  11. Enter your partially signed TXN
  12. Verify the Status reads "Partially signed (2/3)"
  13. In the Preview screen hit "Sign", then "Broadcast"

Conclusion

Certainly more complicated than a non MS wallet, but a lot more secure. Also be aware that the Segwit MS TXNs are about 40% larger than the native Segwit TXNs, so this does generate some additional cost in TXN fees.
submitted by brianddk to TREZOR [link] [comments]

FAQ for Beginners

What is Bitcoin?

Bitcoin is scarce, decentralized, and global digital money that cannot be censored.

Quick Advice

  • Do not respond to strangers messaging you with investment advice or offers and read how to avoid being scammed from the posts below.
  • Do not invest in Bitcoin until you do basic research, paid off all high interest debt, and have a emergency savings account of a stable fiat currency.
  • If investing do not expect to get rich quickly. You should expect to wait at least 1-2 years before taking profits. Bitcoin is currently very volatile. In the interim spend and replace Bitcoin because its a useful currency.
  • Beginners should avoid all mining and day trading until at least very familiar with Bitcoin. Mining is very professional(You cannot efficiently mine with your computer and need to buy special ASIC machines) and most people lose money day trading.
  • Never store your Bitcoins on an exchange or web wallet. Buy your bitcoins and withdraw it to your personal wallet where you actually own them instead of IOUs. Services like Robinhood and Revoult should be avoided because you cannot withdraw or use Bitcoin.
  • Make sure you make a backup of your wallet(software holding keys to your BTC) and preferably keep it offline and physical and private. Typically 12 to 24 words you write down on paper or metal. This onetime backup will restore all your keys, addresses , and Bitcoins on a new wallet if you lose your old wallet.
  • Beginners should avoid altcoins, tokens, and ICOs at least initially until they learn about Bitcoin. Most of these are scams and you should be familiar with the basics first. Bitcoin is referred to as BTC or XBT.

Exchanges Requiring ID Verification

Bitcoin = BTC or XBT on exchanges
Exchange Buy fee* Withdraw BTC Notes
Cash App Sliding ~2.2% to 1% 0 BTC Instant Withdraw, USA only
Coinbase Debit3.99% ACH1.49% 1-4USD ~7Day hold BTC withdraw
CoinbasePro 0.5% 1-4USD ~7Day hold free ACH Deposit or €0.15 EUR SEPA fee
Gemini 1.49% to 0.25%ATrader 0 BTC 10 free BTC withdraws w/ActiveTrader
Kraken 0.16% 0.0005 BTC Deposit Fiat=USwire+5USD or SEPA free
Bitstamp 0.50% 0.0005 BTC Deposit Fiat=0 SEPA or 5% card fee
Note: Exchanges all have unique market prices and spreads so fees alone will not tell you the best rates. Best way is to directly compare the rates between exchanges. Buy fees above are for normal trading volumes. Verification and hold times can vary based upon lack of history, verification level or credit.
More exchanges per location
For a secure Decentralized Exchange (DEX) use https://bisq.network

Recommended Wallets

Best wallets for securing small amounts of BTC
electrum For Desktop and Android
Pros= Great Desktop and Android wallet with advanced functionality like coin control
Cons= UX is not as polished as some other wallets, make sure you only upgrade from official sources like play store or https://electrum.org as malicious servers or adverts can tell you to upgrade malware from other sites
https://www.youtube.com/watch?v=E4EhZg5QslI
Phoenix LN wallets for Android
Pros- Lightning network integration(as well as onchain) allowing you to spend with LN merchants for instant confirmations and much lower fees. Easiest lightning wallet to use
Cons- Lightning is still somewhat experimental and less merchants accept it.
https://phoenix.acinq.co/
https://www.youtube.com/watch?v=Cx5PK1H5OR0
Breez LN wallet for Android and IOS
https://breez.technology
https://www.youtube.com/watch?v=t_4b-y4T8bY
Pros- Lightning network integration(as well as onchain) allowing you to spend with LN merchants for instant confirmations and much lower fees
Cons- Lightning is still somewhat experimental and less merchants accept it.
Other Lightning wallets - http://lightningnetworkstores.com/wallets
Blockstream Green Wallet IOS and android wallet
Pros- Great UX, easy hardware wallet and full node integration, RBF, HW wallet support and advanced 2fa options Cons- Until single signature is released 2 of 2 multisig means that one must depend upon blockstream’s server for tx signing. Other light wallets are dependent upon other servers as well but light wallets like electrum allow you to swap servers.
https://www.youtube.com/watch?v=uO3Zi9D5b0Y
https://blockstream.com/green/
Securing Larger amounts of Bitcoin
ledger nano S wallet = ~68 USD https://shop.ledger.com/products/ledger-nano-s
https://www.youtube.com/watch?v=YI1OntWB7wc
https://www.youtube.com/watch?v=AGe2GgfkO64
trezor one wallet = ~54 USD https://shop.trezor.io
https://www.youtube.com/watch?v=pT1j_kbZBEo
Trezor Model T = ~164 USD https://shop.trezor.io
https://www.youtube.com/watch?v=i3BIo5Ac_n4
Cold Card Hardware wallet = 119.97 USD https://store.coinkite.com/store/coldcard
https://www.youtube.com/watch?v=kocEpndQcsg
https://www.youtube.com/watch?v=f8dBNrlwJ0k
Digital Bitbox 02 = 109 USD https://shiftcrypto.ch/bitbox02/
https://www.youtube.com/watch?v=tdP_7LgZw7s
https://www.youtube.com/watch?v=z7nRq2OEhiw
https://www.youtube.com/watch?v=6D4FgJo3j64
Best Advanced Bitcoin Wallet= Bitcoin Core
Pros= Great privacy and security
Cons= UX is for more experienced users, takes ~week to sync and requires ~5GB minimum disk space if prunned
https://bitcoincore.org/en/download/
Best High Privacy Bitcoin Wallet = Wasabi
Pros= Best Privacy with Chaumian CoinJoin built in
Cons= mixing coins costs more fees and for more advanced users
https://www.wasabiwallet.io/#download
https://www.youtube.com/watch?v=ECQHAzSckK0
https://www.youtube.com/watch?v=zPKpC9cRcZo&list=PLmoQ11MXEmahCG1nkbKK6DiAwVx9giJCi
https://www.youtube.com/watch?v=y8wQK-Ndl3Q&list=PLPj3KCksGbSaEmjU0sywoTYDVYYSu8LsS

Further Resources

https://www.lopp.net/bitcoin-information.html
https://www.lopp.net/lightning-information.html
https://10hoursofbitcoin.com/
http://bitcoinrabbithole.org/
https://bitcoin-resources.com
https://www.bitcoin101.club
https://21lessons.com
submitted by bitusher to BitcoinBeginners [link] [comments]

Electrum & BitAddress Wallets Creation

Hi all,
Can anyone please tell me if my procedure is correct and enough. I've always heard and read that I must disconnect from the internet when creating Electrum Wallets, to keep away from hacks, viruses, malware or having my bitcoins stolen.
I have created electrum wallets and bitaddress paper wallets yesterday. Though I dont know much about its technicalities, I just followed simple procedures I've read online.
  1. downloaded electrum exe installer and bitaddress (from github)
  2. save them in my usb
  3. disconnected my laptop from the internet
  4. uninstall and reinstall Windows 10 (I have windows installation files too, in my usb)
  5. created Electrum wallet, write the seed in a paper. save the wallet file in my usb.
  6. created bitaddress paper wallet, write the Public Key and Private Key in a paper (not print). have checked the spellings, capitalizations multiple times.
  7. uninstall and reinstall windows 10 again, scanned my usb, then connect again to the internet.
Thanks for any advice / clarifications, Elena
submitted by 98coinersbit to Bitcoin [link] [comments]

Our first generation hardware wallets were made of military-grade aerospace aluminum. We’ve stripped all that down to just focus on air-gapping your private keys.

Our first generation hardware wallets were made of military-grade aerospace aluminum. We’ve stripped all that down to just focus on air-gapping your private keys.

https://preview.redd.it/0rogeunfujv41.png?width=1024&format=png&auto=webp&s=8a2cf5eff6f30a36fd7e86e16331eb40b4072627
Hey bitcoin! I'm Lixin, longtime bitcoiner and creator of Cobo Vault.
I come from a background in the electronic hardware industry, and experienced one of my products being featured in Apple Stores around the world. Back in 2018 Cobo CEO Discus Fish, who also co-founded F2Pool, invited me to help build Cobo’s hardware product line. As we had strong ties to miners in China, we naturally designed the 1st gen with them in mind. In China, mining farms are nearly always built in very isolated places where there is very cheap wind or water electricity. When we built our 1st generation Cobo Vault hardware wallet, we needed to maximize the durability of the device in addition to its security. We used aerospace aluminum rather than plastic and made it completely IP68 waterproof, IK9 drop resistant, and military standard MIL-STD-810G durable for the mining industry.
Things changed last year when I went to Bitcoin 2019 and talked to lots of hodlers in the States. I found that 95% of them don’t care about durability. I asked them if they were afraid of their home being flooded or burned down in a fire. The answer is - yes, they are afraid of these things, but see them as very low possibilities. Even if something were to happen, they said they would just buy another HW wallet for 100 dollars. From these conversations, it became more and more clear we should design a product around a normal hodler’s needs.
Our 2nd gen product compromises on durability but doesn’t compromise on security.
Most hodlers share some needs with miners:
  1. Hodlers want a more air-gapped solution so we kept QR code data transmission between your hardware wallet and the companion app which is also auditable.
  2. A Secure Element is the strongest wall of protection from physical attacks. We are the first hardware wallet - also maybe the first electronic product with SE - to have open source SE firmware.
  3. A battery can be a significant weak point. The 2nd gen continues the legacy of detachable batteries to prevent corrosion damage and will also support AAA batteries in case your battery dies someday.
  4. The 2nd gen also keeps the 4-inch touchscreen so you don’t need to suffer from tiny buttons and little screens anymore. Human error is one of the biggest reasons people lose their assets.
  5. We kept other features like the self-destruct mechanism and Web Authentication, which prevent side-channel and supply chain attacks.
If you'd like to read more about these features, check out our blog posts.
Aside from the legacy of the 1st gen, our 2nd gen product will have:
  1. Open source hardware wallet application layer and Secure Element firmware code. With the open source firmware code, you can see: random number generation, master private key generation, key derivation, and the signing process all happen within the SE and your private keys never leave.
  2. At the Bitcoin 2019 conference half the hodlers I met told me they own multiple hardware wallets which they use on the go. We added a fingerprint sensor you can use to authorize transactions without typing in your password. No need to worry about surveillance cameras when using your hardware wallet in airports.
  3. We will also support PSBT (BIP174) to be compatible with third-party wallets like Electrum or Wasabi Wallet in case people have need of using Cobo Vault with their own node or coinjoin. Multisig between Cobo Vault and other wallets will be realized to prevent single point failure with any brand of hardware wallet.
  4. By sacrificing the durability, we successfully controlled the price under 100 USD for the basic version.
  5. BTC-only firmware version for people who want to minimize the codebase for less of an attack surface.
We truly appreciate the support from the community and are giving away free metal storage Cobo Tablets with every purchase of our 2nd gen for a week! Add a tablet to your cart and place your order before May 5th, 8 AM PST to claim your free metal storage. Find us on Twitter CryptoLixin and CoboVault - any suggestions or questions are welcome!
submitted by Bright_Charge to Bitcoin [link] [comments]

Claiming bitcoin SV procedure

Hi!
I would like to know a few precisions on how to get bitcoin SV from an old (pre-bch fork) bitcoin core private key. I was able to successfully get my BCH in electron cash wallet (importing the B-core pvt key). However, I am still unsure on how to do the same procedure using the electrumsv wallet to get the corresponding bitcoin SV on the same machine because of potential conflicts between the 2 wallets. My options:
A: 1- Send all the BCH fist to a cold hardware wallet (for security), 2- uninstall electron cash wallet. 3- install electrumSV wallet and paste in the same Pvt key I used to get the BCH
B: 1- No need to uninstall electron cash wallet, (keep BCH inside or send it first it does not matter) 2- install electrum wallet and paste in the same Pvt key I used to get the BCH
C: None of the above... Any other ways are welcome, thank you !
Joe
submitted by Joe_thefranco to bitcoinsv [link] [comments]

Air-gapped z-addresses; Is ZecWallet an option?

I've heard of Zcash for a while, but it wasn't until recently that I tried my hand playing around with the daemon and wallets.
Obviously, there's no point in using ZEC if you're only using t-addresses, but my desire for a z-address capable wallet certainly narrows the choice of wallets available to me.
Running a full node is no problem for me; I'd like to take advantage of a GUI if possible though. For that reason, I am drawn to ZecWallet's full node version. But I'm still uneasy when it comes to key security. (Can anyone share their experience with the ZecWallet paper wallet generator?)
From what I gather there is no wallet with HD support for t-addresses, is that right? Not much of a concern for me because I am interested in the shielded pool. I just figured t-addresses would support Electrum-style seeds but apparently not?
Sapling addresses seem to be exactly what I want; in particular I am drawn to their reusability and ability to export the view key. I was hoping this would ease the process of securing and backing up my private keys.
Here's my key handling protocol I use for Monero:
1) Generate the wallet on an air-gapped machine
2) This gives you a mnemonic seed. I write that down and keep it as an analog backup. By using a passphrase in conjunction with the seed, I can effectively encrypt this paper wallet easily.
3) Export the private view key and address to an online machine and make a watch-only wallet. This lets my watching wallet see incoming transactions
4) When outputs are received, I have to export the list of outputs to the air-gapped machine. The air-gapped machine uses this data to make signed key images.
5) I export the key images back to the watching wallet. At this point, the watching wallet can see outgoing transactions.
6) Now I can create unsigned transactions with the watching wallet, sign them in the air-gapped machine, and transmit them via the watching wallet using my full node.
The major benefit of using Monero in this way is that I only have to make a human-readable backup of my wallet once and I'm set for life.
Obviously, Zcash is going to be a little bit different. Since the core client doesn't give us mnemonic seed phrases, that complicates backup a little bit. What's the best way to back up ZEC? If I keep an up-to-date backup of my wallet.dat is that all I need? Is there an option in the wallet to encrypt this backup as well, or do I need to accomplish that externally with the likes of Veracrypt? I must admit the idea of unencrypted wallet data being written to my disk makes me uneasy.
I see that there is an option in zcash-cli to import/export the view key of Sapling addresses. However, I can't see the option to do so in ZecWallet, and when I do so manually via the CLI nothing seems to be reflected in ZecWallet.
Is ZecWallet by its very nature an obligatory hot wallet, or am I missing some functionality in the wallet?
My end goal is to run a ZEC full node on Qubes and hold my coins in z-addresses. Qubes allows me to make virtually air-gapped VMs to greatly simplify key management.
So for example when I use Bitcoin, I have a networked VM that runs a Bitcoind + Electrum Personal Server + Electrum Wallet stack, where I import my master public key. When I need to sign a transaction, I spin up a networkless VM equipped with Electrum and my private keys. Qrexec let's me easily ferry unsigned/signed transactions back and forth between the two VMs. Overall this provides a decent UX with above-average security and privacy. I'd like to port this general setup to Zcash.
To do so, I need a GUI wallet that supports both z-addresses and public/private key splitting. Does such a tool exist? (Can Electrum Personal Server be ported to ZEC?) If not, how can I streamline this process with the CLI?
I'm more familiar with Monero than Bitcoin, so the Zcash/Bitcoin CLIs are still a little foreign to me, though I am not "afraid" of CLI wallets in general. My Cryptonote muscle memory makes me prone to annoying little syntax errors I'd much rather do without.
My plan is to buy ZEC from Coinbase Pro, withdraw to a t-address, and then sweep my coins to a z-address. I want to monitor the balance of both t-addresses and z-addresses (and later send transactions) without ever exposing my private keys to the Internet.
However, it seems like the Zcash CLI is my only viable option for z-address watching wallets. Should I just play around on testnet until I get more familiar, or is there a GUI wallet solution out there that fits my needs? Does anyone have a cheat sheet for doing this via the CLI that could help me along the learning curve?
TL;DR New to Zcash, need advice as it relates to wallet backup, watching wallets, and z-addresses.
Assistance is much appreciated!
Edit: I don't suppose there's a way to use a Trezor Model T with a full node and or z-addresses?
submitted by spirtdica to zec [link] [comments]

Possibly dumb question regarding a BTC Scavenger Hunt I'm planning for a workshop

Might be a stupid question, but please bear with me...
I'm organizing a small Bitcoin and Blockchain workshop and one of the first lessons I want to get across 100% is the importance of keeping your private keys secure.
I designed a little scavenger hunt and the last step will reveal a private key (to a few mBTC) which my participants will be able to sweep using Electrum. They will see that as soon as they are in the possession of the key, no 2fa or password will protect the original owner from theft. Now my question is this: What's going to happen in case multiple participants arrived at the last step just a few seconds apart and several of them tried to sweep the private key at the same/at a similar time?
My assumption: Regardless of the various fees set for the sweep transactions, only the one transaction will be validated which was broadcasted first. All other transactions will fail.
Is this correct?
Thanks for your help.
submitted by 1corn to Bitcoin [link] [comments]

Move Paper Wallet To Secure Long-Term Solution

Hi, I got into Bitcoin mining a long time ago, eventually sold half my coins and kept half on a paper wallet made from a popular online wallet service. For a few reasons I want to move this to a modern and secure way to store the coins.
My idea is to make a VM on my Macbook in VMware of macOS and keep it virtually "air gapped" by uninstalling the virtual network card and disallowing copy & paste as well as shared folders. On this VM install the Electrum software as the main wallet and generate a new public and private key pair. Export the wallet in encrypted form and store on a NAS as well as AWS S3. Print the mnemonic (12 word backup phrase? I assume Electrum can help with this?) and store in a safe at home. Buy a Ledger Nano X or Nano S and hook up to this air-gapped wallet, so this would basically be a second backup, and could be used to spend the coins without the use of the air-gapped VM.
Then install the Electrum software on my actual Macbook's user-space, import the public key and the private key from the legacy Bitcoin address on the paper wallet (yeah, long-time old paper wallet...) and send all the coins to the air-gapped wallet address, set up as a watch-only address on this Electrum client. Basically use this to empty all the coins from the old legacy address to the new address generated on the air-gapped computer.
Does this sound safe/sane? Am I missing something/is there a better or easier way? Any experience with the Ledger Nano X/S and is it actually trustworthy?
I really appreciate feedback on this. It has been a _looooong_ time and the BTC world has changed a _lot_.
submitted by thejestre to Bitcoin [link] [comments]

Using Keepkey with Electrum to sign BTC transactions and claim HEX - NO AUDIO Electrum private Keys importieren - YouTube How to Set Up the Keepkey Hardware Wallet 2019 Improved Keepkey Setup Guide (24 Word Seed, BIP39 Passphrase, Electrum. Works for Trezor) How to Sweep Private Key using Blockchain.info Bitcoin Wallet

Some bitcoin wallets and services do not yet support sending or receiving to Bech32 addresses. ... Some wallets have the ability to require more than one key to authorize a transaction. This can be used to divide responsibility and control over multiple parties. SegWit × SegWit: Some wallets support SegWit, which uses block chain space more efficiently. This helps reduce fees paid by helping ... Während Electrum keine Gebühren für den Download erhebt, fallen bei Electrum Transaktionsgebühren an. Diese sind standardisierte Gebühren, wenn man Bitcoin vom Wallet senden möchte. Das Geld („Netzwerkgebühr“) wird nach Menge der Bitcoins berechnet, die man überweise möchte und es gibt eine Minimalgebühr. Bei dem Dienstleister gibt es eine Grundrate – die gleichzeitig eine ... My only issue with keep key is that you can transfer ERC20 tokens to it but you can’t get them off once they’re there. I spoke with support yesterday and their primary focus right now is updating the firmware so you can move all of your ICO tokens to the device and transfer them elsewhere if you want for cash out purposes. Once that happens I’ll be 100% satisfied with this product. Setup ... Electrum Electrum ist auf Geschwindigkeit und Einfachheit fokussiert und benötigt wenig Ressourcen. Es nutzt entfernte Server, die den komplizierten Teil des Bitcoin-Systems übernehmen und ermöglicht es, mit einer geheimen Phrase wieder Zugriff auf eine Wallet zu bekommen. Features: 2FA × 2FA: Die Zwei-Faktor-Authentifizierung (2FA) ist ein zusätzlicher Schutz für Ihre Wallet. Der erste ... Electrum Bitcoin Wallet. Impressum This website is hosted by Electrum Technologies GmbH Electrum Technologies was founded by Thomas Voegtlin in 2013. Its mission is to develop, package and distribute Electrum software, and to provide services to Bitcoin users and businesses.

[index] [50957] [2602] [38568] [5612] [2398] [26980] [2791] [47311] [23100] [33463]

Using Keepkey with Electrum to sign BTC transactions and claim HEX - NO AUDIO

Keep you Bitcoin Safe from Phishing and Scams. Verifying Electrum Download Signatures via GPG4Win. Verifying Electrum Download Signatures via GPG4Win. - Duration: 8:53. Even if you lost the seed, as long as you have the correct private key, you can access your money. This is a useful resource for accessing, securely storing,... How to pay with Bitcoin using MultiBit HD and KeepKey You Can Recovery Your KeepKey if it is Lost or Stolen: See How Integrating my KeepKey hardware Bitcoin wallet with Mycelium for Android The CryptoDad walks you through the basic steps of enabling 2-factor authentication for the Electrum Bitcoin Wallet. Electrum bitcoin wallet: https://electru... Electrum 3.0 and above now have Segwit Support. Watch this video to learn how to use it with your Trezor Wallet. Get your Trezor here: https://shop.trezor.io...

#