Or such an option.
Take 1000 samples of 50 from the set 00-99 ()
>>> 1
>>> 2
>>> 3
>>> 4
>>> 5
480 huuuuuuuuuurraaaaaaaaaa... ['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '50', '51', '52', '53', '54', '55', '56', '57', '58', '59', '60', '61', '62', '63', '64', '65', '66', '67', '68', '69', '70', '71', '72', '73', '74', '75', '76', '77', '78', '79', '80', '81', '82', '83', '84', '85', '86', '87', '88', '89', '90', '91', '92', '93', '94', '95', '96', '97', '98', '99'] 100 ['46', '77', '96', '34', '68', '95', '45', '60', '30', '96', '90', '63', '29', '23', '56', '65', '28', '84', '69', '43', '84', '08', '84', '36', '64', '83', '70', '91', '20', '28', '73', '73', '58', '68', '72', '92', '61', '85', '70', '52', '24', '58', '55', '54', '54', '93', '12', '64', '44', '31'] 50 ['30'] ['56'] ['83'] ['77'] ['31'] ['20'] ['64'] ['20'] ['28'] ['55']
5 samples come across
['
46, '77', '96', '34', '68', '95', '45', '60', '
30', '96', '90', '63', '29', '23', '
56', '65', '28', '84', '69', '43', '84', '08', '84', '36', '64', '83', '70', '91', '20', '28', '73', '73', '58', '68', '72', '92', '61', '85', '70', '52', '24', '58', '55', '54', '54', '93', '12', '64', '44', '31'] 50
['
30'] ['
56'] ['83'] ['77'] ['31'] ['20'] ['64'] ['20'] ['28'] ['55']
and that only 5000 mixed sets in which dropped out with the required number.
now we take each of these 5000 sets and select 1000 from each of them, 30 samples.
finds the first time (but you may need 20-30, etc.)
174 huuuuuuuuuurraaaaaaaaaa... ['
46', '77', '96', '34', '68', '95', '45', '60', '30', '96', '90', '63', '29', '23', '56', '65', '28', '84', '69', '43', '84', '08', '84', '36', '64', '83', '70', '91', '20', '28', '73', '73', '58', '68', '72', '92', '61', '85', '70', '52', '24', '58', '55', '54', '54', '93', '12', '64', '44', '31'] 50 ['46', '73', '31', '84', '83', '95', '63', '72', '95', '68', '68', '58', '30', '77', '56', '83', '20', '45', '95', '84', '64', '28', '65', '70', '85', '55', '08', '85', '68', '83'] 30 ['30'] ['56'] ['83'] ['77'] ['31'] ['20'] ['64'] ['20'] ['28'] ['55']
666 huuuuuuuuuurraaaaaaaaaa... ['46', '77', '96', '34', '68', '95', '45', '60', '30', '96', '90', '63', '29', '23', '56', '65', '28', '84', '69', '43', '84', '08', '84', '36', '64', '83', '70', '91', '20', '28', '73', '73', '58', '68', '72', '92', '61', '85', '70', '52', '24', '58', '55', '54', '54', '93', '12', '64', '44', '31'] 50 ['92', '56', '73', '12', '34', '73', '96', '90', '95', '58', '20', '93', '83', '60', '63', '84', '58', '68', '31', '28', '77', '23', '72', '54', '55', '30', '64', '70', '93', '23'] 30 ['30'] ['56'] ['83'] ['77'] ['31'] ['20'] ['64'] ['20'] ['28'] ['55']
now can search further in the same way for 17 parts, but it takes a long time or choose from 30
and then, in the end, for the first choice from 100 to 50 we take 1000 and then for each 1000 1000 already 1000000 and 17 parts from 30 20-30 20000000 (using a stirring of 17 on a PC it takes 1 stirring per day approximately)
or search in another way
how to choose from 30 parts.
can create as many sets as you like from fixed positions and run reading lines
we have a string blablabla
123456789
pos 2 4 6 8
2 4 6 8 > 2468
pos 1 3 4 7
1 3 4 7 > 1347
n this case,need to run only 1000x1000 1,000,000 lines (in several copies of the program, for each program you need its own set of random 1,000,000)
and position traps when fishing from 30 parts what you can think of
pos 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17...
pos 2 4 6 8 10 12 14 16...
pos 1 3 7 9...
pos 25 12 20 3...
***
Or try to iterate over the private keys (not compressed in short). Someone could still hack this.
https://twitter.com/UnderTheBreach/status/1303316723186139136?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1303316723186139136%7Ctwgr%5E%7Ctwcon%5Es1_&ref_url=https%3A%2F%2F2bitcoins.ru%2Fvzlomat-koshelek-s-69370-bitkoinami%2F forwarded
https://www.blockchain.com/btc/address/bc1qa5wkgaew2dkv56kfvj49j0av5nml45x9ek9hz6And they wrote that out of 15+ a password from a set of letters and numbers cannot be cracked faster than 100 years.
Or the author of the puzzle, if bitcoin starts to cost 500 thousand dollars (0,6 > ~ 300000$), will bring everything back to himself.
Either he owns thousands of bitcoins and doesn't care or we need to hurry.
We have 17 to 15 characters (123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz) long.
the private owner himself lenght is 51...
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip + 17 or
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip7 + 16
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip8 + 16
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip9 + 16
etc...
from bit import Key
from bit.format import bytes_to_wif
import random
import time
i=1
while i <= 100000000:
try:
while True:
a = "5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip"
c1 = random.choice("789")
c2 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c3 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c4 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c5 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c6 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c7 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c8 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c9 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c10 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c11 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c12 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c13 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c14 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c15 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c16 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
c17 = random.choice("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")
b = (a+c1+c2+c3+c4+c5+c6+c7+c8+c9+c10+c11+c12+c13+c14+c15+c16+c17)
print(b)
key1 = Key(b)
wif1 = bytes_to_wif(key1.to_bytes(), compressed=True)
key2 = Key(wif1)
addr1 = key2.address
print(addr1)
list =["16jY7qLJnxb7CHZyqBP8qca9d51gAjyXQN","13zb1hQbWVsc2S7ZTZnP2G4undNNpdh5so","1BY8GQbnueYofwSuFAT3USAhGjPrkxDdW9",
"1MVDYgVaSN6iKKEsbzRUAYFrYJadLYZvvZ","19vkiEajfhuZ8bs8Zu2jgmC6oqZbWqhxhG","17aPYR1m6pVAacXg1PTDDU7XafvK1dxvhi"]
if addr1 in list:
print(key2,wif1)
s5 = str(b)
f=open(u"C:/a.txt","a")
f.write(s5 + '\n')
f.close()
break
except:
pass
i=i+1
[/size]
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip9TCtAvUfKhoFxYTc9
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip7bv5RMSuoznp2uhqe
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip8BrrMP9oEfbvD94YX
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip9a1SzEwmAvpT26x4C
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip9KdgPtUyZKWvJC4ZF
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip8fH4ZZ69fWw6BdtDv
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip78tWUnQ6qF8yXcaY2
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip7rJRmZ6friVeM1qc6
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip9UAa2ekurdKcPF4My
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip8dYitTcwJfxXCGfeZ
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip9bKNcfneeyf6CUUgw
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip9YbKx2dJB5efJtfNy
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip9Ygtosb3g6gF4Y5DM
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip9ovmK8kCJkCfDEi9Y
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip9bAdqx6zqtTmwKH6x
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip817D7YjqpzHBJhqWx
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip9n7yTUMxnivSB5Vd7
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip8KtL7pfLmPRUxZPFL
5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip8MRboemYp2iaY5mph
[/size]
did not delve into the details of how he generates it this private but the main part goes through step by step (for each of 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz the same in order) as an option, see how much it will roll on the counter between the puzzles, maybe there is something to attach to, or it will copy dec.
It is not yet clear where he might be
1Me6EfpwZK5kQziBwBfvLiHjaPGxCKLoJi | 4611686018427387903
1NpYjtLira16LfGbGwZJ5JbDPh3ai9bjf4 | 9223372036854775807 8993229949524469768
16jY7qLJnxb7CHZyqBP8qca9d51gAjyXQN | 18446744073709551615
18ZMbwUFLMHoZBbfpCjUJQTCMCbktshgpe | 36893488147419103231
from bit import Key
from bit.format import bytes_to_wif
#print (int("0000000000000000000000000000000000000000000000007CCE5EFDACCF6808",16))
i = 9223372036854775807 # 9223372036854775807 #44218742292676575 1461501637330902918203684832716283019655932542464
while i <= 18446744073709551615 : # 18446744073709551615 115792089237316195423570985008687907852837564279074904382605163141518161494336
key1 = Key.from_int(i)
wif = bytes_to_wif(key1.to_bytes(), compressed=False)
wif2 = bytes_to_wif(key1.to_bytes(), compressed=True)
key2 = Key(wif)
key1 == key2
#print(hex(i))
#print(key1.address)
#print(key2.address)
print(i,wif,wif2) #(i,wif,wif2,key1.address,key2.address)
i=i+1
[/size]