def Create_wallet_file(): # create the clinet object devices = Wait_for_devices() transport = Choose_device(devices) client = TrezorClient(transport) # Label your wallet, something like 'lumen'. print('Please provide label for new drive: ') label = input() print('Computer asked TREZOR for new strong password.\n') print('Please confirm action on your device.\n') trezor_entropy = client.get_entropy(32) urandom_entropy = os.urandom(32) passw = hashlib.sha256(trezor_entropy + urandom_entropy).digest() if len(passw) != 32: raise Exception("32 bytes password expected") bip32_path = [10, 0] passw_encrypted = client.encrypt_keyvalue(bip32_path, label, passw, False, True) wallet_info = {'label': label, 'bip32_path': bip32_path, 'password_encrypted_hex': binascii.hexlify(passw_encrypted).decode(), 'Address':Keypair.from_raw_seed(passw).address().decode()} #Store the wallet Information with open('Stellar_wallet.json', 'w') as fp: json.dump(wallet_info, fp) print('Please disconnect your Trezor hardware wallet.')
def main(): if 'encfs_root' not in os.environ: sys.stderr.write( '\nThis is not a standalone script and is not meant to be run independently.\n' ) sys.stderr.write( '\nUsage: encfs --standard --extpass=./encfs_aes_getpass.py ~/.crypt ~/crypt\n' ) sys.exit(1) devices = wait_for_devices() transport = choose_device(devices) client = TrezorClient(transport) rootdir = os.environ['encfs_root'] # Read "man encfs" for more passw_file = os.path.join(rootdir, 'password.dat') if not os.path.exists(passw_file): # New encfs drive, let's generate password sys.stderr.write('Please provide label for new drive: ') label = input() sys.stderr.write('Computer asked TREZOR for new strong password.\n') sys.stderr.write('Please confirm the action on your device ...\n') # 32 bytes, good for AES trezor_entropy = client.get_entropy(32) urandom_entropy = os.urandom(32) passw = hashlib.sha256(trezor_entropy + urandom_entropy).digest() if len(passw) != 32: raise ValueError("32 bytes password expected") bip32_path = [10, 0] passw_encrypted = client.encrypt_keyvalue(bip32_path, label, passw, False, True) data = { 'label': label, 'bip32_path': bip32_path, 'password_encrypted_hex': binascii.hexlify(passw_encrypted).decode('ascii') } json.dump(data, open(passw_file, 'w')) # Let's load password data = json.load(open(passw_file, 'r')) sys.stderr.write('Please confirm the action on your device ...\n') passw = client.decrypt_keyvalue( data['bip32_path'], data['label'], binascii.unhexlify(data['password_encrypted_hex']), False, True) print(passw)
def main(): if not 'encfs_root' in os.environ: sys.stderr.write('\nThis is not a standalone script and is not meant to be run independently.\n') sys.stderr.write('\nUsage: encfs --standard --extpass=./encfs_aes_getpass.py ~/.crypt ~/crypt\n') sys.exit(1) devices = wait_for_devices() transport = choose_device(devices) client = TrezorClient(transport) rootdir = os.environ['encfs_root'] # Read "man encfs" for more passw_file = os.path.join(rootdir, 'password.dat') if not os.path.exists(passw_file): # New encfs drive, let's generate password sys.stderr.write('Please provide label for new drive: ') label = input() sys.stderr.write('Computer asked TREZOR for new strong password.\n') sys.stderr.write('Please confirm action on your device.\n') # 32 bytes, good for AES trezor_entropy = client.get_entropy(32) urandom_entropy = os.urandom(32) passw = hashlib.sha256(trezor_entropy + urandom_entropy).digest() if len(passw) != 32: raise Exception("32 bytes password expected") bip32_path = [10, 0] passw_encrypted = client.encrypt_keyvalue(bip32_path, label, passw, False, True) data = {'label': label, 'bip32_path': bip32_path, 'password_encrypted_hex': binascii.hexlify(passw_encrypted)} json.dump(data, open(passw_file, 'wb')) # Let's load password data = json.load(open(passw_file, 'r')) sys.stderr.write('Please confirm action on your device.\n') passw = client.decrypt_keyvalue(data['bip32_path'], data['label'], binascii.unhexlify(data['password_encrypted_hex']), False, True) print(passw)
def main(): devices = wait_for_devices() transport = choose_device(devices) client = TrezorClient(transport) rootdir = os.environ['encfs_root'] # Read "man encfs" for more passw_file = os.path.join(rootdir, 'password.dat') if not os.path.exists(passw_file): # New encfs drive, let's generate password sys.stderr.write('Please provide label for new drive: ') label = raw_input() sys.stderr.write('Computer asked Trezor for new strong password.\n') sys.stderr.write('Please confirm action on your device.\n') # 32 bytes, good for AES trezor_entropy = client.get_entropy(32) urandom_entropy = os.urandom(32) passw = hashlib.sha256(trezor_entropy + urandom_entropy).digest() if len(passw) != 32: raise Exception("32 bytes password expected") bip32_path = [10, 0] passw_encrypted = client.encrypt_keyvalue(bip32_path, label, passw, False, True) data = { 'label': label, 'bip32_path': bip32_path, 'password_encrypted_hex': binascii.hexlify(passw_encrypted) } json.dump(data, open(passw_file, 'wb')) # Let's load password data = json.load(open(passw_file, 'r')) sys.stderr.write('Please confirm action on your device.\n') passw = client.decrypt_keyvalue( data['bip32_path'], data['label'], binascii.unhexlify(data['password_encrypted_hex']), False, True) print passw
#!/usr/bin/env python2 from trezorlib.client import TrezorClient from trezorlib.transport_hid import HidTransport from binascii import hexlify, unhexlify # for more details on this, see python-trezor client = TrezorClient(HidTransport(HidTransport.enumerate()[0])) bip32_path = client.expand_path("10015'/0'") masterkey = client.encrypt_keyvalue( bip32_path, "Enable labeling?", unhexlify( "fedcba98765432100123456789abcdeffedcba98765432100123456789abcdef"), True, True) print 'Key:', hexlify(masterkey)
#!/usr/bin/env python2 from trezorlib.client import TrezorClient from trezorlib.transport_hid import HidTransport from binascii import hexlify, unhexlify # for more details on this, see python-trezor client = TrezorClient(HidTransport(HidTransport.enumerate()[0])) bip32_path = client.expand_path("10015'/0'") masterkey = client.encrypt_keyvalue( bip32_path, "Enable labeling?", unhexlify("fedcba98765432100123456789abcdeffedcba98765432100123456789abcdef"), True, True ) print 'Key:', hexlify(masterkey)