_Counselor
Member
Offline
Activity: 110
Merit: 61
|
|
November 20, 2021, 05:47:48 AM |
|
When I look at this picture I see that this one value for x and y of R has millions and billions different pairs of x and y of Q and P I mean just change the slope of the line
Of course it has. Equation like x+y = 10 has infinite number of solutions.
|
|
|
|
mausuv
Jr. Member
Offline
Activity: 70
Merit: 1
|
|
November 20, 2021, 11:04:33 AM |
|
When I look at this picture I see that this one value for x and y of R has millions and billions different pairs of x and y of Q and P I mean just change the slope of the line
Of course it has. Equation like x+y = 10 has infinite number of solutions. i know but i am reasontly watch read full please yes its real no scam only education purpos hacker upload 1000 BTC stolen video youtube remove quickly https://www.youtube.com/watch?v=KqTS_0Zlr2c i am not download yes i am watch youtube video today 13/11/21 >>> how to find bitcoin private key >>search important notice this hacker use only python languagae ,, 1000 BTC stolen step 1: hacker crack adderss to public key convert >> note python code use it step 2: compressed to Uncompressed publickey convert >> this tool use https://iancoleman.io/bitcoin-key-compression/step 3:past Uncompressed public key 2nd python code $ run 7hr find private key yes its real no scam only education purpos video upload but youtube remove this video so no data get share this message please python code use find bitcoin private keys you can find private key make video share me so i need subtract code please
|
|
|
|
|
|
mausuv
Jr. Member
Offline
Activity: 70
Merit: 1
|
|
November 20, 2021, 03:23:08 PM |
|
yes i know this git code i am not understand c language so, input two point privatekey 3 - 2 = 1 point1 - point2 = point3 X Y point1 f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9 388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672 point2 c6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5 1ae168fea63dc339a3c58419466ceaeef7f632653266d0e1236431a950cfe52a i need 3rd point subtract value please write easy understand make python or explain mathematicaly
|
|
|
|
itod
Legendary
Offline
Activity: 1974
Merit: 1077
^ Will code for Bitcoins
|
|
November 20, 2021, 07:02:25 PM Merited by NotATether (3) |
|
yes i know this git code i am not understand c language so, input two point privatekey 3 - 2 = 1 point1 - point2 = point3 X Y point1 f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9 388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672 point2 c6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5 1ae168fea63dc339a3c58419466ceaeef7f632653266d0e1236431a950cfe52a i need 3rd point subtract value please write easy understand make python or explain mathematicalyclass Point: b = 7 def __init__(self, x=float('inf'), y=float('inf')): self.x = x self.y = y def copy(self): return Point(self.x, self.y) def is_zero(self): return self.x > 1e20 or self.x < -1e20 def neg(self): return Point(self.x, -self.y) def dbl(self): if self.is_zero(): return self.copy() try: L = (3 * self.x * self.x) / (2 * self.y) except ZeroDivisionError: return Point() x = L * L - 2 * self.x return Point(x, L * (self.x - x) - self.y) def add(self, q): if self.x == q.x and self.y == q.y: return self.dbl() if self.is_zero(): return q.copy() if q.is_zero(): return self.copy() try: L = (q.y - self.y) / (q.x - self.x) except ZeroDivisionError: return Point() x = L * L - self.x - q.x return Point(x, L * (self.x - x) - self.y) def mul(self, n): p = self.copy() r = Point() i = 1 while i <= n: if i&n: r = r.add(p) p = p.dbl() i <<= 1 return r def __str__(self): return "({:.3f}, {:.3f})".format(self.x, self.y) def show(s, p): print(s, "Zero" if p.is_zero() else p) def from_y(y): n = y * y - Point.b x = n**(1./3) if n>=0 else -((-n)**(1./3)) return Point(x, y) # demonstrate a = from_y(1) b = from_y(2) show("a =", a) show("b =", b) c = a.add(b) show("c = a + b =", c) d = c.neg() show("d = -c =", d) show("c + d =", c.add(d)) show("a + b + d =", a.add(b.add(d))) show("a * 12345 =", a.mul(12345))
Output: a = (-1.817, 1.000) b = (-1.442, 2.000) c = a + b = (10.375, -33.525) d = -c = (10.375, 33.525) c + d = Zero a + b + d = Zero a * 12345 = (10.759, 35.387)
|
|
|
|
MrFreeDragon
|
|
November 20, 2021, 10:09:01 PM |
|
-snip- input two point privatekey 3 - 2 = 1 point1 - point2 = point3 X Y point1 f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9 388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672 point2 c6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5 1ae168fea63dc339a3c58419466ceaeef7f632653266d0e1236431a950cfe52a
i need 3rd point subtract value
please write easy understand make python or explain mathematicaly
Actually the scalar subtraction is the addition where you change y value of the second point from y to modulo - yPlease find the python code with the sub function which subtracts one Point from another: Demonstration of the function result: >>> Point1 = Point(0xf9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9, 0x388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672) >>> Point2 = Point(0xc6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5, 0x1ae168fea63dc339a3c58419466ceaeef7f632653266d0e1236431a950cfe52a) >>> Point3 = sub(Point1,Point2) >>> hex(Point3.x),hex(Point3.y) ('0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798', '0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8')
Python code: import gmpy2
modulo = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F order = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141 Gx = 0x79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798 Gy = 0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8
class Point: def __init__(self, x=0, y=0): self.x = x self.y = y
PG = Point(Gx,Gy) Z = Point(0,0) # zero-point
# returns (g, x, y) a*x + b*y = gcd(x, y) def egcd(a, b): if a == 0: return (b, 0, 1) else: g, x, y = egcd(b % a, a) return (g, y - (b // a) * x, x)
def modinv(m, n = modulo): while m < 0: m += n g, x, _ = egcd(m, n) if g == 1: return x % n
else: print (' no inverse exist')
def mul2(Pmul2, p = modulo): R = Point(0,0) #c = 3*Pmul2.x*Pmul2.x*modinv(2*Pmul2.y, p) % p c = 3*Pmul2.x*Pmul2.x*gmpy2.invert(2*Pmul2.y, p) % p R.x = (c*c-2*Pmul2.x) % p R.y = (c*(Pmul2.x - R.x)-Pmul2.y) % p return R
def add(Padd, Q, p = modulo): if Padd.x == Padd.y == 0: return Q if Q.x == Q.y == 0: return Padd if Padd == Q: return mul2(Q) R = Point() dx = (Q.x - Padd.x) % p dy = (Q.y - Padd.y) % p c = dy * gmpy2.invert(dx, p) % p #c = dy * modinv(dx, p) % p R.x = (c*c - Padd.x - Q.x) % p R.y = (c*(Padd.x - R.x) - Padd.y) % p return R
def mulk(k, Pmulk, p = modulo): if k == 0: return Z if k == 1: return Pmulk if (k % 2 == 0): return mulk(k//2, mul2(Pmulk, p), p) return add(Pmulk, mulk((k-1)//2, mul2(Pmulk, p), p), p)
def sub(P1, P2, p = modulo): #scalar subtraction P1-P2 if P1 == P2: return Z if P2.x == P2.y == 0: return P1 return add (P1, Point(P2.x, modulo - P2.y))
If you do not have gmpy2 I recommend to install it (it is 50x faster than self implemented inverse), but you can just uncomment c calculation in mul2 and add functions and comment the formula with gmpy2. EDIT: corrected typo mistakes
|
|
|
|
mausuv
Jr. Member
Offline
Activity: 70
Merit: 1
|
|
November 21, 2021, 01:35:36 AM |
|
If you do not have gmpy2 I recommend to install it (it is 50x faster than self implemented inverse), but you can just uncomment c calculation in mul2 and add functions and comment the formula with gmpy2.
EDIT: corrected typo mistakes
your code work fine but what corrected typo mistakes explainAnd youcan improve even or odd python ./keymath 03d01115d548e7561b15c38f004d734633687cf4419620095bc5b0f47070afe85a - 02c6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5 Result: 0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798 one last question your python code 100% tested own Point3 = sub(Point1,Point2) work without error ?? #sorry my grammer mistake because i am test some point, work 100% correct answer print
|
|
|
|
MrFreeDragon
|
|
November 21, 2021, 02:05:09 AM |
|
mausuv, I made a post and found some gramma mistakes in my words. Not at the code, but in my message here. So I edited the post and made a remark that the edit was related to typo mistakes and not to the change of the content.
The code works 100%
|
|
|
|
jacky19790729
Jr. Member
Offline
Activity: 82
Merit: 8
|
|
November 21, 2021, 05:05:02 AM Last edit: December 05, 2021, 03:46:35 PM by jacky19790729 |
|
my question how to guess random public key even small range or big rangeodd small range or big rangethankyou your code near to my crack method:) i am find some btc i will donate you in future #i am not devolper but other people code change to finder # little bit speak and write englsh NO ~~~ There is no way to know (private key is even/odd ) from public key There is no way to know (private key is small/big range what?? ) from public key small range is < 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0 big range is > 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A1 if A, B private key have same X value of public key A + B = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141 if you can know 1 private key (public key: 03ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630 ) #120 will solve right now (public key: 02ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630 ) https://bitcointalk.org/index.php?topic=4455904.0https://bitcointalk.org/index.php?topic=5332526.0
|
|
|
|
mausuv
Jr. Member
Offline
Activity: 70
Merit: 1
|
|
November 25, 2021, 03:20:38 AM |
|
guys any update small range big range write here....
|
|
|
|
mausuv
Jr. Member
Offline
Activity: 70
Merit: 1
|
|
November 26, 2021, 01:26:15 PM |
|
>>> Point1 = Point(0xf9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9, 0x388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672) >>> Point2 = Point(0xc6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5, 0x1ae168fea63dc339a3c58419466ceaeef7f632653266d0e1236431a950cfe52a) >>> Point3 = sub(Point1,Point2) >>> hex(Point3.x),hex(Point3.y) ('0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798', '0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8')
how to to point verify in python example1: if Point1 == Point2: pass value #break or contine example2: for Point1 =! Point2: pass vaue #break or contine example3: while loop, or def function my question how to same time x,y value check (==,=!,!=,etc....)form example 1,2,3 Point1.x Point1.y Point1 = ('0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798', '0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8') Point2 = ('0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798', '0xb7c52588d95c3b9aa25b0403f1eef75702e84bb7597aabe663b82f6f04ef2777') Point2.x Point2.y
i know :) if Point1.x==Point2.x: pass value #go to some example step execute ....... ...... else: ............. ......
i know if Point1.x==Point2.x: but :(same time x,y value how to cheak Point1.x.y==Point2.x.y please some examle write here... #mybadenglish
|
|
|
|
PrivatePerson
Member
Offline
Activity: 174
Merit: 12
|
|
December 15, 2021, 08:16:05 PM |
|
MrFreeDragon, where to substitute your values in this script? I write: python script.py the issue is empty. Python 3.10.1, gmpy2 2.1.1.
|
|
|
|
BlackHatCoiner
Legendary
Offline
Activity: 1708
Merit: 8347
Fiatheist
|
|
December 15, 2021, 09:56:38 PM |
|
Somebody could explain which variable means what? Yes. In elliptic curves, when you want to find the public key given a certain private key, you construct two algorithms. Addition and doubling. The image you've inserted shows the addition of two points (P + Q) whose result can be seen by drawing a straight line in P and Q; the inverse of that point is R. Your image is a graphical representation of point addition. In doubling, you draw a tangent line in P and where it'll intersect with the curve, its inverse will be 2P. i know tow point add,multiple in python code, but subtracter not understand Isn't subtraction just like addition? Instead of P + Q, you do P + (-Q). The only extra step is to get -Q. This may satisfy you: How to subtract two points on an elliptic curve?
|
|
|
|
MrFreeDragon
|
|
December 20, 2021, 11:06:05 PM |
|
MrFreeDragon, where to substitute your values in this script? I write: python script.py the issue is empty. Python 3.10.1, gmpy2 2.1.1.
Try the command: So you will enter the python console with the loaded script functions. You will be able to run commands like these: >>> Point1 = Point(0xf9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9, 0x388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672) >>> Point2 = Point(0xc6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5, 0x1ae168fea63dc339a3c58419466ceaeef7f632653266d0e1236431a950cfe52a) >>> Point3 = sub(Point1,Point2) >>> hex(Point3.x),hex(Point3.y) ('0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798', '0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8')
|
|
|
|
mausuv
Jr. Member
Offline
Activity: 70
Merit: 1
|
|
December 21, 2021, 06:10:06 AM |
|
iknow r s1s2 value i need z1z2 how to calculate i read this post explain testnet ,i am not understad https://bitcointalk.org/index.php?topic=5327054.msg56686056#msg56686056https://bitcointalk.org/index.php?topic=977070.msg10669517#msg10669517 #read 1,3page please explain stepy by step calulate z1z2 from bitcoin mainet or write code #mybadenglish run this script https://github.com/FoxxD3V/btc-rsz/blob/master/RawTX_RSZ.pyoutput : show r s1s2 z1,z2 but i got error what my mistake https://tbtc.bitaps.com/raw/transaction/ff948290ff332aed8f0e5d767118a02e8671578c6775a333bb4ee4d6ccfcf639i am enter raw tx i got error https://github.com/FoxxD3V/btc-rsz/blob/master/RawTX_RSZ.pyTraceback (most recent call last): File "RawTX_RSZ.py", line 13, in s = keyUtils.derSigToHexSig(m[1][:-2]) File "/home/runner/btc-rsz/keyUtils.py", line 32, in derSigToHexSig x, s = ecdsa.der.remove_integer(s) File "/usr/local/lib/python2.7/dist-packages/ecdsa/der.py", line 218, in remove_integer raise UnexpectedDER("Negative integers are not supported") ecdsa.der.UnexpectedDER: Negative integers are not supported
i know r s1s2 i need z1z2 value please how to get z1z2 #mybadenglish
|
|
|
|
Alpaste
Jr. Member
Offline
Activity: 37
Merit: 1
|
|
December 24, 2021, 09:31:39 AM |
|
guys dumb question, there are 2^256 private and public keys and total of 2^160 addresses, so 2^256/2^160 = 2^96 keys per address. but how can be 2^96 keys that connect to same address? so what changes then? does public key stay the same and only private key changes, or does both changes with 2^96 address each one..?
|
|
|
|
_Counselor
Member
Offline
Activity: 110
Merit: 61
|
|
December 24, 2021, 09:48:36 AM |
|
guys dumb question, there are 2^256 private and public keys and total of 2^160 addresses, so 2^256/2^160 = 2^96 keys per address. but how can be 2^96 keys that connect to same address? so what changes then? does public key stay the same and only private key changes, or does both changes with 2^96 address each one..?
Every private key has it own unique public key, but hashing of different public keys may produce same hashes (addresses). Thus, in average, 2^96 different public/private keys have the same address.
|
|
|
|
Alpaste
Jr. Member
Offline
Activity: 37
Merit: 1
|
|
December 24, 2021, 09:55:07 AM |
|
Ok, thank you so much, so let's say i want to bruteforce a specific publickey that has for example 1,000 bitcoins in it. so my questions are: so does the publickey that i want to attack for example using Kangaroo exists only 1 TIME with its privatekey in the whole range of 2^160 is that right ? so if i want to get that unique private key from its unique publickey, i need to bruteforce from 0 to 2^160 in order to get it, is that also correct?
|
|
|
|
_Counselor
Member
Offline
Activity: 110
Merit: 61
|
|
December 24, 2021, 10:37:04 AM |
|
Ok, thank you so much, so let's say i want to bruteforce a specific publickey that has for example 1,000 bitcoins in it. so my questions are: so does the publickey that i want to attack for example using Kangaroo exists only 1 TIME with its privatekey in the whole range of 2^160 is that right ? so if i want to get that unique private key from its unique publickey, i need to bruteforce from 0 to 2^160 in order to get it, is that also correct?
Kangaroo works with specific public key only, not the address, so you have to check whole secp256k1 keyspace to find it - 2^256 (using symmetry and endomorphism this can be reduced to ~2^254) If we talking about bruteforce like bitCrack, you have to check 2^97 keys in average to find specific address (not the specific public key)
|
|
|
|
|