def generic_secret_gen(): print("test_generic_secret_gen...") clientObj = mpc_crypto.GenericSecret(CLIENT) serverObj = mpc_crypto.GenericSecret(SERVER) clientObj.initGenerate(256) serverObj.initGenerate(256) exec_client_server(clientObj, serverObj) print(" ok") return clientObj, serverObj
def generic_secret_import(value=None): print("test_generic_secret_import...") if not value: value = os.urandom(32) clientObj = mpc_crypto.GenericSecret(CLIENT) serverObj = mpc_crypto.GenericSecret(SERVER) clientObj.initImport(value) serverObj.initImport(value) exec_client_server(clientObj, serverObj) print(" ok") return clientObj, serverObj
def run_derive(inShare): if args.type != 'BIP32': sys.exit("Derive not supported for " + args.type) srcObj = mpc_crypto.GenericSecret(peer, inShare) with srcObj: obj = mpc_crypto.Bip32(peer) with obj: obj.initDerive(srcObj, args.index, args.hardened) exec_mpc_exchange(obj) obj.getDeriveResult() return obj.exportShare()
def run_import(inShare): print("Importing key...") if not inShare: sys.exit("Input share missing") if args.type == 'generic': obj = mpc_crypto.GenericSecret(peer) obj.initImport(inShare) else: sys.exit("Import not supported for " + args.type) with obj: exec_mpc_exchange(obj) print(" ok") return obj.exportShare()
def run_generate(): print("Generating key...") if args.type == 'EDDSA': obj = mpc_crypto.Eddsa(peer) obj.initGenerate() elif args.type == 'ECDSA': obj = mpc_crypto.Ecdsa(peer) obj.initGenerate() elif args.type == 'generic': obj = mpc_crypto.GenericSecret(peer) obj.initGenerate(args.size) else: sys.exit("Generate not supported for " + args.type) with obj: exec_mpc_exchange(obj) print(" ok") return obj.exportShare()