Access data on the blockchain

Access data on the blockchain

Overview:

Title: Computer-implemented systems and methods for allowing access to data stored on a blockchain

Method overview: Store and restrict access to data by generating a blockchain transaction while creating another transaction to enable specific participants to access the data.

Blockchain transaction generation:

First Transaction: Generate at least one blockchain transaction containing first data that is inaccessible without corresponding access data.

Second Transaction: Generate a blockchain transaction that includes a means of making the first access data available to the first participant.

Access control and security mechanisms:

Encryption and decryption: Use a cryptography system to encrypt data and decrypt it with the corresponding private key to ensure data security.

Scripting and unlocking conditions: Transactions contain scripts that allow data to be accessed only when certain conditions are met (such as providing the correct private key or hashed preimage).

Transaction and data segmentation:

Data Splitting: When the amount of data is large, it can be split into multiple parts and stored in multiple blockchain transactions, which are related in a specific way (such as a hash function).

Transaction linking: Use relationships between parent transactions and child transactions to build a hierarchy of data, allowing users to access different parts of the data on demand.

Rabin signature:

Signature Algorithm: A signature algorithm using the Rabin cryptosystem is introduced, which allows arbitrary data to be signed and the signature to be embedded in blockchain transactions.

Verification process: Verify the validity of the signature through square and modular operations to ensure the integrity and authenticity of the data.

Metadata and content management:

Attribute storage: Store attributes of content (e.g. type, encryption scheme) in separate outputs of transactions for easy search and management.

Meta Network Flags: Use meta network flags to identify transactions associated with the meta network protocol to facilitate identification and processing by nodes in the network.

Naming and addressing:

Node and edge structure: defines the node and edge structure of the meta-network, allowing nodes to be uniquely identified through public keys and transaction IDs, and relationships between nodes represented through edges.

MURL: A URL-like Meta Web URL (MURL) is proposed for locating and accessing content stored on the blockchain.

Browser wallet application:

Functional components: Describes a browser wallet application that includes functional components such as a blockchain search engine, a display window, and a cryptocurrency wallet, allowing users to search, decrypt, reorganize, and display content stored on the blockchain.

Key Management: Use a hierarchical deterministic key management approach to manage keys used to access content and funds.

Use Cases:

Swapp Store: Demonstrates how to use Ben’s approach to create a decentralized app store that allows developers to sell encrypted app data to consumers via atomic swaps.

Atomic swap: The process of atomic swap is described in detail to ensure that data purchase and payment are carried out simultaneously without relying on a third-party trust agency.

Through detailed technical descriptions and illustrations, this document shows how to use blockchain technology to securely store, access and manage data, while providing an innovative meta-network protocol to achieve distributed storage and sharing of data.