Pages:
Author

Topic: Pollard's kangaroo ECDLP solver - page 79. (Read 60698 times)

member
Activity: 348
Merit: 34
October 27, 2020, 07:54:21 AM
hello all
still no news from zeiler and Jluc, long time silent, can they confirm, what % work left from there side, and any new development, we little discus about point multiplication at gpu powered, still no comment and concern shown by Jluc and other developer, can we hear some news about level of finding puzzle 120bit
member
Activity: 348
Merit: 34
October 24, 2020, 07:57:18 AM
Thanks brainless

The reason I chose Jean_Luc's project
it can run its own uint_64 (own integer class) with GPU, I'm trying to understand this issue.

Source code includes AddDircet, DoubleDirect and ComputePublicKey (G * int). But EccMultipy (Point x int) does not exist.

I was just in the beginning, I guess this is not the right place to discuss. But even if I only use CPU it is much faster than python. I don't know if it is with a GPU.

I'm not sure what I'm learning, I am not aware of C or C ++ right now, for now (:

" ComputePublicKey (G * int) (G * int). But EccMultipy (Point x int) does not exist. "

G = point
G * int = its eccmultiply (Point x int)

only developer need to design as per above command for easy input/output at gpu work, let see who design it for community

JLuc code  

Pubkey = ComputePublicKey (int); (G in this funciton, and G has some hash algroithm)

brainless

Is it possible to control -2**35 to 2**35  point operation in 3 seconds on CPU?


few sec on gpu

so I want to test a GPU-powered ECC operation with the GPU running at full performance. I have a few studies that I have tested with Sage,
I'm looking for a library that works with GPU where I can create functions and loops it in C or C ++.

Thanks for your interest brainless

you need to wait, for Jluc , maybe he come with some free time and mood, to create repo for community, where like above command for point multiplication at GPU
btw all community members read our chats, but they know best gpu developer and understand technology is Jluc and all will wait for his reply regading this subject,
Bitcrack developer brichard also can develop GPU based Point multiplication, but i feel he is no more interested for community to help due to some reason
member
Activity: 73
Merit: 19
October 23, 2020, 03:42:16 PM
Thanks brainless

The reason I chose Jean_Luc's project
it can run its own uint_64 (own integer class) with GPU, I'm trying to understand this issue.

Source code includes AddDircet, DoubleDirect and ComputePublicKey (G * int). But EccMultipy (Point x int) does not exist.

I was just in the beginning, I guess this is not the right place to discuss. But even if I only use CPU it is much faster than python. I don't know if it is with a GPU.

I'm not sure what I'm learning, I am not aware of C or C ++ right now, for now (:

" ComputePublicKey (G * int) (G * int). But EccMultipy (Point x int) does not exist. "

G = point
G * int = its eccmultiply (Point x int)

only developer need to design as per above command for easy input/output at gpu work, let see who design it for community

JLuc code  

Pubkey = ComputePublicKey (int); (G in this funciton, and G has some hash algroithm)

brainless

Is it possible to control -2**35 to 2**35  point operation in 3 seconds on CPU?


few sec on gpu

so I want to test a GPU-powered ECC operation with the GPU running at full performance. I have a few studies that I have tested with Sage,
I'm looking for a library that works with GPU where I can create functions and loops it in C or C ++.

Thanks for your interest brainless
member
Activity: 348
Merit: 34
October 23, 2020, 03:30:03 PM
Thanks brainless

The reason I chose Jean_Luc's project
it can run its own uint_64 (own integer class) with GPU, I'm trying to understand this issue.

Source code includes AddDircet, DoubleDirect and ComputePublicKey (G * int). But EccMultipy (Point x int) does not exist.

I was just in the beginning, I guess this is not the right place to discuss. But even if I only use CPU it is much faster than python. I don't know if it is with a GPU.

I'm not sure what I'm learning, I am not aware of C or C ++ right now, for now (:

" ComputePublicKey (G * int) (G * int). But EccMultipy (Point x int) does not exist. "

G = point
G * int = its eccmultiply (Point x int)

only developer need to design as per above command for easy input/output at gpu work, let see who design it for community

JLuc code  

Pubkey = ComputePublicKey (int); (G in this funciton, and G has some hash algroithm)

brainless

Is it possible to control -2**35 to 2**35  point operation in 3 seconds on CPU?


few sec on gpu
member
Activity: 73
Merit: 19
October 23, 2020, 03:12:46 PM
Thanks brainless

The reason I chose Jean_Luc's project
it can run its own uint_64 (own integer class) with GPU, I'm trying to understand this issue.

Source code includes AddDircet, DoubleDirect and ComputePublicKey (G * int). But EccMultipy (Point x int) does not exist.

I was just in the beginning, I guess this is not the right place to discuss. But even if I only use CPU it is much faster than python. I don't know if it is with a GPU.

I'm not sure what I'm learning, I am not aware of C or C ++ right now, for now (:

" ComputePublicKey (G * int) (G * int). But EccMultipy (Point x int) does not exist. "

G = point
G * int = its eccmultiply (Point x int)

only developer need to design as per above command for easy input/output at gpu work, let see who design it for community

JLuc code  

Pubkey = ComputePublicKey (int); (G in this funciton, and G has some hash algroithm)

brainless

Is it possible to control -2**35 to 2**35  point operation in 3 seconds on CPU?
member
Activity: 348
Merit: 34
October 23, 2020, 05:59:41 AM
Thanks brainless

The reason I chose Jean_Luc's project
it can run its own uint_64 (own integer class) with GPU, I'm trying to understand this issue.

Source code includes AddDircet, DoubleDirect and ComputePublicKey (G * int). But EccMultipy (Point x int) does not exist.

I was just in the beginning, I guess this is not the right place to discuss. But even if I only use CPU it is much faster than python. I don't know if it is with a GPU.

I'm not sure what I'm learning, I am not aware of C or C ++ right now, for now (:

" ComputePublicKey (G * int). But EccMultipy (Point x int) does not exist. "

G = point
G * int = its eccmultiply (Point x int)

only developer need to design as per above command for easy input/output at gpu work, let see who design it for community
member
Activity: 73
Merit: 19
October 23, 2020, 03:41:50 AM
Thanks brainless

The reason I chose Jean_Luc's project
it can run its own uint_64 (own integer class) with GPU, I'm trying to understand this issue.

Source code includes AddDircet, DoubleDirect and ComputePublicKey (G * int). But EccMultipy (Point x int) does not exist.

I was just in the beginning, I guess this is not the right place to discuss. But even if I only use CPU it is much faster than python. I don't know if it is with a GPU.

I'm not sure what I'm learning, I am not aware of C or C ++ right now, for now (:
member
Activity: 348
Merit: 34
October 21, 2020, 06:38:18 AM
-snip-
I have some functions in Python and it runs very slow compared to C.

The sage I want to do with the GPU is as follows
Code:
Pr = 115792089237316195423570985008687907853269984665640564039457584007908834671663

E = EllipticCurve (GF (P), [0,7])
N = E.order ()

G = E(55066263022277343669578718895168534326250603453777594175500187360389116729240,32670510020758816978083085130507043184471273380659243275938904335757337482424) # on E

T = E(26864879445837655118481716049217967286489564259939711339119540571911158650839,29571359081268663540055655726653840143920402820693420787986280659961264797165) # on E

numInt = 5646546546563131314723897429834729834798237429837498237498237489273948728934798237489723489723984729837489237498237498237498237498273493729847

numMod = numInt %N

numInv = pow(numMod ,N-2,N) # detail -> https://stackoverflow.com/questions/59234775/how-to-calculate-2-to-the-power-of-a-large-number-modulo-another-large-number


numMod * G
numMod * T

(T-G) * numInv



print (5*T)
print (2*G)

print (numMod * G)
print (numMod * (-G))

print (numMod * T)
print ((numMod-3) * (T-G))


Do you have any suggestions? What should I do ?
I wrote my question here because it is indirectly related to this project. Please forgive.

Hi! The slowest part in your python is inverse function. Try to implement gmpy2 inverse function (included in gmpy2) - it is C-based and very fast:

https://www.lfd.uci.edu/~gohlke/pythonlibs/#gmpy

You can find the details here: https://bitcointalksearch.org/topic/m.55214449

When using Python, I use FastEcdsa(https://github.com/AntonKueltz/fastecdsa) library and mathematics similar to Sage. But can I do the math faster? I want to understand.
The FastEcdsa Library is fast, but I don't know if it uses the gmpy2 you suggested. My python script uses 17% of the CPU as a result. I wanted to write with Anaconda (for GPU), but I could not find a gpu running as fast as C or I could not.

Thank you MrFreeDragon .

No. you can't be faster then GPU on your CPU.
if i explain your word in easy example commands for new gpu based develop application/repo, by jean luc or other developer, could be develop, or if any one know already developed can post links and refferance

here are some example aspected commands
./vs-pub -c  -gpu -input in.txt -output out.txt -add 0250863AD64A87AE8A2FE83C1AF1A8403CB53F53E486D8511DAD8A04887E5B2352 #pubkey
./vs-pub -c  -gpu -input in.txt -output out.txt -mul 123456789 # its privatekey in num (not hex)
./vs-pub -c  -gpu -input in.txt -output out.txt -sub 0250863AD64A87AE8A2FE83C1AF1A8403CB53F53E486D8511DAD8A04887E5B2352 #pubkey
./vs-pub -c  -gpu -input in.txt -output out.txt -sub 0250863AD64A87AE8A2FE83C1AF1A8403CB53F53E486D8511DAD8A04887E5B2352 -r (reverse like
02508... pubkey substract to all listed pubkey inside in.txt
-c is compressed pubkey
-u is uncompressed pubkey
-input is load of compressed/uncompressed pubkeys list
-output is results output to file
-r is reverse of sub ( listed pubkey in command minus(-) in.txt (pubkeys)
newbie
Activity: 49
Merit: 0
October 20, 2020, 06:37:44 AM
-snip-
I have some functions in Python and it runs very slow compared to C.

The sage I want to do with the GPU is as follows
Code:
Pr = 115792089237316195423570985008687907853269984665640564039457584007908834671663

E = EllipticCurve (GF (P), [0,7])
N = E.order ()

G = E(55066263022277343669578718895168534326250603453777594175500187360389116729240,32670510020758816978083085130507043184471273380659243275938904335757337482424) # on E

T = E(26864879445837655118481716049217967286489564259939711339119540571911158650839,29571359081268663540055655726653840143920402820693420787986280659961264797165) # on E

numInt = 5646546546563131314723897429834729834798237429837498237498237489273948728934798237489723489723984729837489237498237498237498237498273493729847

numMod = numInt %N

numInv = pow(numMod ,N-2,N) # detail -> https://stackoverflow.com/questions/59234775/how-to-calculate-2-to-the-power-of-a-large-number-modulo-another-large-number


numMod * G
numMod * T

(T-G) * numInv



print (5*T)
print (2*G)

print (numMod * G)
print (numMod * (-G))

print (numMod * T)
print ((numMod-3) * (T-G))


Do you have any suggestions? What should I do ?
I wrote my question here because it is indirectly related to this project. Please forgive.

Hi! The slowest part in your python is inverse function. Try to implement gmpy2 inverse function (included in gmpy2) - it is C-based and very fast:

https://www.lfd.uci.edu/~gohlke/pythonlibs/#gmpy

You can find the details here: https://bitcointalksearch.org/topic/m.55214449

When using Python, I use FastEcdsa(https://github.com/AntonKueltz/fastecdsa) library and mathematics similar to Sage. But can I do the math faster? I want to understand.
The FastEcdsa Library is fast, but I don't know if it uses the gmpy2 you suggested. My python script uses 17% of the CPU as a result. I wanted to write with Anaconda (for GPU), but I could not find a gpu running as fast as C or I could not.

Thank you MrFreeDragon .

No. you can't be faster then GPU on your CPU.
member
Activity: 73
Merit: 19
October 19, 2020, 10:36:06 AM
-snip-
I have some functions in Python and it runs very slow compared to C.

The sage I want to do with the GPU is as follows
Code:
Pr = 115792089237316195423570985008687907853269984665640564039457584007908834671663

E = EllipticCurve (GF (P), [0,7])
N = E.order ()

G = E(55066263022277343669578718895168534326250603453777594175500187360389116729240,32670510020758816978083085130507043184471273380659243275938904335757337482424) # on E

T = E(26864879445837655118481716049217967286489564259939711339119540571911158650839,29571359081268663540055655726653840143920402820693420787986280659961264797165) # on E

numInt = 5646546546563131314723897429834729834798237429837498237498237489273948728934798237489723489723984729837489237498237498237498237498273493729847

numMod = numInt %N

numInv = pow(numMod ,N-2,N) # detail -> https://stackoverflow.com/questions/59234775/how-to-calculate-2-to-the-power-of-a-large-number-modulo-another-large-number


numMod * G
numMod * T

(T-G) * numInv



print (5*T)
print (2*G)

print (numMod * G)
print (numMod * (-G))

print (numMod * T)
print ((numMod-3) * (T-G))


Do you have any suggestions? What should I do ?
I wrote my question here because it is indirectly related to this project. Please forgive.

Hi! The slowest part in your python is inverse function. Try to implement gmpy2 inverse function (included in gmpy2) - it is C-based and very fast:

https://www.lfd.uci.edu/~gohlke/pythonlibs/#gmpy

You can find the details here: https://bitcointalksearch.org/topic/m.55214449

When using Python, I use FastEcdsa(https://github.com/AntonKueltz/fastecdsa) library and mathematics similar to Sage. But can I do the math faster? I want to understand.
The FastEcdsa Library is fast, but I don't know if it uses the gmpy2 you suggested. My python script uses 17% of the CPU as a result. I wanted to write with Anaconda (for GPU), but I could not find a gpu running as fast as C or I could not.

Thank you MrFreeDragon .
sr. member
Activity: 443
Merit: 350
October 19, 2020, 07:09:57 AM
-snip-
I have some functions in Python and it runs very slow compared to C.

The sage I want to do with the GPU is as follows
Code:
Pr = 115792089237316195423570985008687907853269984665640564039457584007908834671663

E = EllipticCurve (GF (P), [0,7])
N = E.order ()

G = E(55066263022277343669578718895168534326250603453777594175500187360389116729240,32670510020758816978083085130507043184471273380659243275938904335757337482424) # on E

T = E(26864879445837655118481716049217967286489564259939711339119540571911158650839,29571359081268663540055655726653840143920402820693420787986280659961264797165) # on E

numInt = 5646546546563131314723897429834729834798237429837498237498237489273948728934798237489723489723984729837489237498237498237498237498273493729847

numMod = numInt %N

numInv = pow(numMod ,N-2,N) # detail -> https://stackoverflow.com/questions/59234775/how-to-calculate-2-to-the-power-of-a-large-number-modulo-another-large-number


numMod * G
numMod * T

(T-G) * numInv



print (5*T)
print (2*G)

print (numMod * G)
print (numMod * (-G))

print (numMod * T)
print ((numMod-3) * (T-G))


Do you have any suggestions? What should I do ?
I wrote my question here because it is indirectly related to this project. Please forgive.

Hi! The slowest part in your python is inverse function. Try to implement gmpy2 inverse function (included in gmpy2) - it is C-based and very fast:

https://www.lfd.uci.edu/~gohlke/pythonlibs/#gmpy

You can find the details here: https://bitcointalksearch.org/topic/m.55214449
member
Activity: 73
Merit: 19
October 19, 2020, 06:30:54 AM
Hi,
Is there a library of y**2 = x**3 +7  working with GPU?
I don't know how to use C.
I have some functions in Python and it runs very slow compared to C.

The sage I want to do with the GPU is as follows
Code:
Pr = 115792089237316195423570985008687907853269984665640564039457584007908834671663

E = EllipticCurve (GF (P), [0,7])
N = E.order ()

G = E(55066263022277343669578718895168534326250603453777594175500187360389116729240,32670510020758816978083085130507043184471273380659243275938904335757337482424) # on E

T = E(26864879445837655118481716049217967286489564259939711339119540571911158650839,29571359081268663540055655726653840143920402820693420787986280659961264797165) # on E

numInt = 5646546546563131314723897429834729834798237429837498237498237489273948728934798237489723489723984729837489237498237498237498237498273493729847

numMod = numInt %N

numInv = pow(numMod ,N-2,N) # detail -> https://stackoverflow.com/questions/59234775/how-to-calculate-2-to-the-power-of-a-large-number-modulo-another-large-number


numMod * G
numMod * T

(T-G) * numInv



print (5*T)
print (2*G)

print (numMod * G)
print (numMod * (-G))

print (numMod * T)
print ((numMod-3) * (T-G))


Do you have any suggestions? What should I do ?
I wrote my question here because it is indirectly related to this project. Please forgive.
full member
Activity: 706
Merit: 111
October 17, 2020, 09:05:53 AM
I only know the address and public key, and I want to use them to calculate the private key

Run the program and you will see the calculation.
hero member
Activity: 1988
Merit: 593
October 17, 2020, 07:44:18 AM
I only know the address and public key, and I want to use them to calculate the private key
hero member
Activity: 1988
Merit: 593
October 17, 2020, 05:13:08 AM
please tell me the settings for the richest address with a known public key for 1060 3GB

and how many years will it take to calculate the key? Smiley
full member
Activity: 1232
Merit: 242
Shooters Shoot...
September 25, 2020, 07:11:46 AM
Quote
So from further reading, it doesn't look like I need to change the distances, as they will be in the same range with same jumps. I would just need to redo the private keys (right side) to equal new pub being searched for. How to do?
After more reading and researching and taking samples from Etar's reconstructor, apparently all I have to do, to tame wilds, is to subtract range from wild's priv/xpub coord.  Leave distances alone, subtract range (which is odd because it will all be same range) and bam, new tamed wilds.
Edit: actually offset previous private key - start range.
Example: if previous search was for 8F400000000 and you want to tame the wilds for that search and search for a new pubkey in same range; take 8F400000000 - start range of 80000000000 = F400000000 ; now add that to previous wilds priv/pub xcoord


So are you trying to merge different ranges to the same public key? If yes did it work?
No, I am trying to reuse every wild file (taming the wilds) for next, new key in the same search range.
full member
Activity: 706
Merit: 111
September 25, 2020, 06:47:29 AM
Quote
So from further reading, it doesn't look like I need to change the distances, as they will be in the same range with same jumps. I would just need to redo the private keys (right side) to equal new pub being searched for. How to do?
After more reading and researching and taking samples from Etar's reconstructor, apparently all I have to do, to tame wilds, is to subtract range from wild's priv/xpub coord.  Leave distances alone, subtract range (which is odd because it will all be same range) and bam, new tamed wilds.
Edit: actually offset previous private key - start range.
Example: if previous search was for 8F400000000 and you want to tame the wilds for that search and search for a new pubkey in same range; take 8F400000000 - start range of 80000000000 = F400000000 ; now add that to previous wilds priv/pub xcoord


So are you trying to merge different ranges to the same public key? If yes did it work?
full member
Activity: 1232
Merit: 242
Shooters Shoot...
September 23, 2020, 10:52:52 PM
Quote
So from further reading, it doesn't look like I need to change the distances, as they will be in the same range with same jumps. I would just need to redo the private keys (right side) to equal new pub being searched for. How to do?
After more reading and researching and taking samples from Etar's reconstructor, apparently all I have to do, to tame wilds, is to subtract range from wild's priv/xpub coord.  Leave distances alone, subtract range (which is odd because it will all be same range) and bam, new tamed wilds.
Edit: actually offset previous private key - start range.
Example: if previous search was for 8F400000000 and you want to tame the wilds for that search and search for a new pubkey in same range; take 8F400000000 - start range of 80000000000 = F400000000 ; now add that to previous wilds priv/pub xcoord
full member
Activity: 1232
Merit: 242
Shooters Shoot...
September 22, 2020, 05:13:09 PM
Anyone besides me still chasing #120?

I do have a question for the community...I've been using Etar's dp reconstructor (already compiled, can't view source code) and it works great for taming wild kangaroos.

However, is it necessary to have to know the private key (that you were searching for) in the work file or do you only need to know the pub key?

Also, does anyone know how to go about taming the wilds via a python script?

Example:

here is a line from one of my wild workfile:

Code:
26820E1D54B30FE9F13F7B99BE9CD19F4E47AAD61FD6D1F3C59874C500000000 0000000000000000000000000000000000E7DCAB65369C5F7CC15D08EEE48C67

so let's say it was for some pubkey 03......at the 120 bit range. How would I tame the wilds to say some pubkey 02.... in the same 120 bit range?

All new pubkeys that I search for will be in the same range, so just need to reconstruct the wild kangaroos to the new pubkey. But would be ok if code can reconstruct in different range too.
So from further reading, it doesn't look like I need to change the distances, as they will be in the same range with same jumps. I would just need to redo the private keys (right side) to equal new pub being searched for. How to do?


What's the link to that script you're using?
https://bitcointalksearch.org/topic/m.54666524
full member
Activity: 706
Merit: 111
September 22, 2020, 12:49:16 PM
Anyone besides me still chasing #120?

I do have a question for the community...I've been using Etar's dp reconstructor (already compiled, can't view source code) and it works great for taming wild kangaroos.

However, is it necessary to have to know the private key (that you were searching for) in the work file or do you only need to know the pub key?

Also, does anyone know how to go about taming the wilds via a python script?

Example:

here is a line from one of my wild workfile:

Code:
26820E1D54B30FE9F13F7B99BE9CD19F4E47AAD61FD6D1F3C59874C500000000 0000000000000000000000000000000000E7DCAB65369C5F7CC15D08EEE48C67

so let's say it was for some pubkey 03......at the 120 bit range. How would I tame the wilds to say some pubkey 02.... in the same 120 bit range?

All new pubkeys that I search for will be in the same range, so just need to reconstruct the wild kangaroos to the new pubkey. But would be ok if code can reconstruct in different range too.
So from further reading, it doesn't look like I need to change the distances, as they will be in the same range with same jumps. I would just need to redo the private keys (right side) to equal new pub being searched for. How to do?


What's the link to that script you're using?
Pages:
Jump to: