-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Stats for precompute tests #217
Comments
We need to know 1) the timings on target hardware, and 2) the required maximum latency of voting. Latency here means the lag between voter pressing "im done with this ballot" and the system finishing the encryption and producing the confirmation code. Precompute requires coupling the encryption library and the UI. Could build an encryption webapp to prototype the communication. |
These prototypes assume that the ballotId and ballotStyleId and the codeSeed are all available at the start of the precomputation. That is, that precomputation starts when the voter is given a ballot to start filling out. Precomputation overlaps the process of filling out the ballot, ie overlaps the UI processing. One could also try caching preencrypted ballots, assuming theres only a few common ballotStyles in use, and that the ballot id and code seed can be generated in advance. Until we know the characteristics of the target system, this may be premature optimization. |
This is not pre-encryption, rather this is some prototypes to reduce latency when encrypting on a BMD. The user is waiting for the confirmation code from the encryption. |
There are 25 contest/ballot and 4 selections per contest, giving 100 selections/ballot.
Single threaded on HP Z440 Workstation 6-core Intel Xeon E5-1650 v4 (3.6 GZ) Ubuntu 20.04, Java 17.
test 1. Precompute selections
results:
test 2. Precompute Contests
results:
Code is in ContestPrecomputeTest and SelectionPrecomputeTest.
Its prototype code for timing, probably has some bugs. But the encrypted ballots verify, so its not too far off.
The text was updated successfully, but these errors were encountered: