You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently the commitment is stored in browser storage. If the juror needs to reveal their vote on a different device or if their browser storage was cleared, the commitment must be recovered. For simple question types it can be brute-forced (the salt is derived deterministically).
But there are 2 cases where the commitment cannot be recovered this way:
a) for integer and complex question types (too many possible values) and
b) for the Shutterized DK (#1314) if it is not available or provides incorrect values.
Both a) and b) might be encountered at the same time for a Shutterized DK handling an integer question type for example.
In most cases we can assume that the juror always remembers his exact vote even for an integer or complex answer, which mitigates a). To mitigate b) the juror would also need to remember his exact justification (to the letter and punctuation) which is less likely.
Solution
Allow the jurors to Export their commitment to a file rather than keeping it in browser storage which is not easily accessible. This way the juror may choose the keep the file on their device or on their favorite trusted cloud storage like their personal Google/Apple drive.
a) The integer or complex answer commitment can be recovered in Voting period with an Import button where they can retrieve the commitment file.
b) If the auto-reveal step fails for any reason, the juror would be notified to cast their vote manually with the Import button.
Implementation
The existing browser storage + brute-forcing solution
If it's not too complicated, keep it as the default solution. The juror may choose to import/export their commitment to file (highly recommend it) but is not mandatory.
If the commitment is successfully recovered from browser storage in Voting period OR if the brute-forcing mechanism is successful, we may not need to expose the Import button to the juror at all.
The text was updated successfully, but these errors were encountered:
jaybuidl
changed the title
Hidden votes enhancement: Export/Import commitment to a file
Hidden votes recovery UX: Export/Import commitment to a file
May 9, 2025
Rationale
Currently the commitment is stored in browser storage. If the juror needs to reveal their vote on a different device or if their browser storage was cleared, the commitment must be recovered. For simple question types it can be brute-forced (the salt is derived deterministically).
Current implementation
#1059

Shortcomings
But there are 2 cases where the commitment cannot be recovered this way:
a) for integer and complex question types (too many possible values) and
b) for the Shutterized DK (#1314) if it is not available or provides incorrect values.
Both a) and b) might be encountered at the same time for a Shutterized DK handling an integer question type for example.
In most cases we can assume that the juror always remembers his exact vote even for an integer or complex answer, which mitigates a). To mitigate b) the juror would also need to remember his exact justification (to the letter and punctuation) which is less likely.
Solution
Allow the jurors to Export their commitment to a file rather than keeping it in browser storage which is not easily accessible. This way the juror may choose the keep the file on their device or on their favorite trusted cloud storage like their personal Google/Apple drive.
a) The integer or complex answer commitment can be recovered in Voting period with an Import button where they can retrieve the commitment file.
b) If the auto-reveal step fails for any reason, the juror would be notified to cast their vote manually with the Import button.
Implementation
The existing browser storage + brute-forcing solution
If it's not too complicated, keep it as the default solution. The juror may choose to import/export their commitment to file (highly recommend it) but is not mandatory.
If the commitment is successfully recovered from browser storage in Voting period OR if the brute-forcing mechanism is successful, we may not need to expose the Import button to the juror at all.
The text was updated successfully, but these errors were encountered: