Author

Topic: Keyspace and Bitcoin Addresses (Read 516 times)

full member
Activity: 161
Merit: 230
November 07, 2023, 11:54:41 PM
#22
There are exactly 0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140 public keys, as per the definition of the curve.

There are therefore 2**256 - 0x14551231950b75fc4402da1732fc9bec0 keys, and while the second number seems large, it's insignificantly small compared to the full keyspace.
jr. member
Activity: 51
Merit: 107
November 07, 2023, 02:53:56 PM
#21
Smiley
jr. member
Activity: 53
Merit: 11
November 07, 2023, 02:25:04 PM
#20
is there a ways to get a list with btc addresses and public keys ?
To find all Bitcoin addresses with a balance, check this LoyceV's thread: List of all Bitcoin addresses with a balance.

but the scripts are not working. can i get a dump somewhere ?
Have you tried the script posted by dark knight? It prints all the public keys from the blockchain, and I presume it's a trivial process to keep only those with a balance. I don't know if it checks for P2PK, though.

Maybe a old post but what is this dark knight script, and where to find it ? Sry if you joking and i don#t guess it !
newbie
Activity: 7
Merit: 0
November 16, 2022, 11:00:00 AM
#19
is there a ways to get a list with btc addresses and public keys ?
To find all Bitcoin addresses with a balance, check this LoyceV's thread: List of all Bitcoin addresses with a balance.

but the scripts are not working. can i get a dump somewhere ?
Have you tried the script posted by dark knight? It prints all the public keys from the blockchain, and I presume it's a trivial process to keep only those with a balance. I don't know if it checks for P2PK, though.

yes i tried the script from dark knight, its all python 2.xx .. i treid to run it on several computers but i get an error , something with hash256 module not found , i installed the python libs but its not working, i think i go deeper into LoyceV solution.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
November 16, 2022, 10:29:43 AM
#18
is there a ways to get a list with btc addresses and public keys ?
I did this, see Get pubkeys out of Bitcoin block data, but haven't updated it since April. Start reading from that post, and you'll see I got stuck a bit later.
If you want my help continuing this, post in that topic.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
November 16, 2022, 10:27:11 AM
#17
is there a ways to get a list with btc addresses and public keys ?
To find all Bitcoin addresses with a balance, check this LoyceV's thread: List of all Bitcoin addresses with a balance.

but the scripts are not working. can i get a dump somewhere ?
Have you tried the script posted by dark knight? It prints all the public keys from the blockchain, and I presume it's a trivial process to keep only those with a balance. I don't know if it checks for P2PK, though.
newbie
Activity: 7
Merit: 0
November 16, 2022, 08:45:27 AM
#16
is there a ways to get a list with btc addresses and public keys ? i found some old posts here

https://bitcoin.stackexchange.com/questions/37291/all-bitcoin-public-keys-with-non-zero-balance

but the scripts are not working. can i get a dump somewhere ?
legendary
Activity: 2268
Merit: 18748
November 16, 2022, 04:50:02 AM
#15
the main question is, how i get the public key hash of 16jYMfASQ4ngejMcVUoAjEBvq9HKnc6UX2
First of all, a public key is not the same as a public key hash. You can find out the public key hash, which is simply RIPEMD160(SHA256(pubkey)), for any address simply by decoding the address from Base58 back in to hex and stripping off the network byte and checksum. The public key hash for 16jYMfASQ4ngejMcVUoAjEBvq9HKnc6UX2 is 3EE4462D45A65A3CBE9E3DD19780C0A29C4E39D3.

