Author

Topic: Bitcoin puzzle transaction ~32 BTC prize to who solves it - page 217. (Read 215272 times)

full member
Activity: 1162
Merit: 237
Shooters Shoot...
yes, there is, if you really think automated random created things are really random, then think twice.

Ok, I will ... hold on a second ... finished.

Now, please tell me what the weather in South Florida will be on 2024/Feb/29 at 02:19 PM.
Warmer than what it will be where I am lol...
hero member
Activity: 630
Merit: 731
Bitcoin g33k
yes, there is, if you really think automated random created things are really random, then think twice.

Ok, I will ... hold on a second ... finished.

Now, please tell me what the weather in South Florida will be on 2024/Feb/29 at 02:19 PM.
full member
Activity: 1162
Merit: 237
Shooters Shoot...
Quote
well you saying this stupid thing i know you didnt read my message at all, puzzle 64 start from 8000000000000000 to ffffffffffffffff i say start from eb851eb851eb8000 so yea, i save a lot of time from 8000000000000000 to Eb and the hex started at f7, so go F yourself we are not here making funny or stupid commenting things, so F you and i keep this pattern to myself, Good luck Smiley
Lol...I merely said it because you had a 1 in 8 chance of guessing correctly and you claim you have a good start for #66 but do not share, why? Maybe because you will be wrong? I have trillions of keys checked in each sub 48 bit range; so if you know the first 1 to 5 starting characters for #66, tell us, and I will tell you if it's been checked already.
hero member
Activity: 630
Merit: 731
Bitcoin g33k
it is completely pointless to "guess" or "estimate" a range since the author of the puzzle has already made a clear statement about it --> there IS NO PATTERN  Cool
However good luck to everybody!
full member
Activity: 1162
Merit: 237
Shooters Shoot...


I was checking exatly the same the other day, hi everyone im new into this puzzle, and im obsessed with it. Spend hours and hours looking for a pattern, and there is no pattern as the "owner" mentioned it but i was looking for the already found keys and i think i found something.

If someone is brute forcing this, you need to start from eb851eb851eb8000 to ffffffffffffffff, thats why this is not still be found, the hex is almost at the end of the range. Im bruteforcing this from feb851eb851eb800 to ffffffffffffffff at 25 MKey/s (yes is a little slow but is honest work Tongue ) and i will be checking from the back after finish a range.

I hope this helps anyone, and if i do please share something as i will share to 2 users of this forum (if i find the key) who gives me the idea Smiley


Regards from AR and sorry about my english.

based on what you say to start from that point of the range ?

so i was right, and i think where to start from for puzzle 66, i think i found a pattern. Ive also got a 1080 at a good price so im searching at 240 MKeys/s
Lol...okay, so where to start for puzzle 66? 20000000000000000?
newbie
Activity: 4
Merit: 0

I was checking exatly the same the other day, hi everyone im new into this puzzle, and im obsessed with it. Spend hours and hours looking for a pattern, and there is no pattern as the "owner" mentioned it but i was looking for the already found keys and i think i found something.

If someone is brute forcing this, you need to start from eb851eb851eb8000 to ffffffffffffffff, thats why this is not still be found, the hex is almost at the end of the range. Im bruteforcing this from feb851eb851eb800 to ffffffffffffffff at 25 MKey/s (yes is a little slow but is honest work Tongue ) and i will be checking from the back after finish a range.

I hope this helps anyone, and if i do please share something as i will share to 2 users of this forum (if i find the key) who gives me the idea Smiley


Regards from AR and sorry about my english.

based on what you say to start from that point of the range ?

so i was right, and i think where to start from for puzzle 66, i think i found a pattern. Ive also got a 1080 at a good price so im searching at 240 MKeys/s
member
Activity: 272
Merit: 20
the right steps towerds the goal
@Andzhig And if we increase one more character of address 16jY7qLJn & 'x' then most binaries are started from '111'

few examples -

