IP Library Granted Patent US 12,488,391
Granted Patent B2
US 12,488,391 · App. 18/499,822 · Granted Dec 2, 2025

Secure and trustworthy computing environments for exchanges

Inventors: Michael Edmond Kaplan (Brooklyn, NY); Emre Kanatli (New York, NY); Bernard Wong (Waterloo, CA); Emin Gün Sirer (New York, NY)
Assignee: Ava Labs, Inc.
G06Q40/04G06F21/51G06F21/57G06Q30/0609H04L9/085H04L9/3236H04L9/3247G06Q2220/00
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 12,488,391
App. No.
18/499,822
Granted
Dec 2, 2025
Kind
B2
Abstract

A system for providing an exchange in a trusted execution environment can include an exchange program that is configured to provide a digital exchange for digital assets and a computer system with a secure enclave that is configured to provide the trusted execution environment within which processing of programs is secure from observation and manipulation by other operations outside of the secure enclave. Execution of the exchange program in the secure enclave can include loading the exchange program into secure memory within the secure enclave, performing an attestation operation on the exchange program loaded into the secure memory within the secure enclave, the attestation operation configured to validate the exchange program, and outputting results of the attestation operation to identify whether the exchange program loaded in the secure enclave is valid.

Claims (77)

1 . A system for providing a digital exchange for digital assets in a trusted execution environment, the system comprising:

one or more computer servers, each computer server comprising one or more processors and memory, wherein the one or more computer processors and memory provide a secure enclave that is configured to provide the trusted execution environment within which execution of an exchange program is secure from observation and manipulation by other operations outside of the secure enclave, wherein execution of the exchange program in the secure enclave comprises:

loading the exchange program into secure memory within the secure enclave;

performing an attestation operation on the exchange program loaded into the secure memory within the secure enclave, the attestation operation configured to validate the exchange program; and

outputting results of the attestation operation to identify whether the exchange program loaded in the secure enclave is valid; and

a federated exchange computer system that is configured to provide a federated digital exchange of federated digital assets, wherein:

the federated digital exchange permits for digital assets across a plurality of digital exchanges to be traded, the plurality of digital exchanges each using the exchange program executed within the secure enclave to provide their corresponding digital exchange,

records for the digital assets are maintained in an order book for the digital exchange,

at least one of the federated digital assets includes an exclusive right to run the digital exchange and to manage the order book for the digital assets for a period of time, and

the federated digital exchange includes a federated record for the exclusive right to run the digital exchange, the federated record identifying the system for providing the digital exchange.

2 . The system of claim 1 , wherein a smart contract is used to assign an exclusive right to manage the order book.

3 . The system of claim 1 , wherein providing the federated digital exchange by the federated exchange computer system comprises:

matching orders for the federated digital assets; and

adding federated records for the matched orders to a federated order book for the federated digital exchange, wherein the federated records for the matched orders transfer ownership of the federated digital assets from one federated exchange participant to another exchange participant.

4 . The system of claim 3 , wherein matching the orders for the federated digital assets comprises:

selecting, from a pool of candidate bids for a federated digital asset that is being offered on the federated digital exchange, one or more bids that satisfy one or more additional criteria associated with the federated digital asset; and

identifying a matching bid and offer from among the one or more bids.

5 . The system of claim 4 , wherein, for at least one federated digital asset including the exchange right to run the digital exchange, the one or more additional criteria comprises a minimum bond amount provided by a bidder for the duration of the period of time, wherein the minimum bond amount is provided as collateral for running the digital exchange and is configured to be seized in the event that the bidder fails to satisfy one or more criteria associated with the exchange right.

6 . The system of claim 3 , wherein at least one of the matched orders comprises a matched order for the exclusive right to run the digital exchange for the period of time.

7 . A system for providing a digital exchange for digital assets in a trusted execution environment, the system comprising:

one or more computer servers, each computer server comprising one or more computer processors and memory, wherein the one or more computer processors and memory provide a secure enclave that is configured to provide the trusted execution environment within which execution of an exchange program is secure from observation and manipulation by other operations outside of the secure enclave, wherein execution of the exchange program in the secure enclave comprises:

loading the exchange program into secure memory within the secure enclave;

performing an attestation operation on the exchange program loaded into the secure memory within the secure enclave, the attestation operation configured to validate the exchange program;

outputting results of the attestation operation to identify whether the exchange program loaded in the secure enclave is valid;

generating an encryption key for the digital exchange that is derived from an enclave key, wherein the encryption key is specific to the digital exchange and the secure enclave;

encrypting exchange data for the digital exchange using the encryption key;

splitting the encryption key into a plurality of partial keys, wherein each of the plurality of partial keys is configured to be incapable of decrypting the exchange data by itself, wherein at least a minimum threshold of the plurality of partial keys are required to recover the encryption key; and

