Post
Topic
Board Development & Technical Discussion
Re: Pollard's kangaroo ECDLP solver
by
PawGo
on 24/01/2021, 18:44:42 UTC
Is it possible to add the "--stride" parameter to the program like in bitcrack?
This is needed to calculate the private key if public key and part of the private key is known, for example:  5JgvpXDfzXbqqtFmLJy?HuhHuhHuh??7aR9n6WoTWvPSb1oUEm4
When can we calculate the start point, end point and step.


I worked on this.
https://github.com/PawelGorny/Kangaroo
The solution is not perfect, but for me it was enough.
As a entry parameters it expects to have:
- the real beginning of the range
- the fake end of the range. If you know the real end and stride, divide the difference by stride and result add to the real beginning.
- the real public key

and then launching program use parameter -stride to specify the stride.
In the sources there is example with the configuration file test_240921C8BE82FD68A2A77FBA0089F71029354609C9.txt
Code:
ef235aacf9050dd4d345af03378ba06d2108b927f084b2ab133c9b7d1187e6be
ef235aacf9050dd4d345af03378ba06d2108b927f084b2ab133d050abbcaa8a6
02b4632d08485ff1df2db55b9dafd23347d1c47a457072a1e87be26896549a8737

If you launch program using:
Code:
./kangaroo -stride 240921C8BE82FD68A2A77FBA0089F71029354609C9 test_240921C8BE82FD68A2A77FBA0089F71029354609C9.txt
you will receive result:
Code:
Key# 0 [2N]Pub:  0x02B4632D08485FF1DF2DB55B9DAFD23347D1C47A457072A1E87BE26896549A8737
       Priv: 0xEF235AACF9050DD4D345AF03378BA06D2108B927F084B2AB133CD85B91858012
   RealPriv: 0xEF235AACF90D9F4AADD8C92E4B2562E1D9EB97F0DF9BA3B508258739CB013DB2

Where Priv is a fake priv from the fake range, and EF235AACF90D9F4AADD8C92E4B2562E1D9EB97F0DF9BA3B508258739CB013DB2 is the real result.