I lost 3 words out 12 and not sure of the order of the rest besides the first 3, and the last one. I wrote a Python script with mnemonic and the crypto.com wallet library, it works, to my knowledge atleast i still havent found my seed yet, im up to about 70mil combinations the code has processed, but the issue is I wanna see if anyone can make it faster, or just help me in general please.
Code:
import time
import itertools
from itertools import chain,repeat,count,islice
from collections import Counter
from mnemonic import Mnemonic
import json
from chainlibpy import Wallet
import sqlite3
Words2 = ["2048 mnemonic words"]
count = 0
found = False
mnemo = Mnemonic("english")
#Words I know, just not sure of position
Words2 = ['']
#Words I know
comos = ['word1', 'word2', 'word3']
def listToString(s):
listToStr = ' '.join([str(element) for element in s])
return listToStr
def createdb(address=None, mn=None):
con = sqlite3.connect("Combos.db")
cur = con.cursor()
cur.execute("create table if not exists Addresses (address INT PRIMARY KEY, mnemonic NTEXT)")
cur.execute("INSERT INTO Addresses (address, mnemonic) VALUES ('{}', '{}')".format(address, mn))
con.commit()
con.close()
def checkAddy(phrase):
global found
add = "address"
# testadd = "testaddressnolongerinuse"
wallet = Wallet(phrase)
if wallet.address == add:
createdb(wallet.address, phrase)
found = True
print("found")
def randomizeWord():
global count
global testing
global comos
randomw = random.sample(Words, 3)
words2 = random.sample(Words2, len(Words2))
comos.extend(words2)
comos.extend(randomw)
comis = ["lastword"]
comos.extend(comis)
isValid = mnemo.check(listToString(comos))
if isValid:
checkAddy(listToString(comos))
else:
comos = ['word1', 'word2', 'word3']
comos = ['word1', 'word2' 'word3']
count = count +1
print(str(count))
while found != True:
randomizeWord()