transmitting the plurality of partial keys to a plurality of remote computer systems that are under administrative control by one or more third parties.

8 . The system of claim 7 , wherein the encryption key cannot be regenerated if the exchange program is modified or if the exchange program is run in a different enclave.

9 . The system of claim 7 , wherein the exchange data comprises an order book with records for matched orders for the digital exchange that are stored in a Merkle tree.

10 . The system of claim 7 , further comprising:

the plurality of remote computer systems that are configured to:

receive and securely store a partial key provided by digital exchange running in the secure enclave, and

limit access to the stored partial key to instances when the digital exchange is validated by the attestation operation as being unmodified and running within the secure enclave, wherein the attestation operation is initiated by the remote computer system in response to an out-of-channel request for the stored partial key from the system for providing the digital exchange.

11 . A system for providing a digital exchange for digital assets in a trusted execution environment, the system comprising:

one or more computer servers, each computer server comprising one or more computer processors and memory, wherein the one or more computer processors and memory provide a secure enclave that is configured to provide the trusted execution environment within which execution of an exchange program is secure from observation and manipulation by other operations outside of the secure enclave, wherein execution of the exchange program in the secure enclave comprises:

loading the exchange program into secure memory within the secure enclave;

performing an attestation operation on the exchange program loaded into the secure memory within the secure enclave, the attestation operation configured to validate the exchange program;

outputting results of the attestation operation to identify whether the exchange program loaded in the secure enclave is valid; and

providing the digital exchange by running the exchange program within the secure enclave, wherein providing the digital exchange comprises:

receiving, by the exchange program running within the secure enclave, a request to establish a leveraged order on the digital exchange;

allocating, by the exchange program running within the secure enclave, an available proportion of a pool of digital assets traded on the digital exchange for the leveraged order;

establishing, by the exchange program running within the secure enclave, the leveraged order against the proportion of the pool of digital assets; and

adding, by the exchange program running within the secure enclave, a record for the leveraged order to an order book for the digital exchange.

12 . The system of claim 11 , wherein:

the proportion of the pool of digital assets of one of a plurality of tranches of assets from the pool of digital assets, and

each of the tranches provides different levels of risks and rewards with higher risk tranches providing the potential for greater risks and also greater rewards.

13 . The system of claim 12 , wherein:

the digital exchange is configured to settle losses starting with a highest risk tranche from the plurality of tranches and then subsequently against lower risk tranches in sequential order of risk until the losses are fully settled,

the digital exchange is configured to allocate profits starting with the highest risk tranche from the plurality of tranches and then subsequently against the lower risk tranches in sequential order of risk until the profits are fully allocated, and

the settling of losses and allocations of profits are performed by the digital exchange running within the secure enclave.

14 . A system for providing a digital exchange for digital assets in a trusted execution environment, the system comprising:

one or more computer servers, each computer server comprising one or more computer processors and memory, wherein the one or more computer processors and memory provide a secure enclave that is configured to provide the trusted execution environment within which execution of an exchange program is secure from observation and manipulation by other operations outside of the secure enclave, wherein execution of the exchange program in the secure enclave comprises:

loading the exchange program into secure memory within the secure enclave;

performing an attestation operation on the exchange program loaded into the secure memory within the secure enclave, the attestation operation configured to validate the exchange program;

outputting results of the attestation operation to identify whether the exchange program loaded in the secure enclave is valid; and

receiving a request from outside the secure enclave to validate the exchange program;

wherein the attestation operation and outputting the results are performed in response to the request to validate the exchange program, wherein outputting the results comprises transmitting the results outside the secure enclave.

15 . The system of claim 14 , wherein the attestation operation includes communicating with one or more remote oracle systems to obtain a current state of a blockchain associated with the digital exchange, wherein the one or more remote oracle systems are configured to verify, based on the current state of the blockchain associated with the digital exchange, that (i) a deposit of digital assets was made by an exchange participant and (ii) the digital exchange received the deposit of digital assets.

16 . A system for providing a digital exchange for digital assets in a trusted execution environment, the system comprising:

one or more computer servers, each computer server comprising one or more computer processors and memory, wherein the one or more computer processors and memory provide a secure enclave that is configured to provide the trusted execution environment within which execution of an exchange program is secure from observation and manipulation by other operations outside of the secure enclave, wherein execution of the exchange program in the secure enclave comprises:

loading the exchange program into secure memory within the secure enclave;

performing an attestation operation on the exchange program loaded into the secure memory within the secure enclave, the attestation operation configured to validate the exchange program; and

outputting results of the attestation operation to identify whether the exchange program loaded in the secure enclave is valid;

wherein the system for providing the digital exchange is further configured to provide the digital exchange by running the exchange program within the secure enclave, wherein providing the digital exchange comprises:

matching, by the exchange program running within the secure enclave, orders for the digital assets; and

