Skip to main content

Hyperledger Orion

Documentation

Familiar Programming Model

Well-known database APIs such as session.Tx(), tx.Get(),tx.Put(), tx.Commit() or tx.Abort() to build applications.

Non-Repudiation

A user who submitted a transaction to make changes to data cannot deny submitting the transaction later.

Fine-Grained Read and Write Access Control

Every data item can have a list of users who can only read the data item and a list of users who can read and write to the data item. Users who are not in these listss cannot access the data item.

Multi-Signatures Transaction

Each data item can have an access control list to dictate which users can read and write. Each user needs to authenticate themselves by providing their digital signature to read or write a given data item. Depending on the access rule defined for data item, sometimes more than one users need to authenticate themselves together to read or write to data.

Rich Data Provenance

All historical changes to the data are maintained separately in a persisted graph data structure so that a user can execute query on those historical changes to understand the lineage of each data item.

Rich JSON Queries

JSON queries can be used to fetch JSON data items based on certain predicates on JSON fields. Logical operators (<,>,=,!=,<=,>=) and combinational operators (&&, ||) are supported on string, boolean, and int64 data fields in a JSON value.

Tamper Evident

Data cannot be tampered with, without it going unnoticed. At any point in time, a user can request the database to provide proof for an existance of a transaction or data, and verify the same to ensure data integrity.

Proofs and Verifications

Generation and verification of proofs based on Merkle Tree and Merkle Patricia Tree for an existance or non-existance of a state, and transaction. Skip chain based proof and verification for an existance and non-existance of a block.

Highly Available

Deployment of a cluster of Orion nodes using RAFT replication protocol to provide highly available centralized ledger service.