Bitcoin Forum
November 09, 2024, 12:59:27 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: How to calculate address?  (Read 752 times)
brovine (OP)
Newbie
*
Offline Offline

Activity: 13
Merit: 0


View Profile
November 18, 2013, 02:26:58 AM
 #1

Not sure if this is the right section. Sorry if not.

How can I calculate the address if I have the public key and a private partial key?
SemiMolten
Member
**
Offline Offline

Activity: 86
Merit: 10


View Profile
November 18, 2013, 03:08:10 AM
 #2

bitaddress.org and navigate to the vanity wallet

brovine (OP)
Newbie
*
Offline Offline

Activity: 13
Merit: 0


View Profile
November 18, 2013, 03:33:00 AM
 #3

bitaddress.org and navigate to the vanity wallet

Thank you. And now how can I do it offline?
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
November 18, 2013, 03:34:07 AM
 #4

bitaddress.org and navigate to the vanity wallet

Thank you. And now how can I do it offline?

Save the site, access it from an offline computer.

All the logic is in the client side javascript.  It works just as well offline.
brovine (OP)
Newbie
*
Offline Offline

Activity: 13
Merit: 0


View Profile
November 18, 2013, 03:39:24 AM
 #5

bitaddress.org and navigate to the vanity wallet

Thank you. And now how can I do it offline?

Save the site, access it from an offline computer.

All the logic is in the client side javascript.  It works just as well offline.

Alright and now let's assume I want to know how it's done.
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
November 18, 2013, 03:42:21 AM
 #6

Here:
https://en.bitcoin.it/wiki/Technical_background_of_Bitcoin_addresses

Cheat sheet:


Bitcoin now supports compressed pubkeys (only contains X value, Y value is computed) the above diagram should probably be updated to reflect that.
brovine (OP)
Newbie
*
Offline Offline

Activity: 13
Merit: 0


View Profile
November 18, 2013, 04:10:34 AM
 #7

Here:
https://en.bitcoin.it/wiki/Technical_background_of_Bitcoin_addresses

Cheat sheet:
https://en.bitcoin.it/w/images/en/9/9b/PubKeyToAddr.png

Bitcoin now supports compressed pubkeys (only contains X value, Y value is computed) the above diagram should probably be updated to reflect that.

In this, where would I stick the partial private key?
DannyHamilton
Legendary
*
Offline Offline

Activity: 3486
Merit: 4832



View Profile
November 18, 2013, 04:41:00 AM
 #8

In this, where would I stick the partial private key?

The private key is used to calculate the public key.

You said you already have the public key.

Not sure if this is the right section. Sorry if not.

How can I calculate the address if I have the public key and a private partial key?

Once you have the public key, that's all you need for calculating the address.
brovine (OP)
Newbie
*
Offline Offline

Activity: 13
Merit: 0


View Profile
November 18, 2013, 04:43:33 AM
 #9

In this, where would I stick the partial private key?

The private key is used to calculate the public key.

You said you already have the public key.

Not sure if this is the right section. Sorry if not.

How can I calculate the address if I have the public key and a private partial key?

Once you have the public key, that's all you need for calculating the address.

Okay let me explain the scenario.

I'm using vanitygen. I supply a public key to it and a prefix. It then finds the vanity address using said public key and provides me a partial private key. Sites like bitaddress.com can take that public key and the partial private key and determine the address. The public key itself is not enough; that returns a different address.
J35st3r
Full Member
***
Offline Offline

Activity: 196
Merit: 100



View Profile
November 18, 2013, 09:38:18 AM
 #10

I'm using vanitygen. I supply a public key to it and a prefix. It then finds the vanity address using said public key and provides me a partial private key. Sites like bitaddress.com can take that public key and the partial private key and determine the address. The public key itself is not enough; that returns a different address.

That functionality is intended for vanity key "farms" that calculate private keys as a service. The key combination ensures the generated key is known only by the client and not the service.

I was involved in a short discussion on this a while back so I'll link the thread https://bitcointalk.org/index.php?topic=268567.0 in case its of any use to you.

1Jest66T6Jw1gSVpvYpYLXR6qgnch6QYU1 NumberOfTheBeast ... go on, give it a try Grin
brovine (OP)
Newbie
*
Offline Offline

Activity: 13
Merit: 0


View Profile
November 18, 2013, 04:53:27 PM
 #11

I'm using vanitygen. I supply a public key to it and a prefix. It then finds the vanity address using said public key and provides me a partial private key. Sites like bitaddress.com can take that public key and the partial private key and determine the address. The public key itself is not enough; that returns a different address.

That functionality is intended for vanity key "farms" that calculate private keys as a service. The key combination ensures the generated key is known only by the client and not the service.

I was involved in a short discussion on this a while back so I'll link the thread https://bitcointalk.org/index.php?topic=268567.0 in case its of any use to you.

...It generates a partial private key that gets converted to a public key and then added with the buyer's public key to calculate the address. Multiple sites and scripts offer this service, such as bitaddress and pybitcointools

I'd like to know the algorithm to do this so that I can do it up in PHP.
J35st3r
Full Member
***
Offline Offline

Activity: 196
Merit: 100



View Profile
November 18, 2013, 09:40:18 PM
 #12

...It generates a partial private key that gets converted to a public key and then added with the buyer's public key to calculate the address. Multiple sites and scripts offer this service, such as bitaddress and pybitcointools

I'd like to know the algorithm to do this so that I can do it up in PHP.

I gave you the link to the thread, if you'd read it you'd have found this link https://bitcointalk.org/index.php?topic=84569.0 which explains the process reasonably clearly (it relies on the properties of the ECDSA addition operation as regards private keys and their generated public keys, not being a math guru I can't explain it myself).

I find the ECDSA code in JackJack's Pywallet to be the easiest to follow, so you may want to start there, though it does not implement the split-key algorithm. You'll need to look at the vanitygen source for that (which I find quite difficult to follow) or the javascript in bitaddress.org.

1Jest66T6Jw1gSVpvYpYLXR6qgnch6QYU1 NumberOfTheBeast ... go on, give it a try Grin
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!