<p>Sure, it's possible. In fact, this is exactly what the Large Bitcoin Collider does - It has successfully located a few private keys, mostly from a <a href="https://www.blockchain.com/btc/tx/08389f34c98c606322740c0be6a7125d9860bb8d5cb182c02f98461e5fa6cd15" rel="nofollow noreferrer">puzzle transaction</a> that seems to have been made to test its progress.</p>

<p>That said, it would still take you an unreasonably long amount of time - The Large Bitcoin Collider took 1 year and 3 months to search 8,000,000,000,000,000 keys (8000 trillion).</p>

<p>There are 2^256 possible keys. Even if you are able to search 1000 trillion keys per second, it would take you <code>2.7×10^44 × age of the universe</code> to go through all the keys. It's simply not feasible.</p>

<p>As pointed out by G.Maxwell in the comments, the Large Bitcoin Collider should be not be interpreted as a viable, secure, or even reasonable approach to this problem. There have been concerns about its safety and accuract (<a href="https://old.reddit.com/r/Bitcoin/comments/65uoaq/do_not_run_the_large_bitcoin_collider_client_its/" rel="nofollow noreferrer">reddit source</a>).</p>

CC BY-SA 4.0
2019-02-28T17:52:06.800Z
Right, but the more “keying machines” you have the more closer you get to the number of possible keys.
Juan
CC BY-SA 4.0
2019-02-28T18:24:55.770Z
I cringe at any mention of "large bitcoin collider" -- because from all appearances it's a scam to get greedy people to run malware.  Its claim about being able to crack keys make no sense (see your math), and the software worked by sending arbitrary code to clients (behavior which was obfuscated in the codebase).
G. Maxwell
CC BY-SA 4.0
2019-02-28T18:32:53.103Z
@Juan The basis for (almost) all cryptography's security is some computationally infeasible problem. That means that if an attacker can amass a large enough amount of computation power, they can break it. The question is only how hard it needs to be made for them so that this is infeasible. In this case, literally all computers in the world combined wouldn't be able to solve it within a large multiple of the age of the universe in time.
Pieter Wuille
CC BY-SA 4.0
2019-02-28T18:37:56.460Z
@G.MaxwellI agree, that's why I didn't link to their site, just mentioned it - I feel like it should be at least known that something like this exists, especially when relevant to the question
Raghav Sood
CC BY-SA 4.0
2019-02-28T18:42:19.260Z
@Juan: Closer, yes.  In the same sense that if I start with one brick, and then I get 1000 more bricks, I am "closer" to being able to build a tower that reaches to Alpha Centauri.  Being "closer" isn't very relevant if you're still absurdly far away.
Nate Eldredge
CC BY-SA 4.0
2019-02-28T18:45:12.273Z
We would have to let the math do its magic. A Terahash can process 1 trillion hashes per second. If we do that, with keys, with many “keying machines” all over the world, we would be talking about a huge number that I can’t even imagine
Juan
CC BY-SA 4.0
2019-02-28T19:02:49.843Z
My example already assumed 1000 trillion hashes per second, and you still end up with a dominant multiplier of 10^44. Even if could do `10^44 * 1000 trillions hashes per second`, you would still need 2.7 times the age of the universe to compute all keys.
Raghav Sood
CC BY-SA 4.0
2019-02-28T17:50:26.320Z
2019-02-28T18:43:14.337Z
2019-02-28T18:43:14.337Z
Raghav Sood
<blockquote>
  <p>These machines will only stop if and only if they recreate the private
  key-public key of the richest bitcoin address :
  385cR5DM96n1HvBDMzLHPYcw89fZAXULJP</p>
</blockquote>

<p>We do not need to use ECDSA math, calculating private and public keys and so on to steal funds from this address. In fact, this is P2SH address and the only thing we need is to find a good bitcoin script with a given <code>hash160</code> value.</p>

<p>The good news are that finding such script is much more easier than finding a private key.</p>

<p>The bad news are that finding such script still takes more energy than our Sun can provide :)</p>

<p>Some pseudocode:</p>

<pre><code>// push &lt;20 bytes&gt; OP_DROP OP_TRUE
for ( i = 0x1400000000000000000000000000000000000000007551; 
     i &lt;= 0x14ffffffffffffffffffffffffffffffffffffffff7551; i += 0x10000 )
{
//if ( unspent.contains ( hash160 ( i ) )
  if ( hash160 ( i ) == 385cR5DM96n1HvBDMzLHPYcw89fZAXULJP )
    println ( i );
}
</code></pre>

CC BY-SA 4.0
2019-02-28T18:55:36.423Z
2019-03-01T13:48:16.180Z
2019-03-01T13:48:16.180Z
amaclin
<p>Yes, it's possible but also (very,...) highly improbable.</p>

CC BY-SA 4.0
2019-03-01T00:23:31.033Z
2019-03-01T00:23:31.033Z
CryptoSmart
<p>Let’s say I want to generate many private keys so I can generate one private key (and thus a public key) identical to the richest bitcoin address.</p>

<p>But I can’t do that because my computer power is not enough.</p>

