Patents by Inventor Boran Zhao

Boran Zhao has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20210019203
    Abstract: A computer-implemented method, non-transitory, computer-readable medium, and computer-implemented system are provided for data transmission in a trusted execution environment (TEE) system. The method executed by a first thread in multiple threads on a TEE side includes: obtaining first data; obtaining a TEE side thread lock; obtaining a write offset address and a read offset address respectively by reading a first address and a second address; determining whether a quantity of bytes of the first data to be transmitted is less than or equal to a quantity of writable bytes; if the quantity of bytes of the first data is less than or equal to the quantity of writable bytes, writing the first data into third addresses starting from the write offset address; updating the write offset address in the first address; and releasing the TEE side thread lock.
    Type: Application
    Filed: July 31, 2020
    Publication date: January 21, 2021
    Inventors: Qi Liu, Boran Zhao, Ying Yan, Changzheng Wei
  • Publication number: 20210019415
    Abstract: A computer-implemented method, non-transitory, computer-readable medium, and computer-implemented system are provided for data transmission in a trusted execution environment (TEE) system. The method can be executed by a thread on a TEE side of the TEE system. The method includes obtaining first data; calling a predetermined function using the first data as an input parameter to switch to a non-TEE side; obtaining a write offset address by reading a first address; obtaining a read offset address by reading a second address; determining whether a quantity of bytes of the first data is less than or equal to a quantity of writable bytes; if so, writing the first data into third addresses starting from the write offset address; updating the write offset address in the first address; and returning to the TEE side.
    Type: Application
    Filed: June 29, 2020
    Publication date: January 21, 2021
    Applicant: Advanced New Technologies Co., Ltd
    Inventors: Qi Liu, Boran Zhao, Ying Yan, Changzheng Wei
  • Publication number: 20210019202
    Abstract: A computer-implemented method, non-transitory, computer-readable medium, and computer-implemented system are provided for data transmission in a trusted execution environment (TEE) system. The method executed by a first thread in multiple threads on a TEE side includes: obtaining first data; obtaining a TEE side thread lock; obtaining a write offset address and a read offset address respectively by reading a first address and a second address; determining whether a quantity of bytes of the first data to be transmitted is less than or equal to a quantity of writable bytes; if the quantity of bytes of the first data is less than or equal to the quantity of writable bytes, writing the first data into third addresses starting from the write offset address; updating the write offset address in the first address; and releasing the TEE side thread lock.
    Type: Application
    Filed: February 7, 2020
    Publication date: January 21, 2021
    Applicant: Advanced New Technologies Co., Ltd.
    Inventors: Qi Liu, Boran Zhao, Ying Yan, Changzheng Wei
  • Publication number: 20210019394
    Abstract: A computer-implemented method, non-transitory, computer-readable medium, and computer-implemented system are provided for data transmission in a trusted execution environment (TEE) system. The method is executed by a first thread in multiple threads on a TEE side. The method includes obtaining first data; obtaining a TEE side thread lock; calling a predetermined function by using the first data as an input parameter to switch to a non-TEE side; obtaining a write offset address and a read offset address respectively by reading a first address and a second address; determining whether a quantity of bytes of the first data is less than or equal to a quantity of writable bytes; if so, writing the first data into third addresses starting from the write offset address; updating the write offset address in the first address; returning to the TEE side; and releasing the TEE side thread lock.
    Type: Application
    Filed: February 7, 2020
    Publication date: January 21, 2021
    Applicant: Advanced New Technologies Co., Ltd.
    Inventors: Qi Liu, Boran Zhao, Ying Yan, Changzheng Wei
  • Patent number: 10896075
    Abstract: A computer-implemented method, non-transitory, computer-readable medium, and computer-implemented system are provided for data transmission in a trusted execution environment (TEE) system. The method executed by a first thread in multiple threads on a TEE side includes: obtaining first data; obtaining a TEE side thread lock; obtaining a write offset address and a read offset address respectively by reading a first address and a second address; determining whether a quantity of bytes of the first data to be transmitted is less than or equal to a quantity of writable bytes; if the quantity of bytes of the first data is less than or equal to the quantity of writable bytes, writing the first data into third addresses starting from the write offset address; updating the write offset address in the first address; and releasing the TEE side thread lock.
    Type: Grant
    Filed: February 7, 2020
    Date of Patent: January 19, 2021
    Assignee: Advanced New Technologies Co., Ltd.
    Inventors: Qi Liu, Boran Zhao, Ying Yan, Changzheng Wei
  • Patent number: 10884830
    Abstract: A computer-implemented method, non-transitory, computer-readable medium, and computer-implemented system are provided for data transmission in a trusted execution environment (TEE) system. The method executed by a first thread in multiple threads on a TEE side includes: obtaining first data; obtaining a TEE side thread lock; obtaining a write offset address and a read offset address respectively by reading a first address and a second address; determining whether a quantity of bytes of the first data to be transmitted is less than or equal to a quantity of writable bytes; if the quantity of bytes of the first data is less than or equal to the quantity of writable bytes, writing the first data into third addresses starting from the write offset address; updating the write offset address in the first address; and releasing the TEE side thread lock.
    Type: Grant
    Filed: July 31, 2020
    Date of Patent: January 5, 2021
    Assignee: Advanced New Technologies Co., Ltd.
    Inventors: Qi Liu, Boran Zhao, Ying Yan, Changzheng Wei
  • Patent number: 10880077
    Abstract: Disclosed herein are methods, systems, and apparatus, including computer programs encoded on computer storage media, for processing blockchain data under a trusted execution environment (TEE). One of the methods includes receiving, by a blockchain node, a request to execute one or more software instructions in a TEE executing on the blockchain node; determining, by a virtual machine in the TEE, data associated with one or more blockchain accounts to execute the one or more software instructions based on the request; traversing, by the virtual machine, a global state of a blockchain stored in the TEE to locate the data; and executing, by the virtual machine, the one or more software instructions based on the data.
    Type: Grant
    Filed: October 31, 2019
    Date of Patent: December 29, 2020
    Assignee: Advanced New Technologies Co., Ltd.
    Inventors: Changzheng Wei, Ying Yan, Boran Zhao, Xuyang Song, Huabing Du
  • Patent number: 10860710
    Abstract: Disclosed herein are methods, systems, and apparatus, including computer programs encoded on computer storage media, for processing blockchain data under a trusted execution environment (TEE). One of the methods includes receiving, by a blockchain node, a request to execute one or more software instructions in a TEE executing on the blockchain node; determining, by a virtual machine in the TEE, data associated with one or more blockchain accounts to execute the one or more software instructions based on the request; traversing, by the virtual machine, an internal cache hash table stored in the TEE to determine whether the data are included in the internal cache hash table; and in response to determining that the data is included in the internal cache hash table, executing, by the virtual machine, the one or more software instructions by retrieving the data from the internal cache hash table.
    Type: Grant
    Filed: June 16, 2020
    Date of Patent: December 8, 2020
    Assignee: Advanced New Technologies Co., Ltd.
    Inventors: Changzheng Wei, Ying Yan, Boran Zhao, Xuyang Song, Huabing Du
  • Patent number: 10839070
    Abstract: Disclosed herein are methods, systems, and apparatus for securely executing smart contract operations in a trusted execution environment (TEE). One of the methods includes receiving, by a blockchain node participating in a blockchain network, a request to execute one or more software instructions in a service TEE hosted by the blockchain node, wherein the request is encrypted by a public key associated with the service TEE; decrypting the request with a first private key associated with the service TEE, wherein the first private key is paired with the public key; in response to decrypting the request, executing the one or more software instructions to produce an execution result; encrypting the execution result with a client encryption key associated with the service TEE to produce an encrypted result; and signing the encrypted result using a second private key associated with the TEE to produce a signed encrypted result.
    Type: Grant
    Filed: October 31, 2019
    Date of Patent: November 17, 2020
    Assignee: Advanced New Technologies Co., Ltd.
    Inventors: Changzheng Wei, Ying Yan, Boran Zhao, Xuyang Song, Huabing Du
  • Publication number: 20200342092
    Abstract: Disclosed herein are methods, systems, and apparatus for securely executing smart contract operations in a trusted execution environment (TEE). One of the methods includes receiving, by a blockchain node participating in a blockchain network, a request to execute one or more software instructions in a service TEE hosted by the blockchain node, wherein the request is encrypted by a public key associated with the service TEE; decrypting the request with a first private key associated with the service TEE, wherein the first private key is paired with the public key; in response to decrypting the request, executing the one or more software instructions to produce an execution result; encrypting the execution result with a client encryption key associated with the service TEE to produce an encrypted result; and signing the encrypted result using a second private key associated with the TEE to produce a signed encrypted result.
    Type: Application
    Filed: October 31, 2019
    Publication date: October 29, 2020
    Applicant: Alibaba Group Holding Limited
    Inventors: Changzheng Wei, Ying Yan, Boran Zhao, Huabing Du
  • Publication number: 20200322129
    Abstract: Disclosed herein are methods, systems, and apparatus, including computer programs encoded on computer storage media, for processing blockchain data under a trusted execution environment (TEE). One of the methods includes receiving, by a blockchain node, a request to execute one or more software instructions in a TEE executing on the blockchain node; determining, by a virtual machine in the TEE, data associated with one or more blockchain accounts to execute the one or more software instructions based on the request; traversing, by the virtual machine, a global state of a blockchain stored in the TEE to locate the data; and executing, by the virtual machine, the one or more software instructions based on the data.
    Type: Application
    Filed: October 31, 2019
    Publication date: October 8, 2020
    Applicant: Alibaba Group Holding Limited
    Inventors: Changzheng Wei, Ying Yan, Boran Zhao, Xuyang Song, Huabing Du
  • Publication number: 20200311257
    Abstract: Disclosed herein are methods, systems, and apparatus, including computer programs encoded on computer storage media, for processing blockchain data under a trusted execution environment (TEE). One of the methods includes receiving, by a blockchain node, a request to execute one or more software instructions in a TEE executing on the blockchain node; determining, by a virtual machine in the TEE, data associated with one or more blockchain accounts to execute the one or more software instructions based on the request; traversing, by the virtual machine, an internal cache hash table stored in the TEE to determine whether the data are included in the internal cache hash table; and in response to determining that the data is included in the internal cache hash table, executing, by the virtual machine, the one or more software instructions by retrieving the data from the internal cache hash table.
    Type: Application
    Filed: June 16, 2020
    Publication date: October 1, 2020
    Applicant: Alibaba Group Holding Limited
    Inventors: Changzheng Wei, Ying Yan, Boran Zhao, Xuyang Song, Huabing Du
  • Patent number: 10789243
    Abstract: A state transition operation performed on a target database is determined. Based on the state transition operation and a state value of the target database that exists before the state transition operation is performed, a state value of the target database that exists after the state transition operation is performed is determined, where the state value is used to represent a state of the target database.
    Type: Grant
    Filed: October 28, 2019
    Date of Patent: September 29, 2020
    Assignee: Alibaba Group Holding Limited
    Inventor: Boran Zhao
  • Publication number: 20200304319
    Abstract: Disclosed herein are methods, systems, and apparatus, for securely executing smart contract operations in a trusted execution environment (TEE). One of the methods includes establishing, by a key management (KM) TEE of a KM node, a trust relationship with a plurality of KM TEEs in a plurality of KM nodes based on performing mutual attestations with the plurality of KM TEEs; initiating a consensus process with the plurality of KM TEEs for reaching consensus on providing one or more encryption keys to a service TEE of the KM node; in response to reaching the consensus with the plurality of KM TEEs, initiating a local attestation process with a service TEE in the KM node; determining that the local attestation process is successful; and in response to determining that the local attestation process is successful, providing one or more encryption keys to the TEE executing on the computing device.
    Type: Application
    Filed: June 4, 2020
    Publication date: September 24, 2020
    Applicant: Alibaba Group Holding Limited
    Inventors: Changzheng Wei, Ying Yan, Boran Zhao, Xuyang Song
  • Patent number: 10715339
    Abstract: Disclosed herein are methods, systems, and apparatus, for securely executing smart contract operations in a trusted execution environment (TEE). One of the methods includes establishing, by a key management (KM) TEE of a KM node, a trust relationship with a plurality of KM TEEs in a plurality of KM nodes based on performing mutual attestations with the plurality of KM TEEs; initiating a consensus process with the plurality of KM TEEs for reaching consensus on providing one or more encryption keys to a service TEE of the KM node; in response to reaching the consensus with the plurality of KM TEEs, initiating a local attestation process with a service TEE in the KM node; determining that the local attestation process is successful; and in response to determining that the local attestation process is successful, providing one or more encryption keys to the TEE executing on the computing device.
    Type: Grant
    Filed: October 31, 2019
    Date of Patent: July 14, 2020
    Assignee: Alibaba Group Holding Limited
    Inventors: Changzheng Wei, Ying Yan, Boran Zhao, Xuyang Song
  • Patent number: 10699015
    Abstract: A computer-implemented method, non-transitory, computer-readable medium, and computer-implemented system are provided for data transmission in a trusted execution environment (TEE) system. The method can be executed by a thread on a TEE side of the TEE system. The method includes obtaining first data; calling a predetermined function using the first data as an input parameter to switch to a non-TEE side; obtaining a write offset address by reading a first address; obtaining a read offset address by reading a second address; determining whether a quantity of bytes of the first data is less than or equal to a quantity of writable bytes; if so, writing the first data into third addresses starting from the write offset address; updating the write offset address in the first address; and returning to the TEE side.
    Type: Grant
    Filed: February 7, 2020
    Date of Patent: June 30, 2020
    Assignee: Alibaba Group Holding Limited
    Inventors: Qi Liu, Boran Zhao, Ying Yan, Changzheng Wei
  • Patent number: 10699006
    Abstract: Disclosed herein are methods, systems, and apparatus, including computer programs encoded on computer storage media, for processing blockchain data under a trusted execution environment (TEE). One of the methods includes receiving, by a blockchain node, a request to execute one or more software instructions in a TEE executing on the blockchain node; determining, by a virtual machine in the TEE, data associated with one or more blockchain accounts to execute the one or more software instructions based on the request; traversing, by the virtual machine, an internal cache hash table stored in the TEE to determine whether the data are included in the internal cache hash table; and in response to determining that the data is included in the internal cache hash table, executing, by the virtual machine, the one or more software instructions by retrieving the data from the internal cache hash table.
    Type: Grant
    Filed: October 31, 2019
    Date of Patent: June 30, 2020
    Assignee: Alibaba Group Holding Limited
    Inventors: Changzheng Wei, Ying Yan, Boran Zhao, Xuyang Song, Huabing Du
  • Publication number: 20200167489
    Abstract: Examples of a data transmission method and apparatus in TEE systems are described. One example of the method includes: obtaining first data; obtaining a write offset address by reading a first address; obtaining a read offset address by reading a second address; determining whether the number of bytes in the first data is less than or equal to the number of writable bytes, where the number of writable bytes is determined based on the write offset address and the read offset address, and each address corresponds to one byte; when the number of bytes in the first data is less than or equal to the number of writable bytes, writing the first data into third addresses starting from the write offset address; and updating the write offset address in the first address.
    Type: Application
    Filed: January 29, 2020
    Publication date: May 28, 2020
    Applicant: Alibaba Group Holding Limited
    Inventors: Qi Liu, Boran Zhao, Ying Yan, Changzheng Wei
  • Patent number: 10657293
    Abstract: Disclosed herein are methods, systems, and apparatus, including computer programs encoded on computer storage media, for configuring a field programmable gate array (FPGA) based trusted execution environment (TEE) for use in a blockchain network. One of the methods includes storing a device identifier (ID), a first random number, and a first encryption key in a field programmable gate array (FPGA) device; sending an encrypted bitstream to the FPGA device, wherein the encrypted bitstream can be decrypted by the first key into a decrypted bitstream comprising a second random number; receiving an encrypted message from the FPGA device; decrypting the encrypted message from the FPGA device using a third key to produce a decrypted message; in response to decrypting the encrypted message: determining a third random number in the decrypted message; encrypting keys using the third random number; and sending the keys to the FPGA device.
    Type: Grant
    Filed: September 30, 2019
    Date of Patent: May 19, 2020
    Assignee: Alibaba Group Holding Limited
    Inventors: Changzheng Wei, Guozhen Pan, Ying Yan, Huabing Du, Boran Zhao, Xuyang Song, Yichen Tu, Ni Zhou, Jianguo Xu
  • Publication number: 20200120154
    Abstract: A parallel computing system is provided, including input ports, a first switching network, a computing array, a second switching network and output ports. The first switching network is receiving input data from the input ports, sequencing the input data according to different computing modes of the computing array and outputting sequenced input data; the computing array is performing parallel computation on the sequenced input data and outputting intermediate data; and the second switching network is sequencing the intermediate data according to different output modes and outputting sequenced intermediate data through the output ports. The present disclosure applies the switching networks to the parallel computing system and performs any required sequencing on the input or output data according to the different computing modes and output modes to complete various arithmetic operations through the computing array after the input data are input into the computing array.
    Type: Application
    Filed: November 14, 2018
    Publication date: April 16, 2020
    Inventors: Pengju REN, Long Fan, Boran Zhao, Pengchen Zong, Wenzhe Zhao, Fei Chen, Badong Chen, Nanning Zheng