# US 12,192,381 B2 · System and method for secure multi-party computation based blockchain transaction

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,192,381 B2
- Document ID: US12192381B2
- Status: Granted
- Kind: B2
- Application number: 17/274,915
- Filed: 2019-09-09
- Published: 2022-02-10
- Granted: 2025-01-07
- Earliest claimed: 2018-09-11
- Assignees: Zengo Ltd
- Applicants: Kzen Networks Ltd
- Inventors: Tal Arieh Beery; Ouriel Ohayon; Omer Shlomovits; Gary Benattar
- Web page: https://patentgrep.com/patent/US12192381B2

## CPC

- H04L 9/3239: {involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD}
- H04L 9/3252: {using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes}
- H04L 9/085: {Secret sharing or secret splitting, e.g. threshold schemes}
- H04L 9/0861: {Generation of secret information including derivation or calculation of cryptographic keys or passwords}
- H04L 9/0891: {Revocation or update of secret information, e.g. encryption key update or rekeying}
- H04L 9/50: {using hash chains, e.g. blockchains or hash trees}
- H04L 2209/46: Secure multiparty computation, e.g. millionaire problem
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

System and method of creating a multi-party computation (MPC) cryptographic signature for a blockchain based computer network, including: generating at least one first share and second share of a cryptographic key, based on a distributed key generation MPC protocol, signing a received message with the at least one first share, receiving the message signed with the at least one first share, signing the message signed with the at least one first share with the at least one second share, sending the message signed with the at least one second share and the at least one first share to a full node of the computer network, and adding a transaction to a ledger of the computer network, in accordance with the received message signed by the at least one first share and the at least one second share.

## Claims

### Claim 1

A method of creating a multi-party computation (MPC) cryptographic signature for a blockchain based computer network, for signing a received message, the method comprising:
generating, by at least one first computing device, at least one first share of a cryptographic key, based on a distributed key generation MPC protocol;
generating, by at least one second computing device, at least one second share of the cryptographic key, based on the distributed key generation MPC protocol;
signing, by the at least one first computing device, the received message with the at least one first share;
receiving, by the at least one second computing device, the message signed with the at least one first share;
signing, by the at least one second computing device, the message signed with the at least one first share with the at least one second share;
sending, by the at least one second computing device, the message signed with the at least one second share and the at least one first share to a full node of the computer network;
validating that the message signed by the at least one first share and the at least one second share corresponds to a public cryptographic key of the computer network; and
adding a transaction to a ledger of the computer network, in accordance with the received message signed by the at least one first share and the at least one second share,
wherein the message signed by the at least one first share and the at least one second share corresponds to a private cryptographic key of the computer network.

### Claim 2 (depends on 1)

The method of claim 1, wherein the distributed key generation MPC protocol is based on at least one of an elliptic curve digital signature algorithm (ECDSA), Edwards-curve digital signature algorithm (EdDSA) and a Schnorr signature algorithm.

### Claim 3 (depends on 1)

The method of claim 1, wherein the total number of the at least one first share and the at least one second share is smaller than or equal to the total number of the at least one first computing device and the at least one second computing device.

### Claim 4 (depends on 3)

The method of claim 3, wherein the total number of the at least one first share and the at least one second share is two, and wherein the total number of the at least one first computing device and the at least one second computing device is two.

### Claim 5 (depends on 1)

The method of claim 1, further comprising connecting the at least one second computing device to the full node of the computer network.

### Claim 6 (depends on 1)

The method of claim 1, wherein the distributed key generation MPC protocol comprises hierarchical deterministic key generation, and wherein each new generated key is based on a previously generated key.

### Claim 7 (depends on 1)

The method of claim 1, further comprising applying a key rotation protocol on the at least one first share and on the at least one second share for each new transaction.

### Claim 8 (depends on 1)

The method of claim 1, further comprising carrying out message authentication by the at least one first computing device.

### Claim 9 (depends on 1)

The method of claim 1, further comprising communicating with an external server to retrieve authentication data for recovery for at least one of the at least one first computing device and the at least one second computing device.

### Claim 10 (depends on 9)

The method of claim 9, further comprising:
storing the at least one second share at the external server;
detecting that the at least one second computing device is offline;
sending the at least one second share to the at least one first computing device; and
authenticating the at least one second share by the at least one first computing device.

### Claim 11 (depends on 9)

The method of claim 9, further comprising:
storing the at least one first share at the external server;
detecting that the at least one first computing device is offline;
sending the at least one first share to the at least one second computing device; and
authenticating the at least one first share by the at least one second computing device.

### Claim 12

A system for creation of a multi-party computation (MPC) cryptographic signature for a blockchain based computer network for a message for signing received by at least one first computing device to sign the received message with a generated at least one first share of a cryptographic key, based on a distributed key generation MPC protocol, the system comprising:
at least one second computing device, configured to:
generate at least one second share of the cryptographic key, based on the distributed key generation MPC protocol;
receive, from the at least one first computing device, the message signed with the at least one first share; and
sign with the at least one second share the received message signed with the at least one first share, and
a full node of the computer network, in communication with the at least one second computing device, the full node configured to:
receive, from the at least one second computing device, the message signed with the at least one second share; and
add a transaction to a ledger of the computer network, in accordance with the received message signed by the at least one first share and the at least one second share,
wherein the message signed by the at least one first share and the at least one second share corresponds to a private cryptographic key of the computer network,
and wherein the at least one first computing device is further configured to validate that the message signed by the at least one first share and the at least one second share corresponds to a public cryptographic key of the computer network.

### Claim 13 (depends on 12)

The system of claim 12, wherein the at least one second computing device is connected to the full node of the computer network.

### Claim 14 (depends on 12)

The system of claim 12, wherein the distributed key generation MPC protocol comprises hierarchical deterministic key generation, and wherein each new generated key is based on a previously generated key.

### Claim 15 (depends on 12)

The system of claim 12, wherein a key rotation protocol is applied on the at least one first share and on the at least one second share for each new transaction.

### Claim 16 (depends on 12)

The system of claim 12, wherein the at least one first computing device is further configured to communicate with an external server to retrieve authentication data for recovery for at least one of the at least one first computing device and the at least one second computing device.

### Claim 17 (depends on 16)

The system of claim 16, wherein the at least one second share is stored at the external server, and wherein upon detection that the at least one second computing device is offline the external server is to send the at least one second share to the at least one second computing device and authenticate the at least one second share by the at least one first computing device.

### Claim 18 (depends on 16)

The system of claim 16, wherein the at least one first share is stored at the external server, and wherein upon detection that the at least one first computing device is offline the external server is to send the at least one first share to the at least one first computing device and authenticate the at least one first share by the at least one second computing device.
