ABCDEFGHIJKLMNOPQRSTUVWXYZ
1
viscIssue # @ GitHubLocal #Issue titleProposed ContributionRelated locationsProposed contributorsContextRelated links
2
The items are currently organized in three tables: from NIST-PEC comments; from "breakout" sessions, from "community proposal" sessions
3
Possible "status" values: suggested (needs confirmation by contributors) / confirmed (contributors have confirmed) / submitted (contribution was submitted) / integrated (contribution was integrated into the document)
4
5
Items from the NIST-PEC comments
6
StatusIssue # @ GitHubLocal #Issue titleProposed ContributionRelated locationsProposed contributorsContextRelated links
7
ConfirmedIssue 1N1Add an executive summary Include an "executive summary" describing at a high level the structure and content of the overall "ZKProof community reference" document; the new text may also allude to the purpose, aim, scope and format of the document.Preamble of the document, before the table of contents.NIST-PEC team (Luís B, René P, Angela R)NIST comments C5, D1-D5- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC5.3
8
ConfirmedIssue 2N2Clarify proofs of knowledgeMake a clearer distinction of ZK proofs of membership vs. ZK proofs of knowledge, including by means of examples and definitions; clarify how the formalism can adequately model proofs of knowledge; may also include a definition of “extractability” property/game.Sections 1.1 and 1.5.3NIST-PEC team (Luís B, René P, Angela R)NIST comments C7- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC7.3
9
ConfirmedIssue 3N3Explain the computational security parameterAdd text about possible computational security parameters, and the different security properties they may apply to (e.g., soundness, ZK, short-term vs. long-term, ...). In section 2.5, replace occurrences of "120" by "128".Chapter 2 ("Implementation"), mostly in Section 2.5.NIST-PEC team (Luís B, René P, Angela R)NIST comments C18- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC18.3
10
ConfirmedIssue 4N4Clarify the public vs. non-public aspect of “common” in CRSClarify the distinction between common (as in shared between prover and verifier) and public knowledge (as in known externally). The lack of distinction was noticed in several parts of the document, when thinking of a comparison between transferable vs. non-transferable ZK proofs. CRS is sometimes being defined as public, although in practice it could be obtained as common to the intervening parties, yet private to a particular interaction. For example, line 177 says “common public input” when first talking of a "common reference string", but the “public” aspect is arguable – being public vs. common-but-not-public may make the difference between transferability vs. non-transferability.Mostly in Chapter 1, starting in section 1.2; will also check for other applicable cases across the document.NIST-PEC team (Luís B, René P, Angela R)NIST comment C11- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC11.3

blogpost - https://medium.com/qed-it/diving-into-the-snarks-setup-phase-b7660242a0d7
11
ConfirmedIssue 5N5Mention intellectual propertyPresent (in one or two paragraphs), in a non-legalese way, several remarks about intellectual property (IP). A main goal is to raise awareness about the role that IP may take or might not take in the adoption of recommendations and requirements in the community reference document. We are aware this is a delicate topic, so a goal of the contribution is to also motivate future constructive discussion/consideration by the ZKProof community, e.g., about open-source, IP rights, reasonable and non-discriminatory IP terms, etc.PreambleNIST-PEC team (Luís B, René P, Angela R)NIST comment C22- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC22.3
12
ConfirmedIssue 6N6TransferabilityElaborate more on the concept of transferability. For example, in an interactive protocol over the Internet, how do regular authenticated channels vs. “ideally” authenticated channels affect transferability? Would a non-transferable protocol become transferable when the prover signs all sent messages and the verifier uses the output of a cryptographic hash function to select random challenges?

Also, in Section 3.2, revise the incorrect assertion in item 1: “Only non-interactive ZK (NIZK) can actually hold this property” [being publicly verifiable / transferable?]. For example, if transferability is a design goal then there are settings where it is possible to design interactive protocols for which the view (transcript) of the original verifier (interacting with the original prover) can later serve as a transferable proof for other verifiers.
Chapter 1 ("Security/Theory")Luís B, Ivan ViscontiNIST comments C9 and C14. Relates also to the "deniability" item identified in the breakout session on "Interactive Zero Knowledge"- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC9.3
13
ConfirmedIssue 7N7Enhance the glossaryAdd to the glossary the suitable technical terms that are used across the document; include hyperlinks to at least its first use in the document.Section "A.2 Glossary" in the Appendix.The editors (Daniel B, Luís B, Eran T). Anyone else please reply to this post with suggested terms to add to the glossary.NIST comment C4- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC4.3
14
ConfirmedIssue 8N8Index and highlight the running examplesIdentify in the document which examples can be placed within a boxed environment, with a caption, explanation (possibly an illustration) and a footnote identifying the included concepts (e.g., “setup, trapdoor, CRS, prover and verifier”). Some of these items may be placed as placeholders, as a way to request further contribution by the community.
Edit across the document; then include "list of examples" after the table of comments and lists of figures and tables.The editors (Daniel B, Luís B, Eran T) will deal with uniformizing the Latex environment for boxed examples. Anyone else please contribute in reply to this post with a description of useful examples to include.NIST comment C6- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC6.3
15
ConfirmedIssue 9N9Highlight the recommendations and requirementsReview the document to identify which statements correspond to requirements and/or recommendations. Create a proper indexed latex environment to highlight these requirements and/or recommendations. It is expected that some of these items will be edited in a tentative manner, as they may need broader discussion by the community.Edit across the document; then include "list of recommendations" and "list of requirements" after the toc, lof and lot.The editors (Daniel B, Luís B, Eran T). Anyone else please contribute in reply to this post by identifying concrete suggestions of recommendations/requirements already present in the document and/or others suggested to include.NIST comment C2- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC2.3
16
SuggestedIssue 11N10Consider settings with concurrencyMake explicit considerations for settings with concurrency. For example, do the prover and verifier know in which session they are interacting? Consider mentioning the possible use of session ids. How to ensure non-malleability?Chapter 1 (security/theory)Needs contributorsNIST comment C8- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC8.3
17
SuggestedIssue 12N11Clarify the (implicit) scope of some use-casesThe last paragraph in section 2.2 says “digital money based applications belong to the first model” [public verifiable as a requirement]. This assertion appears implicitly scoped in a too narrow subset of conceivable applications about digital money. Conversely, one could consider a scenario where Alice wants to convince Bob, in a non-transferable way, that Alice bought something from Charlie. Consider clarifying better the scope of examples vs. the scope of areas of application.Section 3.2Needs contributorsNIST comment C15- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC15.3
18
SuggestedIssue 13N12Compare circuits vs. R1CSThe “security/theory” track is mentioning Boolean circuits but not R1CS. The “implementation” track is focused on R1CS without explaining why/when it is preferable to a circuit representation. Consider explaining better (in the “security” track) what is R1CS. Consider introducing and exemplifying a circuit-to-R1CS translation and/or vice-versa. Consider clarifying better in the “implementation” track why the focus is on R1CS, for example compared with circuits.Chapters 1 (security/theory) and 2 (implementation)Needs contributorsNIST comment C10- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC10.3
19
SuggestedIssue 14N13Justify the backend choice NIZK-R1CSProvide more rationale for the choice on NIZK and R1CS. Section 3.2 could benefit from a comparative overview of the various low-level backend options for representing relations. Comparing the advantages and disadvantages of interactive vs. non-interactive, and of several representations (e.g., including arithmetic circuits), may open more room for future document contributions on the cases that have not yet been explored in the existing documentation.Chapter 2 (implementation)Needs contributorsNIST comment C17- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC17.3
20
SuggestedIssue 15N14Propose testing and validation mechanismsInclude some discussion on how to test and validate implementations.Chapter 2 (implementation)Needs contributorsNIST comment C21- NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf
21
22
23
Items from the "Breakout" sessions
24
StatusIssue # @ GitHubLocal #Issue titleProposed ContributionRelated locationsProposed contributorsContextRelated links
25
SuggestedBA1QAP vs Linear PCP efficiency and instantiationMariana RaykovaBreakout session: ZKProof Community Referencehttps://community.zkproof.org/t/breakout-session-zkproof-proceedings-and-community-reference/152/2
26
IntegratedBA2Specific comments integration from NISTOrganizing the items of the "NIST comments" across several contribution items. --- DONE: created several "issues" in GitHub and rows in this spreadsheet.Luís BrandãoBreakout session: ZKProof Community ReferenceBreakout session notes: https://community.zkproof.org/t/breakout-session-zkproof-proceedings-and-community-reference/152/2
NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf
27
SuggestedBA3Motivation and reference of the applications (NIST Comment C12, C16)(NIST Comment C12:) "[The] Section “[...] Introduction and motivation” could benefit from more motivation about the three application use-cases that will be discussed. Consider providing a short intuitive explanation about each one."

(NIST Comment C16:) "Consider adding references when mentioning “while adapting to the existing Identity standards”. Same comment of adding references applies (across sections) to other cases where specific prior results, definitions, claims, etc. are mentioned but not referenced. (This does not intend to suggest that the document becomes a survey, but simply that what is mentioned in concrete be supported with corresponding references that the reader can lookup for fact-checking and further reading.)"
Sections 3.1 and 3.5Eduardo MoraisBreakout session: ZKProof Community Reference.
NIST Comments: C12 and C16
Breakout session notes: https://community.zkproof.org/t/breakout-session-zkproof-proceedings-and-community-reference/152/2
NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf
28
SuggestedBA4Gadgets improvement table (NIST comment C13)Complete tables 3.1--3.9Eduardo MoraisBreakout session: ZKProof Community Reference
NIST Comments: C13
Breakout session notes: https://community.zkproof.org/t/breakout-session-zkproof-proceedings-and-community-reference/152/2
NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf
29
SuggestedBA5NIST C20 (side-channels)Consider exemplifying conceivable cases where side-channels are problematic.Section 3Armando FacBreakout session: ZKProof Community Reference
NIST Comments: C20
Breakout session notes: https://community.zkproof.org/t/breakout-session-zkproof-proceedings-and-community-reference/152/2
NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf
30
SuggestedBA6Describe better gadget purpose / functionality (start discussion of scope)Daniel BenarrochBreakout session: ZKProof Community Referencehttps://community.zkproof.org/t/breakout-session-zkproof-proceedings-and-community-reference/152/2
31
SuggestedBA7Applications need to be better explained and worked on, as well as the predicatesDaniel Benarroch, Angela RobinsonBreakout session: ZKProof Community Referencehttps://community.zkproof.org/t/breakout-session-zkproof-proceedings-and-community-reference/152/2
32
SuggestedBA8How to integrate legacy technology to applications in ZK (lego SNARK?)Angelo de CaroBreakout session: ZKProof Community Referencehttps://community.zkproof.org/t/breakout-session-zkproof-proceedings-and-community-reference/152/2
33
???BBScribe notes are available, but no concrete proposed contributions/contributors have been identified so far.Breakout session: ZK Recursive Compositionhttps://community.zkproof.org/t/breakout-session-snarks-on-snarks-recursive-composition/137
34
???BCScribe notes are available, but no concrete proposed contributions/contributors have been identified so far.Breakout session: Structured Reference String Generationhttps://community.zkproof.org/t/breakout-session-structured-reference-string-generation/203
35
???BDConfirm the title of the breakout session: Formal verification for ZK (as in email) of for SNARK (as in the forum)???There is an abstract, but the scribe notes are not available.Breakout session: Formal Verification for ZKhttps://community.zkproof.org/t/breakout-session-formal-verification-for-snarks/136
36
???BEThere is an abstract, but the scribe notes are not available.Breakout session: Security Assumptions Underpinning Zero-Knowledge Proofshttps://community.zkproof.org/t/breakout-session-security-assumptions-underpinning-zero-knowledge-proofs/181/3
37
???BFScribe notes are available (via an external link), but no concrete proposed contributions/contributors Have been identified so far.Breakout session: Domain-Specific Languages for ZKhttps://community.zkproof.org/t/breakout-session-domain-specific-languages-for-zk/134/5
38
SuggestedBG1DeniabilityMerged with item related to NIST comment C19.Ivan ViscontiBreakout session: Interactive Zero Knowledge.Breakout session notes: https://community.zkproof.org/t/breakout-session-interactive-zero-knowledge/130
39
ConfirmedIssue 10BG2Explain the statistical security parameterDiscuss various examples of acceptable values of statistical security parameter, e.g., 40 bits. Explore how interactive to non-interactive transformations may affect the requirements on the statistical security parameter, e.g., making it become a computational parameter when applying Fiat-Shamir.Sections 1.2, 1.4.3 and 2.5Luís BBreakout session: Interactive Zero Knowledge. Also the NIST comment C19.Breakout session notes: https://community.zkproof.org/t/breakout-session-interactive-zero-knowledge/130
NIST comments: https://community.zkproof.org/uploads/short-url/pfzbGwLRFZBmccRW17ngZS0c4h1.pdf#pdfbkmk%3Arevcom%3AC19.3
40
SuggestedBG3Efficiency and trusted setupYupeng ZhangBreakout session: Interactive Zero Knowledgehttps://community.zkproof.org/t/breakout-session-interactive-zero-knowledge/130
41
SuggestedBG4IntroYael and JustinBreakout session: Interactive Zero Knowledgehttps://community.zkproof.org/t/breakout-session-interactive-zero-knowledge/130
42
SuggestedBG5Applications of interactive ZKDaniel BenarrochBreakout session: Interactive Zero Knowledgehttps://community.zkproof.org/t/breakout-session-interactive-zero-knowledge/130
43
???BHScribe notes are available (via an external link), but no concrete proposed contributions/contributors Have been identified so far.Breakout session: ZK Protocol Security Analysis and Correctnesshttps://community.zkproof.org/t/breakout-session-zk-protocol-security-analysis-proofs-of-correctness/184
44
45
46
Items from the "Community Proposal" sessions
47
StatusIssue # @ GitHubLocal #Issue titleProposed ContributionRelated locationsProposed contributorsContextRelated links
48
SuggestedPA0Add a summary about the community proposal "Elliptic Curve Generation" Create an abstract/summary (not more than 2 pages) of each proposal, to be included (within a new section to be created by the editors) of the ZKProof community reference.New section to be created.The authors of the "community proposal" submit a summary. The editors then organize all summaries in a new section of the "community reference", striving for a uniform style.Editorial process --- default add-on to the ZKProof community reference, for any "community proposal" discussed at a ZKProof workshop.EC gen @ ZKProof Forum:
https://community.zkproof.org/t/zkproof-proposal-generation-of-elliptic-curves-for-circuit-use/121
EC gen @ ZKProof GitHub: https://github.com/zkpstandard/zkreference/blob/master/proposal--elliptic-curve-generation.pdf
49
???PAxElliptic Curve Generation for ZK SystemsThere is an abstract, but the scribe notes are not available.Proposal session: Elliptic Curve Generation for ZK Systems
https://community.zkproof.org/t/zkproof-proposal-generation-of-elliptic-curves-for-circuit-use/121
50
SuggestedPB0aAdd a summary about the "[Interoperability] zkInterface" community proposalThe authors of the "community proposal" submit a summary. The editors then organize all summaries in a new section of the "community reference", striving for a uniform style.Editorial process --- default add-on to the ZKProof community reference, for any "community proposal" discussed at a ZKProof workshop.zkInterface @ ZKProof forum: https://community.zkproof.org/t/zkproof-proposal-interoperability-of-zero-knowledge-tools/86/2
zkInterface @ ZKProof GitHub: https://github.com/zkpstandard/zkreference/blob/master/proposal--zk-interop-zkinterface.pdf
51
SuggestedPB0bAdd a summary about the "[Interoperability] J1RCS" community proposalThe authors of the "community proposal" submit a summary. The editors then organize all summaries in a new section of the "community reference", striving for a uniform style.J1RCS @ ZKProof Forum: https://community.zkproof.org/t/zkproof-proposal-j-r1cs-a-json-lines-file-format-for-r1cs/117"
J1RCS @ ZKProof GitHub: https://github.com/zkpstandard/zkreference/blob/master/proposal--zk-interop-jr1cs.pdf
52
SuggestedPB1Web assembly backing for zkInterfaceAurel NicolasProposal session: Interoperability of ZK Systems and J1RCS proposal"Interoperability": https://community.zkproof.org/t/zkproof-proposal-interoperability-of-zero-knowledge-tools/86/2
J1RCS: https://community.zkproof.org/t/zkproof-proposal-j-r1cs-a-json-lines-file-format-for-r1cs/117"
53
SuggestedPB2Platform issue (browser vs native)Daniel, Jack, Sean, JordiProposal session: Interoperability of ZK Systems and J1RCS proposal"Interoperability": https://community.zkproof.org/t/zkproof-proposal-interoperability-of-zero-knowledge-tools/86/2
J1RCS: https://community.zkproof.org/t/zkproof-proposal-j-r1cs-a-json-lines-file-format-for-r1cs/117"
54
SuggestedPB3Calling convention issue (need protocol for calling gadgets between each other)Daniel, Jack, Sean, JordiProposal session: Interoperability of ZK Systems and J1RCS proposal"Interoperability": https://community.zkproof.org/t/zkproof-proposal-interoperability-of-zero-knowledge-tools/86/2
J1RCS: https://community.zkproof.org/t/zkproof-proposal-j-r1cs-a-json-lines-file-format-for-r1cs/117"
55
Suggested PB4Interactivity and semanticsDaniel, Jack, Sean, JordiProposal session: Interoperability of ZK Systems and J1RCS proposal"Interoperability": https://community.zkproof.org/t/zkproof-proposal-interoperability-of-zero-knowledge-tools/86/2
J1RCS: https://community.zkproof.org/t/zkproof-proposal-j-r1cs-a-json-lines-file-format-for-r1cs/117"
56
Suggested PB5Dependency of libraries / languagesDaniel, Jack, Sean, JordiProposal session: Interoperability of ZK Systems and J1RCS proposal"Interoperability": https://community.zkproof.org/t/zkproof-proposal-interoperability-of-zero-knowledge-tools/86/2
J1RCS: https://community.zkproof.org/t/zkproof-proposal-j-r1cs-a-json-lines-file-format-for-r1cs/117"
57
SuggestedPC0Add a summary about the "Commit and Prove" community proposalThe authors of the "community proposal" submit a summary. The editors then organize all summaries in a new section of the "community reference", striving for a uniform style.Editorial process --- default add-on to the ZKProof community reference, for any "community proposal" discussed at a ZKProof workshop.Commit-and-prove @ ZKProof forum: https://community.zkproof.org/t/zkproof-proposal-commit-and-prove-zero-knowledge-proofs/113/2
Commit-and-prove @ ZKProof GitHub: https://github.com/zkpstandard/zkreference/blob/master/proposal--zk-commit-and-prove.pdf
58
???PCThere is an abstract, but the scribe notes are not available.Proposal session: Commit-and-Prove Zero-Knowledge Proofshttps://community.zkproof.org/t/zkproof-proposal-commit-and-prove-zero-knowledge-proofs/113/2
59
60
61
Other Items: editorial
62
ConfirmedE1Implement editorial structural changesImplement editorial structural changes to the document. For example:

(1) Embed section 1.8 ("taxonomy of constructions") within a new chapter, to be developed with explanations of several paradigms/protocols for ZKPs;

This issue may remain open across the development of the document. The previous enumeration may be augmented with more items across time.
All documentThe editors (Daniel B, Luís B, Eran T) will consider the necessary structural changes (new chapters, sections, subsections, etc.) based on the overall set of contributions.Inherently related to the editorial development of the reference document.https://github.com/zkpstandard/zkreference/issues/16
63
SuggestedE2Add explanations about ZKP paradigmsProduce a high-level description, tentatively with not more than two pages, for each of several paradigms that enable zero-knowledge proofs. Mention comparative advantages/disadvantages and if possible include an illustrative figure and/or example. For example, describe ZKP paradigms based on "MPC in the head", "garbled circuits", etc.One new subsection ("2.x.y") per explained paradigm, to be included inside the chapter (2) on "ZKP paradigms" that will be created from the starting point of the current Section 1.8 (taxonomy of constructions).Tentatively one or two contributors per described paradigm.Related to the editorial development of the reference document, namely to make the content more understandable by non-experts. See related issue "Implement editorial structural changes".https://github.com/zkpstandard/zkreference/issues/17
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100