16jY7qLJnxLQQRYPX5BLuCtcBs6tvXz8BE   1110000000100110101001101101010100100011010011001000100000110110000   7013536A91A6441B0
16jY7qLJnX9uchnyf26t3QJnsUf78Xdikb   1110010000101000111010000001111110010000001011001101111011100000   E428E81F902CDEE0
16jY7qLJnX9eX8j612s8fnbn6uzR48xjua   1110100000001101111010110011001110101001011001111010000010001111   E80DEB33A967A08F
16jY7qLJnx2EZZumnYFke3GutCrRnHKs1M   111010110100110101001101101010111010101000110011101011001010110000   3AD3536AEA8CEB2B0
16jY7qLJnx2ixrxCnTLSraerkgyB3YYAiT   1110110111111001110011010110000000110101011011011100110000011001   EDF9CD60356DCC19
16jY7qLJnxHBp3dqwV2kzYq1LucfZzgxsH   1110111010111001101010110011001101001101111100100111011100001101   EEB9AB334DF2770D
16jY7qLJnX2cZXJ78wV1ef42e7cLAZJ1Vn   1111111000101000011001011100011011011011111111101100001110000011   FE2865C6DBFEC383
16jY7qLJnxb7CHZyqBP8qca9d51gAjyXQN   1111011100000101000111110010011110110000100100010001001011010100 F7051F27B09112D4


Could this also be some logic?

can you shed more light on this issue
member
Activity: 185
Merit: 15
Two things you should never abandon: Family & BTC

Can i ask what did you mean by "bitcrack doesn't work when workspace is larger than 999.999" ?
jr. member
Activity: 56
Merit: 1
120 scan delete print for run 10% speed increase
Code:
from timeit import default_timer as timer
import secp256k1 as ice
import random
while True:
 stackk = 1000000
 target = "02ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630"
 number = round(random.getrandbits(120)/stackk)
 public = (ice.scalar_multiplication(number*stackk))
 startt = timer()
 checkk = (ice.point_sequential_increment(stackk,public)).hex()
 if target[2:66] in checkk:
  f=open("results.txt","a")
  f.write(str(target[2:66])+"-start number for key "+str(number)+"\n")
  f.close()
 print('Key/s: ' + str(stackk/(timer()-startt))[:7]  + ' Time:' + str(timer()-startt)[:3]+' start number for key:'+str(number))
jr. member
Activity: 56
Merit: 1


It is slow compared to ICE secp256k1. Twice the speed...However, I am currently creating a script that will be Full ICE - to search for lost parts of the private key. About 2 million per second per CPU thread.. Grin




I would love to see your 2 mil/sec as I am stuck on 500k/s with ice. Would be interested to see which route you went.

Edit: 2 mil+... CPU dependent. But that is on a public key hunt. So for those who want to try their luck.... It's set for 120 bit key...I guess if you link enough machines with enough CPU's you may hit in a few hundred years.

Code:
import secp256k1 as ice
from timeit import default_timer as timer
import random
import multiprocessing

cores = 1
perRound = 1000000
bitRange = 120
target_Key = '02ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630'
    
def new_Number():
    doneSet = set()
    rotate = True
    with open("120-Nums.txt", "r+") as textfile:  
        for checking in textfile: doneSet.add(str(checking.replace("\n","").replace(",", "")))
        while rotate != False:
            number = round(random.randint(2**(bitRange-1),2**bitRange)/perRound)
            if str(number) not in doneSet:
                rotate = False
                textfile.write(str(number) + "\n")
            if str(number) in doneSet:
                print('Collision')
    textfile.close()
    return number

