Skip to content

Latest commit

 

History

History
71 lines (48 loc) · 2.73 KB

README.md

File metadata and controls

71 lines (48 loc) · 2.73 KB

Chronicle

A tool for recording and querying provenance data stored on distributed ledgers.

Getting Started

We recommend you start by exploring the Chronicle examples repo, and trying to build and experiment with one of the runnable application domains there: https://github.com/chronicleworks/chronicle-examples

Documentation

Provenance

Chronicle is built on W3C open standards:

Chronicle implements the PROV-O starting point terms shown below, encoding them using the JSON-LD compaction algorithm onto a backend ledger - currently Hyperledger Sawtooth - or an in-memory stub for testing purposes.

PROV-O

Chronicle extends the core PROV-O vocabulary as described here.

Deployment

Chronicle is a self contained binary executable that can be used as an ephemeral command line interface for provenance recording and interrogation or as a GraphQL server to provide an interface for higher level services. It embeds PostgreSQL for local synchronization with a backend ledger and is capable of basic key management using a file system.

Chronicle instances have individual data stores, so they do not share state directly and synchronize via ledger updates. The abstract transaction processor should process an API operation in under a millisecond.

Transaction Processing

Chronicle records provenance by running a deterministic transaction processor both locally and as part of consensus. Local execution ensures that duplicated provenance will not waste resources in consensus and that most contradictions will also be caught early. Provenance will be sent to a validator and recorded on chain unless it contradicts previous provenance.

Call For Open-Source Contributions

You can read all about our rationale for open sourcing Chronicle on Medium where our Chief Strategy Officer, Csilla Zsigri, published this article Chronicle: You Say Provenance, We Say Open Source.

We will be publishing a roadmap shortly at which point all developers are invited to contribute to our efforts to make assets trustworthy.

You can participate in the following ways:

  1. Join our Slack group to chat
  2. Submit an issue or PR on GitHub

License

See the LICENSE file.