mirror of
https://github.com/darkrenaissance/darkfi.git
synced 2026-04-28 03:00:18 -04:00
doc/architecture/blockchain.md: Added appendix with structures details.
This commit is contained in:
@@ -49,3 +49,70 @@ v is the concatentation of the value $\rho$ in all blocks from the beginning of
|
||||
|
||||
|
||||
# Protocol
|
||||
|
||||
# Appendix
|
||||
This section gives further details about the structures that will be used by the protocol. Since Streamlet consensus protocol will be used at early stages of the Blockchain development, we created hybrid structures, to enable seemless transition from one protocol to the other, without the need of a blockchain forking.
|
||||
|
||||
## Blockchain
|
||||
\begin{tabular}{||c c c||}
|
||||
\hline
|
||||
Field & Type & Description \\ [0.5ex]
|
||||
\hline\hline
|
||||
blocks & Vec<Block> & Series of blocks consisting the Blockchain. \\ [1ex]
|
||||
\hline
|
||||
\end{tabular}
|
||||
|
||||
## Block
|
||||
\begin{tabular}{||c c c||}
|
||||
\hline
|
||||
Field & Type & Description \\ [0.5ex]
|
||||
\hline\hline
|
||||
st & String & Previous block hash. \\
|
||||
\hline
|
||||
sl & u64 & Slot uid, generated by the beacon. \\
|
||||
\hline
|
||||
txs & Vec<Transaction> & Transactions payload. \\
|
||||
\hline
|
||||
metadata & Metadata & Additional block information. \\ [1ex]
|
||||
\hline
|
||||
\end{tabular}
|
||||
|
||||
## Metadata
|
||||
\begin{tabular}{||c c c||}
|
||||
\hline
|
||||
Field & Type & Description \\ [0.5ex]
|
||||
\hline\hline
|
||||
om & Euroboros\_Metadata & Block information used by Ouroboros consensus. \\
|
||||
\hline
|
||||
sm & Streamlet\_Metadata & Block information used by Streamlet consenus. \\
|
||||
\hline
|
||||
timestamp & Timestamp & Block creation timestamp. \\ [1ex]
|
||||
\hline
|
||||
\end{tabular}
|
||||
|
||||
## Euroboros\_Metadata
|
||||
\begin{tabular}{||c c c||}
|
||||
\hline
|
||||
Field & Type & Description \\ [0.5ex]
|
||||
\hline\hline
|
||||
proof & VRF\_Output & Proof the stakeholder is the block owner. \\
|
||||
\hline
|
||||
r & Seed & Random seed for VRF. \\
|
||||
\hline
|
||||
s & Signature & Block owner signature. \\ [1ex]
|
||||
\hline
|
||||
\end{tabular}
|
||||
|
||||
|
||||
## Streamlet\_Metadata
|
||||
\begin{tabular}{||c c c||}
|
||||
\hline
|
||||
Field & Type & Description \\ [0.5ex]
|
||||
\hline\hline
|
||||
votes & Vec<Vote> & Epoch votes for the block. \\
|
||||
\hline
|
||||
notarized & bool & Block notarization flag. \\
|
||||
\hline
|
||||
finalized & bool & Block finalization flag. \\ [1ex]
|
||||
\hline
|
||||
\end{tabular}
|
||||
|
||||
Reference in New Issue
Block a user