In terms of getting the public key of 16jYMfASQ4ngejMcVUoAjEBvq9HKnc6UX2, the answer is you can't right now. That address has only received coins - it has not spent them. You need a transaction where coins are spent from an address for that address's public key to be part of the signature. Until that happens (or a message is signed from that address) then its public key remains unknown.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
November 15, 2022, 01:36:06 PM
#14
"sigscript":"483045022100db985b5edc73966c5d9ea520729811bbbc785556ed0504d5ee079bf9766dbf40022 05a4b2c40b58c2aeb63d9c9065b58cf8f5a68dc7b0f76d2bd23589ca76b218ded012102679a681d 9b5bf5c672e0413997762664a17009038674b806bf27dd6b368d9b67"
This particular part of the transaction is the scriptSig, which contains the signature and the public key that are used to unlock the first output (of 1NDyJtNTjmwk5xPNhjgAMu4HDHigtobu1s) from transaction "0788c180d896807b6c9f834515b51bdbf88185382f7992e2caaa533a6f748856". I don't know what exactly you want to know about that.

Quote from: thunderbolt1978 link=topic=5335765.msg61296857#msg61296857
public key hash 02679a681d9b5bf5c672e0413997762664a17009038674b806bf27dd6b368d9b67
This is a public key. Not a public key hash. The public key hash of the given public key is the 1NDy address (decoded properly of course).

Quote from: thunderbolt1978 link=topic=5335765.msg61296857#msg61296857
do i have to search for a other transaction
This address has no spent transaction outputs, so it's impossible to tell what's its public key based on its transaction history.
newbie
Activity: 7
Merit: 0
November 15, 2022, 12:40:06 PM
#13
hmm okay, let so an example

example address

16jYMfASQ4ngejMcVUoAjEBvq9HKnc6UX2 Balance 0.01003111 BTC

first transaction made

"sigscript":"483045022100db985b5edc73966c5d9ea520729811bbbc785556ed0504d5ee079bf9766dbf40022 05a4b2c40b58c2aeb63d9c9065b58cf8f5a68dc7b0f76d2bd23589ca76b218ded012102679a681d 9b5bf5c672e0413997762664a17009038674b806bf27dd6b368d9b67"

public key hash 02679a681d9b5bf5c672e0413997762664a17009038674b806bf27dd6b368d9b67

if i put the hash into this page

https://bitcointools.site/tool/pubkey-to-address

02679a681d9b5bf5c672e0413997762664a17009038674b806bf27dd6b368d9b67

i get this btc address 1NDyJtNTjmwk5xPNhjgAMu4HDHigtobu1s

so in this case the i have the public key hash for this address

the public key hash for 1NDyJtNTjmwk5xPNhjgAMu4HDHigtobu1s is 02679a681d9b5bf5c672e0413997762664a17009038674b806bf27dd6b368d9b67

the main question is, how i get the public key hash of 16jYMfASQ4ngejMcVUoAjEBvq9HKnc6UX2

do i have to search for a other transaction

legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
November 15, 2022, 12:22:49 PM
#12
is there a way to get the public key from a specified bitcoin address ?
Only if it sent a transaction. Or signed a message. Or (of course) if you have the private key.

Quote
lets say i have a list from few bitcoin addresses, how can i get the public key
If that's all you have, you can't get the public key.
newbie
Activity: 7
Merit: 0
November 15, 2022, 11:40:11 AM
#11
okay,

is there a way to get the public key from a specified bitcoin address ?

lets say i have a list from few bitcoin addresses, how can i get the public key
legendary
Activity: 3472
Merit: 10611
November 15, 2022, 10:46:09 AM
#10
so there is no way to see from the btc address which keyspace is used.
You can't even tell anything about the key range by looking at the public key! Address is only telling you the hash of that public key which is not only irreversible but also doesn't tell you anything about the public key either.
newbie
Activity: 7
Merit: 0
November 15, 2022, 08:34:26 AM
#9
okay,

so there is no way to see from the btc address which keyspace is used.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
November 15, 2022, 06:03:25 AM
#8
can we see somehow which address is in which keyspace ?
No.

Quote
Why have some Bitcoin adresse the same start characters ?
Because there are more than 58 different Bitcoin addresses Wink Someone probably used vanitygen to create them.

Quote
are these address in in the keyspace from 2^63 till 2^64-1
You need the private key to answer that.
newbie
Activity: 7
Merit: 0
November 15, 2022, 05:22:26 AM
#7
hi,

according to this page

https://hashkeys.club/67/

