book/ architecture: correct PoS description in overview and fix typo

This commit is contained in:
lunar-mining
2022-06-08 14:56:50 -05:00
parent 3db1e69ea8
commit e09a1846ea
2 changed files with 39 additions and 10 deletions

View File

@@ -7,10 +7,11 @@ 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
Crupsinous, a privacy focused proof-of-stake algorithm. To accomodate
Crypsinous, a privacy focused proof-of-stake algorithm. To accomodate
this transition it has designed its data structures to be easy to upgrade.
Below is a specification of how DarkFi's blockchain achieves consensus.
Below is a specification of how DarkFi's current blockchain achieves
consensus.
## Blockchain

View File

@@ -1,17 +1,45 @@
# Overview
DarkFi is a layer one proof-of-stake blockchain that supports anonymous applications. It is currently under development. This overview will outline a few key terms that help explain DarkFi.
DarkFi is a layer one proof-of-stake blockchain that supports anonymous
applications. It is currently under development. This overview will
outline a few key terms that help explain DarkFi.
**Cashier:** The Cashier is the entry-point to the DarkFi network. Its role is to exchange cryptocurrency assets for anonymous _darkened_ tokens that are pegged to the underlying currency. Currently, the role of the Cashier is trusted and centralized. As a next step, DarkFi plans to implement trust-minimized bridges and eventually fully trustless bridges.
**Cashier:** The Cashier is the entry-point to the DarkFi network. Its
role is to exchange cryptocurrency assets for anonymous _darkened_ tokens
that are pegged to the underlying currency. Currently, the role of the
Cashier is trusted and centralized. As a next step, DarkFi plans to
implement trust-minimized bridges and eventually fully trustless bridges.
**Blockchain:** Once new anonymous tokens (e.g. dETH) have been issued, the Cashier posts that data on the blockchain. This data is encrypted and the transaction link is broken.
**Blockchain:** Once new anonymous tokens (e.g. dETH) have been issued,
the Cashier posts that data on the blockchain. This data is encrypted
and the transaction link is broken.
The DarkFi blockchain uses a Proof-of-Stake consensus system. The blockchain is currently in devnet phase. This is a local testnet ran by the DarkFi community. Currently, the blockchain has no consensus token. In the future, staking will be rewarded with transaction fees.
The DarkFi blockchain is currently using a very simple consensus protocol
called Streamlet. The blockchain is currently in devnet phase. This is a
local testnet ran by the DarkFi community. Currently, the blockchain has
no consensus token. DarkFi is working to upgrade to a privacy-enhanced
proof-of-stake algorithm called OuroborusCrypsinous.
**Wallets:** A wallet is a portal to the DarkFi network. It provides the user with the ability to send and receive anonymous _darkened_ tokens. Each wallet is a full node and stores a copy of the blockchain. All contract execution is done locally on the DarkFi wallet.
**Wallets:** A wallet is a portal to the DarkFi network. It provides
the user with the ability to send and receive anonymous _darkened_
tokens. Each wallet is a full node and stores a copy of the
blockchain. All contract execution is done locally on the DarkFi wallet.
**P2P Network:** The DarkFi ecosystem runs as a network of P2P nodes, where these nodes interact with each other over specific protocols (see [node overview](dna.md)). Nodes communicate on a peer-to-peer network, which is also home to tools such as our P2P [irc](../misc/ircd.md) and P2P task manager [tau](../misc/tau.md).
**P2P Network:** The DarkFi ecosystem runs as a network of P2P nodes,
where these nodes interact with each other over specific protocols (see
[node overview](dna.md)). Nodes communicate on a peer-to-peer network,
which is also home to tools such as our P2P [irc](../misc/ircd.md)
and P2P task manager [tau](../misc/tau.md).
**zkas:** zkas is the compiler used to compile zk smart contracts in its respective assembly-like language. The "assembly" part was chosen as it's the bare primitives needed for zk proofs, so later on the language can be expanded with higher-level syntax. Its underlying zero-knowledge proof system is Halo2.
**zkas:** zkas is the compiler used to compile zk smart contracts in
its respective assembly-like language. The "assembly" part was chosen as
it's the bare primitives needed for zk proofs, so later on the language
can be expanded with higher-level syntax. Its underlying zero-knowledge
proof system is Halo2.
**ZK contracts:** Anonymous applications on DarkFi run on proofs that enforce an order of operations. We call these zero-knowledge contracts. Anonymous transactions on DarkFi is possible due to the interplay of two contracts, mint and burn (see the [sapling payment scheme](../zkas/examples/sapling.md)). Using the same method, we can define advanced applications.
**ZK contracts:** Anonymous applications on DarkFi run on proofs
that enforce an order of operations. We call these zero-knowledge
contracts. Anonymous transactions on DarkFi is possible due to the
interplay of two contracts, mint and burn (see the [sapling payment
scheme](../zkas/examples/sapling.md)). Using the same method, we can
define advanced applications.