This is an automated email from the ASF dual-hosted git repository.
gstein pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/steve.git
The following commit(s) were added to refs/heads/trunk by this push:
new 1471936 Specify ID format for Elections and Issues
1471936 is described below
commit 1471936a1ea5c755a355c63833ea5d146995f7e1
Author: Greg Stein <[email protected]>
AuthorDate: Sat Sep 20 06:27:21 2025 -0500
Specify ID format for Elections and Issues
---
v3/README.md | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/v3/README.md b/v3/README.md
index 2d93a31..a4f1ce1 100644
--- a/v3/README.md
+++ b/v3/README.md
@@ -119,9 +119,9 @@ the entropy.
Some notes on implementation, hashing, storage, at-rest encryption, etc.
```
-ElectionID := 32 bits
+ElectionID := 40 bits, as 10 hex characters
PersonID := availid from iclas.txt # for ASF usage
-IssueID := [-a-zA-Z0-9]+
+IssueID := 40 bits, as 10 hex characters
ElectionData := Tuple[ ElectionID, Title ]
IssueData := Tuple[ IssueID, Title, Description, VoteType, VoteOptions ]
@@ -147,7 +147,8 @@ with the ballot definition.
The size of **Salt(xx)** is 16 bytes, which is the default used by the Argon2
implementation. The salt values should never be transmitted.
-The `Hash()` function will be **Argon2**[^argon2]. Note that `Hash()` is
+The `Hash()` function will be **Argon2**[^argon2], producing 32 bytes.
+Note that `Hash()` is
computationally/memory intensive, in order to make "unmasking" of votes
somewhat costly for **root**. Yet it needs to be reasonable to decrypt
the votestrings for final tallying (eg. after ballot-close, **several hours**