TrustTheVote-Project / VoteTrackerPlus

The VoteTrackerPlus root repo
GNU General Public License v2.0
3 stars 2 forks source link

Look into committing the ballot receipts back into the repo #100

Closed windoverwater closed 1 year ago

windoverwater commented 1 year ago

In discussions regarding the spring demo, dusted off the prior idea of checking the ballot receipts back into the repo. In the case of the spring demo this would help with the UX as the participants could scan a single QR code on the ballot-check that takes them to the csv file in GitHub. And that csv file would then contain hyperlinks to the digests as opposed to just the digests.

This would allow the participants to tap the digest link to go to their specific contest CVR content.

Though this may make for a good demo, it resurfaces the question of whether this feature is spelunk proof enough such that with all the ballot-checks in one place, could an AI or sophisticated enough data-mining program could discern something from all the ballot-checks that would compromise the anonymity, privacy, or security/trustworthiness of the election. (FWIIW things like this were/are not part of VTP if it is possible to not include them.)

Regardless this issue is about the possible implementation of the checkin for the demo.

windoverwater commented 1 year ago

If this is to be done, it seems reasonable to follow the same idiom as with the contest.json files, namely keep checking-in the ballot-check.csv on top of itself on a branch, and then randomly merge the branch into main as part of the ballot cache maintenance.

Minor future note - VTP wants to be able to not create a ballot check per voter request. If so, a blank ballot check should be committed so to be able to keep all the counts the same (similar to casting a blank contest).

windoverwater commented 1 year ago

Possible low/mid level plan which minimizes risk but while also minimizing the manual steps needed to make this idea work. Note - this plan does not modify merge-contests-operations and is focused solely on supporting the spring demo. It also does not cover mitigations against data spelunking challenges/attacks against the checked-in receipts.