Skip to content

Commit

Permalink
roadmap updates
Browse files Browse the repository at this point in the history
  • Loading branch information
maciejka committed Oct 2, 2024
1 parent 424464a commit d4ac5d8
Showing 1 changed file with 11 additions and 14 deletions.
25 changes: 11 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

## Overview

Raito is a zero-knowledge Bitcoin client implemented in Cairo. It aims to provide trustless validation of the Bitcoin blockchain through STARK proof verification. It is heavily inspired by [ZeroSync](https://github.com/ZeroSync/ZeroSync) project.
Shinigami-consensus is a zero-knowledge Bitcoin client implemented in Cairo. It aims to provide trustless validation of the Bitcoin blockchain through STARK proof verification. It is heavily inspired by [ZeroSync](https://github.com/ZeroSync/ZeroSync) project.

> **Disclaimer:** This project is in the early stages of development and should not be used in production. It will evolve rapidly, expect breaking changes.
Expand All @@ -36,7 +36,7 @@ style Vp fill:gold
style Vb fill:gold
```

Raito, at its core, accepts two inputs: a batch of consecutive blocks <i>n</i> to <i>m</i> and a STARK proof of the state of the chain up to block <i>n−1</i>. It ensures that the historical chain state is valid by verifying the STARK proof. Then, it produces a new chain state by applying the new blocks on top of the historical state. As a result, a proof of the new state is generated.
At its core, consunsus client accepts two inputs: a batch of consecutive blocks <i>n</i> to <i>m</i> and a STARK proof of the state of the chain up to block <i>n−1</i>. It ensures that the historical chain state is valid by verifying the STARK proof. Then, it produces a new chain state by applying the new blocks on top of the historical state. As a result, a proof of the new state is generated.

## Applications

Expand Down Expand Up @@ -92,7 +92,7 @@ Try to run script validation with external Cairo crate.

Tasks:

* [ ] Integrate Shinigami
* [ ] Integrate Shinigami-script

### Milestone 4 - UTXO set verification

Expand All @@ -114,24 +114,21 @@ Tasks:

Validate full block execution, including the Bitcoin scripts checks and Utreexo.

### Milestone 6 - Proving the validation
### Milestone 6 - Optimizations

Recursively verify STARK proofs of chain state updates.
* [ ] identify Cairo code botlenecks
* [ ] consider using garaga msm to batch signature verifications

## Name reference
### Milestone 7 - Proving the validation

Raito is a reference to Light Yagami (夜神月, Yagami Raito) from the manga/anime Death Note.
Recursively verify STARK proofs of chain state updates. Still largely tbd.

* Raito in Japanese means "Light", which in turns can refer to Lightning ⚡ (and hence both a reference to speed of verification of the Bitcoin blockchain using a ZKP and a reference to the Lightning Network)
* Raito can work in tandem with [Shinigami](https://github.com/keep-starknet-strange/shinigami) that enables verification of Bitcoin Script programs. Raito = Consensus and Shinigami = Execution. Since Shinigami was named after Ryuk (Shinigami in Death Note), Raito was named after Light (Raito in Death Note).
* What Raito writes in the Death Note always happen, so you can see it as a source of truth, similarly to how you use a Zero-Knowledge Proof to verify the integrity of a computation.

![Raito and Raito](./docs/img/memes/raito_shinigami_fusion.jpg)
* [ ] use garaga to implement signature verifications

# Contact

* [Raito Telegram](https://t.me/ShinigamiStarknet)
* [Raito OnlyDust](https://app.onlydust.com/p/raito---bitcoin-zk-client)
* [Telegram](https://t.me/ShinigamiStarknet)
* [OnlyDust](https://app.onlydust.com/p/raito---bitcoin-zk-client)

## Usage

Expand Down

0 comments on commit d4ac5d8

Please sign in to comment.