Digital Content Authentication on Blockchain
What system is described?
According to , how can proof of existence of a digital item be stored on a blockchain?
What is the "uncertainty window" described in ? What is its purpose?
What technologies related to blockchain data processing and storage are proposed?
What is an "internal cache hash table"? What is its role in executing smart contracts?
The problem of executing different types of blockchain contracts is solved. How is it implemented?
What role do "indicators" play in the bytecode of a blockchain contract?
A new data structure called GEMP-tree is introduced. What is the purpose of this data structure? What is the main advantage of GEMP tree compared to Merkle B-tree?
A logical mapping for traversing a smart contract database is described. What is the purpose of this logical mapping?
Answer
The US patent describes a system for storing a hash value of a digital item on a blockchain, which hash value serves as proof of existence of the digital item.
A hash value (e.g., a cryptographic hash, digital fingerprint, or digest) of the digital item is first generated. Then, the hash value is stored on the blockchain by including it in a transaction submitted to the blockchain.
The "uncertainty window" refers to a series of locations on the blockchain where the hash of a digital item is expected to be stored before it is generated and committed. It is intended to simplify the process of linking hashes to digital items and reduce the computational resources required to verify their origin.
Techniques for processing and storing blockchain data in a trusted execution environment (TEE) are proposed, including the use of an internal cache hash table to store data associated with blockchain accounts to improve the execution efficiency of smart contracts.
The "internal cache hash table" is a data structure stored in the TEE that is used to store data associated with blockchain accounts. It speeds up the execution of smart contracts by providing a local copy of the data inside the TEE, reducing the need for expensive read operations on the blockchain.
This problem is solved by including "indicators" in the bytecode of blockchain contracts, which specify the type and version of the virtual machine used to execute the contract. This enables blockchain nodes to identify and call the appropriate virtual machine to process contracts written in different programming languages.
The "indicators" are embedded in the bytecode to indicate the type and version of the virtual machine used to execute the blockchain contract. This allows blockchain nodes to identify and use the correct virtual machine even if the contract is written in different programming languages.
The purpose of GEMP-tree is to provide an efficient and secure mechanism for maintaining authenticated data structures (ADS) on blockchain data, enabling efficient search and verification of large datasets.
GEMP-tree improves on Merkle B-tree by using a recursive merge algorithm to minimize the gas cost of storing updates on the blockchain. This efficiency makes it particularly suitable for resource-constrained blockchain environments.
The purpose of logical mapping is to provide a mechanism for efficiently traversing and retrieving specific key-value pairs in a Merkle Patricia Tree (MPT) stored in a smart contract database without loading the entire data structure.
Glossary
Term Definitions Blockchain A decentralized, distributed ledger that records transaction history and is maintained by nodes participating in the network. Hash A one-way mathematical function that transforms input data of arbitrary length into a fixed-length output. Digital Item Information represented in a digital format, such as a document, file, audio clip, video, or software code. Proof of Existence Evidence that proves the existence of a digital item at a specific point in time. Trusted Execution Environment (TEE) A secure area within a hardware platform that provides execution of code and data isolated from the main operating system. Smart Contract A piece of code that is stored on the blockchain and automatically executed when predefined conditions are met. Bytecode An intermediate code representation that is generated by a compiler and designed to be executed by a virtual machine. Virtual Machine (VM) A software environment that simulates a physical computer system. Authenticated Data Structure (ADS) A data structure that allows the integrity of data to be verified, even if the data is stored on an untrusted platform. GEMP-tree An efficient and secure data structure for maintaining an authenticated data structure (ADS) on blockchain data. Merkle Patricia Tree (MPT) A tree-like data structure for efficient storage and retrieval of data in a blockchain. Logical Mapping A data structure that allows efficient traversal and retrieval of a Merkle Patricia Tree (MPT).