<p>What about if I create many machines, like the mining machines, but instead of generating hashes, they would only generate private keys, Let’s call them “<em>Keying</em> machines”</p>

<p>So I have many of those <em>Keying</em> machines generating thousands of thousands of thousands of private keys per minute.</p>

<p>These machines will <strong>only</strong> stop if and only if they recreate the private key-public key of the richest bitcoin address : 385cR5DM96n1HvBDMzLHPYcw89fZAXULJP )</p>

<p><strong><em>Is this idea actually possible?</em></strong></p>

<private-key>
Theory: brute-force key search
Juan
# Theory: brute-force key search

(Asked by: username_0 on 2019-02-28)

Let’s say I want to generate many private keys so I can generate one private key (and thus a public key) identical to the richest bitcoin address.

But I can’t do that because my computer power is not enough.

What about if I create many machines, like the mining machines, but instead of generating hashes, they would only generate private keys, Let’s call them “*Keying* machines”

So I have many of those *Keying* machines generating thousands of thousands of thousands of private keys per minute.

These machines will **only** stop if and only if they recreate the private key-public key of the richest bitcoin address : 385cR5DM96n1HvBDMzLHPYcw89fZAXULJP )

***Is this idea actually possible?***

**Tags:** private-key


---

## 3 answers

### Answer by username_1 on 2019-02-28. Score: 2

Sure, it's possible. In fact, this is exactly what the Large Bitcoin Collider does - It has successfully located a few private keys, mostly from a [puzzle transaction](https://www.blockchain.com/btc/tx/08389f34c98c606322740c0be6a7125d9860bb8d5cb182c02f98461e5fa6cd15) that seems to have been made to test its progress.

That said, it would still take you an unreasonably long amount of time - The Large Bitcoin Collider took 1 year and 3 months to search 8,000,000,000,000,000 keys (8000 trillion).

There are 2^256 possible keys. Even if you are able to search 1000 trillion keys per second, it would take you `2.7×10^44 × age of the universe` to go through all the keys. It's simply not feasible.

As pointed out by G.username_2 in the comments, the Large Bitcoin Collider should be not be interpreted as a viable, secure, or even reasonable approach to this problem. There have been concerns about its safety and accuract ([reddit source](https://old.reddit.com/r/Bitcoin/comments/65uoaq/do_not_run_the_large_bitcoin_collider_client_its/)).

> **Comments:**
> **username_0**: Right, but the more “keying machines” you have the more closer you get to the number of possible keys.  
> **username_2**: I cringe at any mention of "large bitcoin collider" -- because from all appearances it's a scam to get greedy people to run malware.  Its claim about being able to crack keys make no sense (see your math), and the software worked by sending arbitrary code to clients (behavior which was obfuscated in the codebase).  
> **username_3**: @username_0 The basis for (almost) all cryptography's security is some computationally infeasible problem. That means that if an attacker can amass a large enough amount of computation power, they can break it. The question is only how hard it needs to be made for them so that this is infeasible. In this case, literally all computers in the world combined wouldn't be able to solve it within a large multiple of the age of the universe in time.  
> **username_1**: @G.MaxwellI agree, that's why I didn't link to their site, just mentioned it - I feel like it should be at least known that something like this exists, especially when relevant to the question  
> **username_4**: @username_0: Closer, yes.  In the same sense that if I start with one brick, and then I get 1000 more bricks, I am "closer" to being able to build a tower that reaches to Alpha Centauri.  Being "closer" isn't very relevant if you're still absurdly far away.  
> **username_0**: We would have to let the math do its magic. A Terahash can process 1 trillion hashes per second. If we do that, with keys, with many “keying machines” all over the world, we would be talking about a huge number that I can’t even imagine  
> **username_1**: My example already assumed 1000 trillion hashes per second, and you still end up with a dominant multiplier of 10^44. Even if could do `10^44 * 1000 trillions hashes per second`, you would still need 2.7 times the age of the universe to compute all keys.  

---

### Answer by username_5 on 2019-02-28. Score: 0

> These machines will only stop if and only if they recreate the private
> key-public key of the richest bitcoin address :
> 385cR5DM96n1HvBDMzLHPYcw89fZAXULJP

We do not need to use ECDSA math, calculating private and public keys and so on to steal funds from this address. In fact, this is P2SH address and the only thing we need is to find a good bitcoin script with a given `hash160` value.

The good news are that finding such script is much more easier than finding a private key.

The bad news are that finding such script still takes more energy than our Sun can provide :)

Some pseudocode:

```
// push <20 bytes> OP_DROP OP_TRUE
for ( i = 0x1400000000000000000000000000000000000000007551; 
     i <= 0x14ffffffffffffffffffffffffffffffffffffffff7551; i += 0x10000 )
{
//if ( unspent.contains ( hash160 ( i ) )
  if ( hash160 ( i ) == 385cR5DM96n1HvBDMzLHPYcw89fZAXULJP )
    println ( i );
}

```


---

### Answer by username_6 on 2019-03-01. Score: -2

Yes, it's possible but also (very,...) highly improbable.


---

