Author

Topic: So, how does an HD wallet work in the real world? (Read 203 times)

copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
I started to search for lightning netwrk and then came across dandelion and started researching about that instead (oops).

Staying on the topic you originally intended to research is so hard with Bitcoin. Before you know it you have 15 tabs open and 6 git repositories and 2 conspiracy theories and suddenly you're added to 3 gov't watch lists Wink

Lightning is like a second rabbit hole to the already difficult rabbit hole of Bitcoin  Shocked

I can imagine I've been blacklisted from my government watch lists for the number of times I've been added to it and then had an uninteresting browser activity Grin. I spend a lot of time on this forum and quite a few others, so they can't get much more than what is already in the public domain so it must be a boring thing for them to track if I've ever been added to "the list" Grin.

If you've just started, you have the real excitement of just starting out if so (I'd love to do that again, I was just starting out with a raspberry pi six months before I got into this too it's not a great computer but the power from the lack of power was quite an exciting thing)...
jr. member
Activity: 34
Merit: 6
I started to search for lightning netwrk and then came across dandelion and started researching about that instead (oops).

Staying on the topic you originally intended to research is so hard with Bitcoin. Before you know it you have 15 tabs open and 6 git repositories and 2 conspiracy theories and suddenly you're added to 3 gov't watch lists Wink

Lightning is like a second rabbit hole to the already difficult rabbit hole of Bitcoin  Shocked
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
I know that Pierre Rochard has a great one-click LN Launcher for Windows and Mac. It will get you set up and running, then you'll have to manually set up channels and send transactions using the cli for now.

If you want a a step by step overview of what the one-click LN Launcher is doing in the background, this video might help explain. The video description has extra resources for LN as well.

As for setting up the channels and doing a transaction, this video is super informational (It is using )

These resources aren't for the average shoe store owner. They are more for people who want to be ahead of the game and help implement these stuff FOR the shoe store owner.

You need to host at least a pruned node for that node to run though which is my issue.

And thanks (I'm definitely not a shoe store owner Grin). And they are quite advanced compared to the normal shoe store owner or average Joe. I'd suggest placing a qr code with those explainations somewhere near your tills so you can give people an insignt into how everything works (and maybe a bit of an advert for bitcoin :-) ) - I started to search for lightning netwrk and then came across dandelion and started researching about that instead (oops).
jr. member
Activity: 34
Merit: 6
Ah yes, I fogot about the LN. I'm not entirely sure how all of that works (still need to read up on it quite a bit) but that'll definitely help you with accepting payments.
There is a limit on the LN and I don't think you can put it on a tablet as far as I know so putting it on a windows/linux machine would be necessary (it can of course be a windows/debian/ubuntu tablet instead)...

I know that Pierre Rochard has a great one-click LN Launcher for Windows and Mac. It will get you set up and running, then you'll have to manually set up channels and send transactions using the cli for now.

If you want a a step by step overview of what the one-click LN Launcher is doing in the background, this video might help explain. The video description has extra resources for LN as well.

As for setting up the channels and doing a transaction, this video is super informational (It is using )

These resources aren't for the average shoe store owner. They are more for people who want to be ahead of the game and help implement these stuff FOR the shoe store owner.
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
Dang, having the customer sign for the transaction isn't much of a deviation from the current economic model. I think what the shoe store would have to do is set up a lighting network node and use lightning to receive the payment instead. That way they are on the bleeding edge, and hopefully the user experience will be impressive for the customer the first time they use it.

Thank you for taking the time out of your day to help me out, you both are definitely steering me in the right direction.

Ah yes, I fogot about the LN. I'm not entirely sure how all of that works (still need to read up on it quite a bit) but that'll definitely help you with accepting payments.
There is a limit on the LN and I don't think you can put it on a tablet as far as I know so putting it on a windows/linux machine would be necessary (it can of course be a windows/debian/ubuntu tablet instead)...
jr. member
Activity: 34
Merit: 6
your questions don't seem to be related to HD wallets though!

an HD wallet is simply a wallet that is based on BIP32 proposal[1]. it allows your wallet to have a master key to generate all your addresses from. and  just like an address you have 2 sets of keys, a private one which you keep secret and a public one which you can put on your hot wallet or share.
for example a business (shoe store) creates a wallet offline and generates a master private key. then from that master private key it creates a master public key and transfers that to their cashier. there you can create the same addresses as if you had the private keys but you don't. so you are safe while you don't have to go back and forth between two computers for every address you generate.

[1] https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki


Thank you for the explanation and the link. I have used a few HD wallets without even realizing it! I never noticed that the receive address was different every time I received them  Roll Eyes


