Author

Topic: Ok...how does a bitcoin wallet work? (Read 121 times)

HCP
legendary
Activity: 2086
Merit: 4361
December 21, 2020, 08:05:44 PM
#8
Yeah, sadly... people think of their bitcoin "wallet" as being like a physical wallet, holding dollar bills/coins etc... or (even worse) a bank account...

This then leads to a number of common misconceptions about the way bitcoin "wallets" actually work, which then leads to the constant stream of "Help! I tried to do X and my wallet did Y!"-type posts. Undecided
legendary
Activity: 3948
Merit: 3191
Leave no FUD unchallenged
December 19, 2020, 05:28:02 PM
#7
There's not much I'd change about Bitcoin.  But if I could go back in time and alter one thing, I'd have made sure they were called 'key-rings' instead of 'wallets'.  It would make more sense to the uninitiated.  People generally don't store their house keys or car keys in their physical wallet.  They put them on a key-ring.  

But a Bitcoin wallet does store your keys.  These keys are what allow you to spend your bitcoins, while also ensuring that no one else can.  Just think of a Bitcoin wallet like it's a key-ring for digital keys.  It's safer to generate these keys offline, because there's less possibility of someone intercepting them and using them to steal your funds that way.

Sadly, it's too late to rename them now.
legendary
Activity: 2268
Merit: 18711
December 19, 2020, 03:31:51 PM
#6
What I’m confused about is how this wallet even exists when I’ve made it offline. How is a wallet generated?
Every single bitcoin address which will ever exist (excluding new address types which may be created in the future) already exists. Anyone can send bitcoin to any address they please at any time, whether or not someone controls it or it has ever been generated by a piece of software before. When you generate a new address using bitaddress, you simply generate a random number between 1 and (just less than) 2256 which is your private key and allows you to "unlock" one specific address.

This address can create raw transactions and broadcast them as both actions require internet connection
Being pedantic, but this isn't strictly true. All you need is a way of knowing which UTXOs are present at that address. The most obvious non-internet way of doing this is via Blockstream Satellite (https://blockstream.com/satellite/), which will allow you to sync a full node without an internet connection, but you could also receive blockchain data over a local network, via a USB drive, or any other way of communicating data. You don't even necessarily need the latest blockchain data - provided you know the relevant UTXOs, then you could create a transaction manually and sign it with a private key, all without having an internet connection. There are also a couple of ways you can broadcast transactions without an internet connection, although these are more difficult to achieve than creating transactions without an internet connection.
full member
Activity: 287
Merit: 159
December 18, 2020, 11:55:37 PM
#5
I think this post below should be enough to know how does bitcoin wallets work.

Bitcoins are not stored in your wallet. Bitcoin transactions are stored in the globally distributed ledger called the blockchain (not to be confused with the website blockchain.info). When someone sends you bitcoins he signs off ownership of the coins to your address. That transaction is recorded in the blockchain. For you to be able to then spend those coins you need the private key behind your address and that is what is stored in your wallet. A wallet is basically a collection of private keys and a private key is basically a really, really large number.

To receive coins you don't have to be connected to the internet. To spend coins you do.

An offline wallet is wallet that is installed on a computer that is kept offline. It is considered safer than a wallet on an online computer.

Unless you have a large amount of coins I suggest starting by using a desktop client like electrum. Definitely move away from a blockchain.info mywallet. Don't worry about offline wallets for now. You can look into them later when you understand bitcoin better.

As far as backups go with electrum it is very easy to do. You just write down your 12 word "seed" on a piece of paper. The seed is like a master key and all your addresses, past and future, are derived from that. And yes your balance will update if you restore from seed in future.


If you are a beginner I suggest you start using Electrum it's easier to use than keeping a private key offline and I'm sure if you are going to spend it won't be easy for you to spend BTC from your private key offline.
You can run Electrum in offline mode and can sign a transaction. You can also import that private key to Electrum while offline and use it only for signing transaction.
I second BitMaxz's comments.  He gives good advice.

Although, an online wallet may seem like an interesting idea, and it may have its uses, but it is not a good idea for someone just starting to start with an online wallet.  A better, and safer, learning experience will be had by using a more regular wallet like electrum.
legendary
Activity: 2114
Merit: 2248
Playgram - The Telegram Casino
December 18, 2020, 11:47:06 PM
#4
While your address would need to be connected to the internet to create transactions, your private keys does not have to be (Your private keys basically controls the address and without it one cannot sign transactions).
You can have a watch only wallet as suggested already, created with the master public key on a device connected to the internet. This address can create raw transactions and broadcast them as both actions require internet connection, while you Keep your private keys stored on another device which is offline. This signs transactions as it doesn't require internet connection.

• Create the raw transaction on the watch-only and transfer it to the offline wallet, this can be done by scanning the QR code or copying the raw text.
• Sign the transaction there and transfer the now signed transaction back to the watch-only wallet.
• Broadcast the signed transaction.

This way you can send and receive bitcoins without your private keys ever being online.
legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
December 18, 2020, 11:19:36 PM
#3
So I’ve been perplexed a little. I created a bitcoin wallet from bitaddress.org offline by downloading the website. What I’m confused about is how this wallet even exists when I’ve made it offline. How is a wallet generated? If someone could explain, it would be much appreciated.
Most people have the misconception that the wallet has to be online for the addresses to be generated. This is untrue as the address doesn't interact with anything online during the generation process. Addresses are a representation of your ECDSA public key for which it's corresponding private key is just a random 256bit integer.

Generating it offline does not completely mitigate all the risks and the benefits that an offline airgapped cold storage should provide. It will only protect you if a malware is present after the generation and that the funds within the address is used on a separate computer. It is fairly hard to secure a paper wallet to the level of a cold storage without some technical knowledge. Try exploring desktop wallets like Electrum and Bitcoin Core instead.
legendary
Activity: 3374
Merit: 3095
Playbet.io - Crypto Casino and Sportsbook
December 18, 2020, 06:59:58 PM
#2
I think this post below should be enough to know how does bitcoin wallets work.

Bitcoins are not stored in your wallet. Bitcoin transactions are stored in the globally distributed ledger called the blockchain (not to be confused with the website blockchain.info). When someone sends you bitcoins he signs off ownership of the coins to your address. That transaction is recorded in the blockchain. For you to be able to then spend those coins you need the private key behind your address and that is what is stored in your wallet. A wallet is basically a collection of private keys and a private key is basically a really, really large number.

To receive coins you don't have to be connected to the internet. To spend coins you do.

An offline wallet is wallet that is installed on a computer that is kept offline. It is considered safer than a wallet on an online computer.

Unless you have a large amount of coins I suggest starting by using a desktop client like electrum. Definitely move away from a blockchain.info mywallet. Don't worry about offline wallets for now. You can look into them later when you understand bitcoin better.

As far as backups go with electrum it is very easy to do. You just write down your 12 word "seed" on a piece of paper. The seed is like a master key and all your addresses, past and future, are derived from that. And yes your balance will update if you restore from seed in future.


If you are a beginner I suggest you start using Electrum it's easier to use than keeping a private key offline and I'm sure if you are going to spend it won't be easy for you to spend BTC from your private key offline.
You can run Electrum in offline mode and can sign a transaction. You can also import that private key to Electrum while offline and use it only for signing transaction.
newbie
Activity: 37
Merit: 0
December 18, 2020, 06:47:09 PM
#1
So I’ve been perplexed a little. I created a bitcoin wallet from bitaddress.org offline by downloading the website. What I’m confused about is how this wallet even exists when I’ve made it offline. How is a wallet generated? If someone could explain, it would be much appreciated.

Regards
Jump to: