IP Library › Granted Patent US 11,429,967
Granted Patent B2
US 11,429,967 · App. 15/919,301 · Granted Aug 30, 2022

Mechanism for efficient validation of finality proof in lightweight distributed ledger clients

Inventors: Sergey Fedorov (Dossenheim, DE); Wenting Li (Heidelberg, DE); Ghassan Karame (Heidelberg, DE)
Assignee: NEC CORPORATION
G06Q20/401G06F21/64H04L9/0637H04L9/08H04L9/3247H04L63/12G06Q40/12H04L9/50H04L67/104
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,429,967
App. No.
15/919,301
Granted
Aug 30, 2022
Kind
B2
Abstract

In a method for validation of a finality proof in a distributed ledger system network a support node collects a required number of confirmations from the distributed ledger system network indicating that a requested transaction is finalized. The support node generates the finality proof based on the collected confirmations. The support node transmits the finality proof to a trusted agent for verification.

Claims (40)

1. A method for validation of a finality proof in a distributed ledger system network, the method comprising:

requesting, by a support node, a finality proof from the distributed ledger system network, including a plurality of distributed ledger system network peers;

collecting, by the support node, a required number of confirmations from a plurality of peers in the distributed ledger system network indicating that a requested transaction is finalized;

determining, by the support node, a number of valid confirmations in the required number of confirmations;

determining, by the support node, a number of faulty peers in the plurality of peers;

executing, by the support node, a trusted application;

generating, by the support node, the finality proof based on the required number of collected confirmations, the number of valid confirmations, and the number of faulty peers;

verifying, by the support node, the finality proof inside the trusted application;

signing, by the support node, the finality proof validation inside the trusted application;

transmitting, by the support node, the signed finality proof validation to a client, wherein the client is one of an internet of things (IoT) device, an embedded hardware, a smartphone and a browser extension; and

supplying the validation result, a proof of execution, and the finality proof to the client, wherein the client confirms, based on the validation result, the proof of execution, and the finality proof, that the requested transaction is finalized in the distributed ledger, wherein the support node is an intermediary between the client and the distributed ledger system and the client does not participate in the distributed ledger system.

2. The method according to claim 1 further comprising:

confirming, by the trusted agent based on the verification, that the requested transaction is finalized in the distributed ledger.

3. The method according to claim 1 , wherein the executing, performing, signing, and transmitting steps are each performed by an executor.

4. The method according to claim 1 , wherein executing the trusted application further comprises:

implementing code in a form of the trusted application to be executed in a trusted execution environment (TEE);

instantiating the trusted application in the TEE;

attesting remotely the integrity of the trusted application;

establishing a secure and authenticated channel with the trusted application instance; and

provisioning of a secret key to the trusted application instance through the established channel.

5. The method according to claim 1 , wherein the signing step further comprises:

producing, with the secret provisioned to the trusted application instance, a digital signature over an input combined with a result of the trusted application instance execution.

6. The method according to claim 1 , further comprising:

verifying, with a public certificate corresponding to the provisioned secret, the digital signature produced by the trusted application instance as a proof of the trusted application execution.

7. The method according to claim 1 , wherein performing the finality proof validation inside the trusted application further comprises:

executing the finality proof validation using the trusted application instance to generate a result.

8. The method according to claim 1 , further comprising performing a finality proof validation inside a trusted application by a node in the distributed ledger system.

9. The method according to claim 1 , wherein the distributed ledger system network is a blockchain network.

10. A support node in a distributed ledger system network, the support node comprising one or more processors which, alone or in combination, are configured to provide for performance of the following steps:

requesting, by the support node, a finality proof from the distributed ledger system network, including a plurality of distributed ledger system network peers;

collecting, by the support node, a required number of confirmations from a plurality of peers in the distributed ledger system network indicating that a requested transaction is finalized;

determining, by the support node, a number of valid confirmations in the required number of confirmations;

determining, by the support node, a number of faulty peers in the plurality of peers;

executing, by the support node, a trusted application;

generating, by the support node, the finality proof based on the required number of collected confirmations, the number of valid confirmations, and the number of faulty peers;

verifying, by the support node, the finality proof inside the trusted application;

signing, by the support node, the finality proof validation inside the trusted application;

transmitting, by the support node, the signed finality proof validation to a client, wherein the client is one of an internet of things (IoT) device, an embedded hardware, a smartphone and a browser extension; and

supplying the result, a proof of execution, and the finality proof to the client, wherein the client confirms, based on the result, the proof of execution, and the finality proof, that the requested transaction is finalized in the distributed ledger, wherein the support node is an intermediary between the client and the distributed ledger system and the client does not participate in the distributed ledger system.

11. The system according to claim 10 , wherein the client includes one or more processors which, alone or in combination, are configured to provide for performance of the following step: verifying, by the client, the signature of the finality proof validation.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 19, 2022
From: NEC LABORATORIES EUROPE GMBH
To: NEC CORPORATION
Reel/Frame 060541/0877 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 15, 2018
From: FEDOROV, SERGEY; LI, WENTING; KARAME, GHASSAN
To: NEC LABORATORIES EUROPE GMBH
Reel/Frame 045215/0593 →
Continuity (1)
Related Publication 20190287105A1 · Sep 19, 2019
Cited By (1)
US 12,609,934