Most wallet softwares do number 1 automatically (as that's the initial design that everyone gets a new address for every new transaction).

As pooya says, you can do it with separate wallets per till and separate public/private keys too so that it is more secure.

In addition to this, you might want to wait for 1 or 2 confirmations (or treat it like an international transaction and get people to sign something when they pay with bitcoin and show proof of ID to let them have an unconfirmed transaction that you can go back and get later - this is often done with international visa debit cards for people who go to different countries within the EU if a currency conversion is needed).


You'll probably want deposits to go in in legacy addresses too, native segwit addresses might not be compatible with every wallet.
A legacy address begins with a 1.
A segwit address begins with a 3.
A native segwit address begins with a bc1.

Dang, having the customer sign for the transaction isn't much of a deviation from the current economic model. I think what the shoe store would have to do is set up a lighting network node and use lightning to receive the payment instead. That way they are on the bleeding edge, and hopefully the user experience will be impressive for the customer the first time they use it.

Thank you for taking the time out of your day to help me out, you both are definitely steering me in the right direction.
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
I definitely have more research to do on this topic lol

I did do a decent amount of googling before posting, but most search results were simply a list of wallets that have HD capabilities, offering no explanation on how to actually work an HD wallet.

Thank you for the reply, I am off to do more Googling now Smiley

Most wallet softwares do number 1 automatically (as that's the initial design that everyone gets a new address for every new transaction).

As pooya says, you can do it with separate wallets per till and separate public/private keys too so that it is more secure.

In addition to this, you might want to wait for 1 or 2 confirmations (or treat it like an international transaction and get people to sign something when they pay with bitcoin and show proof of ID to let them have an unconfirmed transaction that you can go back and get later - this is often done with international visa debit cards for people who go to different countries within the EU if a currency conversion is needed).


You'll probably want deposits to go in in legacy addresses too, native segwit addresses might not be compatible with every wallet.
A legacy address begins with a 1.
A segwit address begins with a 3.
A native segwit address begins with a bc1.
legendary
Activity: 3472
Merit: 10611
your questions don't seem to be related to HD wallets though!

an HD wallet is simply a wallet that is based on BIP32 proposal[1]. it allows your wallet to have a master key to generate all your addresses from. and  just like an address you have 2 sets of keys, a private one which you keep secret and a public one which you can put on your hot wallet or share.
for example a business (shoe store) creates a wallet offline and generates a master private key. then from that master private key it creates a master public key and transfers that to their cashier. there you can create the same addresses as if you had the private keys but you don't. so you are safe while you don't have to go back and forth between two computers for every address you generate.

[1] https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki
jr. member
Activity: 34
Merit: 6
1. Look at the docs for the wallet or run a google search.
2. Tills normally run windows operating systems, why not just install bitcoin core on those (encrypting it giving the manager/store owner the access to the password and everyone elese able to only generate addresses). You could also use electrum wallet but they won't be as reliable as bitcoin core as you're relying on a third party (who is still fairly trustworthy though)...
3. If this were the case, some sort of payment processor like coinbase might be better to process consumers transactions. Alternatively, the store owner could keep their profits in bitcoin (or half of their profits) and turn the rest to fiat in order to use it to buy more stock/pay staff etc...

I definitely have more research to do on this topic lol

I did do a decent amount of googling before posting, but most search results were simply a list of wallets that have HD capabilities, offering no explanation on how to actually work an HD wallet.

Thank you for the reply, I am off to do more Googling now Smiley
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
1. Look at the docs for the wallet or run a google search.
2. Tills normally run windows operating systems, why not just install bitcoin core on those (encrypting it giving the manager/store owner the access to the password and everyone elese able to only generate addresses). You could also use electrum wallet but they won't be as reliable as bitcoin core as you're relying on a third party (who is still fairly trustworthy though)...
3. If this were the case, some sort of payment processor like coinbase might be better to process consumers transactions. Alternatively, the store owner could keep their profits in bitcoin (or half of their profits) and turn the rest to fiat in order to use it to buy more stock/pay staff etc...
jr. member
Activity: 34
Merit: 6
Let's say there is a business selling shoes. They want to accept Bitcoin. How do they get set up to make this work in the real world?

I would assume that for every purchase, a new QR code is created for individual transactions.

I have sent bitcoin to my siblings through Mycelium. When I did the transaction with my sister, it showed that her Bitcoin was pending verification within 5 seconds of me hitting the send button on my phone. The next time I sent Bitcoin to a my brother, his app took about 3 minutes to show the transaction was on the way. Has anybody experienced a 3+ minute wait time? Obviously, that wait isn't suitable for a busy store.

A few follow up questions.

1. How do I know which wallet software is capable of creating a public key for every new transaction?
2. Assuming the storefront has a tablet at checkout, what app/software should a business like that use?
3. Is it recommended for the business to sell a % of BTC into USD immediately to protect their capital from the volatility of Bitcoin? (I suppose this depends on the market climate, but if the store owner doesn't care/have time to keep an eye on what the market is doing I'm sure the selloff to USD would be his/her preferred plan)

Thank you for taking time!
Jump to: