citb0in
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 15, 2024, 11:39:17 AM |
|
Hello everyone! I found the key to puzzle 66, but now I have another problem: how to withdraw the funds so that no one can intercept them with a bot? Please repost this message so the creator sees it! Maybe someone can tweet this so that the owners of large pools can respond, whether they can add the transaction to the next block when it is found, without broadcasting it to the network? Pls, HELP ME!!!!!
i can help you for a reward 15 %, contact me on dm why PM and not publicly posted here into the thread where it belongs to? I am pretty sure everyone is interested you (or other wizards) can help such key finders
|
|
|
|
Arm90
Newbie
Offline
Activity: 3
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 15, 2024, 12:27:05 PM |
|
Hello everyone! I found the key to puzzle 66, but now I have another problem: how to withdraw the funds so that no one can intercept them with a bot? Please repost this message so the creator sees it! Maybe someone can tweet this so that the owners of large pools can respond, whether they can add the transaction to the next block when it is found, without broadcasting it to the network? Pls, HELP ME!!!!!
i can help you for a reward 15 %, contact me on dm why PM and not publicly posted here into the thread where it belongs to? I am pretty sure everyone is interested you (or other wizards) can help such key finders Hi.Because untill he dont withdraw yet,i think it not advisable to post here publicly
|
|
|
|
Akito S. M. Hosana
Jr. Member
Offline
Activity: 48
Merit: 1
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 15, 2024, 12:44:58 PM |
|
I think they both have to be full forum members to be contacted. It can't be done with only 2 posts. ![Roll Eyes](https://bitcointalk.org/Smileys/default/rolleyes.gif)
|
|
|
|
sssergy2705
Copper Member
Jr. Member
Offline
Activity: 197
Merit: 1
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 15, 2024, 05:13:32 PM |
|
Hello everyone! I found the key to puzzle 66, but now I have another problem: how to withdraw the funds so that no one can intercept them with a bot? Please repost this message so the creator sees it! Maybe someone can tweet this so that the owners of large pools can respond, whether they can add the transaction to the next block when it is found, without broadcasting it to the network? Pls, HELP ME!!!!!
i can help you for a reward 15 %, contact me on dm why PM and not publicly posted here into the thread where it belongs to? I am pretty sure everyone is interested you (or other wizards) can help such key finders Judging by the questions, the person who found the key is a newbie. It will be easy to deceive him in private messages. And here we gathered mainly those who are in one way or another familiar first-hand with the work of the blockchain, what public keys and private keys are. And if there is an attempt to deceive, the locals will tell you if something is wrong.
|
|
|
|
Baskentliia
Jr. Member
Offline
Activity: 60
Merit: 1
34Sf4DnMt3z6XKKoWmZRw2nGyfGkDgNJZZ
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 15, 2024, 05:25:11 PM |
|
Hello everyone! I found the key to puzzle 66, but now I have another problem: how to withdraw the funds so that no one can intercept them with a bot? Please repost this message so the creator sees it! Maybe someone can tweet this so that the owners of large pools can respond, whether they can add the transaction to the next block when it is found, without broadcasting it to the network? Pls, HELP ME!!!!!
i can help you for a reward 15 %, contact me on dm why PM and not publicly posted here into the thread where it belongs to? I am pretty sure everyone is interested you (or other wizards) can help such key finders Judging by the questions, the person who found the key is a newbie. It will be easy to deceive him in private messages. And here we gathered mainly those who are in one way or another familiar first-hand with the work of the blockchain, what public keys and private keys are. And if there is an attempt to deceive, the locals will tell you if something is wrong. Maybe he didn't find it, he may be lying, we don't know. If he had found it, he would have done hours of research without wasting time, found a safe way to withdraw it and vacated the address. I think he is lying.
|
34Sf4DnMt3z6XKKoWmZRw2nGyfGkDgNJZZ
|
|
|
AlanJohnson
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 105
Merit: 11
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 15, 2024, 07:54:28 PM |
|
Hello everyone! I found the key to puzzle 66, but now I have another problem: how to withdraw the funds so that no one can intercept them with a bot? Please repost this message so the creator sees it! Maybe someone can tweet this so that the owners of large pools can respond, whether they can add the transaction to the next block when it is found, without broadcasting it to the network? Pls, HELP ME!!!!!
i can help you for a reward 15 %, contact me on dm why PM and not publicly posted here into the thread where it belongs to? I am pretty sure everyone is interested you (or other wizards) can help such key finders Judging by the questions, the person who found the key is a newbie. It will be easy to deceive him in private messages. And here we gathered mainly those who are in one way or another familiar first-hand with the work of the blockchain, what public keys and private keys are. And if there is an attempt to deceive, the locals will tell you if something is wrong. Maybe he didn't find it, he may be lying, we don't know. If he had found it, he would have done hours of research without wasting time, found a safe way to withdraw it and vacated the address. I think he is lying. He found 66 bit key but he don't know what to do next ... yeah, right ... Just another attention seeker.
|
|
|
|
Akito S. M. Hosana
Jr. Member
Offline
Activity: 48
Merit: 1
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 16, 2024, 01:16:48 PM Last edit: July 16, 2024, 04:25:01 PM by Akito S. M. Hosana |
|
It's not a game of who is smarter, or how many smart posts someone has; it's about who can guess the puzzle, simple as that, or rather, who has more luck or resources. ![Embarrassed](https://bitcointalk.org/Smileys/default/embarrassed.gif) - KANGAROO: Sun Jul 14 16:01:51 2024
- [Puzzle]: 40
- [Lower range limit]: 0x8000000000
- [Upper range limit]: 0xffffffffff
- [EC Point Coordinate X]: 0xa2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4
- [EC Point Coordinate Y]: 0x7ba1a987013e78aef5295bf842749bdf97e25336a82458bbaba8c00d16a79ea7
- [Hops: 229969 h/s] [00:00:01]
- total time: 1.47 sec
- KANGAROO: Sun Jul 14 16:01:53 2024 PUZZLE SOLVED
- Private key (hex) : 000000000000000000000000000000000000000000000000000000e9ae4933d6
- Hops: 335150
- Average time to solve: 1.47 sec
Can you make this same app with gmpy2, I don't trust that Iceland ?
|
|
|
|
WanderingPhilospher
Full Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif) ![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 1120
Merit: 235
Shooters Shoot...
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 16, 2024, 05:52:48 PM |
|
It's not a game of who is smarter, or how many smart posts someone has; it's about who can guess the puzzle, simple as that, or rather, who has more luck or resources. ![Embarrassed](https://bitcointalk.org/Smileys/default/embarrassed.gif) - KANGAROO: Sun Jul 14 16:01:51 2024
- [Puzzle]: 40
- [Lower range limit]: 0x8000000000
- [Upper range limit]: 0xffffffffff
- [EC Point Coordinate X]: 0xa2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4
- [EC Point Coordinate Y]: 0x7ba1a987013e78aef5295bf842749bdf97e25336a82458bbaba8c00d16a79ea7
- [Hops: 229969 h/s] [00:00:01]
- total time: 1.47 sec
- KANGAROO: Sun Jul 14 16:01:53 2024 PUZZLE SOLVED
- Private key (hex) : 000000000000000000000000000000000000000000000000000000e9ae4933d6
- Hops: 335150
- Average time to solve: 1.47 sec
Can you make this same app with gmpy2, I don't trust that Iceland ? Wasn't his first post written in gmp?!
|
|
|
|
nomachine
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 399
Merit: 22
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 16, 2024, 06:04:05 PM |
|
Can you make this same app with gmpy2, I don't trust that Iceland ?
You mean in Python? import time, random from gmpy2 import mpz, f_mod, powmod, invert
modulo = mpz(0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F) Gx = mpz(0x79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798) Gy = mpz(0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8) PG = (Gx, Gy) Z = (0, 0)
def add(P, Q, p=modulo): Px, Py = P Qx, Qy = Q if P == Z: return Q elif Q == Z: return P elif Px == Qx: if Py != Qy or Py == 0: return Z num = 3 * Px * Px denom = 2 * Py else: num = Qy - Py denom = Qx - Px m = (num * invert(denom, p)) % p x = (m * m - Px - Qx) % p y = (m * (Px - x) - Py) % p return (x, y)
def mul(k, P=PG): R = Z while k: if k & 1: R = add(R, P) P = add(P, P) k >>= 1 return R
def X2Y(X, y_parity, p=modulo): X_cubed = powmod(X, 3, p) tmp = (X_cubed + 7) % p Y = powmod(tmp, (p + 1) // 4, p) if y_parity == 1: Y = (-Y) % p return Y
def comparator(P, Pindex, DP_rarity, t, W, w, T): if f_mod(P[0], DP_rarity) == 0: T.append(P[0]) t.append(Pindex) common_elements = set(T).intersection(W) if common_elements: match = common_elements.pop() tT = t[T.index(match)] wW = w[W.index(match)] HEX = '%064x' % abs(tT - wW) dec = int(HEX, 16) total_time = time.time() - starttime print(f"\n[+] total time: {total_time:.2f} sec") print_status(time.ctime(), 'PUZZLE SOLVED') print(f"\033[32m[+] Private key (hex) : {HEX} \033[0m") log_solution(total_time, dec, HEX) return True return False
def search(P, W0, DP_rarity, Nw, Nt, hop_modulo, upper, lower): t = [lower + random.randint(0, upper - lower) for _ in range(Nt)] T = [mul(ti) for ti in t] w = [random.randint(0, upper - lower) for _ in range(Nw)] W = [add(W0, mul(wi)) for wi in w] Hops, Hops_old = 0, 0 t0 = time.time() solved = False while not solved: for k in range(Nt + Nw): Hops += 1 if k < Nt: pw = T[k][0] % hop_modulo solved = comparator(T[k], t[k], DP_rarity, T, t, W, w) if solved: break t[k] += 1 << pw T[k] = add(P[pw], T[k]) else: k -= Nt pw = W[k][0] % hop_modulo solved = comparator(W[k], w[k], DP_rarity, W, w, T, t) if solved: break w[k] += 1 << pw W[k] = add(P[pw], W[k]) t1 = time.time() elapsed_time = t1 - starttime if (t1 - t0) > 1: hops_per_second = (Hops - Hops_old) / (t1 - t0) hours, rem = divmod(elapsed_time, 3600) minutes, seconds = divmod(rem, 60) elapsed_time_str = f"{int(hours):02d}:{int(minutes):02d}:{int(seconds):02d}" print(f'[+] [Hops: {hops_per_second:.0f} h/s] [{elapsed_time_str}]', end='\r', flush=True) t0 = t1 Hops_old = Hops print('\r[+] Hops:', Hops) print('[+] Average time to solve: %.2f sec' % ((time.time() - starttime)))
def print_status(t, message): print(f"\033[?25l\033[01;33m[+]\033[32m KANGAROO: \033[01;33m{t}\033[0m {message}")
def print_puzzle_info(puzzle, lower, upper, X, Y): print(f"[+] [Puzzle]: {puzzle}") print(f"[+] [Lower range limit]: {hex(lower)}") print(f"[+] [Upper range limit]: {hex(upper)}") print(f"[+] [EC Point Coordinate X]: {hex(X)}") print(f"[+] [EC Point Coordinate Y]: {hex(Y)}")
def log_solution(total_time, dec, HEX): t = time.ctime() dash_line = '-' * 140 with open("KEYFOUNDKEYFOUND.txt", "a") as file: file.write(f"\n{dash_line}") file.write("\n\nSOLVED " + t) file.write(f"\nTotal Time: {total_time:.2f} sec") file.write("\nPrivate Key (decimal): " + str(dec)) file.write("\nPrivate Key (hex): " + HEX) file.write(f"\n{dash_line}")
t = time.ctime() print_status(t, "")
# Configuration for the puzzle puzzle = 40 compressed_public_key = "03a2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4" kangaroo_power = 5 lower = 2 ** (puzzle - 1) upper = (2 ** puzzle) - 1
DP_rarity = 1 << int(((puzzle - 2*kangaroo_power)/2 - 2)) hop_modulo = ((puzzle - 1) // 2) + kangaroo_power
Nt = Nw = 2**kangaroo_power
if len(compressed_public_key) == 66: X = mpz(compressed_public_key[2:66], 16) Y = X2Y(X, mpz(compressed_public_key[:2]) - 2) else: print("[error] pubkey len(66/130) invalid!")
W0 = (X, Y) starttime = time.time() print_puzzle_info(puzzle, lower, upper, X, Y) Hops = 0 solved = False
random.seed()
P = [PG] for k in range(255): P.append(add(P[k], P[k]))
solved = search(P, W0, DP_rarity, Nw, Nt, hop_modulo, upper, lower) - KANGAROO: Tue Jul 16 20:01:26 2024
- [Puzzle]: 40
- [Lower range limit]: 0x8000000000
- [Upper range limit]: 0xffffffffff
- [EC Point Coordinate X]: 0xa2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4
- [EC Point Coordinate Y]: 0x7ba1a987013e78aef5295bf842749bdf97e25336a82458bbaba8c00d16a79ea7
- [Hops: 303330 h/s] [00:00:02]
- total time: 2.20 sec
- KANGAROO: Tue Jul 16 20:01:28 2024 PUZZLE SOLVED
- Private key (hex) : 000000000000000000000000000000000000000000000000000000e9ae4933d6
- Hops: 657608
- Average time to solve: 2.20 sec
|
|
|
|
Akito S. M. Hosana
Jr. Member
Offline
Activity: 48
Merit: 1
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 16, 2024, 06:50:27 PM |
|
Can you make this same app with gmpy2, I don't trust that Iceland ?
You mean in Python? import time, random from gmpy2 import mpz, f_mod, powmod, invert
modulo = mpz(0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F) Gx = mpz(0x79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798) Gy = mpz(0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8) PG = (Gx, Gy) Z = (0, 0)
def add(P, Q, p=modulo): Px, Py = P Qx, Qy = Q if P == Z: return Q elif Q == Z: return P elif Px == Qx: if Py != Qy or Py == 0: return Z num = 3 * Px * Px denom = 2 * Py else: num = Qy - Py denom = Qx - Px m = (num * invert(denom, p)) % p x = (m * m - Px - Qx) % p y = (m * (Px - x) - Py) % p return (x, y)
def mul(k, P=PG): R = Z while k: if k & 1: R = add(R, P) P = add(P, P) k >>= 1 return R
def X2Y(X, y_parity, p=modulo): X_cubed = powmod(X, 3, p) tmp = (X_cubed + 7) % p Y = powmod(tmp, (p + 1) // 4, p) if y_parity == 1: Y = (-Y) % p return Y
def comparator(P, Pindex, DP_rarity, t, W, w, T): if f_mod(P[0], DP_rarity) == 0: T.append(P[0]) t.append(Pindex) common_elements = set(T).intersection(W) if common_elements: match = common_elements.pop() tT = t[T.index(match)] wW = w[W.index(match)] HEX = '%064x' % abs(tT - wW) dec = int(HEX, 16) total_time = time.time() - starttime print(f"\n[+] total time: {total_time:.2f} sec") print_status(time.ctime(), 'PUZZLE SOLVED') print(f"\033[32m[+] Private key (hex) : {HEX} \033[0m") log_solution(total_time, dec, HEX) return True return False
def search(P, W0, DP_rarity, Nw, Nt, hop_modulo, upper, lower): t = [lower + random.randint(0, upper - lower) for _ in range(Nt)] T = [mul(ti) for ti in t] w = [random.randint(0, upper - lower) for _ in range(Nw)] W = [add(W0, mul(wi)) for wi in w] Hops, Hops_old = 0, 0 t0 = time.time() solved = False while not solved: for k in range(Nt + Nw): Hops += 1 if k < Nt: pw = T[k][0] % hop_modulo solved = comparator(T[k], t[k], DP_rarity, T, t, W, w) if solved: break t[k] += 1 << pw T[k] = add(P[pw], T[k]) else: k -= Nt pw = W[k][0] % hop_modulo solved = comparator(W[k], w[k], DP_rarity, W, w, T, t) if solved: break w[k] += 1 << pw W[k] = add(P[pw], W[k]) t1 = time.time() elapsed_time = t1 - starttime if (t1 - t0) > 1: hops_per_second = (Hops - Hops_old) / (t1 - t0) hours, rem = divmod(elapsed_time, 3600) minutes, seconds = divmod(rem, 60) elapsed_time_str = f"{int(hours):02d}:{int(minutes):02d}:{int(seconds):02d}" print(f'[+] [Hops: {hops_per_second:.0f} h/s] [{elapsed_time_str}]', end='\r', flush=True) t0 = t1 Hops_old = Hops print('\r[+] Hops:', Hops) print('[+] Average time to solve: %.2f sec' % ((time.time() - starttime)))
def print_status(t, message): print(f"\033[?25l\033[01;33m[+]\033[32m KANGAROO: \033[01;33m{t}\033[0m {message}")
def print_puzzle_info(puzzle, lower, upper, X, Y): print(f"[+] [Puzzle]: {puzzle}") print(f"[+] [Lower range limit]: {hex(lower)}") print(f"[+] [Upper range limit]: {hex(upper)}") print(f"[+] [EC Point Coordinate X]: {hex(X)}") print(f"[+] [EC Point Coordinate Y]: {hex(Y)}")
def log_solution(total_time, dec, HEX): t = time.ctime() dash_line = '-' * 140 with open("KEYFOUNDKEYFOUND.txt", "a") as file: file.write(f"\n{dash_line}") file.write("\n\nSOLVED " + t) file.write(f"\nTotal Time: {total_time:.2f} sec") file.write("\nPrivate Key (decimal): " + str(dec)) file.write("\nPrivate Key (hex): " + HEX) file.write(f"\n{dash_line}")
t = time.ctime() print_status(t, "")
# Configuration for the puzzle puzzle = 40 compressed_public_key = "03a2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4" kangaroo_power = 5 lower = 2 ** (puzzle - 1) upper = (2 ** puzzle) - 1
DP_rarity = 1 << int(((puzzle - 2*kangaroo_power)/2 - 2)) hop_modulo = ((puzzle - 1) // 2) + kangaroo_power
Nt = Nw = 2**kangaroo_power
if len(compressed_public_key) == 66: X = mpz(compressed_public_key[2:66], 16) Y = X2Y(X, mpz(compressed_public_key[:2]) - 2) else: print("[error] pubkey len(66/130) invalid!")
W0 = (X, Y) starttime = time.time() print_puzzle_info(puzzle, lower, upper, X, Y) Hops = 0 solved = False
random.seed()
P = [PG] for k in range(255): P.append(add(P[k], P[k]))
solved = search(P, W0, DP_rarity, Nw, Nt, hop_modulo, upper, lower) - KANGAROO: Tue Jul 16 20:01:26 2024
- [Puzzle]: 40
- [Lower range limit]: 0x8000000000
- [Upper range limit]: 0xffffffffff
- [EC Point Coordinate X]: 0xa2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4
- [EC Point Coordinate Y]: 0x7ba1a987013e78aef5295bf842749bdf97e25336a82458bbaba8c00d16a79ea7
- [Hops: 303330 h/s] [00:00:02]
- total time: 2.20 sec
- KANGAROO: Tue Jul 16 20:01:28 2024 PUZZLE SOLVED
- Private key (hex) : 000000000000000000000000000000000000000000000000000000e9ae4933d6
- Hops: 657608
- Average time to solve: 2.20 sec
- KANGAROO: Tue Jul 16 20:46:12 2024
- [Puzzle]: 40
- [Lower range limit]: 0x8000000000
- [Upper range limit]: 0xffffffffff
- [EC Point Coordinate X]: 0xa2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4
- [EC Point Coordinate Y]: 0x7ba1a987013e78aef5295bf842749bdf97e25336a82458bbaba8c00d16a79ea7
- [Hops: 301975 h/s] [00:00:03]
- total time: 3.59 sec
- KANGAROO: Tue Jul 16 20:46:16 2024 PUZZLE SOLVED
- Private key (hex) : 000000000000000000000000000000000000000000000000000000e9ae4933d6
- Hops: 1076731
- Average time to solve: 3.59 sec
Thanks. But why is the speed sometimes 290000 and sometimes 305000? Sometimes solve in 2 seconds and sometimes in 10 seconds? Strange. ![Huh](https://bitcointalk.org/Smileys/default/huh.gif)
|
|
|
|
nomachine
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 399
Merit: 22
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 16, 2024, 08:11:31 PM |
|
Can you make this same app with gmpy2, I don't trust that Iceland ?
You mean in Python? import time, random from gmpy2 import mpz, f_mod, powmod, invert
modulo = mpz(0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F) Gx = mpz(0x79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798) Gy = mpz(0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8) PG = (Gx, Gy) Z = (0, 0)
def add(P, Q, p=modulo): Px, Py = P Qx, Qy = Q if P == Z: return Q elif Q == Z: return P elif Px == Qx: if Py != Qy or Py == 0: return Z num = 3 * Px * Px denom = 2 * Py else: num = Qy - Py denom = Qx - Px m = (num * invert(denom, p)) % p x = (m * m - Px - Qx) % p y = (m * (Px - x) - Py) % p return (x, y)
def mul(k, P=PG): R = Z while k: if k & 1: R = add(R, P) P = add(P, P) k >>= 1 return R
def X2Y(X, y_parity, p=modulo): X_cubed = powmod(X, 3, p) tmp = (X_cubed + 7) % p Y = powmod(tmp, (p + 1) // 4, p) if y_parity == 1: Y = (-Y) % p return Y
def comparator(P, Pindex, DP_rarity, t, W, w, T): if f_mod(P[0], DP_rarity) == 0: T.append(P[0]) t.append(Pindex) common_elements = set(T).intersection(W) if common_elements: match = common_elements.pop() tT = t[T.index(match)] wW = w[W.index(match)] HEX = '%064x' % abs(tT - wW) dec = int(HEX, 16) total_time = time.time() - starttime print(f"\n[+] total time: {total_time:.2f} sec") print_status(time.ctime(), 'PUZZLE SOLVED') print(f"\033[32m[+] Private key (hex) : {HEX} \033[0m") log_solution(total_time, dec, HEX) return True return False
def search(P, W0, DP_rarity, Nw, Nt, hop_modulo, upper, lower): t = [lower + random.randint(0, upper - lower) for _ in range(Nt)] T = [mul(ti) for ti in t] w = [random.randint(0, upper - lower) for _ in range(Nw)] W = [add(W0, mul(wi)) for wi in w] Hops, Hops_old = 0, 0 t0 = time.time() solved = False while not solved: for k in range(Nt + Nw): Hops += 1 if k < Nt: pw = T[k][0] % hop_modulo solved = comparator(T[k], t[k], DP_rarity, T, t, W, w) if solved: break t[k] += 1 << pw T[k] = add(P[pw], T[k]) else: k -= Nt pw = W[k][0] % hop_modulo solved = comparator(W[k], w[k], DP_rarity, W, w, T, t) if solved: break w[k] += 1 << pw W[k] = add(P[pw], W[k]) t1 = time.time() elapsed_time = t1 - starttime if (t1 - t0) > 1: hops_per_second = (Hops - Hops_old) / (t1 - t0) hours, rem = divmod(elapsed_time, 3600) minutes, seconds = divmod(rem, 60) elapsed_time_str = f"{int(hours):02d}:{int(minutes):02d}:{int(seconds):02d}" print(f'[+] [Hops: {hops_per_second:.0f} h/s] [{elapsed_time_str}]', end='\r', flush=True) t0 = t1 Hops_old = Hops print('\r[+] Hops:', Hops) print('[+] Average time to solve: %.2f sec' % ((time.time() - starttime)))
def print_status(t, message): print(f"\033[?25l\033[01;33m[+]\033[32m KANGAROO: \033[01;33m{t}\033[0m {message}")
def print_puzzle_info(puzzle, lower, upper, X, Y): print(f"[+] [Puzzle]: {puzzle}") print(f"[+] [Lower range limit]: {hex(lower)}") print(f"[+] [Upper range limit]: {hex(upper)}") print(f"[+] [EC Point Coordinate X]: {hex(X)}") print(f"[+] [EC Point Coordinate Y]: {hex(Y)}")
def log_solution(total_time, dec, HEX): t = time.ctime() dash_line = '-' * 140 with open("KEYFOUNDKEYFOUND.txt", "a") as file: file.write(f"\n{dash_line}") file.write("\n\nSOLVED " + t) file.write(f"\nTotal Time: {total_time:.2f} sec") file.write("\nPrivate Key (decimal): " + str(dec)) file.write("\nPrivate Key (hex): " + HEX) file.write(f"\n{dash_line}")
t = time.ctime() print_status(t, "")
# Configuration for the puzzle puzzle = 40 compressed_public_key = "03a2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4" kangaroo_power = 5 lower = 2 ** (puzzle - 1) upper = (2 ** puzzle) - 1
DP_rarity = 1 << int(((puzzle - 2*kangaroo_power)/2 - 2)) hop_modulo = ((puzzle - 1) // 2) + kangaroo_power
Nt = Nw = 2**kangaroo_power
if len(compressed_public_key) == 66: X = mpz(compressed_public_key[2:66], 16) Y = X2Y(X, mpz(compressed_public_key[:2]) - 2) else: print("[error] pubkey len(66/130) invalid!")
W0 = (X, Y) starttime = time.time() print_puzzle_info(puzzle, lower, upper, X, Y) Hops = 0 solved = False
random.seed()
P = [PG] for k in range(255): P.append(add(P[k], P[k]))
solved = search(P, W0, DP_rarity, Nw, Nt, hop_modulo, upper, lower) - KANGAROO: Tue Jul 16 20:01:26 2024
- [Puzzle]: 40
- [Lower range limit]: 0x8000000000
- [Upper range limit]: 0xffffffffff
- [EC Point Coordinate X]: 0xa2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4
- [EC Point Coordinate Y]: 0x7ba1a987013e78aef5295bf842749bdf97e25336a82458bbaba8c00d16a79ea7
- [Hops: 303330 h/s] [00:00:02]
- total time: 2.20 sec
- KANGAROO: Tue Jul 16 20:01:28 2024 PUZZLE SOLVED
- Private key (hex) : 000000000000000000000000000000000000000000000000000000e9ae4933d6
- Hops: 657608
- Average time to solve: 2.20 sec
- KANGAROO: Tue Jul 16 20:46:12 2024
- [Puzzle]: 40
- [Lower range limit]: 0x8000000000
- [Upper range limit]: 0xffffffffff
- [EC Point Coordinate X]: 0xa2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4
- [EC Point Coordinate Y]: 0x7ba1a987013e78aef5295bf842749bdf97e25336a82458bbaba8c00d16a79ea7
- [Hops: 301975 h/s] [00:00:03]
- total time: 3.59 sec
- KANGAROO: Tue Jul 16 20:46:16 2024 PUZZLE SOLVED
- Private key (hex) : 000000000000000000000000000000000000000000000000000000e9ae4933d6
- Hops: 1076731
- Average time to solve: 3.59 sec
Thanks. But why is the speed sometimes 290000 and sometimes 305000? Sometimes solve in 2 seconds and sometimes in 10 seconds? Strange. ![Huh](https://bitcointalk.org/Smileys/default/huh.gif) Kangaroo is a probabilistic algorithm, it depends which random.seed() you hit at which moment. One is faster and the other is slower. Then it depends on the load of the whole machine.
|
|
|
|
wilspen
Newbie
Offline
Activity: 23
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 16, 2024, 08:26:45 PM |
|
UPDATE Guys, here's a new puzzle challenge from the channel https://www.youtube.com/watch?v=LkejrZuQadg, this challenge consists of locating the private key of the address 19L9vivFCPJnAVDsjZ76mF2ZiTLKFUXEpV which is in the same range as puzzle 66, but with a dot , according to the creator, next Friday, he will request a transfer, the objective would be to export the public key on the blockchain and test whether it would be possible for someone to intercept the transfer before it is completed through the RBF, thus removing doubts whether The same thing could happen with puzzle 66, so whoever has the BOTs being heated could do this test with this key. hahahaha. Anyway, you already know the day, you just need to be more agile than the process on the blockchain, according to the creator, he will place the transaction at the lowest possible rate, precisely to understand if it would be possible for someone to intercept this transaction and withdraw before him, good luck. Creator: https://www.youtube.com/watch?v=LkejrZuQadgAddress: 19L9vivFCPJnAVDsjZ76mF2ZiTLKFUXEpV Range: 20000000000000000:3ffffffffffffffff complement of the challenge, According to the creator in his new video, the transaction will take place between 1-2am, Brasilia time (UTC-03:00), he said he will try to delay some blocks, to give people time to try to make the transfers using RBF according to the last video https://www.youtube.com/watch?v=Xe1w-AfL6qQ
|
|
|
|
|
Advkaz
Newbie
Offline
Activity: 1
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 17, 2024, 12:13:54 PM |
|
|
|
|
|
nomachine
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 399
Merit: 22
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 17, 2024, 12:20:32 PM Last edit: July 17, 2024, 12:37:47 PM by nomachine |
|
Wow, ChatGPT has a crystal ball for identifying puzzle creators. But seriously, we're not sure who the creator is. There was just one post from the user "satoshi_rising" in the puzzle thread mentioning increasing rewards, and true to his word, the rewards were increased. https://bitcointalk.org/index.php?topic=1306983.msg18765941#msg18765941But that's about it. He's like the Batman of Bitcoin puzzles: he shows up, does something cool, and then vanishes into the night. 🦇 Maybe it's time to recruit Sherlock Holmes! ![Grin](https://bitcointalk.org/Smileys/default/grin.gif)
|
|
|
|
benjaniah
Newbie
Offline
Activity: 12
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 17, 2024, 09:58:42 PM |
|
I wouldn't be surprised if the puzzle creator was also the owner or investor vast.ai.
1. Set up GPU renting service that is very good for BTC puzzle solving, and other stuff too like machine learning etc. Requires not much capital to do this. Some servers, software engineers, etc. 2. Start a btc puzzle which you know requires a massive amount of gpu resources, magnitudes of order than whatever you spent on funding the btc puzzles in the first place 3. Find a bunch of hosts with their own gpu rigs/machines they rent out to people trying to solve these crazy puzzles 4. Charge your hosts 25% commission on the fees they earn from renting out their machines on your platform. Remember, you put up no capital at all for all of the hardware, electricity, storage of these very expensive gpu rigs 5. Laugh all the way to the bank for the next several decades or longer
Wish I could have thought of that
|
|
|
|
nomachine
Member
![*](https://bitcointalk.org/Themes/custom1/images/star.gif)
Offline
Activity: 399
Merit: 22
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 18, 2024, 01:35:09 AM |
|
So, creator, just sitting there, counting the cash as they burn through electricity trying to crack the puzzle. No bricks and mortar, just pixels and circuits. It was a masterpiece of manipulation, a cybernetic symphony of profit and power. But hey, if it works, who’s the fool? The guy with the idea or the rest of us who didn’t think of it first? I’m just waiting for the Netflix series on this: 'The Great GPU Heist,' coming soon! ![Grin](https://bitcointalk.org/Smileys/default/grin.gif)
|
|
|
|
Baskentliia
Jr. Member
Offline
Activity: 60
Merit: 1
34Sf4DnMt3z6XKKoWmZRw2nGyfGkDgNJZZ
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 18, 2024, 12:43:00 PM |
|
Hello everyone! I found the key to puzzle 66, but now I have another problem: how to withdraw the funds so that no one can intercept them with a bot? Please repost this message so the creator sees it! Maybe someone can tweet this so that the owners of large pools can respond, whether they can add the transaction to the next block when it is found, without broadcasting it to the network? Pls, HELP ME!!!!!
What happened, you claimed to have found the puzzle? Why haven't you shot it yet? Because you didn't find it, right? You are trolling people 😅 Puzzle 66 is very difficult to find, you are not this lucky person either.
|
34Sf4DnMt3z6XKKoWmZRw2nGyfGkDgNJZZ
|
|
|
3dmlib
Jr. Member
Offline
Activity: 39
Merit: 1
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 18, 2024, 05:18:28 PM |
|
It will be nice to have contacts of puzzle creator. Then actual solver of 66-puzzle can contact him, proof that he finds private key by saying PK several letters at positions creator requested from him. And creator will help to transfer prize to solver safely bypassing mempool or something.
|
|
|
|
Gord0nFreeman
Newbie
Offline
Activity: 15
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
July 18, 2024, 06:21:58 PM |
|
Hello everyone! I found the key to puzzle 66, but now I have another problem: how to withdraw the funds so that no one can intercept them with a bot? Please repost this message so the creator sees it! Maybe someone can tweet this so that the owners of large pools can respond, whether they can add the transaction to the next block when it is found, without broadcasting it to the network? Pls, HELP ME!!!!!
What happened, you claimed to have found the puzzle? Why haven't you shot it yet? Because you didn't find it, right? You are trolling people 😅 Puzzle 66 is very difficult to find, you are not this lucky person either. Oh my God! Whoever thinks I'm just seeking attention is way too full of themselves! Who needs fame from a bunch of idiots? I wasn't addressing you, but rather people like pool operators, software creators, and other professionals, and ultimately, the puzzle creator! I'm ready to provide any evidence to the puzzle creator!
|
|
|
|
|