|
2 | 2 |
|
3 | 3 | ## Overview
|
4 | 4 |
|
5 |
| -The chronos is a novel logical clock system designed for open networks with Byzantine participants, offering improved fault tolerance and performance. It introduces a customizable validator abstraction and has been successfully applied to develop decentralized applications with minimal overhead. |
6 |
| - |
7 | 5 | This repository is the developing prototype of Hetu chronos, a general-propose message-passing framework which consider causality as first class citizen.
|
8 | 6 |
|
| 7 | +The chronos is a novel logical clock system designed for open networks with Byzantine participants, offering improved fault tolerance and performance. It introduces a customizable validator abstraction and has been successfully applied to develop decentralized applications with minimal overhead. |
| 8 | + |
9 | 9 | ## Layout & Toc
|
10 | 10 |
|
11 | 11 | Chronos organization layout is as follows:
|
12 | 12 |
|
13 |
| -* `crates/` the common dependences and core functional crates. |
14 |
| -* `demos/` some use cases of applied the Chronos and proposals. |
15 |
| -* `docs/` design and applied documents for demonstrating thoughts. |
16 |
| -* `src/` the source codebase of shared definitions. |
| 13 | +* [`crates/`](./crates/) the common dependences and core functional crates folder. |
| 14 | +* [`demos/`](./demos/) some use cases of applied the Chronos and proposals. |
| 15 | +* [`docs/`](./docs/) design and applied documents for demonstrating thoughts. |
| 16 | +* `src/` the source codebase of shared definitions and some common codes. |
| 17 | + |
| 18 | +## Features |
| 19 | + |
| 20 | +The Chronos is a novel verifiable logical clock system that can target many problems that can't be handled by the regular logical clock. |
| 21 | + |
| 22 | +Here are some core new features are provided by the Chronos: |
| 23 | + |
| 24 | +* [x] Programmable and verifiable vector logic clock |
| 25 | +* [x] Provides networks events causality partially order graph capability |
| 26 | +* [x] High-performance replication state machine with logical clock Byzantine fault tolerance |
| 27 | +* [x] Three verifiable warranties are provided: clock update proof, monotonicity proof, application-specific proof |
| 28 | +* [x] Three validation backends are supported: quorum certificate, trusted hardware (TEE), verifiable computation (ZKP) |
| 29 | + |
| 30 | +Please refer to [hetu key research](https://github.com/hetu-project#hetu-key-research) for more details |
| 31 | + |
| 32 | +## Applied scenarios |
| 33 | + |
| 34 | +Regular logical clock have been applied in many scenarios. As follows: |
| 35 | + |
| 36 | +- Weakly consistent storage systems |
| 37 | + - `Cops: causally Consistent Data Store` |
| 38 | +- Causally ordered broadcast |
| 39 | + - [Reference: vlc + p2p combined](https://github.com/NagaraTech/hetu-docs/blob/main/Zeb/vlc.md) |
| 40 | +- Deadlock detection |
| 41 | + - `Mutual exclusion` of shared resources in a distributed system |
| 42 | + - Bakery algorithm |
| 43 | +- Distributed snapshots |
| 44 | +- Distributed system debugging. |
| 45 | + |
| 46 | +For sure, the verifiable logical clock is an enhanced version of a regular logical clock that can do everything a regular clock can do. |
| 47 | + |
17 | 48 |
|
18 | 49 | ## Building
|
19 | 50 |
|
|
0 commit comments