Skip to content

Commit 36d634c

Browse files
authored
Audit report and formal spec (#39)
* fixed wrong link to semaphore-base.circom in docs * added audit report and spec Former-commit-id: 7a28c61
1 parent dabd686 commit 36d634c

12 files changed

+36
-14
lines changed
Binary file not shown.

docs/about.html

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,9 @@ <h1><a class="header" href="#about" id="about">About</a></h1>
163163
verification on-chain. The zero-knowledge components work off-chain to allow
164164
the user to generate proofs, which allow the smart contract to update its state
165165
if these proofs are valid.</p>
166+
<p>For a formal description of Semaphore and its underlying cryptographic
167+
mechanisms, also see this document
168+
<a href="https://github.com/appliedzkp/semaphore/tree/master/spec">here</a>.</p>
166169
<p>Semaphore is designed for smart contract and dApp developers, not end users.
167170
Developers should abstract its features away in order to provide user-friendly
168171
privacy.</p>

docs/audit.html

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -155,8 +155,10 @@ <h1><a class="header" href="#security-audit" id="security-audit">Security audit<
155155
as well as relevant circuits in
156156
<a href="https://github.com/iden3/circomlib">circomlib</a>, which contains components
157157
which the Semaphore zk-SNARK uses.</p>
158-
<p>All security and performance issues have been fixed. The full audit report will
159-
be available soon.</p>
158+
<p>The summary of the audit results can be found
159+
<a href="https://github.com/appliedzkp/semaphore/tree/master/audit">here</a>. After three
160+
rounds of fixes, all security and performance issues were fixed, and the few
161+
remaining issues are minor and do not affect security.</p>
160162

161163
</main>
162164

docs/howitworks.html

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -192,8 +192,9 @@ <h2><a class="header" href="#broadcasting-signals" id="broadcasting-signals">Bro
192192
<p>To zk-SNARK proof must satisfy the constraints created by Semaphore's zk-SNARK
193193
circuit as described below:</p>
194194
<h3><a class="header" href="#the-zk-snark-circuit" id="the-zk-snark-circuit">The zk-SNARK circuit</a></h3>
195-
<p>The <a href="./circuits/circom/semaphore-base.circom">semaphore-base.circom</a> circuit
196-
helps to prove the following:</p>
195+
<p>The
196+
<a href="https://github.com/appliedzkp/semaphore/blob/master/circuits/circom/semaphore-base.circom">semaphore-base.circom</a>
197+
circuit helps to prove the following:</p>
197198
<h3><a class="header" href="#that-the-identity-commitment-exists-in-the-merkle-tree" id="that-the-identity-commitment-exists-in-the-merkle-tree">That the identity commitment exists in the Merkle tree</a></h3>
198199
<p><strong>Private inputs:</strong></p>
199200
<ul>

docs/index.html

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,9 @@ <h1><a class="header" href="#about" id="about">About</a></h1>
163163
verification on-chain. The zero-knowledge components work off-chain to allow
164164
the user to generate proofs, which allow the smart contract to update its state
165165
if these proofs are valid.</p>
166+
<p>For a formal description of Semaphore and its underlying cryptographic
167+
mechanisms, also see this document
168+
<a href="https://github.com/appliedzkp/semaphore/tree/master/spec">here</a>.</p>
166169
<p>Semaphore is designed for smart contract and dApp developers, not end users.
167170
Developers should abstract its features away in order to provide user-friendly
168171
privacy.</p>

docs/print.html

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,9 @@ <h1><a class="header" href="#about" id="about">About</a></h1>
165165
verification on-chain. The zero-knowledge components work off-chain to allow
166166
the user to generate proofs, which allow the smart contract to update its state
167167
if these proofs are valid.</p>
168+
<p>For a formal description of Semaphore and its underlying cryptographic
169+
mechanisms, also see this document
170+
<a href="https://github.com/appliedzkp/semaphore/tree/master/spec">here</a>.</p>
168171
<p>Semaphore is designed for smart contract and dApp developers, not end users.
169172
Developers should abstract its features away in order to provide user-friendly
170173
privacy.</p>
@@ -276,8 +279,9 @@ <h2><a class="header" href="#broadcasting-signals" id="broadcasting-signals">Bro
276279
<p>To zk-SNARK proof must satisfy the constraints created by Semaphore's zk-SNARK
277280
circuit as described below:</p>
278281
<h3><a class="header" href="#the-zk-snark-circuit" id="the-zk-snark-circuit">The zk-SNARK circuit</a></h3>
279-
<p>The <a href="./circuits/circom/semaphore-base.circom">semaphore-base.circom</a> circuit
280-
helps to prove the following:</p>
282+
<p>The
283+
<a href="https://github.com/appliedzkp/semaphore/blob/master/circuits/circom/semaphore-base.circom">semaphore-base.circom</a>
284+
circuit helps to prove the following:</p>
281285
<h3><a class="header" href="#that-the-identity-commitment-exists-in-the-merkle-tree" id="that-the-identity-commitment-exists-in-the-merkle-tree">That the identity commitment exists in the Merkle tree</a></h3>
282286
<p><strong>Private inputs:</strong></p>
283287
<ul>
@@ -735,8 +739,10 @@ <h1><a class="header" href="#security-audit" id="security-audit">Security audit<
735739
as well as relevant circuits in
736740
<a href="https://github.com/iden3/circomlib">circomlib</a>, which contains components
737741
which the Semaphore zk-SNARK uses.</p>
738-
<p>All security and performance issues have been fixed. The full audit report will
739-
be available soon.</p>
742+
<p>The summary of the audit results can be found
743+
<a href="https://github.com/appliedzkp/semaphore/tree/master/audit">here</a>. After three
744+
rounds of fixes, all security and performance issues were fixed, and the few
745+
remaining issues are minor and do not affect security.</p>
740746
<h1><a class="header" href="#credits" id="credits">Credits</a></h1>
741747
<ul>
742748
<li>Barry WhiteHat</li>

docs/searchindex.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/searchindex.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

docs_src/src/about.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ verification on-chain. The zero-knowledge components work off-chain to allow
1616
the user to generate proofs, which allow the smart contract to update its state
1717
if these proofs are valid.
1818

19+
For a formal description of Semaphore and its underlying cryptographic
20+
mechanisms, also see this document
21+
[here](https://github.com/appliedzkp/semaphore/tree/master/spec).
22+
1923
Semaphore is designed for smart contract and dApp developers, not end users.
2024
Developers should abstract its features away in order to provide user-friendly
2125
privacy.

docs_src/src/audit.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,7 @@ as well as relevant circuits in
77
[circomlib](https://github.com/iden3/circomlib), which contains components
88
which the Semaphore zk-SNARK uses.
99

10-
All security and performance issues have been fixed. The full audit report will
11-
be available soon.
10+
The summary of the audit results can be found
11+
[here](https://github.com/appliedzkp/semaphore/tree/master/audit). After three
12+
rounds of fixes, all security and performance issues were fixed, and the few
13+
remaining issues are minor and do not affect security.

0 commit comments

Comments
 (0)