I'm a total newbie for the bitcoin puzzle and bitcoin in general, but I have some experience in Python.
I wrote the following codes depending on my knowledge in Python.
first of all, I'm running these codes on 2 laptops [core i3 & core i5], but it runs extremely slow on both of them ~333keys/s
I tried to use Bitcrack but I couldn't manage to get it run on Kali Linux "I have just installed it couple of days ago so I'm not experienced with it"
I tried https://privatekeys.pw/scanner "which by the way shows that I'm generating ~15,000 Keys/s on both laptops!"
I tried to find a faster bitcoin library for Python but I couldn't manage to make it work like bitcoin standard library
anyway, here are my codes:
CODE #1
from bitcoin import *
while True:
x = random.randint(2**63, 2**64)
y = privtoaddr(x)
if y == '16jY7qLJnxb7CHZyqBP8qca9d51gAjyXQN':
print(hex(i))
break
i = 18446744073709551616
while i >= 9223372036854775808:
i -= 1
y = privtoaddr(i)
if y == '16jY7qLJnxb7CHZyqBP8qca9d51gAjyXQN':
print(hex(i))
break
Any suggestions to make it run faster or recommending faster tools are appreciated.
Thanks in advance.
***
and for this rubbish (sapper blade)
1 2 3 4 5 6 7 8 9 10
0 [(0, 0) 1
1 [(1, 0), (0, 1)] 2
2 [(2, 0), (1, 1), (0, 2)] 3
3 [(3, 0), (2, 1), (1, 2), (0, 3)] 4
4 [(4, 0), (3, 1), (2, 2), (1, 3), (0, 4)] 5
5 [(5, 0), (4, 1), (3, 2), (2, 3), (1, 4), (0, 5)] 6
6 [(6, 0), (5, 1), (4, 2), (3, 3), (2, 4), (1, 5), (0, 6)] 7
7 [(7, 0), (6, 1), (5, 2), (4, 3), (3, 4), (2, 5), (1, 6), (0, 7)] 8
8 [(8, 0), (7, 1), (6, 2), (5, 3), (4, 4), (3, 5), (2, 6), (1, 7), (0, ] 9
9 [(9, 0), (8, 1), (7, 2), (6, 3), (5, 4), (4, 5), (3, 6), (2, 7), (1, , (0, 9)] 10
10 [(9, 1), (8, 2), (7, 3), (6, 4), (5, 5), (4, 6), (3, 7), (2, , (1, 9)] 9
11 [(9, 2), (8, 3), (7, 4), (6, 5), (5, 6), (4, 7), (3, , (2, 9)] 8
12 [(9, 3), (8, 4), (7, 5), (6, 6), (5, 7), (4, , (3, 9)] 7
13 [(9, 4), (8, 5), (7, 6), (6, 7), (5, , (4, 9)] 6
14 [(9, 5), (8, 6), (7, 7), (6, , (5, 9)] 5
15 [(9, 6), (8, 7), (7, , (6, 9)] 4
16 [(9, 7), (8, , (7, 9)] 3
17 [(9, , (8, 9)] 2
18 [(9, 9)] 1
random search, step by step search...
from bit import Key
import time
list = ["16jY7qLJnxb7CHZyqBP8qca9d51gAjyXQN","13zb1hQbWVsc2S7ZTZnP2G4undNNpdh5so","1BY8GQbnueYofwSuFAT3USAhGjPrkxDdW9"]
#1 2 3 4 5 6 7 8 9 10
a0= [(0, 0)] # 1
a1= [(1, 0), (0, 1)] # 2
a2= [(2, 0), (1, 1), (0, 2)] # 3
a3= [(3, 0), (2, 1), (1, 2), (0, 3)] # 4
a4= [(4, 0), (3, 1), (2, 2), (1, 3), (0, 4)] # 5
a5= [(5, 0), (4, 1), (3, 2), (2, 3), (1, 4), (0, 5)] # 6
a6= [(6, 0), (5, 1), (4, 2), (3, 3), (2, 4), (1, 5), (0, 6)] # 7
a7= [(7, 0), (6, 1), (5, 2), (4, 3), (3, 4), (2, 5), (1, 6), (0, 7)] # 8
a8= [(8, 0), (7, 1), (6, 2), (5, 3), (4, 4), (3, 5), (2, 6), (1, 7), (0, ] # 9
a9= [(9, 0), (8, 1), (7, 2), (6, 3), (5, 4), (4, 5), (3, 6), (2, 7), (1, , (0, 9)] # 10
a10= [(9, 1), (8, 2), (7, 3), (6, 4), (5, 5), (4, 6), (3, 7), (2, , (1, 9)] # 9
a11= [(9, 2), (8, 3), (7, 4), (6, 5), (5, 6), (4, 7), (3, , (2, 9)] # 8
a12= [(9, 3), (8, 4), (7, 5), (6, 6), (5, 7), (4, , (3, 9)] # 7
a13= [(9, 4), (8, 5), (7, 6), (6, 7), (5, , (4, 9)] # 6
a14= [(9, 5), (8, 6), (7, 7), (6, , (5, 9)] # 5
a15= [(9, 6), (8, 7), (7, , (6, 9)] # 4
a16= [(9, 7), (8, , (7, 9)] # 3
a17= [(9, , (8, 9)] # 2
a18= [(9, 9)] # 1
while True:
v1 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18]) #[a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18]
v2 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v3 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v4 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v5 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v6 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v7 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v8 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v9 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v10= random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
print(len(v1),v1)
print(len(v2),v2)
print(len(v3),v3)
print(len(v4),v4)
print(len(v5),v5)
print(len(v6),v6)
print(len(v7),v7)
print(len(v8),v8)
print(len(v9),v9)
print(len(v10),v10)
ur = len(v1)*len(v2)*len(v3)*len(v4)*len(v5)*len(v6)*len(v7)*len(v8)*len(v9)*len(v10)
print(len(v1),len(v2),len(v3),len(v4),len(v5),len(v6),len(v7),len(v8),len(v9),len(v10),"=",ur)
time.sleep(3.0)
count = 0
if ur >= 1000000:
if ur <= 150000000:
i = 1
while i<=ur:
b1 = random.choice(v1)
b2 = random.choice(v2)
b3 = random.choice(v3)
b4 = random.choice(v4)
b5 = random.choice(v5)
b6 = random.choice(v6)
b7 = random.choice(v7)
b8 = random.choice(v8)
b9 = random.choice(v9)
b10= random.choice(v10)
#print(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10)
#print(b1,b2,b3,b4,b5,b6,b7,b8,b9,b10)
ex = b1+b2+b3+b4+b5+b6+b7+b8+b9+b10
#ex2 = (''.join(ex))
g = str(ex[0])+str(ex[1])+str(ex[2])+str(ex[3])+str(ex[4])+str(ex[5])+str(ex[6])+str(ex[7])+str(ex[8])+str(ex[9])+str(ex[10])+str(ex[11])+str(ex[12])+str(ex[13])+str(ex[14])+str(ex[15])+str(ex[16])+str(ex[17])+str(ex[18])+str(ex[19])
#print(g)
time.sleep(0.02)
ran = int(g)
count += 1
key1 = Key.from_int(ran)
addr1 = key1.address
if addr1 in list:
print (ran,"found!!!")
s5 = str(ran)
f=open(u"C:/a.txt","a")
f.write(s5 + '\n')
f.close()
break
else:
#pass
print(len(v1),len(v2),len(v3),len(v4),len(v5),len(v6),len(v7),len(v8),len(v9),len(v10),"= random step",ur, count,ran,len(g),addr1)
i=i+1
#else:
#pass
#else:
#pass
pass
from bit import Key
import time
import itertools
list = ["16jY7qLJnxb7CHZyqBP8qca9d51gAjyXQN","13zb1hQbWVsc2S7ZTZnP2G4undNNpdh5so","1BY8GQbnueYofwSuFAT3USAhGjPrkxDdW9"]
#1 2 3 4 5 6 7 8 9 10
a0= [(0, 0)] # 1
a1= [(1, 0), (0, 1)] # 2
a2= [(2, 0), (1, 1), (0, 2)] # 3
a3= [(3, 0), (2, 1), (1, 2), (0, 3)] # 4
a4= [(4, 0), (3, 1), (2, 2), (1, 3), (0, 4)] # 5
a5= [(5, 0), (4, 1), (3, 2), (2, 3), (1, 4), (0, 5)] # 6
a6= [(6, 0), (5, 1), (4, 2), (3, 3), (2, 4), (1, 5), (0, 6)] # 7
a7= [(7, 0), (6, 1), (5, 2), (4, 3), (3, 4), (2, 5), (1, 6), (0, 7)] # 8
a8= [(8, 0), (7, 1), (6, 2), (5, 3), (4, 4), (3, 5), (2, 6), (1, 7), (0, ] # 9
a9= [(9, 0), (8, 1), (7, 2), (6, 3), (5, 4), (4, 5), (3, 6), (2, 7), (1, , (0, 9)] # 10
a10= [(9, 1), (8, 2), (7, 3), (6, 4), (5, 5), (4, 6), (3, 7), (2, , (1, 9)] # 9
a11= [(9, 2), (8, 3), (7, 4), (6, 5), (5, 6), (4, 7), (3, , (2, 9)] # 8
a12= [(9, 3), (8, 4), (7, 5), (6, 6), (5, 7), (4, , (3, 9)] # 7
a13= [(9, 4), (8, 5), (7, 6), (6, 7), (5, , (4, 9)] # 6
a14= [(9, 5), (8, 6), (7, 7), (6, , (5, 9)] # 5
a15= [(9, 6), (8, 7), (7, , (6, 9)] # 4
a16= [(9, 7), (8, , (7, 9)] # 3
a17= [(9, , (8, 9)] # 2
a18= [(9, 9)] # 1
while True:
v1 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18]) #[a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18]
v2 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v3 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v4 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v5 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v6 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v7 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v8 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v9 = random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
v10= random.choice([a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18])
print(len(v1),v1)
print(len(v2),v2)
print(len(v3),v3)
print(len(v4),v4)
print(len(v5),v5)
print(len(v6),v6)
print(len(v7),v7)
print(len(v8),v8)
print(len(v9),v9)
print(len(v10),v10)
ur = len(v1)*len(v2)*len(v3)*len(v4)*len(v5)*len(v6)*len(v7)*len(v8)*len(v9)*len(v10)
print(len(v1),len(v2),len(v3),len(v4),len(v5),len(v6),len(v7),len(v8),len(v9),len(v10),"=",ur)
time.sleep(3.0)
count = 0
if ur >= 1000000:
if ur <= 150000000:
for x in itertools.product(v1, v2, v3, v4, v5, v6, v7, v8, v9, v10):
count += 1
d = ("".join(map(str, (item for sublist in x for item in sublist))))
ran = int(d)
key1 = Key.from_int(ran)
addr1 = key1.address
if addr1 in list:
print (ran,"found!!!")
s5 = str(ran)
f=open(u"C:/a.txt","a")
f.write(s5 + '\n')
f.close()
break
else:
#pass
print(len(v1),len(v2),len(v3),len(v4),len(v5),len(v6),len(v7),len(v8),len(v9),len(v10),"=",ur,count,ran,len(d),addr1) #("all steps",lenn,count,ran,len(d),addr1)
pass