adding, by the exchange program running within the secure enclave, records for the matched orders to an order book for the digital exchange, wherein the records for the matched orders transfer ownership of the digital assets from one exchange participant to another exchange participant.

17 . The system of claim 16 , wherein the orders for digital assets comprise deposits of the digital assets and withdrawals of the digital assets by exchange participants, wherein the deposits transfer ownership of the digital assets to keys kept in control of the secure enclave.

18 . The system of claim 16 , wherein:

loading the exchange program the secure enclave further comprises loading at least a portion of the order book into the secure memory,

the order book and the exchange program are loaded from a trustless storage system outside of the secure enclave,

the order book and the exchange program being stored in the trustless storage system with encryption provided by the secure enclave,

the secure enclave being configured to automatically decrypt all data loaded into the secure memory and to automatically encrypt all data transferred out of the secure memory for persistent storage,

providing the digital exchange further comprises:

generating, by the exchange program running within the secure enclave, validation values for the records added to the order book, the validation values being used to validate that the records have not been modified outside of the secure enclave,

transmitting, by the exchange program running within the secure enclave, the records and the validation values to the trustless storage system for persistent storage, wherein the secure enclave automatically encrypts the records and the validation values when transmitted out of the secure enclave, and causes the records and the validations values to be stored in the trustless storage system with encryption specific to the secure enclave.

19 . The system of claim 18 , wherein the records comprise order book entries, exchange participant credentials, and account balances of exchange participants.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2023
From: KAPLAN, MICHAEL EDMOND; KANATLI, EMRE; WONG, BERNARD; SIRER, EMIN GUN
To: AVA LABS, INC.
Reel/Frame 065436/0064 →
Continuity (3)
Continuation 17559694 · Dec 22, 2021
Provisional Application 63130025 · Dec 23, 2020
Related Publication 20240062301A1 · Feb 22, 2024
References Cited (29)
US 6895506B1 · Abu-Husein · 2005 [cited by applicant]
US 7376614B1 · Scheinberg et al. · 2008 [cited by applicant]
US 9673975B1 · Machani · 2017 [cited by applicant]
US 9875368B1 · Willden et al. · 2018 [cited by applicant]
US 11184335B1 · Beloussov et al. · 2021 [cited by applicant]
US 20070156567A1 · Odintsov et al. · 2007 [cited by applicant]
US 20090234768A1 · Van Slyke · 2009 [cited by applicant]
US 20140019764A1 · Gopal et al. · 2014 [cited by applicant]
US 20140325235A1 · Thompson et al. · 2014 [cited by applicant]
US 20140325644A1 · Oberg et al. · 2014 [cited by applicant]
US 20160182531A1 · Rubakha · 2016 [cited by examiner]
US 20170011460A1 · Molinari et al. · 2017 [cited by applicant]
US 20170352027A1 · Zhang et al. · 2017 [cited by applicant]
US 20180330079A1 · Gray · 2018 [cited by applicant]
US 20190013932A1 · Maino et al. · 2019 [cited by applicant]
US 20190095879A1 · Eyal · 2019 [cited by examiner]
US 20190095910A1 · Gumowski · 2019 [cited by applicant]
US 20190114706A1 · Bell et al. · 2019 [cited by applicant]
US 20200226296A1 · Pan et al. · 2020 [cited by applicant]
US 20210097528A1 · Wang · 2021 [cited by applicant]
US 20210166313A1 · Cho · 2021 [cited by applicant]
CN 111625815A · 2020 [cited by applicant]
EP 3333747A1 · 2018 [cited by applicant]
Developer.Samsung.com [online], “Samsung Blockchain Keystore”, published on or before Dec. 21, 2021, retrieved on Feb. 25, 2022, retrieved from URL<https://developer.samsung.com/blockchain/keystore/overview.html>, 2 pag… [cited by applicant]
Github.com [online], “Mobile Coin Foundation”, published on or before Dec. 21, 2021, retrieved on Feb. 25, 2022, retrieved from URL<https://github.com/mobilecoinfoundation/mobilecoin#overview>, 8 pages. [cited by applicant]
IBM.com [online], “Turning on the Lights in Africa”, published on or before Dec. 21, 2021, retrieved on Feb. 25, 2022, retrieved from URL<https://www.ibm.com/case-studies/irene-energy-hybrid-cloud-blockchain/>, 13 pages. [cited by applicant]
PCT International Search Report and Written Opinion in International Appln. No. PCT/US2021/64940, dated Mar. 17, 2022, 16 pages. [cited by applicant]
Su Guoxiong et al: “BDTF: A Blockchain-Based Data Trading Framework with Trusted Execution Environment”, 2020 16th International Conference on Mobility, Sensing and Networking (MSN), IEEE, Dec. 17, 2020 (Dec. 17, 2020),… [cited by applicant]
EP Extended Search Report in EP application No. 21912176.1, dated Oct. 21, 2024, 9 pages. [cited by applicant]