# 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.