def seek(r,cores):
    startStart = timer()
    dog = False
    while dog != True:
        number = new_Number()
        p = (ice.scalar_multiplication(number*perRound))
        start = timer()
        check = str((ice.point_sequential_increment(perRound, p)).hex())
        if target_Key[5:25] in check:
            print('Success: ' + str(number))
            print('Test Run Time Length: ' + str((timer()-startStart))[:6])
            with open("results.txt", "a") as completed:
                completed.write(str(p) + '   ' + str(number))
            completed.close()
            dog = True
        else:
            print('Core: ' + str(r) + '   Key/s: ' + str(perRound/(timer()-start))[:10]  + '   Time: ' + str(timer()-start)[:6] + '   RandInt: ' + str(number))

if __name__ == '__main__':
    jobs = []
    for r in range(cores):
        p = multiprocessing.Process(target=seek, args=(r,cores))
        jobs.append(p)
        p.start()
I tried your code with fastrand but the speed is similar
Code:
from timeit import default_timer as timer
import secp256k1 as ice
import fastrand
#import random
perRound = 1000000
target_Key = '031a864bae3922f351f1b57cfdd827c25b7e093cb9c88a72c1cd893d9f90f44ece'
#donset = set()
#number = round(fastrand.pcg32bounded(134217727)/perRound)
dog = False
while dog != True:
 number = round(fastrand.pcg32bounded(134217727)/perRound)
 #if str(dog) in str(dog):
  #ke = ice.privatekey_loop_h160(0,0,True,number).hex()
 public = (ice.scalar_multiplication(number*perRound))
 checkk = (ice.point_sequential_increment(perRound,public)).hex()
 start = timer()
 if target_Key[2:66] in checkk:
 #if "0c7aaf6caa7e5424b63d317f0f8f1f9fa40d5560" in (ke):
  f=open("result.txt","a")
  f.write(str(target_Key[2:66])+"-start number for key "+str(number)+"\n")
  #f.write(str(ke)+"-"+str(number)+"\n")
  f.close()
  #dog = True
 else:
  print('Key/s: ' + str(perRound/(timer()-start))[:7]  + '   Time: ' + str(timer()-start)[:3] + '   start number for key: ' + str(number))

27 puzzle address is collision test
newbie
Activity: 1
Merit: 0
I cannot get your @jolly_jocker code to run correctly.

However, I think what you are trying to achieve is using the known WIF key part and tumble searching the remaining characters to find the WIF private key. I am able to again, use the known key part and add a randomize search for the remaining part and output this in hexadecimal format. It is not any faster than a general hexadecimal search.

I am not sure if you can generate a WIF private key with a check sum and convert/compare ; and then print the WIF key again in the same script.
I do agree that this puzzle is about testing the strength and secure-ness of bitcoin with new, creative code.

This is a basic python script and variation of VanityGen:
Code:
import secrets
import base58
import binascii
from bitcoin import privtopub, pubtoaddr
import sys

vanity = "13zb1hQbWVsc2S7ZTZnP2G4undNNpdh5so"
btc_addr = ""

while btc_addr[:len(vanity)] != vanity:
    prefix = "KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qa"
    alphabet = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"
    postfix = ''.join(secrets.choice(alphabet) for i in range(18))
    first_encode = base58.b58decode(prefix + postfix)
    private_key_full = binascii.hexlify(first_encode)
    private_key = private_key_full[2:-8]
    btc_pubkey = privtopub(private_key.decode())
    btc_addr = pubtoaddr(btc_pubkey)
    
print(private_key.decode())
print(btc_pubkey)
print(btc_addr)

sys.exit()


Hello, Thanks for all your posts !
I modified your script a little, so that it loads the database of all BTC addresses plus searches for puzzle patterns at the same time. Grin
Code:
import os
import time
import secrets
import base58
import binascii
from bitcoin import privtopub, pubtoaddr
import sys
import multiprocessing
from halo import Halo
import random, string
import threading

print("Loading TXT Please Wait and Good Luck...")  
filename ='list.txt'
with open(filename) as f:
    add = f.read().split()
add = set(add)

spinner = Halo(text='Loading', spinner='dots')

r = 0
cores=1 #CPU Control Set Cores
def seek(r):
        F = []
        while True:
            prefix = "KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qa"
            alphabet = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"
            postfix = ''.join(secrets.choice(alphabet) for i in range(18))
            first_encode = base58.b58decode(f'{prefix}{postfix}')
            private_key_full = binascii.hexlify(first_encode)
            private_key = private_key_full[2:-8]
            btc_pubkey = privtopub(private_key.decode())
            btc_addr = pubtoaddr(btc_pubkey)
            spinner.start()
              
            if btc_addr.startswith("13zb1"):
               t = time.ctime()
               spinner.stop()
               print("Pattern Found:",t, btc_addr, private_key)
               print("\n continue...\n")
               spinner.start()

            if btc_addr in add:
               t = time.ctime()
               spinner.stop()
               print("Winner Found!:",t, btc_addr, private_key)  
               f=open(u"Winner.txt","a") #Output File
               f.write('WIF private key: ' + str(private_key) + '\n' +
                            'public key: ' + str(btc_pubkey) + '\n' +
                            'BTC address: ' + str(btc_addr) + '\n\n')
               f.close()
               sleep(1)
               break

#CPU Control Command
if __name__ == '__main__':
        os.system('clear')
        t = time.ctime()
        print(t, "GOOD LUCK AND HAPPY HUNTING...")
        
        jobs = []
        for r in range(cores):
                p = multiprocessing.Process(target=seek, args=(r,))
                jobs.append(p)
                p.start()


HI
after run code:


Code:
Wed Jan 11 16:00:39 2023 GOOD LUCK AND HAPPY HUNTING...
⠙ LoadingProcess Process-1:
Traceback (most recent call last):
  File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
    self.run()
  File "/usr/lib/python3.8/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "ffff.py", line 32, in seek
    btc_pubkey = privtopub(private_key.decode())
  File "/usr/local/lib/python3.8/dist-packages/bitcoin/main.py", line 294, in privkey_to_pubkey
    raise Exception("Invalid privkey")
Exception: Invalid privkey

sr. member
Activity: 345
Merit: 250


It is slow compared to ICE secp256k1. Twice the speed...However, I am currently creating a script that will be Full ICE - to search for lost parts of the private key. About 2 million per second per CPU thread.. Grin




I would love to see your 2 mil/sec as I am stuck on 500k/s with ice. Would be interested to see which route you went.

Edit: 2 mil+... CPU dependent. But that is on a public key hunt. So for those who want to try their luck.... It's set for 120 bit key...I guess if you link enough machines with enough CPU's you may hit in a few hundred years.

Code:
import secp256k1 as ice
from timeit import default_timer as timer
import random
import multiprocessing

cores = 1
perRound = 1000000
bitRange = 120
target_Key = '02ceb6cbbcdbdf5ef7150682150f4ce2c6f4807b349827dcdbdd1f2efa885a2630'
   
def new_Number():
    doneSet = set()
    rotate = True
    with open("120-Nums.txt", "r+") as textfile: 
        for checking in textfile: doneSet.add(str(checking.replace("\n","").replace(",", "")))
        while rotate != False:
            number = round(random.randint(2**(bitRange-1),2**bitRange)/perRound)
            if str(number) not in doneSet:
                rotate = False
                textfile.write(str(number) + "\n")
            if str(number) in doneSet:
                print('Collision')
    textfile.close()
    return number

def seek(r,cores):
    startStart = timer()
    dog = False
    while dog != True:
        number = new_Number()
        p = (ice.scalar_multiplication(number*perRound))
        start = timer()
        check = str((ice.point_sequential_increment(perRound, p)).hex())
        if target_Key[5:25] in check:
            print('Success: ' + str(number))
            print('Test Run Time Length: ' + str((timer()-startStart))[:6])
            with open("results.txt", "a") as completed:
                completed.write(str(p) + '   ' + str(number))
            completed.close()
            dog = True
        else:
            print('Core: ' + str(r) + '   Key/s: ' + str(perRound/(timer()-start))[:10]  + '   Time: ' + str(timer()-start)[:6] + '   RandInt: ' + str(number))

