IP Library Granted Patent US 11,243,977
Granted Patent B2
US 11,243,977 · App. 16/290,780 · Granted Feb 8, 2022

SGX based flow control for distributed ledgers

Inventors: Mic Bowman (Beaverton, OR); Andrea Miele (Hillsboro, OR)
Assignee: INTEL CORPORATION
G06F16/27G06F16/23
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,243,977
App. No.
16/290,780
Granted
Feb 8, 2022
Kind
B2
Abstract

Various embodiments are generally directed to an apparatus, system, and other techniques for shared, trusted token generation for a token-bucket flow control policy implemented in a distributed ledger. Tokens may be generated by blocks in the distributed ledger, which may be a blockchain system. Trusted execution hardware may be used as a proof algorithm to ensure that a token exists, and that client has legitimately acquired or accumulated the token prior to using it to submit a transaction.

Claims (51)

1. An apparatus, comprising:

memory to store instructions; and

processing circuitry, coupled to the memory, operable to execute the instructions, that when executed, cause the processing circuitry to:

select a first block from a distributed ledger;

collect a first token, wherein the first token is generated by the first block;

determine whether a first duration of time has expired;

perform an action based on a determination that the first duration of time has expired, wherein the action comprises the processing circuitry to claim the first token;

determine whether a second duration of time has expired after the first token has been claimed; and

submit a transaction via a token certificate after the second duration of time has expired.

2. The apparatus of claim 1 , wherein the transaction is submitted to one or more validators in the distributed ledger to verify the token certificate.

3. The apparatus of claim 1 , wherein the token certificate includes one or more of the following: (i) a verification that the first token exists, (ii) a verification that the first token was generated by the first block, (iii) a verification that the first token was claimed after the first duration of time, (iv) a verification that the transaction was submitted after the second duration of time, (v) a verification that the first token corresponds to a correct client, and (vi) a verification that the first token has not been previously used.

4. The apparatus of claim 1 , wherein the first duration of time is a time between a publication of the first block and a publication of a second block immediately following the first block by the distributed ledger.

5. The apparatus of claim 1 , wherein the first duration of time is a time between a publication of the first block and a publication of a second block immediately following the first block by the distributed ledger, and wherein the second duration of time is equal to the first duration of time.

6. The apparatus of claim 1 , wherein the distributed ledger is a blockchain system.

7. The apparatus of claim 1 , wherein the memory further comprises a set of secure executable code, wherein the set of secure executable code, when executed by the processing circuitry, causes the processing circuitry to generate the token certificate.

8. The apparatus of claim 1 , the processing circuitry to:

determine whether a third duration of time has expired after the first token, the second token, or the first and second tokens has been claimed; and

submit the transaction to one or more validators of the distributed ledger with or using one or more token certificates after the third duration of time has expired.

9. The apparatus of claim 1 , wherein the transaction is a transmission of one or more data packets.

10. A system, comprising:

a plurality of computing devices, wherein the plurality of computing devices includes at least a validator computing device and a client computing device, wherein:

the validator computing device comprising:

memory to store instructions; and

processing circuitry, coupled to the memory, operable to execute the instructions, that when executed, cause the processing circuitry to verify or maintain a plurality of transactions in a distributed ledger; and

the client computing device comprising:

memory to store instructions; and

processing circuitry, coupled to the memory, operable to execute the instructions, that when executed, cause the processing circuitry to:

select a first block from the distributed ledger,

collect a first token, wherein the first token is generated by the first block,

determine whether a first duration of time has expired,

claim the first token to submit a transaction,

determine whether a second duration of time has expired after the first token has been claimed, and

submit the transaction via a token certificate after the second duration of time has expired.

11. The system of claim 10 , the processing circuitry of the client computing device to submit the transaction to at least the validator computing device, and the processing circuitry of the validator computing device to verify one or more portions of the token certificate.

12. The system of claim 10 , wherein the token certificate includes one or more of the following: (i) a verification that the first token exists, (ii) a verification that the first token was generated by the first block, (iii) a verification that the first token was claimed after the first duration of time, (iv) a verification that the transaction was submitted after the second duration of time, (v) a verification that the first token corresponds to a correct client, and (vi) a verification that the first token has not been previously used.

13. The system of claim 10 , wherein the first duration of time is a time between a publication of the first block and a publication of a second block immediately following the first block by the distributed ledger.

14. The system of claim 10 , wherein the distributed ledger is a blockchain system.

15. The system of claim 10 , wherein the memory of the client computing device further comprises a set of secure executable code, wherein the set of secure executable code, when executed by the processing circuitry, causes the processing circuitry to generate the token certificate.

16. The system of claim 10 , wherein the transaction is a transmission of one or more data packets.

17. At least one machine-readable storage medium comprising instructions that when executed by at least one processor, causes the at least one processor to:

select a first block from a distributed ledger;

collect a first token, wherein the first token is generated by the first block;

determine whether a first duration of time has expired; and

perform an action based on a determination that the first duration of time has expired, wherein the action comprises the processor to

claim the first token;

determine whether a second duration of time has expired after the first token has been claimed; and

submit a transaction via a token certificate after the second duration of time has expired.

18. The at least one machine-readable storage medium of claim 17 , the instructions, when executed by the at least one processor, cause the at least one processor to:

determine whether a third duration of time has expired after the first token, the second token, or the first and second tokens has been claimed; and

submit the transaction to one or more validators of the distributed ledger with or using one or more token certificates after the third duration of time has expired.

19. The at least one machine-readable storage medium of claim 17 , further comprising a set of secure executable code, wherein the set of secure executable code, when executed by the at least one processor, generates the token certificate.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2019
From: BOWMAN, MIC; MIELE, ANDREA
To: INTEL CORPORATION
Reel/Frame 048485/0392 →
Continuity (1)
Related Publication 20200278982A1 · Sep 3, 2020
Cited By (1)
US 12,531,855