|
|
@@ -4,14 +4,40 @@ This repository contains the code artifact for `sigma-rs`, a Rust
|
|
|
software stack for implementing protocols based on keyed-verification
|
|
|
anonymous credentials (KVAC).
|
|
|
|
|
|
+The `sigma-rs` stack consists of the following components (listed along
|
|
|
+with the versions pinned in this artifact):
|
|
|
+
|
|
|
+ - [`spongefish`](https://github.com/arkworks-rs/spongefish/tree/v0.6.1)
|
|
|
+ tag `v0.6.1`
|
|
|
+ - [`sigma-proofs`](https://github.com/sigma-rs/sigma-proofs/tree/v0.3.1)
|
|
|
+ tag `v0.3.1`
|
|
|
+ - [`sigma-compiler`](https://git-crysp.uwaterloo.ca/SigmaProtocol/sigma-compiler/src/0.2.2)
|
|
|
+ tag `0.2.2`
|
|
|
+ - [`cmz`](https://git-crysp.uwaterloo.ca/SigmaProtocol/cmz/src/0.2.1)
|
|
|
+ tag `0.2.1`
|
|
|
+
|
|
|
+This artifact also evaluates two sample applications using this stack,
|
|
|
+described in the paper:
|
|
|
+
|
|
|
+ - [`application-ooni`](https://github.com/ooni/userauth/tree/artifact-v0.4)
|
|
|
+ tag `artifact-v0.4`
|
|
|
+ - [`application-lox`](https://gitlab.torproject.org/onyinyang/lox/-/tree/lox-artifact)
|
|
|
+ tag `lox-artifact`
|
|
|
+
|
|
|
+We also include for comparison a version of `application-lox` that uses
|
|
|
+[an update](https://gitlab.torproject.org/onyinyang/lox-zkp) of the
|
|
|
+older [`zkp`](https://github.com/zkcrypto/zkp/tree/0.8.0) crate, instead
|
|
|
+of our `sigma-rs` stack:
|
|
|
+
|
|
|
+ - [`application-lox-zkp`](https://gitlab.torproject.org/onyinyang/lox/-/tree/lox-artifact-zkp)
|
|
|
+ tag `lox-artifact-zkp`
|
|
|
+
|
|
|
## Artifact structure
|
|
|
|
|
|
The directories in this repository are as follows:
|
|
|
|
|
|
- - [`Scripts`](Scripts/)
|
|
|
- : Useful scripts for building a docker image for this artifact, and running tests therein
|
|
|
- - [`patches`](patches/)
|
|
|
- : Patches to the Cargo.toml file for our `sigma-rs` collection of
|
|
|
+ - [`Scripts`](Scripts/): Useful scripts for building a docker image for this artifact, and running tests therein
|
|
|
+ - [`patches`](patches/): Patches to the Cargo.toml file for our `sigma-rs` collection of
|
|
|
crates, to force them to use the local copies of each other as
|
|
|
dependencies, rather than using the published versions from crates.io.
|
|
|
These patches are applied automatically by the `build-docker` script.
|