Author

Topic: Keeping the addresses generated from deterministic wallet PubKey seed secret. (Read 1111 times)

sr. member
Activity: 412
Merit: 287
If you return only a public key, it's impossible to derive anything else in sequence.

A key is derived as Px + H(Chaincode || Keydata). It's impossible to guess the input to this second part, so you're all good.

You probably don't need to leak more than the public key - don't reveal any extended public keys.
copper member
Activity: 1498
Merit: 1528
No I dont escrow anymore.
For now thanks for the answers even though it was not my thread. I feel I need more time reading and thinking about it.
sr. member
Activity: 467
Merit: 267
You don't need hardened keys for this scenario. If you only publish the addresses, no-one can figure out the next in sequence.

So you can never spend the coins because this would expose the public key which would allow to derive further addresses?

Well, you can also use the public key as long as you don't show the chain code.
legendary
Activity: 3430
Merit: 3080
You don't need hardened keys for this scenario. If you only publish the addresses, no-one can figure out the next in sequence.

So you can never spend the coins because this would expose the public key which would allow to derive further addresses?

But surely the public key of a single address cannot be used to infer the value of the xpub that generated it? The link to hardened keys suggests that the public key and the corresponding chaincode need to be exposed for that to be possible, so what am I missing?
copper member
Activity: 1498
Merit: 1528
No I dont escrow anymore.
You don't need hardened keys for this scenario. If you only publish the addresses, no-one can figure out the next in sequence.

So you can never spend the coins because this would expose the public key which would allow to derive further addresses?
sr. member
Activity: 467
Merit: 267
You don't need hardened keys for this scenario. If you only publish the addresses, no-one can figure out the next in sequence.
copper member
Activity: 1498
Merit: 1528
No I dont escrow anymore.
I should be clearer: I don't want anyone to be able to work out what the next address in the sequence will be, e.g. if I've generated 100 addresses in sequence and used them publicly will anyone be able to guess what address 101 would be without the pubkey seed?

isnt this given with hardened keys?

-> https://bitcoin.org/en/developer-guide#hardened-keys

Assuming you also keep the xpub key secret as knightdk suggested.
hero member
Activity: 906
Merit: 1034
BTC: the beginning of stake-based public resources
I should be clearer: I don't want anyone to be able to work out what the next address in the sequence will be, e.g. if I've generated 100 addresses in sequence and used them publicly will anyone be able to guess what address 101 would be without the pubkey seed?
staff
Activity: 3458
Merit: 6793
Just writing some code
Yes. There is no need for anyone to know what your master public key is.
hero member
Activity: 906
Merit: 1034
BTC: the beginning of stake-based public resources
I have the following use case: I want to generate a series of public keys from which to create Bitcoin addresses from a deterministic wallet, but I do not want anyone to know or be able to predict what my sequence of addresses will be.

So my question is: can I keep the public key seed on a cold storage machine and generate public keys on an as needed basis without revealing what the next public key or address in the sequence is likely to be?
Jump to: