I want to know How Baby Step Giant Step work and How Baby Step Giant Step calculate https://github.com/JeanLucPons/BSGSDid BSGS calculate private key by jump with Baby Step Giant Step algorithm? I mean number 2**119 to 2**120 or Did BSGS with point x (ECC) like kangaroo?
|
|
|
I found hack page or may be webmaster hide page (may be scam) this page random bitcoin address generator www.50pansa.info/random.htmlso, have any brute force address on java script I not sure this script is clean or not, just fine to safety file on github (however it is lowly) Can possible anybody help to modify to brute force ? it can run on mobile easy
|
|
|
some idea Can someone Fork BitCrack to version for puzzle #64 only BitCrackPuzzle64.exe some detail Create database from firebase free version (1GB storage) pool scanned database split scan from 100,000,000 keys to 1 slot (or if too much may be = 10,000,000) so, will got 92233720369 slot random 1 from 92233720369 slot and scan if random slot number not have store on database then begin scan that slot but if random slot number have store on database already, then scan new one slot second slot will start from 9223372036854775808+100000000 = 9223372036954775808 slot number 999 will = 9223372036854775808+100000000*999 = 9223372136654775808 when scan complete slot sent request to record slot on firebase database that mean that slot already scan when other people scan will be check same system and skip slot not found to ther slot options make option -slot (number) for can custom order to scan if number slot have on record give error message "slot 999 already scanned" firebase c++ https://firebaseopensource.com/projects/firebase/quickstart-cpp/just sn idea not serious now we work some same thing with burn resource out (many people do same job same keyspace but not fould this system will be help to skip address that already scan
|
|
|
on think about puzzle #64 and other private key may be on some where people not yet scan
calculate time scan 1 day from start and skip it may be save time I think every start from start point will be scan same
some where not from start and middle(half)
|
|
|
are you using the latest version of PyWallet? (that has been updated recently by jackjack) or are you using the old version? Also, where is your wallet.dat actually located? The --datadir value you are using is where Python should be installed to... not where your wallet.dat is likely to be located unless you manually copied it there. I copy wallet.dat to folder for test Try jackjack pywallet.py got same result python pywallet.py --dumpwallet --wallet=C:\python\27\008\wallet.dat (22, 'Invalid argument -- C:\\python\\27\\008\\wallet.dat: unexpected file type or format') ERROR:root:Couldn't open wallet.dat/main. Try quitting Bitcoin and running this again. I test change wallet.dat to other one normal (this file success to dumpwallet) result can dumpwallet success no problem (use same command) actually file that have problem this one , when I copy back to bitcoin data folder and run bitcoin again and close program correct and try dumpwallet it is work normal Just want to know how to fix it (not serious ) this file have problem when copy/rename from bitcoin open and not close (between use) inside file will have all data still in there but some locked file when using or head data have problem I think if bitcoin program error , hang, freeze, not respond, make file have problem to read program not close normal
|
|
|
Is there any way to generate all privat keys with compressed and uncompressed and save them to txt file with 100MB Splited size?
starting from: 000000000000000000000000000000000000000000000001A838B13505B26867 ending on: 000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Just using python script running you can find easy I know you want to use very fast key generate like bitcrack not yet have someone help to modify to save to file
|
|
|
Can possible update code to write file output
may be good for export to file is better print out if it is massive may be 1 million or billion key it need to save to file
|
|
|
python pywallet.py --dumpwallet --datadir=C:\python\27\ >wallet.txt ERROR:root:Couldn't open wallet.dat/main. Try quitting Bitcoin and running this again.
I test already by run bitcoin program again follow error message tell to know it is work fine wallet.dat can use with pywallet.py dumpwallet success but if I can not run bitcoin program again to fix it , How can I fix this wallet.dat if can not open any bitcoin program to fix it or wrong version may be old version it will make wallet.dat error or not
|
|
|
test use pywallet.py how to fix this is test , not have any bitcoin
I try test using pywallet.py dumpwallet from wallet.dat
with normal file try create new wallet thousand python pywallet.py --dumpwallet --datadir=C:\python\27\ >wallet.txt
pywallet.py convert to file success no problem
but I try create wallet new one test and rename wallet.dat file before close and close bitcoin program, bitcoin program error
then I use wallet.dat that copy before close bitcoin program
python pywallet.py --dumpwallet --datadir=C:\python\27\ >wallet.txt ERROR:root:Couldn't open wallet.dat/main. Try quitting Bitcoin and running this again.
(using python 2.7)
|
|
|
Interesting tool. Is it possible to feed the tool with a list of millions of BTC addresses and the tool will try to find a private key to one of the BTC addresses in the list? Or is it only possible to specify an address and limit the search radius like with the puzzle searches e.g. puzzle #64?
BitCrack is very very great tools but not yet have power enough for scan 265 bit key yes, you can try use BitCrack with real bitcoin I try it , it works you can try on list of million bitcoin have balance I testing by start from not so far from private key millions key, bitcrack found key (key for test by generate) but problem is range between bitcoin is over 1 quintilliard not easy to found key bitcrack no limited scan, unlimited, problem is range too high and very very large too much for puzzle #64 bitcrack still scan very long time a half year because individual scan for group scan is just 1/9 of all range
|
|
|
if want to reverse address to RIPEMD160 for recheck is correct (or use convert address to RIPEMD160)
Do you have simple code?
|
|
|
or sorry, that mean actually all is scam?
|
|
|
from OP at December 16, 2017 until to now (4 year) not yet success recover this bitcoin?
|
|
|
one last thing I still doubt about kangaroo with public key how to kangaroo use public key
now I know from script kangaroo convert public key to public point number then what next if public is compress script uncompressed and split uncompressed public key to X and Y and convert from hex to decimal number then what next how to process point x decimal to reference calculate tame.txt and wild.txt
|
|
|
Can any help to save file tame.txt and wild.txt from kangaroo.exe
kangaroo.exe save file in binary right I can not read it After saving a work file, export it. That will create a readable text document. You can use this python code. Run with nameoffile.py --wexport #!/usr/bin/env python3 # -*- coding: utf-8 -*-
import sys, os if sys.version_info.major<3: print("Python3 required") sys.exit(0)
import argparse from struct import unpack from binascii import hexlify,unhexlify from math import log2
HEADW = 0xFA6A8001 # Full work file HEADK = 0xFA6A8002 # Kangaroo only file
HASH_SIZE = 2**18
TAME=False WILD=True
def bytes_to_num(b): return int(hexlify(b), 16)
def GetTimeStr(dTime): tmp = '' nbDay = dTime / 86400.0 if nbDay >= 1: nbYear = nbDay / 365.0 if nbYear > 1: if nbYear < 5: tmp += "%.1fy" % (nbYear) else: tmp += "%gy" % (nbYear) else: tmp += "%.1fd" % (nbDay)
else:
iTime = dTime nbHour = ((iTime % 86400) / 3600) nbMin = (((iTime % 86400) % 3600) / 60) nbSec = (iTime % 60)
if nbHour == 0: if nbMin == 0: tmp += "%02ds" % (nbSec) else: tmp += "%02d:%02d" % (nbMin, nbSec) else: tmp += "%02d:%02d:%02d" % (nbHour, nbMin, nbSec)
return tmp
def checkhead(wf): head = unpack('I', wf.read(4))[0] if head==HEADW: return head else: print('HEADER ERROR %08x %08x' % (head, HEADW)) return False
def workinfo(workfile):
wf = open(workfile, 'rb') head = checkhead(wf) if not head: print('Invalid WorkFile Header') return version = unpack('I', wf.read(4))[0] dp1 = unpack('I', wf.read(4))[0] RangeStart = bytes(wf.read(32))[::-1] RangeEnd = bytes(wf.read(32))[::-1] x = bytes(wf.read(32))[::-1] y = bytes(wf.read(32))[::-1] count = unpack('Q', wf.read(8))[0] time = unpack('d', wf.read(8))[0]
print('Header : %08x' % head) print('Version : %d' % version) print('DP Bits : %08x' % dp1) print('Start : %x' % bytes_to_num(RangeStart)) print('Stop : %x' % bytes_to_num(RangeEnd)) print('PubKey X : %s' % hexlify(x).decode()) print('PubKey Y : %s' % hexlify(y).decode())
if count>0: print('Count : %d 2^%.3f' % (count, log2(count))) else: print('Count : %d' % (count))
print('Time : %s' % GetTimeStr(time))
wf.close()
def workexport(workfile):
wf = open(workfile, 'rb') head = checkhead(wf) if not head: print('Invalid WorkFile Header') return wf.seek(156,0) # Skip WorkFile header
tameFile = open('tame.txt','a') wildFile = open('wild.txt','a')
for h in range(HASH_SIZE): nbItem = unpack('I', wf.read(4))[0] maxItem = unpack('I', wf.read(4))[0] for i in range(nbItem): x = bytes(wf.read(16))[::-1] d = bytes(wf.read(16))[::-1]
sign = (bytes_to_num(d) & 0x80000000000000000000000000000000)>0 htype = (bytes_to_num(d) & 0x40000000000000000000000000000000)>0
if htype==TAME: tameFile.write('%05x%032x ' % (h, bytes_to_num(x))) tameFile.write('%032x\n' % (bytes_to_num(d) & 0x3fffffffffffffffffffffffffffffff)) else: wildFile.write('%05x%032x ' % (h, bytes_to_num(x))) if sign: wildFile.write('-') wildFile.write('%032x\n' % (bytes_to_num(d) & 0x3fffffffffffffffffffffffffffffff))
if args.verbose: sys.stdout.write('%s' % ('Tame' if htype==TAME else 'Wild')) sys.stdout.write(' %05x%032x ' % (h, bytes_to_num(x))) if sign: sys.stdout.write('-') sys.stdout.write('%032x\n' % (bytes_to_num(d) & 0x3fffffffffffffffffffffffffffffff))
if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument('-f', dest='workfile', type=str, required=True, help='WorkFile path') parser.add_argument('--winfo', dest='winfo', action='store_true', help='Show workfile info') parser.add_argument('--wexport', dest='wexport', action='store_true', help='Export workfile into tame.txt and wild.txt') parser.add_argument('-v', dest='verbose', action='store_true', help='Verbose') args = parser.parse_args()
if args.workfile: print("[+] Workfile %s" % args.workfile)
if args.winfo: workinfo(args.workfile)
if args.wexport: workexport(args.workfile)
It will create 2 text files; tame.txt and wild.txt Thank you very much I using python nameoffile.py --wexport -f save.work got both file tame.txt and wild.txt Thanks
|
|
|
Can possible port BitCrack full version to BitCrack Lite version for small version cpu and port again to mobile device, android for convert old mobile device unused to be BitCrack android
|
|
|
This is normal ? the same 5 last digits every --continue salve file
I think it is normal that is Hexadecimal number see 15 character backward is difference What are you problem if want to check use Hexadecimal to Decimal converter https://www.rapidtables.com/convert/number/hex-to-decimal.htmlstart=E667E1F7F83AFE0A116B600527C2E3F5036D3A5B75FBB4580109BE466D0F818E next=E667E1F7F83AFE0A116B600527C2E3F5036D3A5B75FBB45803A3E326710F818E end=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364140 convert start=104215500000000013950216560791676821333686418379511238386252825580488178499982 next=104215500000000013950216560791676821333686418379511238386253013083367226179982 end=115792089237316195423570985008687907852837564279074904382605163141518161494336 calculate 104215500000000013950216560791676821333686418379511238386252825580488178499982-104215500000000013950216560791676821333686418379511238386253013083367226179982 = -187502879047680000 scan = 187502879047680000 key 187502879047680000 = hex = 29A24E004000000 five character difference , I think it is normal
|
|
|
my test is this kangaroo python puzzle #40 pubkey = 03a2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4 https://github.com/Telariust/pollard-kangaroo/blob/master/pollard-kangaroo-multi.pypython pollard-kangaroo-multi.py 40 03a2efa402fd5268400c77c20e574ba86409ededee7c4020e4b9f0edbee53de0d4 set verbose to 2 for show message it working process flag_verbose = 2 # 0, 1, 2 use verbose 2 script will write file tame.txt and wild.txt and on work message message show this [childs][tame-2#15344] newDP: X=ec9d5049bd4509aa41e1f5c312de1900d3eac4adba0692a41286b2497e520000 [childs][tame-2#15344] newDP: dK=0x102840cf7d0 if flag_verbose > 1: print("\n[childs][%s#%s] newDP: X=%064x " % (child_name,child_pid, Xcoord)); print("\n[childs][%s#%s] newDP: dK=0x%x " % (child_name,child_pid, dK)); two value on tame.txt and wild.txt is Xcoord dK but python code is very complicate I think code is work function Elliptic Curve on script not using library function I can see code but don't understand ECC calculate I use ruby script from this easy https://learnmeabitcoin.com/technical/public-keyand test print x y to see point = multiply(k, $g) # this point is the public key # convert x and y values of this point to hexadecimal x = point[:x].to_s(16).rjust(64, "0") y = point[:y].to_s(16).rjust(64, "0") puts "point[:x] = " + point[:x].to_s puts "point[:y] =" + point[:y].to_s this x is same value on tame.txt and wild.txt I don't know much but think may be same on python script done Can any help to save file tame.txt and wild.txt from kangaroo.exe kangaroo.exe save file in binary right I can not read it
|
|
|
I test already to check X, Y value from publickey it is not same x point on kangaroo I found x point value kangaroo generate is point x from elliptic curve https://learnmeabitcoin.com/technical/public-key # multiply generator point by this private key point = multiply(k, $g) # this point is the public key # convert x and y values of this point to hexadecimal kagaroo is use this x point from ECC my idea small testing just random privatekey in range and mutipy ECC to get x point may be million key to test compare that mean some address using same x point to multiply right
|
|
|
Mining a single block gives you more than 10x the amount of money as #64....
I know now reward halved to 6.25 BTC yes it 10x from puzzle #64 but it is need to do only solo mine alone and get all reward (and luckly) How much to get from pool mining for 30 day with RTX 3000 series or Tesla v100 ?
|
|
|
|