0
I am looking for a Python script or SageMath code implementation for testing the Baby Step - Giant Stepand Pollard Rhoalgorithms on the secp256k1 curve.
I have read that these algorithms are well known for solving the ECDL problem for small numbers but I haven't found any code to test this.
edit:
I am looking for generating a small secret multiplier over the standard secp256k1 curve parameters.
Here is an example for E=EllipticCurve(GF(modi), [0,7]) using the standard NIST parameters for G.
G=E(55066263022277343669578718895168534326250603453777594175500187360389116729240, 32670510020758816978083085130507043184471273380659243275938904335757337482424)
We know that for
P=E(69335761065767984070318781108127416310968753866933119760392423089576366173459, 113425617697416972613102767146321902225172329004525144463444008550345431352693)
when calculating discrete_log we get the small x=24734216105351567 as a result of P = x * G
Is there any such implementation that will calculate the small x?
Thanks!
Thank you but I am looking for generating a small secret multiplier over the standard secp256k1 curve parameters. Here is an example for
E=EllipticCurve(GF(modi), [0,7])using the standard NIST (G=E) parameters. We know that forP=E(69335761065767984070318781108127416310968753866933119760392423089576366173459, 113425617697416972613102767146321902225172329004525144463444008550345431352693)when calculatingdiscrete_log(P, G, n, operation='+')we get the smallx=24734216105351567as a result ofP = x * G- how do I update your code to calculate this example? I clarified the Question. – RobertH – 2019-07-04T19:34:18.957If you're going to use Pollard's Rho over secp256k1, it'd need ~2^128 steps to complete. If you know the DL is very small perhaps the algorithm can be optimized using that information, but I'm not sure about the gains. – Pieter Wuille – 2019-07-08T02:44:20.850
Yes, that was the advice I was looking for. Thanks a lot. Much appreciated :) – RobertH – 2019-07-15T08:41:04.103