diff --git a/jeeq.py b/jeeq.py old mode 100644 new mode 100755 index 949eaf7..c464342 --- a/jeeq.py +++ b/jeeq.py @@ -404,7 +404,7 @@ def print_help(e=False): exit(0) def generate_keys(curved=curveBitcoin, bitcoin=True, addv=0, G=generatorBitcoin): #will return private key < 2^256 - _r = generator.order() + _r = G.order() rand = ( '%013x' % long(random.random() * 0xfffffffffffff) )*5 pvk = (long(rand,16) >> 4)%_r P = pvk*G @@ -459,11 +459,15 @@ def generate_keys(curved=curveBitcoin, bitcoin=True, addv=0, G=generatorBitcoin) elif GetFlag('-d'): addv=int(GetArg('-v',0)) message=GetArg('-i') - private_key=GetArg('-k') + undecoded_private_key=GetArg('-k') + + private_key = '' + if len(undecoded_private_key)==64: + private_key=undecoded_private_key.decode('hex') # try hex first + if len(private_key)!=32: + private_key=DecodeBase58Check(undecoded_private_key)[1:33] # try base58check next - if len(private_key)==64: - private_key=private_key.decode('hex') - assert len(private_key)==32, 'Bad private key, you must give it in hexadecimal' + assert len(private_key)==32, 'Bad private key, you must give it in hexadecimal, or base58check' output=decrypt_message(private_key, message, verbose=True, generator=generatorBitcoin)