Undergraduate dissertation
Go to file
2023-04-21 15:03:15 +01:00
static Add bcdg range proof 2023-04-21 15:03:15 +01:00
templates Add bcdg range proof 2023-04-21 15:03:15 +01:00
whitepaper Add bcdg range proof 2023-04-21 15:03:15 +01:00
.gitignore Update gitignore 2022-12-29 14:11:18 +00:00
.prettierrc.toml Announce player joins 2022-12-29 14:36:55 +00:00
app.py Show the players 2023-01-14 16:59:11 +00:00
LICENSE Initial commit 2022-12-26 14:13:46 +00:00
README.md Add bcdg range proof 2023-04-21 15:03:15 +01:00
requirements.txt Add some stuff 2023-02-10 15:47:21 +00:00
risk.pdf Add some stuff 2023-02-10 15:47:21 +00:00

Riskless

Undergraduate dissertation

Paper: https://judesouthworth.xyz/Dissertation.pdf

Running the demo

  1. pip install -r requirements.txt
  2. python3 app.py
  3. Navigate browser to http://localhost:5000

Running the benchmarks

  1. Press F12
  2. Type the name of the benchmark to run:
    • RSABench
    • PaillierBench
    • ZeroProofBench
    • ZeroProofVerifierBench
    • ZeroProofSizeBench
    • Protocol4Bench
    • Protocol4VerifierBench
    • Protocol4SizeBench
  3. Wait for results to output in milliseconds

Changing the key size

The key size is determined by the variable KEY_SIZE in random_primes.js. This variable dictates the size of each prime used in the modulus, so the total key size is twice this value. Recommend selecting one of 512, 1024, or 2048. In fact, I recommend selecting 512 if you want the program to run in less than 3-5 business days.

Key generation will still take some time. The browser may tell you the tab is not responding, but just wait and it'll be fine eventually. If not, short-circuit the generate_safe_prime function in random_primes.js to just return a normal prime.

Playing the game

  1. Open the game in two separate tabs
  2. Press "Ready" on both tabs once they are fully loaded