Skip to content

Commit 825807d

Browse files
committed
wip
1 parent 60eff83 commit 825807d

File tree

2 files changed

+17
-5
lines changed

2 files changed

+17
-5
lines changed

docs/src/architecture/08_concepts/catalyst_voting/cddl/jorm_v2/proof.cddl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
proof = zk_proof \ null
22

3-
zk_proof = [ [+ (announcement, ciphertext, r-response)], scalar]
3+
zk_proof = [[+ (announcement, ciphertext, r-response)], scalar]
44

55
announcement = (group_element, group_element, group_element)
66
ciphertext = (group_element, group_element)

docs/src/architecture/08_concepts/catalyst_voting/jorm.md

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -77,18 +77,18 @@ V1 transaction representation in hex:
7777
* legacy signature (64 byte): `e6c8aa48925e37fdab75db13aca7c4f39068e12eeb3af8fd1f342005cae5ab9a1ef5344fab2374e9436a67f57041899693d333610dfe785d329988736797950d`
7878
<!-- markdownlint-enable max-one-sentence-per-line code-block-style -->
7979

80-
#### Transaction vote generation
80+
#### Vote generation
8181

8282
To generate a cryptographically secured `ENCRYPTED-VOTE` and `PROOF-VOTE` parts you can follow this [spec](./crypto.md#vote).
8383
Important to note,
8484
that as part of [*initial setup*](./crypto.md#initial-setup) of the voting procedure,
8585
the following properties are used:
8686

87-
1. Each proposal, defined by the "Vote plan id" and "Proposal index", defines a number of possible options.
87+
1. Each proposal, defined by the `VOTE-PLAN-ID` and `PROPOSAL-INDEX`, defines a number of possible options.
8888
2. [ristretto255] as a backend cryptographic group.
89-
3. A commitment key $ck$ defined as a [BLAKE2b-512] hash of the "Vote plan id" bytes.
89+
3. A commitment key $ck$ defined as a [BLAKE2b-512] hash of the `VOTE-PLAN-ID` bytes.
9090

91-
#### Transaction signing (witness generation)
91+
#### Signing (witness generation)
9292

9393
Signature generated from the [BLAKE2b-256] hashed `VOTE-PAYLOAD` bytes except of the `WITNESS` part
9494
(the last part from the bytes array):
@@ -150,6 +150,18 @@ If `choice` is a public one, `proof` **must** be `null`.
150150
```
151151
<!-- markdownlint-enable code-block-style -->
152152

153+
#### Vote generation
154+
155+
To generate a cryptographically secured `private_choice` and `zk_proof` parts you can follow this [spec](./crypto.md#vote).
156+
Important to note,
157+
that as part of [*initial setup*](./crypto.md#initial-setup) of the voting procedure,
158+
the following properties are used:
159+
160+
1. Each proposal,
161+
defined by the `vote_plan_id` and `proposal_index`, defines a number of possible options.
162+
2. [ristretto255] as a backend cryptographic group.
163+
3. A commitment key $ck$ defined as a [BLAKE2b-512] hash of the `vote_plan_id` bytes.
164+
153165
## Rationale
154166

155167
## Path to Active

0 commit comments

Comments
 (0)