does this mean each bitcoin adress with 1BY8 is inside the 67 puzzle's keyspace (from 2^66 till 2^67-1 decimal, 0x4 0000 0000 0000 0000 - 0x7 FFFF FFFF FFFF FFFF)

can we see somehow which address is in which keyspace ? Why have some Bitcoin adresse the same start characters ?`

are these address in in the keyspace from 2^63 till 2^64-1

16jYHR2NY9c3CGrC9EM6ZmwQ7JseA1eYk4
16jYovtYCHSdJMjdiMGf2C12TDREpikyzy
16jYPDqzFcsZb7mTXjk8WUo9jQrVohZNsu
16jYR6ikapT5NHsxFXgkoho577JdryJteh
16jYG6zDqYab9GZZdR7VzPwNPGQt9hDPby
16jYYPoD9LCS4qvsLmKShb5p89UnEqbry3

legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
May 07, 2021, 03:44:25 AM
#6
OP is talking about the 32BTC puzzle transaction.

What is keyspace exactly? is this refering to SHA256 keyspace?

Keyspace means your private key is within a "low" and "high" decimal or hex number.

How is it that the puzzle transactions were created in different keyspaces?

Each private key referenced in that transaction was created as a random number between a low and high value, for example, transaction #1's private key is between 2^1 and 2^2 - 1 (so basically 1), #2's private key is between 2^2 and 2^3 - 1, and so on.

Can you create a bitcoin address in a specific keyspace?

Yes (theoretically) but then we are no longer using a keyspace for the private key. These are known as vanity addresses, bough the ones that have a high-low range for the keyspace would've had the custom characters at the end, whereas state-of-the-art generators today can only generate characters at the beginning so the resulting subset doesn't really fit in a single range.

When bitcoin addresses are made is the keyspace they are in random, or is there a preferable or more pseudorandom range that they are likely to appear in?

Their keyspace is random (sub that it doesn't even have a range) because it's made from RIPEMD160(SHA256(public key)), the hash functions have random outputs.
member
Activity: 406
Merit: 47
May 06, 2021, 09:30:47 PM
#5
I think

split out between keyspace on puzzle and bitcoin real

1.
keyspace on puzzle
by puzzle each range

2
bitcoin address it can use from number 1 to 2^256
but number under 2^256 is not safety it is risk with  bruteforce attack
like number under 65 bit it is can bruteforce by bitcrack
and number under 115 bit it is can bruteforce by kangaroo
so do not use low bit with bitcoin private key, low bit easy to guess and bruteforce
other not safety  is brainwallet don't use

puzzle use low bit, some part puzzle already solve


3.
bitcoin real use , reference from first bitcoin program from satoshi it use 256 bit number from begin use
may be safety number is between 2^255-2^256
real bitcoin keyspace is 2^256

4.
number over 256 bit when sha256 to use private key is duplicate with number on range 2^256
member
Activity: 406
Merit: 47
May 06, 2021, 08:29:15 PM
#4
Hi,

I am struggling to find any resources on keyspace and bitcoin addressing. Recently after looking at the puzzle transactions some questions came to mind. https://privatekeys.pw/puzzles/bitcoin-puzzle-tx

  • What is keyspace exactly? is this refering to SHA256 keyspace?
  • How is it that the puzzle transactions were created in different keyspaces?
  • Can you create a bitcoin address in a specific keyspace?
  • When bitcoin addresses are made is the keyspace they are in random, or is there a preferable or more pseudorandom range that they are likely to appear in?

Thanks for answering any questions.


think easy

keyspace is only one hint of puzzle creator can tell to know

mean you can find pirivate key on keyspace area
if you fine privatekey out of keyspace each puzzle you will never found key

keyspace mean private key is between keyspace - kepspace-1
example puzzle #120 keyspace 2^120  that mean private key between 2**119 to 2**120

HCP
legendary
Activity: 2086
Merit: 4361
May 06, 2021, 07:01:24 PM
#3
-I think Bitcoin keyspace refers to the possible no. of blocks that could ever be generated till the end of time. (If u know some cryptography before reading about cryptocurrency & the idea of Bitcoin u'll have the impression that mining is similar like performing a brute force attack to break a plain/cipher pair)
The bitcoin "keyspace" has nothing to do with blocks or mining...

It is referring to the "total set" of valid, unique bitcoin private keys... so, imagine if you had a (very bad) cryptocurrency, where the only private keys were {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}.... then that would be the "keyspace" for your cryptocurrency... it has a size of 10.

Bitcoin on the other hand, has a keyspace that goes from: 1 to n-1 where n = 1.1578 * 1077

I am struggling to find any resources on keyspace and bitcoin addressing. Recently after looking at the puzzle transactions some questions came to mind. https://privatekeys.pw/puzzles/bitcoin-puzzle-tx
You may want to read the "Mastering Bitcoin" book... it gives a really good explanation of a lot of the fundamentals of Bitcoin. This particular chapter explains Keys and Addresses quite well: https://www.oreilly.com/library/view/mastering-bitcoin-2nd/9781491954379/ch04.html


Quote
What is keyspace exactly? is this refering to SHA256 keyspace?
As above, it is the "total set" of keys that you're looking at... so it could be the entire bitcoin keyspace, or you can look at a specific subset if you wanted to for some reason (like you know the puzzle keys you're looking for are between 216 and 220...


Quote
How is it that the puzzle transactions were created in different keyspaces?
They are effectively in a subset of the Bitcoin keyspace... ie. they simply picked numbers from a smaller range.


Quote
Can you create a bitcoin address in a specific keyspace?
Of course... simply say "pick a number between X and Y" where X and Y are within the total Bitcoin keyspace...et voila, you have created a bitcoin private key within a defined specific keyspace and can derive the public key/address from that... but it isn't a good idea to, because you're losing the "randomness" by reducing the overall size of the keyspace that you're picking from.


Quote
When bitcoin addresses are made is the keyspace they are in random, or is there a preferable or more pseudorandom range that they are likely to appear in?
Bitcoin addresses are not "made"... they are derived by (hopefully) randomly picking a private key... then the public key is derived from the private key... then the public key is converted into an address using SHA256, RIPEMD160 and encoded with Base58 etc.


Again, read: https://www.oreilly.com/library/view/mastering-bitcoin-2nd/9781491954379/ch04.html

It will explain things much better than I can! Wink
full member
Activity: 228
Merit: 156
May 06, 2021, 06:10:38 PM
#2
I tried to be sure and check out before answering:
https://bitcoin.stackexchange.com/questions/91659/are-btc-private-keys-evenly-distributed-in-256bit-space
.
-I think Bitcoin keyspace refers to the possible no. of blocks that could ever be generated till the end of time. (If u know some cryptography before reading about cryptocurrency & the idea of Bitcoin u'll have the impression that mining is similar like performing a brute force attack to break a plain/cipher pair)
.
-If Q2:
According to the way a certain block is arranged (what and how many transactions and how they r ordered) u get like a different cipher/plain pair to solve (I mean a different arrangement of bits to search for a valid Nonce)
.
I answered because there was a time at the beginning of my reading or u may saying exploring this topic I had the idea that old  failed trials could be saved & used in mining next blocks, now I know this is not quite accurate because each block is constrained by a different transaction & header parts that u have to find a Nonce value that fits them.

newbie
Activity: 27
Merit: 3
May 06, 2021, 05:12:26 PM
#1
Hi,

I am struggling to find any resources on keyspace and bitcoin addressing. Recently after looking at the puzzle transactions some questions came to mind. https://privatekeys.pw/puzzles/bitcoin-puzzle-tx

  • What is keyspace exactly? is this refering to SHA256 keyspace?
  • How is it that the puzzle transactions were created in different keyspaces?
  • Can you create a bitcoin address in a specific keyspace?
  • When bitcoin addresses are made is the keyspace they are in random, or is there a preferable or more pseudorandom range that they are likely to appear in?

Thanks for answering any questions.
Jump to: