# US 12,113,914 B2 · Systems and methods for enforcing cryptographically secure actions in public, non-permissioned blockchains using bifurcated self-executing programs comprising shared digital signature requirements

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

- Number: US 12,113,914 B2
- Document ID: US12113914B2
- Status: Granted
- Kind: B2
- Application number: 18/465,942
- Filed: 2023-09-12
- Published: 2024-06-06
- Granted: 2024-10-08
- Earliest claimed: 2022-12-06
- Assignees: Citibank, N.A.
- Applicants: Citibank, N.A.
- Inventors: Shishir Singh; Jonathan Miles Collin Rosenoer; Andres Wolberg-Stok; Biser Dimitrov
- Web page: https://patentgrep.com/patent/US12113914B2

## CPC

- H04L 9/3247: {involving digital signatures}
- H04L 9/3252: {using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes}
- H04L 9/0825: {using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates}
- H04L 9/3255: {using group based signatures, e.g. ring or threshold signatures}
- H04L 9/3263: {involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements (network architectures or network communication protocols for supporting authentication of entities using certificates in a packet data network H04L63/0823)}
- 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

Systems and methods for a bifurcated self-executing program that wraps a first self-executing program (e.g., a first smart contract) on a blockchain within a second self-executing program (e.g., a second smart contract), in which the second self-executing program enforces the digital signature requirement. The bifurcated self-executing program comprises a single compiled self-executing program that combines the first self-executing program and the second self-executing program.

## Claims

### Claim 1

A system for conducting cryptographically secure actions in public, non-permissioned blockchains using a layer one blockchain solution featuring bifurcated self-executing programs that are compiled together and comprise shared digital signature requirements, the system comprising:
a blockchain node for a cryptographically secure network, wherein the blockchain node comprises one or more processors; and
a non-transitory computer-readable medium having instructions recorded thereon that, when executed by the one or more processors, cause operations comprising:
receiving a first request, at a bifurcated self-executing program, to perform a first cryptographically secure blockchain action on the cryptographically secure network, wherein the first request has a first digital signature characteristic, and wherein the first digital signature characteristic comprises a variable defined in one or more lines of code of the bifurcated self-executing program, wherein the bifurcated self-executing program comprises a combination of a plurality of individual self-executing programs that cannot be altered once the bifurcated self-executing program is deployed;
in response to receiving the first request, processing the first request with a first self-executing program of the bifurcated self-executing program, wherein the first self-executing program comprises a first function subset defined in the one or more lines of code of the bifurcated self-executing program;
determining, based on the first self-executing program, whether the first digital signature characteristic corresponds to a digital signature requirement for the bifurcated self-executing program; and
in response to determining that the first digital signature characteristic corresponds to the digital signature requirement, processing the first request with a second self-executing program of the bifurcated self-executing program to perform the first cryptographically secure blockchain action, wherein the second self-executing program comprises a second function subset defined in the one or more lines of code of the bifurcated self-executing program.

### Claim 2

A method for conducting cryptographically secure blockchain actions in public, non-permissioned blockchains using a layer one blockchain solution featuring bifurcated self-executing programs, the method comprising:
receiving a first request, at a bifurcated self-executing program, to perform a first blockchain action, wherein the first request has a first digital signature characteristic, wherein the bifurcated self-executing program comprises a combination of a plurality of individual self-executing programs that cannot be altered once the bifurcated self-executing program is deployed;
in response to receiving the first request, processing the first request with a first self-executing program of the bifurcated self-executing program;
determining, based on the first self-executing program, whether the first digital signature characteristic corresponds to a digital signature requirement; and
in response to determining that the first digital signature characteristic corresponds to the digital signature requirement, processing the first request with a second self-executing program of the bifurcated self-executing program to perform the first blockchain action.

### Claim 3 (depends on 2)

The method of claim 2, wherein the digital signature characteristic comprises a signature based on an accountable subgroup multi-signature (ASM) scheme.

### Claim 4 (depends on 2)

The method of claim 2, wherein the digital signature characteristic comprises a signature based on a Schnorr signature scheme.

### Claim 5 (depends on 2)

The method of claim 2, wherein the digital signature characteristic comprises a signature based on a Boneh-Lynn-Shacham (BLS) digital signature scheme.

### Claim 6 (depends on 2)

The method of claim 2, wherein determining whether the first digital signature characteristic corresponds to the digital signature requirement further comprises:
determining a first signatory corresponding to the first digital signature characteristic; and
determining whether the first signatory corresponds to an authorized signatory of a plurality of authorized signatories identified by the digital signature requirement.

### Claim 7 (depends on 2)

The method of claim 2, wherein determining whether the first digital signature characteristic corresponds to the digital signature requirement further comprises:
determining a first signature corresponding to the first digital signature characteristic; and
determining whether the first signature corresponds to an approved Schnorr signature identified by the digital signature requirement.

### Claim 8 (depends on 4)

The method of claim 4, wherein determining whether the first digital signature characteristic corresponds to the digital signature requirement further comprises:
determining a prime number;
determining a multiplicative group of integers modulo based on the prime number; and
generating a group of approved Schnorr signatures based on the multiplicative group of integers modulo.

### Claim 9 (depends on 2)

The method of claim 2, wherein determining whether the first digital signature characteristic corresponds to the digital signature requirement further comprises:
determining a first signature corresponding to the first digital signature characteristic, wherein the first signature is based on a private key; and
verifying the first signature based on a public key identified by the digital signature requirement.

### Claim 10 (depends on 2)

The method of claim 2, wherein determining whether the first digital signature characteristic corresponds to the digital signature requirement further comprises:
determining a first signature corresponding to the first digital signature characteristic, wherein the first signature is based on elements of an elliptic curve group; and
verifying the first signature using a bilinear pairing.

### Claim 11 (depends on 2)

The method of claim 2, wherein determining whether the first digital signature characteristic corresponds to the digital signature requirement further comprises:
determining a first signature corresponding to the first digital signature characteristic by:
receiving multiple signatures generated under multiple public keys for multiple messages; and
aggregating the multiple signatures into the first signature; and
determining whether the first signature corresponds to an approved signature identified by the digital signature requirement.

### Claim 12 (depends on 2)

The method of claim 2, wherein the first digital signature characteristic is based on:
receiving a first portion of a private key;
receiving a second portion of the private key; and
generating the first digital signature characteristic based on the first portion and the second portion.

### Claim 13 (depends on 2)

The method of claim 2, wherein the digital signature requirement is based on:
receiving a first contribution to a calculation of the digital signature requirement from a first user;
receiving a second contribution to the calculation of the digital signature requirement from a second user; and
calculating the digital signature requirement based on the first contribution and the second contribution.

### Claim 14 (depends on 2)

The method of claim 2, wherein the first digital signature characteristic comprises a signature that is determined based on a private key, and wherein the digital signature requirement comprises a determination of authenticity, by a signature verifying algorithm, based on a public key and the signature.

### Claim 15

A non-transitory, computer-readable medium, comprising instructions that, when executed by one or more processors, cause operations comprising:
receiving a first request, at a bifurcated self-executing program, to perform a first blockchain action, wherein the first request has a first digital signature characteristic, wherein the bifurcated self-executing program comprises a combination of a plurality of individual self-executing programs that cannot be altered once the bifurcated self-executing program is deployed;
in response to receiving the first request, processing the first request with a first self-executing program of the bifurcated self-executing program;
determining, based on the first self-executing program, whether the first digital signature characteristic corresponds to a digital signature requirement; and
in response to determining that the first digital signature characteristic corresponds to the digital signature requirement, processing the first request with a second self-executing program of the bifurcated self-executing program to perform the first blockchain action.

### Claim 16 (depends on 15)

The non-transitory, computer-readable medium of claim 15, wherein determining whether the first digital signature characteristic corresponds to the digital signature requirement further comprises:
determining a first signatory corresponding to the first digital signature characteristic; and
determining whether the first signatory corresponds to an authorized signatory of a plurality of authorized signatories identified by the digital signature requirement.

### Claim 17 (depends on 15)

The non-transitory, computer-readable medium of claim 15, wherein determining whether the first digital signature characteristic corresponds to the digital signature requirement further comprises:
determining a first signature corresponding to the first digital signature characteristic; and
determining whether the first signature corresponds to an approved Schnorr signature identified by the digital signature requirement.

### Claim 18 (depends on 17)

The non-transitory, computer-readable medium of claim 17, wherein determining whether the first digital signature characteristic corresponds to the digital signature requirement further comprises:
determining a prime number;
determining a multiplicative group of integers modulo based on the prime number; and
generating a group of approved Schnorr signatures based on the multiplicative group of integers modulo.

### Claim 19 (depends on 15)

The non-transitory, computer-readable medium of claim 15, wherein determining whether the first digital signature characteristic corresponds to the digital signature requirement further comprises:
determining a first signature corresponding to the first digital signature characteristic, wherein the first signature is based on a private key; and
verifying the first signature based on a public key identified by the digital signature requirement.

### Claim 20 (depends on 15)

The non-transitory, computer-readable medium of claim 15, wherein determining whether the first digital signature characteristic corresponds to the digital signature requirement further comprises:
determining a first signature corresponding to the first digital signature characteristic, wherein the first signature is based on elements of an elliptic curve group; and
verifying the first signature using a bilinear pairing.
