Post
Topic
Board Development & Technical Discussion
Re: 64. Can the Transfer of the Inventor of the Puzzle Be Manipulated?
by
PrimeNumber7
on 31/10/2021, 19:38:56 UTC
You have to know how kangaroo program works. A single V100 can solve a 64 bit key using kangaroo in mere seconds. One cannot use kangaroo to crack #64 now because the pub key is not known. But once someone broadcasts to transfer the BTC from #64's address, the pub key will be exposed and someone can use a single GPU to solve for the private key in seconds. That is what the OP is saying. As others have stated, using the RBF with decent fee, will help from others "stealing" #64s key.
Do you have a reference for saying that a single V100 can solve a 64 bit (of entropy) key in seconds?

If what you are saying is true, it would be advisable to not use RBF. The RBF would need to be set to False and a decent fee that is sufficient to be included in the next block should be used.

I looked at some of the documentation for kangaroo, but have not looked at the math closely.
Right, however the RBF works, you want to make sure that you tell it to not replace by higher fee.

As for the performance, here is a quick run of a 64 bit key using a much slower GTX 1060 6GB card:

Code:
Kangaroo v2.1
Start:8000000000000000
Stop :FFFFFFFFFFFFFFFF
Keys :1
Number of CPU thread: 0
Range width: 2^63
Jump Avg distance: 2^30.98
Number of kangaroos: 2^19.32
Suggested DP: 9
Expected operations: 2^32.86
Expected RAM: 84.5MB
DP size: 12 [0xFFF0000000000000]
GPU: GPU #0 NVIDIA GeForce GTX 1060 6GB (10x128 cores) Grid(20x256) (57.0 MB used)
SolveKeyGPU Thread GPU#0: creating kangaroos...
SolveKeyGPU Thread GPU#0: 2^19.32 kangaroos [4.5s]
[210.13 MK/s][GPU 210.13 MK/s][Count 2^30.96][Dead 0][12s (Avg 37s)][64.1/98.2MB]
Key# 0 [1S]Pub:  0x0311CEF632C14F4EF26CB1CE5D79B28E2988DC108F44EE0CDF9E6E6EFC7231C72C
       Priv: 0x9CCE5EFDACCF6808

Done: Total time 18s

A V100 is at least 10x faster than the 1060 used in this test.

The new BSGS Cuda program can complete a 64 bit range using a RTX 3090 in 1-2 seconds as well.

Thanks for that.

Do you have any resources that explain how kangaroo works? I was able to find some papers that discuss the math regarding optimizing the kangaroo method, but not anything that explains how it works in a way I can understand.

Probably more importantly, do you have a formula that would allow someone to predict how long it should take to calculate a private key with a given number of bits of entropy? For example, going from 64 bits of entropy to 65 bits of entropy means there is 2x the number of potential private keys, would you expect to take approximately 2x the time to find a 65 bit private key as it took you to find a 64 bit key? I have read comments that the checksum may result in false positives when using kangaroo.