if __name__ == '__main__':
    jobs = []
    for r in range(cores):
        p = multiprocessing.Process(target=seek, args=(r,cores))
        jobs.append(p)
        p.start()
jr. member
Activity: 59
Merit: 1
But it doesn't have multithread, and it's not as fast as others.

The problem with multithread is that the output can be in different order than the Input file, if that doesn't matter to your output then it is OK.

Why you only need the output address or rmd hash ?

Regards!

Doesn't matter cause it's for:

Experimental purposes with different languages and scripts, learn many more!!!, and have fun with the impossible luck.

BTW, my DM inbox is open.

Thanks for reply! Smiley
hero member
Activity: 862
Merit: 662
But it doesn't have multithread, and it's not as fast as others.

The problem with multithread is that the output can be in different order than the Input file, if that doesn't matter to your output then it is OK.

Why you only need the output address or rmd hash ?

Regards!
jr. member
Activity: 59
Merit: 1
Anyone knows a C program that can convert hexadecimal integer like "0000000000000000000000000000000000000000000000000000f7051f27b09112d4" to hash 160 or btc address, but from a text file or better in parallel in bash?

The only one I've found something similar is brainlayer https://github.com/ryancdotorg/brainflayer

your_generator | brainflayer -v -b example.blf

But it doesn't have multithread, and it's not as fast as others.

Thank you, happy holidays, and greetings.  Grin
member
Activity: 185
Merit: 15
Two things you should never abandon: Family & BTC
For half a year I use my cpu to scan for the #67 puzzle. I am 0.000039% scanned addresses of the range ;( A lifetime more to wait. I wonder how many supercomputers out there scan the bitcoin chain for these keys every minute. If you remember the pipeline hack, the FBI had already the privkey for the address used and it was not obtain during a hack or seize.
But Why the 67th puzzle ?.. why not the easier one? I mean the amount of private keys in 66 is unbelievably enormous already .. why go for the double of that gigantic range?

It's all about luck isn't it? Everyone is on the 66th puzzle. I just wanted to go on a different one. And the mining power cost is arround 15-20$ a month, I don't even feel it or me being disturbed about it.

The factor that you're forgetting here is "probability" .. when you target the 67th, you are basically cutting your probability of being lucky in half .. I'm just saying, but you can do whatever you want of course
member
Activity: 429
Merit: 52
For half a year I use my cpu to scan for the #67 puzzle. I am 0.000039% scanned addresses of the range ;( A lifetime more to wait. I wonder how many supercomputers out there scan the bitcoin chain for these keys every minute. If you remember the pipeline hack, the FBI had already the privkey for the address used and it was not obtain during a hack or seize.
But Why the 67th puzzle ?.. why not the easier one? I mean the amount of private keys in 66 is unbelievably enormous already .. why go for the double of that gigantic range?

It's all about luck isn't it? Everyone is on the 66th puzzle. I just wanted to go on a different one. And the mining power cost is arround 15-20$ a month, I don't even feel it or me being disturbed about it.
member
Activity: 185
Merit: 15
Two things you should never abandon: Family & BTC
For half a year I use my cpu to scan for the #67 puzzle. I am 0.000039% scanned addresses of the range ;( A lifetime more to wait. I wonder how many supercomputers out there scan the bitcoin chain for these keys every minute. If you remember the pipeline hack, the FBI had already the privkey for the address used and it was not obtain during a hack or seize.
But Why the 67th puzzle ?.. why not the easier one? I mean the amount of private keys in 66 is unbelievably enormous already .. why go for the double of that gigantic range?
hero member
Activity: 630
Merit: 731
Bitcoin g33k
either you scan through the whole range which is time and ressource consuming or you take the short-cut  Wink
Jump to: