IP Library › Granted Patent US 11,205,162
Granted Patent B2
US 11,205,162 · App. 16/890,285 · Granted Dec 21, 2021

Composite keys for authorization policies

Inventors: Michael Christopher Hearn (Zurich, CH); Qurratul Ain Shams Asari (London, GB)
Assignee: R3 LLC
G06Q20/065G06Q20/02G06Q20/382G06Q20/3825G06Q20/3827G06Q20/3829G06Q40/12G06Q50/18H04L9/3236H04L9/3247H04L9/3297G06Q2220/00H04L2209/38H04L2209/56
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,205,162
App. No.
16/890,285
Granted
Dec 21, 2021
Kind
B2
Abstract

A method and system are provided to support a decentralized distributed ledger in which transactions are recorded by parties to the transactions without the use of a blockchain. A distributed ledger system provides a protocol framework that supports the development of protocol flows. A protocol flow is computer code that controls the performance of a transaction by the party or parties to the transaction. Protocol flows can be developed for different types of transactions. The distributed ledger system allows transactions to be proposed, accepted, and notarized by a notary and stored without the use of a blockchain ledger. The distributed ledger system can avoid the expense of the computational and storage resources needed to redundantly verify a transaction and store evidence on the many nodes of a blockchain distributed ledger.

Claims (26)

1. A method performed by one or more computing system, having one or more processors, for determining validity of a combination of digital signatures, each electronic signature generated using a private key of a public/private key pair that includes a public key corresponding to the private key, the method comprising:

accessing, with the one or more processors, a tree specifying a composite key, each leaf node specifying a public key and an associated algorithm identifier, each non-leaf node specifying a weight of each child node of the non-leaf node and a threshold weight;

validating, with the one or more processors, at least some of the digital signatures of the combination based the algorithm identifier of a leaf node that contains the public key corresponding to the private key used to generate the digital signature; and

traversing, with the more or more processors, the tree in a bottom up manner by, for each child node, summing in a bottom-up manner the weights its child nodes whose threshold is met or whose public key corresponds to a private key used to generate a valid signature to determine whether the combination of digital signatures is a valid combination.

2. The method of claim 1 wherein the weights and thresholds encode Boolean formulas.

3. The method of claim 1 wherein the tree specifies that one party is allowed to sign a transaction or multiple other parties are required to sign the transaction.

4. The method of claim 1 wherein the tree includes two leaf nodes such that a combination of digital signatures is valid only if both digital signatures are valid.

5. The method of claim 1 wherein an algorithm identifier identifies a SHA algorithm.

6. The method of claim 1 wherein the combination of digital signatures is used to sign a transaction.

7. The method of claim 1 wherein the combination of digital signatures are digital signatures of participants in a distributed notary.

8. The method of claim 1 wherein a digital signature is a hash of a transaction that is signed using a private key of a signer.

9. The method of claim 1 wherein a public key identifies a party to a transaction.

10. One or more computing systems, having one or more processors, for determining validity of a combination of digital signatures, each electronic signature generated using a private key of a party with a corresponding public key that identifies the party, the one or more computing systems comprising:

one or more computer-readable storage mediums for storing a tree specifying a composite key, each leaf node specifying a public key of a party, each non-leaf node specifying a weight of each child node of the non-leaf node and a threshold weight; and

computer-executable instructions for controlling the one or more computing systems to:

validate, with the more or more processors, at least some of the digital signatures of the combination based on an encryption algorithm and the public key of a leaf node that contains the public key that identifies a party generated a digital signature; and

traverse, with the more or more processors, the tree in a bottom up manner by, for each child node, summing in a bottom-up manner the weights its child nodes whose threshold is met or whose public key corresponds to a private key used to generate a valid signature to determine whether the combination of digital signatures is a valid combination.

11. The one or more computing systems of claim 10 wherein each leaf node includes an algorithm identifier of an encryption algorithm.

12. The one or more computing systems of claim 10 wherein the encryption algorithm is a SHA algorithm.

13. The one or more computing systems of claim 10 wherein the weights and thresholds encode Boolean formulas.

14. The one or more computing systems of claim 10 wherein the tree specifies that one party is allowed to sign a transaction or multiple other parties are required to sign the transaction.

15. The one or more computing systems of claim 10 wherein the tree includes two leaf nodes such that a combination of digital signatures is valid only if both digital signatures are valid.

16. The one or more computing systems of claim 10 wherein the combination of digital signatures is used to sign a transaction.

17. The one or more computing systems of claim 10 wherein the combination of digital signatures are digital signatures of participants in a distributed notary.

18. The one or more computing systems of claim 10 wherein a digital signature is a hash of a transaction that is signed using a private key of a signer.

19. The one or more computing systems of claim 10 wherein a public key identifies a party to a transaction.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 5, 2020
From: HEARN, MICHAEL CHRISTOPHER; ASARI, QURRATUL AIN SHAMS
To: R3 LTD.
Reel/Frame 053404/0851 →
Continuity (8)
Continuation 16679924 · Nov 11, 2019
Division 15364213 · Nov 29, 2016
Continuation In Part 15243902 · Aug 22, 2016
Continuation In Part 15243473 · Aug 22, 2016
Continuation In Part 15243402 · Aug 22, 2016
Provisional Application 62427685 · Nov 29, 2016
Provisional Application 62323952 · Apr 18, 2016
Related Publication 20200302409A1 · Sep 24, 2020
Cited By (1)
US 12,683,979