Skip to content

Commit

Permalink
docs(dave): add paper and short description
Browse files Browse the repository at this point in the history
  • Loading branch information
GCdePaula committed Nov 12, 2024
1 parent 84fd797 commit a12395b
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 4 deletions.
12 changes: 8 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Dave is a permissionless, interactive fraud-proof system. This repo contains the
This project uses git submodules.
Remember to either clone the repository with the flag `--recurse-submodules`, or run `git submodule update --recursive --init` after cloning.

To run the Lua node, follow the instructions [here](prt/lua_poc/README.md).
To run the PRT Lua node, follow the instructions [here](prt/tests/compute/README.md).


## What's in a name
Expand Down Expand Up @@ -51,14 +51,18 @@ As long as one can provide a self-contained state-transition function, Dave will

### Permissionless Refereed Tournaments

The first implementation of Dave is based on the Permissionless Refereed Tournaments primitive.
The first implementation of Dave is based on the Permissionless Refereed Tournaments (PRT) primitive.
The paper can be found [here](https://arxiv.org/abs/2212.12439).
The maximum delay grows logarithmically on the number of Sybils, whereas the computation resources and stakes are constant, and don't grow on the number of Sybils.
The maximum delay and expenses grow logarithmically on the number of Sybils, and hardware and bonds are both low and constant, regardless of the number of Sybils.
As such, the defenders have an exponential resource advantage over the attackers (making the algorithm secure), it's easy to become a validator (low bonds and hardware requirements, making the algorithm decentralized), and delay grows slowly.


### Dave fraud-proof algorithm

Coming soon.
Although delay grows logarithmically in the Permissionless Refereed Tournaments (PRT) algorithm, the constant multiplying this logarithm is high, harming its liveness.

The second implementation of Dave will be based on the eponymous Dave algorithm, which improves the liveness of PRT, while maintaining its attractive security and decentralization properties.
We've published our initial research [here](https://arxiv.org/abs/2411.05463).


## Status
Expand Down
14 changes: 14 additions & 0 deletions dave/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Dave

The implementation of the Dave fraud-proof algorithm.

## The Dave fraud-proof algorithm — triumphing over Sybils with a laptop and a small collateral

The Dave fraud-proof algorithm offers an unprecedented combination of decentralization, security, and liveness.
The resources that must be mobilized by an honest participant to defeat an adversary grow only logarithmically with what the adversary ultimately loses.
As a consequence, there is no need to introduce high bonds that prevent an adversary from creating too many Sybils.
This makes the system very inclusive and frees participants from having to pool resources among themselves to engage the protocol.
Finally, the maximum delay to finalization also grows only logarithmically with total adversarial expenditure, with the smallest multiplicative factor to date.
In summary: the entire dispute completes in 2–5 challenge periods, the only way to break consensus is to censor the honest party for more than one challenge period, and the costs of engaging in the dispute are minimal.

We've published our initial research [here](https://arxiv.org/abs/2411.05463), and committed it [here](docs/dave.pdf) for convenience.
Binary file added dave/docs/dave.pdf
Binary file not shown.
8 changes: 8 additions & 0 deletions prt/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Permissionless Refereed Tournaments

## Running PRT

This project uses git submodules.
Remember to either clone the repository with the flag `--recurse-submodules`, or run `git submodule update --recursive --init` after cloning.

To run the PRT Lua node, follow the instructions [here](tests/compute/README.md).
Binary file not shown.

0 comments on commit a12395b

Please sign in to comment.