浏览代码

update blockchain.md in book

mohab metwally 3 年之前
父节点
当前提交
fd0474d8d5
共有 1 个文件被更改,包括 10 次插入32 次删除
  1. 10 32
      doc/src/architecture/blockchain.md

+ 10 - 32
doc/src/architecture/blockchain.md

@@ -2,16 +2,8 @@
 
 ## Overview
 
-DarkFi's current blockchain is based on Streamlet, a very simple consensus
-system based on voting between the participating parties. The blockchain
-is currently in the devnet phase and has no concept of a consensus token.
-
-Darkfi is actively working to upgrade its consensus to Ouroboros
-Crypsinous, a privacy focused proof-of-stake algorithm. To accommodate
-this transition it has designed its data structures to be easy to upgrade.
-
-Below is a specification of how DarkFi's current blockchain achieves
-consensus.
+Darkfi is based off Ouroboros Crypsinous, a privacy focused proof-of-stake algorithm.
+Below is a specification of how DarkFi's current blockchain achieves consensus.
 
 ## Blockchain
 
@@ -260,10 +252,7 @@ R is the epoch length in terms of slots.
 # Appendix
 
 This section gives further details about the structures that will
-be used by the protocol. Since the Streamlet consensus protocol will
-be used at early stages of development, we created hybrid structures
-to enable seamless transition from Stremlet to Ouroboros Crypsinous,
-without the need of forking the blockchain.
+be used by the protocol.
 
 ## Blockchain
 
@@ -293,23 +282,12 @@ without the need of forking the blockchain.
 | `txs`      | `Vec<blake3Hash>` | Transaction hashes                 |
 | `metadata` | `Metadata`        | Additional block information       |
 
-
-## BlockInfo
-
-|   Field    |        Type         |            Description                           |
-|------------|---------------------|--------------------------------------------------|
-| `magic`    | `u8`                | Magic bytes                                      |
-| `header`   | `Header`            | Header data                                      |
-| `txs`      | `Vec<Transaction>`  | Transaction payload                              |
-| `metadata` | `Metadata`          | Additional block information                     |
-| `sm`       | `StreamletMetadata` | Proposal information used by Streamlet consensus |
-
-
 ## Metadata
 
-|    Field       |         Type        |                  Description                 |
-|----------------|---------------------|----------------------------------------------|
-| `proof`        | `VRFOutput`         | Proof the stakeholder is the block owner     |
-| `rand_seed`    | `Seed`              | Random seed for the VRF                      |
-| `signature`    | `Signature`         | Block owner signature                        |
-| `address`      | `Address`           | Block owner address                          |
+| Field           | Type                | Description                                         |
+|-----------------|---------------------|-----------------------------------------------------|
+| `signature`     | `Signature`         | Block owner signature                               |
+| `public_inputs` | `Vec<pallas::Base>` | Nizk proof public inputs                            |
+| `serial_number` | `pallas::Base`      | competing coin's nullifier                          |
+| `eta`           | `[u8; 32]`          | randomness from the previous epoch                  |
+| `proof`         | `Vec<u8>`           | Nizk $\pi$ Proof the stakeholder is the block owner |