From 9c6b251a25b5cb8b50527c0d30e8f2a37fd82080 Mon Sep 17 00:00:00 2001 From: jude Date: Sun, 30 Apr 2023 18:42:52 +0100 Subject: [PATCH] aaaaaaaaaaaaaaaaaa --- static/js/{lz-string.js => lz-string.min.js} | 11 ++ static/js/modules/crypto/random_primes.js | 6 +- static/js/modules/interface/game.js | 1 + static/js/modules/interface/main.js | 5 + static/js/modules/interface/map.js | 46 +++++ static/js/modules/interface/packet.js | 24 +++ static/js/modules/interface/player.js | 32 ++- static/js/modules/interface/proofs.js | 2 +- templates/index.html | 45 ++++- whitepaper/Dissertation.bib | 15 ++ whitepaper/Dissertation.pdf | Bin 506171 -> 509308 bytes whitepaper/Dissertation.tex | 195 +++++++++++-------- 12 files changed, 294 insertions(+), 88 deletions(-) rename static/js/{lz-string.js => lz-string.min.js} (96%) diff --git a/static/js/lz-string.js b/static/js/lz-string.min.js similarity index 96% rename from static/js/lz-string.js rename to static/js/lz-string.min.js index 7bb03c2..dcb1d5e 100644 --- a/static/js/lz-string.js +++ b/static/js/lz-string.min.js @@ -1,3 +1,14 @@ +/** + * Copyright (c) 2013 Pieroxy + * This work is free. You can redistribute it and/or modify it + * under the terms of the WTFPL, Version 2 + * For more information see LICENSE.txt or http://www.wtfpl.net/ + * + * For more information, the home page: + * http://pieroxy.net/blog/pages/lz-string/testing.html + * + * LZ-based compression algorithm, version 1.4.5 + */ var LZString = (function () { var r = String.fromCharCode, o = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=", diff --git a/static/js/modules/crypto/random_primes.js b/static/js/modules/crypto/random_primes.js index 8180833..083e79e 100644 --- a/static/js/modules/crypto/random_primes.js +++ b/static/js/modules/crypto/random_primes.js @@ -1,6 +1,6 @@ import { mod_exp } from "./math.js"; -export const KEY_SIZE = 1024; +export const KEY_SIZE = 512; export function cryptoRandom(bits) { if (bits === undefined) { @@ -90,7 +90,7 @@ function miller_rabin(n, k) { export function generate_prime() { while (true) { - let n = generate_bigint(); + let n = generate_bigint() | 0b11n; if (small_prime_test(n) && miller_rabin(n, 40)) { return n; } @@ -109,6 +109,8 @@ export function generate_safe_prime() { } } +window.generate_safe_prime = generate_safe_prime; + const SMALL_PRIMES = [ 2n, 3n, diff --git a/static/js/modules/interface/game.js b/static/js/modules/interface/game.js index 30ad7fe..78f6e17 100644 --- a/static/js/modules/interface/game.js +++ b/static/js/modules/interface/game.js @@ -12,6 +12,7 @@ export class Game { this.us = null; this.players = {}; this.state = WAITING; + this.contendedRegion = null; this.allPlaced = false; } diff --git a/static/js/modules/interface/main.js b/static/js/modules/interface/main.js index 3a244f7..bf57e8b 100644 --- a/static/js/modules/interface/main.js +++ b/static/js/modules/interface/main.js @@ -165,6 +165,11 @@ document.addEventListener("ACT", async (ev) => { } }); +document.addEventListener("RESOLVE", (ev) => { + const data = ev.detail; + game.contendedRegion.handleResolve(data); +}); + // todo has to filter by player document.addEventListener("PROOF", async (ev) => { const data = ev.detail; diff --git a/static/js/modules/interface/map.js b/static/js/modules/interface/map.js index d4e220d..e840ab2 100644 --- a/static/js/modules/interface/map.js +++ b/static/js/modules/interface/map.js @@ -113,6 +113,10 @@ export class Region { this.neighbours = new Set(); this.continent = continent; + this.attackResolver = null; + this.attackerRes = null; + this.defenderRes = null; + REGIONS[name] = this; } @@ -172,6 +176,48 @@ export class Region { verify(plainText, a) { this.strength.verify(this.name, plainText, a); } + + async handleResolve(resolution) { + await navigator.locks.request(`region-${this.name}`, () => { + if (resolution.author === this.owner.id) { + this.defenderRes = resolution; + } else { + this.attackerRes = resolution; + } + + if ( + this.attackResolver !== null && + this.defenderRes !== null && + this.attackerRes !== null + ) { + this.attackResolver({ + attackerRes: this.attackerRes, + defenderRes: this.defenderRes, + }); + } + }); + } + + async resolveAttack() { + let promise; + await navigator.locks.request(`region-${this.name}`, () => { + if (this.attackerRes === null || this.defenderRes === null) { + let resolver; + promise = new Promise((resolve) => { + resolver = resolve; + }); + this.attackResolver = resolver; + } else { + promise = new Promise((resolve) => { + resolve({ + attackerRes: this.attackerRes, + defenderRes: this.defenderRes, + }); + }); + } + }); + return promise; + } } window.Region = Region; diff --git a/static/js/modules/interface/packet.js b/static/js/modules/interface/packet.js index fd61ec6..f99650d 100644 --- a/static/js/modules/interface/packet.js +++ b/static/js/modules/interface/packet.js @@ -161,4 +161,28 @@ export class Packet { region: region, }); } + + static createRegionProof(proof) { + return this._sign({ + ...this._createBase("RESOLVE"), + action: "MAINTAIN", + proof: proof, + }); + } + + static createRegionYield() { + return this._sign({ + ...this._createBase("RESOLVE"), + action: "YIELD", + proof: proof, + }); + } + + static createRegionCapture(cipherText) { + return this._sign({ + ...this._createBase("RESOLVE"), + action: "CAPTURE", + cipherText: cipherText, + }); + } } diff --git a/static/js/modules/interface/player.js b/static/js/modules/interface/player.js index 8d210ff..1347d1c 100644 --- a/static/js/modules/interface/player.js +++ b/static/js/modules/interface/player.js @@ -5,6 +5,7 @@ import { PaillierPubKey, ReadOnlyCiphertext } from "../crypto/paillier.js"; import { Region } from "./map.js"; import { showDefenseDom } from "./dom.js"; import { + proveBitLength, proveFortify, proveRange, proveRegions, @@ -325,6 +326,8 @@ export class Player { return false; } + game.contendedRegion = defender; + // If we're the defender, we need to send a packet to state our defense. if (defender.owner === game.us) { showDefenseDom(defender.name); @@ -340,8 +343,6 @@ export class Player { defenderStrength = await defender.owner.getDefense(); } - console.log(defenderStrength); - /* How do Risk attacks work? - Offender signs 1-3 armies, defender signs 1-2 armies - Both roll respective dice @@ -387,10 +388,16 @@ export class Player { // Handle aftermath. if (defender.owner === game.us) { if (defender.strength.cipherText.plainText === 0n) { - // Handle region loss + // State we don't control the region. This makes programming easier. + socket.emit("message", Packet.createRegionYield()); } else { + let ct = defender.strength.cipherText.clone(); + ct.update(new Ciphertext(ct.pubKey, -2n, 0n)); // Prove we still control the region - let proof = proveRange(defender.strength.cipherText, 2n ** 32n); + let proof = proveBitLength(ct); + + // Send proof we maintain it + socket.emit("message", Packet.createRegionProof(proof)); } } else if (this === game.us) { if (defender.strength.assumedStrength === 0n) { @@ -400,14 +407,29 @@ export class Player { new Ciphertext(this.paillierPubKey, offenderRolls.length + 1), defender.name ); + + // Send the new ciphertext + socket.emit( + "message", + Packet.createRegionCapture(defender.strength.cipherText) + ); + } else { + // State we didn't capture. Again, makes programming easier. + socket.emit("message", Packet.createRegionYield()); } } else { - await defender.resolveConflict(); + let resolutions = await defender.resolveAttack(); + + console.log(resolutions); } // Reset the promises in case they attack again. defender.owner.defenderPromise = null; defender.owner.defenderAmount = null; + defender.defenderRes = null; + defender.attackerRes = null; + defender.attackResolver = null; + game.contendedRegion = null; } async setDefense(amount) { diff --git a/static/js/modules/interface/proofs.js b/static/js/modules/interface/proofs.js index cbf4ace..35e8820 100644 --- a/static/js/modules/interface/proofs.js +++ b/static/js/modules/interface/proofs.js @@ -1,7 +1,7 @@ import { cryptoRandom } from "../crypto/random_primes.js"; import { Region } from "./map.js"; -const ROUNDS = 24; +const ROUNDS = 12; function cryptoRange(upper) { // This is ridiculous: why implement a BigInt primitive, have it behave like a number, and then _not_ offer diff --git a/templates/index.html b/templates/index.html index c0a2719..b054521 100644 --- a/templates/index.html +++ b/templates/index.html @@ -7,7 +7,7 @@ - + @@ -423,6 +423,24 @@ console.log(`Bench done. Time per verification: ${performance.measure("rv-duration", "rv-start", "rv-end").duration / ROUNDS}`) } + function PrimeBench() { + const ROUNDS = 20; + + for (let i = 0; i < 2; i++) { + generate_safe_prime() + } + + console.log("Benching") + + performance.mark("p-start") + for (let i = 0; i < ROUNDS; i++) { + generate_safe_prime() + } + performance.mark("p-end") + + console.log(`Bench done. Time per generation: ${performance.measure("p-duration", "p-start", "p-end").duration / ROUNDS}`) + } + // https://gist.github.com/kawanet/352a2ed1d1656816b2bc function string_to_buffer(src) { return (new Uint16Array([].map.call(src, function(c) { @@ -455,6 +473,31 @@ }; } + function FortifySize() { + const regions = { + A: paillier.pubKey.encrypt(0n), + B: paillier.pubKey.encrypt(3n), + C: paillier.pubKey.encrypt(-3n), + D: paillier.pubKey.encrypt(0n), + E: paillier.pubKey.encrypt(0n) + } + let ROUNDS = 10; + + let size = 0; + let compressedSize = 0; + + for (let x = 0; x < ROUNDS; x++) { + let s = JSON.stringify(proveFortify(regions)); + size += string_to_buffer(s).byteLength; + compressedSize += LZString.compressToUint8Array(s).length; + } + + return { + size: size / ROUNDS, + compressedSize: compressedSize / ROUNDS + }; + } + function BitLengthSize() { const ct = paillier.pubKey.encrypt(5n) let ROUNDS = 10; diff --git a/whitepaper/Dissertation.bib b/whitepaper/Dissertation.bib index 51d744a..4e2022c 100644 --- a/whitepaper/Dissertation.bib +++ b/whitepaper/Dissertation.bib @@ -464,4 +464,19 @@ doi={10.1109/SP.2014.36}} month = {06}, pages = {}, title = {Bulletproofs: A Non-Interactive Zero Knowledge Proof Protocol For Blockchain Security} +} + +@article{bittorrent2008, + author = {Williams, Christopher}, + date = {2008-06-02}, + title = {{UK cops arrest six alleged BitTorrent music uploaders}}, + journal = {The Register}, + url = {https://www.theregister.com/2008/06/02/onk_further_arrests}, + urldate = {2008-06-02} +} + +@misc{bch, + author = {Bitcoin Cash}, + title = {{Bitcoin Cash -- Peer-to-peer Electronic Cash}}, + howpublished = {\url{https://bitcoincash.org}} } \ No newline at end of file diff --git a/whitepaper/Dissertation.pdf b/whitepaper/Dissertation.pdf index 7ada8a5bb051e1249b2915a62f77013cc0646673..1175be6174f1ccd69c918a7bd809438753b699c8 100644 GIT binary patch delta 146151 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

QZ+o0c`jB}&HX?n04Y>$Dbc8t=UE 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 delta 143381 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

{48|C_%YQm^e$HD>=LFo)A>ZYYDvgZDlGY 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 diff --git a/whitepaper/Dissertation.tex b/whitepaper/Dissertation.tex index 1465248..5e9172a 100644 --- a/whitepaper/Dissertation.tex +++ b/whitepaper/Dissertation.tex @@ -109,7 +109,7 @@ For playing games over an internet connection, multiple solutions already exist. \subsection{Centralised} -In highly centralised networks, traffic is routed to a number of servers that are operated by the same organisation who maintains the game or service. This is the current standard for the majority of the internet: in fact, this is the methodology used by the official version of Risk, playable as an app. +In highly centralised networks, traffic is routed to a number of servers that are operated by the same organisation who maintains the game or service. This is the current standard for the majority of the internet: in fact, this is the methodology used by the official version of Risk, which is available as an app. Without patching the executables, there is no way for a user to run their own servers, or to connect to a third party's server. This has two main advantages: \begin{itemize} \item \textbf{Moderation.} The developers can enforce their own rules through some form of EULA, and this would be properly enforceable, as if a user is banned from the official servers, there is no alternative. @@ -117,11 +117,27 @@ Without patching the executables, there is no way for a user to run their own se \item \textbf{Security.} The server acts as a trusted party, and validates all communications from players. Hence, players cannot subvert a (properly implemented) service's protocol. \end{itemize} +However, centralised services have a number of major downsides. \begin{itemize} + \item \textbf{User freedom.} Users often cannot audit or modify the underlying source code. Furthermore, users must follow rules enforced by the platform, which can be arbitrarily set and enforced. + + \item \textbf{Liability.} In some jurisdictions, platforms are held legally responsible for content on their platforms. This means that platform operators may be forced to invade the privacy of their users, and consequences are felt by the platform and not the user. + + \item \textbf{Ownership.} The service is owned by the operators. If the operators wish to close the service, it is at their own discretion. +\end{itemize} + \subsection{Peer-to-peer networks} -In peer-to-peer (P2P) networks, traffic may be routed directly to other peers, or servers may be operated by third parties (sometimes called "federated networks"). This form of communication is still popular in certain games or services, for example BitTorrent is primarily a P2P service; and titles from the Counter-Strike video game series may be considered federated, with a wide selection of third party hosts. +There are two alternatives to traditional centralised networks: peer-to-peer (P2P) and federated. -The main advantage of P2P networks over centralised networks is longevity. Games such as Unreal Tournament 99 (which is now federated) still have playable servers, as the servers are community-run, and so as long as people still wish to play the game, they will remain online (despite the original developers no longer officially supporting the title) \cite{eatsleeput.com_2022}. +In P2P networks, traffic may be routed directly to other peers. In federated networks, servers may be operated by third parties (and in fact, the developers of the service may not run any servers themselves). These network models are still popular in certain games or services, for example BitTorrent is primarily a P2P service; and titles from the Counter-Strike video game series may be considered federated, with a wide selection of third party hosts. + +P2P and federated networks address each of the disadvantages listed above. \begin{itemize} + \item \textbf{User freedom.} The platform is run by its users. Whilst this doesn't require that the source code is available, it allows the auditing of data collected, and the network may diverge to meet the needs of different groups of users. For example, Bitcoin Cash is a fork from Bitcoin intended to address concerns over transaction fees \cite{bch}. + + \item \textbf{Liability.} Users are legally responsible for their own behaviours. This can result in legal consequence against users themselves rather than the platform \cite{bittorrent2008}. + + \item \textbf{Ownership.} Games such as Unreal Tournament 99 (which is now federated) still have playable servers, as the servers are community-run, and so as long as people still wish to play the game, they will remain online (despite the original developers no longer officially supporting the title) \cite{eatsleeput.com_2022}. +\end{itemize} However, security can often be worse in fully P2P networks than that of fully centralised networks. Peers may send malicious communications, or behave in ways that violate the general rules of the service. As there is no trusted server, there is no easy way to validate communications to prevent peers from cheating. @@ -131,13 +147,13 @@ Some P2P services try to address issues with security. In file-sharing protocols Currently, there exists an online centralised version of the board game Risk. -I aim to apply bit-commitment schemes, zero-knowledge proofs, and homomorphic encryption to an online P2P variant of Risk, to allow peers to play the game whilst preventing cheating and needing no trusted parties. The variant of the game that is of interest is the "fog of war" variant, where a player cannot see the unit counts of regions besides those that they own or are neighbouring. +We aim to apply bit-commitment schemes, zero-knowledge proofs, and homomorphic encryption to an online P2P variant of Risk, to allow peers to play the game whilst preventing cheating and needing no trusted parties. The variant of the game that is of interest is the "fog of war" variant, where a player cannot see the unit counts of regions besides those that they own or are neighbouring. \section{Literature review} -Centralised systems can securely perform the generation of random values, through using a cryptographically secure random number generator on the server-side, and distributing the values to the clients. This is how dice rolls are processed in centralised online games. However, in a P2P system, something else must be done to simulate the randomness. +Centralised systems can securely perform the generation of random values, through using a cryptographically secure random number generator on the server-side, and distributing the values to the clients. This is how dice rolls are processed in centralised online games. However, in a P2P system, another approach must be taken to simulate the randomness, to ensure all peers receive the same random value. -For dice rolling, we want that \begin{itemize} +For such randomness, we also want that \begin{itemize} \item No peer can change the probable outcome of the dice (random), \item No peer can deny having rolled the dice (non-repudiation). \end{itemize} @@ -151,7 +167,7 @@ Bit-commitment schemes provide a mechanism for one party to commit to some hidde Protocols exist that utilise bit-commitment to play poker \cite{Shamir1981}. They offer a bit-commitment scheme using commutative encryption algorithms based on modular arithmetic. This scheme works by each player encrypting cards, and decrypting in a different order as to obscure the value of the actual cards until all players have decrypted. -However, almost all well-documented encryption schemes are not commutative. One alternative is to use some well-known one-way function, such as SHA, with randomly generated salts. +However, almost all well-documented encryption schemes are not commutative. One alternative is to use a well-known one-way function, such as SHA \cite{FIPS202}, with randomly generated salts. \subsubsection{Bit-commitment with one-way functions} @@ -163,9 +179,9 @@ Bit-commitment schemes can also be implemented using one-way functions: \begin{e \item The second party computes $c' = H(m, r)$ and validates that $c = c'$. \end{enumerate} -Protocols exist for flipping fair coins "across a telephone", which is isomorphic to selecting a random value from a set of two values \cite{blum1983coin}. This cannot be simply repeated though to generate numbers in the range of 1-6, as 6 is not a power of 2. +Protocols exist for flipping fair coins "across a telephone", which is isomorphic to selecting a random value from a set of two values \cite{blum1983coin}. This cannot be simply repeated to generate numbers in the range of 1-6, as 6 is not a power of 2. -However, a similar protocol can be used where each player commits to a single value $x \in \mathbb{Z}_6$. As the distribution of outcomes of addition in the group $\mathbb{Z}_n$ is fair, we can then sum the values of $x$ committed to by both players to deduce a final value for the roll. This is a standard application of bit-commitment, and nicely generalises Blum's original paper. +However, a similar protocol can be used where each player commits to a single value $x \in \mathbb{Z}_6$. As the distribution of outcomes of addition in the group $\mathbb{Z}_n$ is fair, we can then sum the values of $x$ committed to by both players to deduce a final value for the roll. This is a standard application of bit-commitment to form a "secret sharing" protocol. \subsection{Zero-knowledge proofs} @@ -196,7 +212,7 @@ Zero-knowledge proofs are particularly applicable to the presented problem. They \emph{Honest-verifier} zero-knowledge is a subset of general zero-knowledge, in which the verifier is required to act in accordance with the protocol for the simulator distribution to behave as expected. This imposes a significant issue: a malicious verifier may behave as to try and attain additional information. -One solution to this is to transform a proof into a non-interactive zero-knowledge proof. The Fiat-Shamir transformation \cite{fiatshamir} converts an interactive zero-knowledge proof into a non-interactive zero-knowledge proof. In this process, the ability for a verifier to behave maliciously is lost, as the verifier no longer produces challenges themselves. This relies strongly upon the random-oracle model however \cite{randomoracle}. As the random-oracle model is not realistically attainable, it must be approximated, typically by a cryptographic hash function. This introduces greater ability for the prover to cheat if they know a preimage in the hash function used. +One solution to this is to transform a proof into a non-interactive zero-knowledge proof. The Fiat-Shamir transformation \cite{fiatshamir} converts an interactive zero-knowledge proof into a non-interactive zero-knowledge proof. In this process, the ability for a verifier to behave maliciously is lost, as the verifier no longer produces challenges themselves. However, this relies strongly upon the random-oracle model \cite{randomoracle}. As the random-oracle model is not realistically attainable, it must be approximated, typically by a cryptographic hash function. This introduces greater ability for the prover to cheat if they know a preimage in the hash function used. \subsubsection{Games as graphs} @@ -216,7 +232,7 @@ The main game protocol can be considered as the following graph mutations for a \item \textbf{Unit movement.} The player updates an edge from one region $R_1$ to another neighbouring region $R_2$. \end{itemize} -The goal is then to identify ways to secure this protocol by obscuring the edges and weights, whilst preventing the ability for the player to cheat. +The goal is to identify ways to secure this protocol by obscuring the edges and weights, whilst preventing the ability for the player to cheat. \subsubsection{Graphs \& zero-knowledge proofs} @@ -226,7 +242,7 @@ Identifying Risk as a graph therefore enables us to construct isomorphisms as pa \subsubsection{Cheating with negative values} -Zerocash is a ledger system that uses zero-knowledge proofs to ensure consistency and prevent cheating. Ledgers are the main existing use case of zero-knowledge proofs, and there are some limited similarities between ledgers and Risk in how they wish to obscure values of tokens within the system. +Zerocash is a ledger system that uses zero-knowledge proofs to ensure consistency and prevent cheating. Ledgers are the main existing use case of zero-knowledge proofs, and there are some limited similarities between ledgers and Risk in how they need to obscure values of tokens within the system. \emph{Publicly-verifiable preprocessing zero-knowledge succinct non-interactive arguments of knowledge} (zk-SNARKs) are the building blocks of Zerocash \cite{6956581}, and its successor Zcash. A zk-SNARK consists of three algorithms: \texttt{KeyGen}, \texttt{Prove}, \texttt{Verify}. @@ -250,16 +266,16 @@ In general, this approach uses a decomposition of the plaintext message $m$ into Some cryptosystems admit an additive homomorphic property: that is, given the public key and two encrypted values $\sigma_1 = E(m_1), \sigma_2 = E(m_2)$, the value $\sigma_1 + \sigma_2 = E(m_1 + m_2)$ is the ciphertext of the underlying operation. -The Paillier cryptosystem, which is based on composite residuosity classes express the additive homomorphic property \cite{paillier1999public}. This is due to the structure of ciphertexts in the Paillier cryptosystem. A public key is of structure $(n, g)$, where $n$ is the product of two large primes and $g$ is a generator of $\mathbb{Z}^*_n$. Under the public key, the encryption $c$ of a message $m$ is computed as \begin{align*} +The Paillier cryptosystem, which is based on composite residuosity classes, express the additive homomorphic property \cite{paillier1999public}. This is due to the structure of ciphertexts in the Paillier cryptosystem. A public key is of structure $(n, g)$, where $n$ is the product of two large primes and $g$ is a generator of $\mathbb{Z}^*_n$. Under the public key, the encryption $c$ of a message $m$ is computed as \begin{align*} c = g^mr^n \mod n^2 \end{align*} -for some random $r \in \mathbb{Z}^*_{n^2}$. +for some random blinding value $r \in \mathbb{Z}^*_{n^2}$. -The Paillier cryptosystem has disadvantages in its time and space complexity compared to other public-key cryptosystems such as RSA. In space complexity, Paillier ciphertexts are twice the size of their corresponding plaintext, as for a modulus $n$, ciphertexts are computed modulo $n^2$ for a message in range up to $n$. This cost can be reduced by employing some form of compression on the resulting ciphertexts. +The Paillier cryptosystem has disadvantages in its time and space complexity compared to other public-key cryptosystems such as RSA. In space complexity, Paillier ciphertexts are twice the size of their corresponding plaintext. This is because for a modulus $n$, ciphertexts are computed modulo $n^2$ for a message in range up to $n$. This cost can be reduced by employing some form of compression on the resulting ciphertexts. -The main concern is the issue of time complexity of Paillier. Theoretic results based on the number of multiplications performed indicate that Paillier can be 1,000 times slower than RSA encryption. Many optimisations have been presented of the Paillier cryptosystem. +The main concern is the issue of time complexity of Paillier. Theoretic results based on the number of multiplications performed indicate that Paillier can be 1,000 times slower than RSA encryption (although this depends heavily on the key size). Many optimisations to the Paillier cryptosystem have been presented in literature. -The first is in the selection of public parameter $g$. The original paper suggests a choice of $g = 2$, however the choice of $g = 1 + n$ is very common, as the exponentiation $g^m = 1 + mn$ by binomial theorem. +The first is in the selection of public parameter $g$. The original paper suggests a choice of $g = 2$, however the choice of $g = 1 + n$ is very common, as the exponentiation $g^m = 1 + mn$ directly from the binomial theorem. Another optimisation is that of Jurik \cite[Section~2.3.1]{Jurik2003ExtensionsTT}: Jurik proposes that the public-key is instead $(n, g, h)$, where $h$ is the generator of the group $\mathbb{Z}^*_{n}[+]$ (the group of units with Jacobi symbol $+1$). Then, an encryption $c'$ of a message $m$ is computed as \begin{align*} c' = g^m (h^r \mod n)^n\mod n^2 @@ -276,9 +292,9 @@ Jurik states that the optimised form can lead to a theoretic four times speedup \subsubsection{Zero-knowledge proofs in Paillier cryptosystem} -There exist honest-verifier zero-knowledge proofs for proving a given value is 0 \cite[Section~5.2]{damgard2003}. Hence, clearly, proving a summation $a + b = v$ can be performed by proving $v - a - b = 0$ in an additive homomorphic cryptosystem. +There exist honest-verifier zero-knowledge proofs for proving a given value is 0 \cite[Section~5.2]{damgard2003}. Hence, proving a summation $a + b = v$ can be performed by proving $v - a - b = 0$, which is possible by the additive homomorphic property. -So, using some such scheme to obscure edge weights should enable verification of the edge values without revealing their actual values. +Therefore, using Paillier's scheme to obscure edge weights should enable verification of the edge values without revealing their actual values. \subsubsection{Reducing communication} @@ -291,7 +307,7 @@ An alternative general protocol is the $\Sigma$-protocol \cite{groth2004honest}. \end{itemize} This reduces the number of communications to a constant, even for varying numbers of challenges. -The Fiat-Shamir heuristic \cite{fiatshamir}, as discussed above, is another way to reduce communication by using a random oracle. For ledgers, non-interactive zero-knowledge proofs are necessary, as the ledger must be resilient to a user going offline. This is not the same in our case, however non-interactive zero-knowledge proofs are still beneficial as the amount of communications can be reduced significantly, which results in simpler network code. +The Fiat-Shamir heuristic \cite{fiatshamir}, as discussed above, is another way to reduce communication by using a random oracle. For ledgers, non-interactive zero-knowledge proofs are necessary, as the ledger must be resilient to a user going offline. This is not the same in our case, however non-interactive zero-knowledge proofs are still beneficial as the amount of communications can be reduced significantly, resulting in simpler network code. The downside of using the Fiat-Shamir heuristic in our implementation is that any third party can verify proofs. In some situations, we do not want this to be the case. @@ -308,7 +324,10 @@ In particular, the final point allows for the use of purely JSON messages, which The game is broken down into three main stages, each of which handles events in a different way. These are shown below. Boxes in blue are messages received from other players (or transmitted by ourselves). Boxes in green require us to transmit a message to complete. -\begin{landscape}\begin{tikzpicture}[every node/.style={anchor=north west,minimum height=20pt}] +\begin{landscape} + \begin{figure} + \caption{Decomposition of general game structure as a P2P system} + \begin{tikzpicture}[every node/.style={anchor=north west,minimum height=20pt}] % Create outlines \node[ rectangle, @@ -431,15 +450,16 @@ The game is broken down into three main stages, each of which handles events in \draw[very thick,->,dashed] (0.5\paperwidth+112pt, 130pt) -- (0.5\paperwidth+112pt, 60pt) -- (Attack1); \draw[very thick,->,dashed] (0.5\paperwidth+112pt, 60pt) -- (0.5\paperwidth+112pt, -100pt) -- (Fortify); \draw[very thick,->,dashed] (0.5\paperwidth+112pt, -100pt) -- (0.5\paperwidth+112pt, -150pt) -- (End2); -\end{tikzpicture}\end{landscape} +\end{tikzpicture}\end{figure} +\end{landscape} \section{Message structure} Each JSON message holds an \texttt{author} field, being the sender's ID; a message ID to associate related messages; a timestamp to prevent replay attacks; and an \texttt{action}, which at a high level dictates how each client should process the message. -The "action" is one of \texttt{ANNOUNCE}, \texttt{DISCONNECT}, \texttt{KEEPALIVE}, \texttt{RANDOM}, \texttt{PROOF}, and \texttt{ACT}. The first three of these are used for managing the network by ensuring peers are aware of each other and know the state of the network. \texttt{ANNOUNCE} is transmitted upon a player joining to ensure the new player is aware of all other players. The \texttt{ANNOUNCE} message contains the player's encryption keys and the player's ID. +The "action" is one of \texttt{ANNOUNCE}, \texttt{DISCONNECT}, \texttt{KEEPALIVE}, \texttt{RANDOM}, \texttt{PROOF}, \texttt{ACT}, and \texttt{RESOLVE}. The first three of these are used for managing the network by ensuring peers are aware of each other and know the state of the network. \texttt{ANNOUNCE} is transmitted upon a player joining to ensure the new player is aware of all other players. The \texttt{ANNOUNCE} message contains the player's encryption keys and the player's ID. -\texttt{RANDOM} and \texttt{PROOF} are designated to be used by sub-protocols defined later on. \texttt{ACT} is used by players to submit actions for their turn during gameplay. +\texttt{RANDOM} and \texttt{PROOF} are designated to be used by sub-protocols defined later on. \texttt{ACT} and \texttt{RESOLVE} are used by players to submit actions for their turn during gameplay, and to resolve the outcomes of these actions. Each message is also signed to verify the author. This is a standard application of RSA. A SHA-3 hash of the message is taken, then encrypted with the private key. This can be verified with the public key. @@ -451,13 +471,31 @@ ECMAScript typically stores integers as floating point numbers, giving precision In 2020, ECMAScript introduced \texttt{BigInt}, which are, as described in the spec, "arbitrary precision integers" \cite{tc39}. Whilst this does not hold true in common ECMAScript implementations (such as Chrome's V8), these "big integers" still provide sufficient precision for the Paillier cryptosystem. -It must be noted that \texttt{BigInt} is inappropriate for cryptography in practice, due to the possibility of timing attacks as operations are not necessarily constant time \cite{tc39}. In particular, modular exponentiation is non-constant time, and operates frequently on secret data. A savvy attacker may be able to use this to leak information about an adversary's private key; however, as decryption is not performed, this risk is considerably reduced as there is less need to perform optimisations based on Chinese remainder theorem which would require treating the modulus $n$ as its two components $p$ and $q$. +It must be noted that \texttt{BigInt} is inappropriate for cryptography in practice, due to the possibility of timing attacks as operations are not necessarily constant time \cite{tc39}. In particular, modular exponentiation is non-constant time. However, as decryption is not performed during the program's runtime, it is unlikely that an attacker could use this to execute a timing attack against another player. -\subsection{Modular exponentiation} +\subsection{Modular exponentiation}\label{subsection:modexp} As \texttt{BigInt}'s V8 implementation does not optimise modular exponentiation itself, we employ the use of addition chaining \cite{schneier_1996}. Addition chaining breaks a modular exponentiation into repeated square-and-modulo operations, which are less expensive to perform. -The number of operations is dependent primarily on the size of the exponent. For an exponent of bit length $L$, somewhere between $L$ and $2L$ multiply-and-modulo operations are performed, which gives overall a logarithmic time complexity supposing bit-shifts and multiply-and-modulo are constant time operations. +The number of operations is dependent primarily on the size of the exponent. For an exponent $b$, between $|b|$ and $2|b|$ multiply-and-modulo operations are performed. + +In the case of a fixed base, further speedup can be gained through pre-computation of fixed base powers. By pre-computing powers of the powers of two, exponentiation is reduced to at most $L$ multiplications. For some fixed base $h$ and modulus $n$, let $h[i] = h^{(2^i)} \bmod n$ represent cached values. Then, the following algorithm computes ${h^b \bmod n}$. + +\begin{algorithmic} + \Function{FixedBaseExp}{$b$} + \State $index \gets 0$ + \State $counter \gets 1$ + + \While{$b \neq 0$} + \If {$b \equiv 1 \mod 2$} + \State $ctr \gets ctr \times h[i]$ + \State $ctr \gets ctr \bmod n$ + \EndIf + \State $i \gets i + 1$ + \State $b \gets \lfloor \frac{b}{2} \rfloor$ + \EndWhile + \EndFunction +\end{algorithmic} \subsection{Public key} @@ -485,9 +523,9 @@ As the prime generation routine generates primes of equal length, this property We see that $(1 + n)^n \equiv 1 \mod n^2$ from binomial expansion. So $1 + n$ is invertible as required. \end{proof} -Besides reducing the number of operations to perform exponentiation, exponentiation also does not require auxiliary memory to store intermediary values used in the calculation. +Besides reducing the number of operations performed, this selection of $g$ also does not require auxiliary memory to store intermediary values using during exponentiation. -In Jurik's form, we also need to compute $h$, a generator of the Jacobi subgroup, and impose restrictions on $p, q$. In particular, it is required that $p \equiv q \equiv 3 \mod 4$, $\gcd(p-1, q-1) = 2$, and that $p-1, q-1$ consist of large factors except for 2. One method to guarantee this is to use safe primes, which are primes of form $2p+1$ for $p$ prime. +In Jurik's form, we also need to compute $h$, a generator of the Jacobi subgroup, and impose restrictions on $p, q$. In particular, it is required that $p \equiv q \equiv 3 \mod 4$, $\gcd(p-1, q-1) = 2$, and that $p-1, q-1$ consist of large factors except for 2. Using safe primes guarantees this. Safe primes are primes of form $2p+1$ for $p$ prime. \begin{proposition} For $p > 5$ a safe prime, $p \equiv 3 \mod 4$ @@ -525,23 +563,7 @@ In the original Paillier scheme, ciphertexts are computed as $E(m, r) = c = g^m \end{align*} Jurik remarks that $E'(m, r) = E(m, h^r \bmod n)$. -To achieve a better speed-up, pre-computation of the fixed base $h^n \bmod n$ is used. By pre-computing powers of the powers of two, exponentiation is reduced to at most $|r|$ multiplications. Let $h[i] = h^{(2^i)} \bmod n$. Then, the following algorithm computes ${h^b \bmod n}$. - -\begin{algorithmic} - \Function{FixedBaseExp}{$b$} - \State $index \gets 0$ - \State $counter \gets 1$ - - \While{$b \neq 0$} - \If {$b \equiv 1 \mod 2$} - \State $ctr \gets ctr \times h[i]$ - \State $ctr \gets ctr \bmod n$ - \EndIf - \State $i \gets i + 1$ - \State $b \gets \lfloor \frac{b}{2} \rfloor$ - \EndWhile - \EndFunction -\end{algorithmic} +The main speedup as a result of using Jurik's form originates from fixed base exponentiation, as discussed in \hyperref[subsection:modexp]{Section~\ref*{subsection:modexp}} \subsection{Private key} @@ -557,11 +579,11 @@ Let $c$ be the ciphertext. The corresponding plaintext is computed as \begin{ali \subsection{Implementation details} -Paillier is implemented by four classes: \texttt{PubKey}, \texttt{PrivKey}, \texttt{Ciphertext}, and \texttt{ReadOnlyCiphertext}. \texttt{PubKey.encrypt} converts a \texttt{BigInt} into either a \texttt{Ciphertext} or a \texttt{ReadOnlyCiphertext} by the encryption function above. The distinction between these is that a \texttt{ReadOnlyCiphertext} does not know the random $r$ that was used to form it, and so is created by decrypting a ciphertext that originated with another peer. A regular \texttt{Ciphertext} maintains knowledge of $r$ and the plaintext it enciphers. This makes it capable of proving by the scheme presented below. +Paillier is implemented by four classes: \texttt{PubKey}, \texttt{PrivKey}, \texttt{Ciphertext}, and \texttt{ReadOnlyCiphertext}. \texttt{PubKey.encrypt} converts a \texttt{BigInt} into either a \texttt{Ciphertext} or a \texttt{ReadOnlyCiphertext} by the encryption function above. The distinction between these is that a \texttt{ReadOnlyCiphertext} does not know the random $r$ that was used to form it, and so is created by decrypting a ciphertext that originated with another peer. A regular \texttt{Ciphertext} maintains knowledge of $r$ and the plaintext it enciphers, which enables using \hyperref[protocol0]{Protocol~\ref*{protocol0}}. \section{Shared random values} -A large part of Risk involves random behaviour dictated by rolling some number of dice. To achieve this, some fair protocol must be used to generate random values consistently across each peer without any peer being able to manipulate the outcomes. +A large part of Risk involves random behaviour dictated by rolling some number of dice. To achieve this, a fair protocol must be used to generate random values consistently across each peer without any peer being able to manipulate the outcomes. This is achieved through bit-commitment and properties of $\mathbb{Z}_n$. The protocol for two peers is as follows, and generalises to $n$ peers. @@ -595,9 +617,9 @@ This is achieved through bit-commitment and properties of $\mathbb{Z}_n$. The pr To generalise this to $n$ peers, we ensure that each peer waits to receive all encrypted noises before transmitting their decryption key. -Depending on how $N_A + N_B$ is then turned into a random value within a range, this system may be manipulated by an attacker who has some knowledge of how participants are generating their noise. As an example, suppose a random value within range is generated by taking $N_A + N_B \mod 3$, and participants are producing 2-bit noises. An attacker could submit a 3-bit noise with the most-significant bit set, in which case the probability of the final result being a 1 is significantly higher than the probability of a 0 or a 2. This is a typical example of modular bias. To avoid this problem, peers should agree beforehand on the number of bits to transmit. To combine noises, then use the XOR operation. +Depending on how $N_A + N_B$ is then moved into the required range, this system may be manipulated by an attacker who has some knowledge of how participants are generating their noise. As an example, suppose a random value within range is generated by taking $N_A + N_B \mod 3$, and participants are producing 2-bit noises. An attacker could submit a 3-bit noise with the most-significant bit set, in which case the probability of the final result being a 1 is significantly higher than the probability of a 0 or a 2. This is a typical example of modular bias. To avoid this problem, peers should agree beforehand on the number of bits to transmit, and compute the final value as $N_A \oplus N_B$. -The encryption function used must also guarantee the integrity of decrypted ciphertexts to prevent a malicious party creating a ciphertext which decrypts to multiple valid values through using different keys. +The encryption function used must also guarantee the integrity of decrypted ciphertexts. Otherwise, a malicious party could create a ciphertext which decrypts to multiple valid values by using different keys. \begin{proposition} With the above considerations, the scheme shown is not manipulable by a single cheater. @@ -617,11 +639,11 @@ The encryption function used must also guarantee the integrity of decrypted ciph This extends inductively to support $n-1$ cheating participants, even if colluding. Finally, we must consider how to reduce random noise to useful values. -\subsection{Resampling} +\subsection{Modular bias} -A common approach is to take the modulus of the random noise. This causes modular bias to appear however, where some values are less likely to be generated. +Despite restricting each player's random noise to a fixed bit length, we must still avoid the modular bias that occurs when taking the modulus of a bit sequence. -The typical way to avoid modular bias is by resampling. To avoid excessive communication, resampling can be performed within the bit sequence by partitioning into blocks of $n$ bits and taking blocks until one falls within range. This is appropriate in the presented use case as random values need only be up to 6, so the probability of consuming over 63 bits of noise when resampling for a value in the range 0 to 5 is $\left(\frac{1}{4}\right)^{21} \approx 2.3 \times 10^{-13}$. +We achieve this by resampling. To avoid excessive communication, resampling can be performed within the bit sequence by partitioning into blocks of $n$ bits and taking blocks until one falls within range. This is appropriate in the presented use case as random values need only be up to 6, so the probability of consuming over 63 bits of noise when resampling for a value in the range 0 to 5 is $\left(\frac{1}{4}\right)^{21} \approx 2.3 \times 10^{-13}$. \subsection{Application to domain} @@ -630,7 +652,7 @@ Random values are used in two places. \begin{itemize} \item Rolling dice. \end{itemize} -As this protocol must run many times during a game, we consider each operation of the protocol as a "session", each of which has a unique name that is derived from the context. This has another benefit as the unique name can then be used with the Web Locks API to prevent race conditions that may occur due to this protocol running asynchronously. +As this protocol must run many times during a game, we consider each operation of the protocol as a "session", each of which has a unique name that is derived from the context. A benefit of this is that the unique name can be used with the Web Locks API to prevent race conditions that may occur due to this protocol running asynchronously. \section{Proof system} @@ -680,7 +702,7 @@ The first proof to discuss is the honest-verifier protocol to prove knowledge th \end{center} \end{protocol} -A proof for the following homologous problem can be trivially constructed: given some ciphertext $c = g^mr^n \mod n^2$, prove that the text $cg^{-m} \mod n^2$ is an encryption of 0. The text $cg^{-m}$ is constructed by the verifier. The prover then proceeds with the proof as normal, since $cg^{-m}$ is an encryption of 0 under the same noise as the encryption of $m$ given. +A proof for the following homologous problem can be trivially constructed: given some ciphertext $c = g^mr^n \mod n^2$, prove that the text $cg^{-m} \equiv r^n \mod n^2$ is an encryption of 0. The text $cg^{-m}$ is constructed by the verifier. The prover then proceeds with the proof as normal, since $cg^{-m}$ is an encryption of 0 under the same noise as the encryption of $m$ given. This is used in point (2), as one player can then convince a neighbour in zero-knowledge of the number of units within their region. It is also used throughout the other proofs presented. @@ -853,7 +875,7 @@ Validating $E(m)$ is done with the proof of zero. Then it remains to prove that \end{enumerate} \end{protocol} -The downside of this proof over the BCDG proof \cite{bcdg1987} is that the time to perform and verify this proof grows linearly with $|m|$. However, in most cases $|m|$ should be "small": i.e, $|m| \leq 5$. +The downside of this proof over the BCDG proof \cite{bcdg1987} is that the time to perform and verify this proof grows linearly with $|m|$. However, in most cases $|m|$ should be "small": i.e, $|m| \leq 6$, as Risk unit counts rarely exceed 64 on a single region. Range proof is used in points (3), (4), and (5). In (3), this is to convince other players that the number of units is sufficient for the action. In (4), this is to show that the region is not totally depleted. In (5), this is to ensure the number of units being fortified is less than the strength of the region. All of these are performed using \hyperref[protocol4]{Protocol~\ref*{protocol4}} and by using the additive homomorphic property to subtract the lower range from $m$ first. @@ -1032,7 +1054,7 @@ We can apply the Fiat-Shamir heuristic to make proofs of zero non-interactive \c \fill (6,-15) circle [radius=2pt] ; \fill (12,-15) circle [radius=2pt] ; \end{tikzpicture} - \caption{An example turn during the game incorporates each of the protocols presented above, some many times.} + \caption{An example turn during the game incorporates each of the protocols presented above, some multiple times.} \end{figure} \chapter{Review} @@ -1041,11 +1063,11 @@ We can apply the Fiat-Shamir heuristic to make proofs of zero non-interactive \c \subsection{Random oracles} -Various parts of the implementation use the random oracle model: in particular, the zero-knowledge proof sections. The random oracle model is theoretic, as according to the Church-Turing hypothesis, a machine cannot produce infinite truly random output with only finite input. +Various parts of the implementation use the random oracle model: in particular, the zero-knowledge proof sections. The random oracle model is theoretic, as according to the Church-Turing thesis, an algorithm with infinite description cannot be computed on a finite machine. The random oracle model is used for two guarantees. The first is in the construction of truly random values that will not reveal information about the prover's state. In practice, a cryptographically secure pseudo-random number generator will suffice for this application, as CSPRNGs typically incorporate environmental data to ensure outputs are unpredictable \cite{random(4)}. -The second is to associate a non-random value with a random value. In practice, a cryptographic hash function such as SHAKE is used. This gives appropriately pseudo-random outputs that appear truly random, and additionally are assumed to be preimage resistant: a necessary property when constructing non-interactive proofs in order to prevent a prover manipulating the signature used to derive the proof. +The second is to associate a non-random value with a random value. In practice, a cryptographic hash function such as SHAKE is used. This gives appropriately pseudo-random outputs that appear truly random, and additionally are assumed to be preimage resistant. This property is necessary when constructing non-interactive proofs, to prevent a prover manipulating the signature used to derive the proof. \subsection{Quantum resistance} @@ -1053,7 +1075,7 @@ Paillier is broken if factoring large numbers is computationally feasible \cite[ \subsection{Honest-verifier} -The proof of zero is honest-verifier \cite[Section~5.2]{damgard2003}. However, applying the Fiat-Shamir heuristic converts such a proof into a general zero-knowledge proof \cite[Section~5]{fiatshamir}. This means that, supposing the choice of transform used is appropriate, \hyperref[protocol1]{Protocol~\ref*{protocol1}} should also be general zero-knowledge. However, the interactive proofs performed as part of the game are still only honest-verifier, and a malicious verifier may be able to extract additional information from the prover (such as the blinding value used). +The proof of zero is honest-verifier \cite[Section~5.2]{damgard2003}. However, applying the Fiat-Shamir heuristic converts such a proof into a general zero-knowledge proof \cite[Section~5]{fiatshamir}. This means that, supposing the choice of transform used is appropriate, \hyperref[protocol1]{Protocol~\ref*{protocol1}} should also be general zero-knowledge. However, the interactive proofs performed as part of the game are still only honest-verifier. Consequently, a malicious verifier may be able to extract additional information from the prover (such as the blinding value used). \section{Efficiency} @@ -1068,13 +1090,13 @@ The interactive proof of zero uses two Paillier ciphertexts (each size $2|n|$), On the other hand, the non-interactive variant needs not communicate the challenge (as it is computed as a function of other variables). So the non-interactive proof size is $5|n|$. The non-interactive \hyperref[protocol1]{Protocol~\ref*{protocol1}} requires multiple rounds. Assume that we use 48 rounds: this provides a good level of soundness, with a cheat probability of $\left(\frac{1}{2}\right)^{-48} \approx 3.6 \times 10^{-15}$. Additionally, assume that there are five regions to verify. Each prover round then requires five Paillier ciphertexts, and each verifier round five non-interactive proofs of zero plus some negligible amount of additional storage for the bijection. -This results in a proof size of $(10|n| + 10|n|) \times 48 = 960|n|$. For key size $|n| = 2048$, this is $240kB$. This is a fairly reasonable size for memory and network, but this value may exceed what can be placed within a processor's cache, leading to potential slowdown during verification. +This results in a proof size of $(10|n| + 10|n|) \times 48 = 960|n|$. For key size $|n| = 2048$, this is $240kB$. This is a fairly reasonable size for memory and network, but risks exceeding what can be placed within a processor's cache, leading to potential slowdown during verification. This could be overcome by reducing the number of rounds, which comes at the cost of increasing the probability of cheating. In a protocol designed to only facilitate a single game session, this may be acceptable to the parties involved. For example, reducing the number of rounds to 24 will increase the chance of cheating to $\left(\frac{1}{2}\right)^{-24} \approx 6.0 \times 10^{-8}$, but the size would reduce by approximately half. -This is all in an ideal situation without compression or signatures: in the implementation presented, the serialisation of a ciphertext is larger than this, since it serialises to a string of the hexadecimal representation and includes a digital signature for authenticity. In JavaScript, encoding a byte string as hexadecimal should yield approximately a four times increase in size, as one byte uses two hexadecimal characters, which are encoded as UTF-16. Results for this are shown in \hyperref[table3]{Table~\ref*{table3}}. Some potential solutions are discussed here. +Each of these calculations is in an ideal situation without compression or signatures: in the implementation presented, the serialisation of a ciphertext is larger than this, since it serialises to a string of the hexadecimal representation and includes a digital signature for authenticity. In JavaScript, encoding a byte string as hexadecimal should yield approximately a four times increase in size, as one byte uses two hexadecimal characters, which are encoded as UTF-16. Results for the actual sizes of each proof are given in \hyperref[table3]{Table~\ref*{table3}}. Some potential solutions are discussed here. -\textbf{Compression.} One solution is to use string compression. String compression can reduce the size considerably, as despite the ciphertexts being random, the hex digits only account for a small amount of the UTF-8 character space. LZ-String, a popular JavaScript string compression library, can reduce the size of a single hex-encoded ciphertext to about 35\% of its original size. This will result in some slowdown due to compression time however, but this is somewhat negligible in the face of the time taken to produce and verify proofs in the first place. +\textbf{Compression.} One solution is to use string compression. String compression can reduce the size considerably, as despite the ciphertexts being random, the hex digits only account for a small amount of the UTF-8 character space. LZ-String, a popular JavaScript string compression library, can reduce the size of a single hex-encoded ciphertext to about 35\% of its original size. This will result in some slowdown due to compression time. However, this is somewhat negligible in the face of the time taken to produce and verify proofs in the first place. \textbf{Message format.} Another solution is to use a more compact message format, for example msgpack \cite{msgpack} (which also has native support for binary literals). @@ -1082,7 +1104,7 @@ This is all in an ideal situation without compression or signatures: in the impl \subsection{Time complexity} -Theoretic timing results versus RSA are backed experimentally by my implementation. The following benchmarking code was executed. +Theoretic timing results versus RSA are backed experimentally by the implementation. The following benchmarking code was executed. \begin{minted}{javascript} console.log("Warming up") @@ -1118,7 +1140,7 @@ I tested this on top of the alternative Paillier scheme from above. This resulte \hyperref[protocol1]{Protocol~\ref*{protocol1}} can be modified by instead testing that the given ciphertext is contained in a set of valid ciphertexts. There would still be a large number of Paillier encryptions required during this proof. -The other proofs do not translate so trivially to this structure however. In fact, in some contexts the proofs required may be considerably more complicated, becoming round-based proofs which may be slower and use more Paillier encryptions to achieve the same effect. +However, the other proofs do not translate so trivially to this structure. In fact, in some contexts the proofs required may be considerably more complicated, which may be slower and use more Paillier encryptions to achieve the same effect. \textbf{Optimising language.} An optimising language may be able to reduce the time taken to encrypt. On the browser, this could involve using WASM as a way to execute compiled code within the browser, although WASM does not always outperform JavaScript \cite{wasm}. @@ -1140,7 +1162,7 @@ All measurements were taken on Brave 1.50.114 (Chromium 112.0.5615.49) 64-bit, u \midrule $|n| = 1024$ & 6ms & 4ms & 1.4ms & 0.015ms \\ $|n| = 2048$ & 34ms & 22ms & 7.6ms & 0.040ms \\ - $|n| = 4096$ & 189ms & 128ms & -- & 0.093ms \\ + $|n| = 4096$ & 190ms & 130ms & -- & 0.093ms \\ \bottomrule \end{tabularx} \end{table} @@ -1162,7 +1184,7 @@ All measurements were taken on Brave 1.50.114 (Chromium 112.0.5615.49) 64-bit, u \midrule $|n| = 1024$ & 10ms & 18ms & 1,420ms & 2,140ms & 443ms & 655ms & 3,530ms & 5,310ms & 1,350ms & 2,070ms \\ $|n| = 2048$ & 44ms & 68ms & 6,390ms & 8,140ms & 1,980ms & 2,400ms & 15,800ms & 19,000ms & 5,800ms & 7,790ms \\ - $|n| = 4096$ & 225ms & 292ms & 41,500ms & 34,400ms & 14,300ms & 11,400ms & 112,000ms & 79,300ms & & \\ + $|n| = 4096$ & 225ms & 292ms & 41,500ms & 34,400ms & 14,300ms & 11,400ms & 112,000ms & 79,300ms & 40,500ms & 29,100ms \\ \bottomrule \end{tabularx} \parnotes @@ -1172,16 +1194,20 @@ All measurements were taken on Brave 1.50.114 (Chromium 112.0.5615.49) 64-bit, u \fontsize{10pt}{10pt}\selectfont \caption{Byte size\parnote{1 UTF-16 character, as used by ECMAScript \cite[Section~6.1.4]{ecma2024262}, is 2 or more bytes.} of encoded non-interactive proofs} \label{table3} - \begin{tabularx}{\hsize}{c *8{>{\Centering}X}} + \begin{tabularx}{\hsize}{c *8{>{\Centering}X} *2{>{\Centering}X}} \toprule - \multirow{2}{*}{Modulus} & \multicolumn{2}{c}{\hyperref[protocol0]{Protocol~\ref*{protocol0}}} & \multicolumn{2}{c}{\hyperref[protocol1]{Protocol~\ref*{protocol1}} with $t = 24$} & \multicolumn{2}{c}{BCDG Range with $t = 24$} & \multicolumn{2}{c}{\hyperref[protocol4]{Protocol~\ref*{protocol4}} with $t = 24$} + \multirow{2}{*}{Modulus} & \multicolumn{2}{c}{\hyperref[protocol0]{Protocol~\ref*{protocol0}}} & + \multicolumn{2}{c}{\hyperref[protocol1]{Protocol~\ref*{protocol1}} with $t = 24$} & + \multicolumn{2}{c}{BCDG Range with $t = 24$} & + \multicolumn{2}{c}{\hyperref[protocol4]{Protocol~\ref*{protocol4}} with $t = 24$} & + \multicolumn{2}{c}{\hyperref[protocol3]{Protocol~\ref*{protocol3}} with $t = 24$} \tabularnewline - \cmidrule(l){2-3}\cmidrule(l){4-5}\cmidrule(l){6-7}\cmidrule(l){8-9} - & JSON & with LZ-String & JSON & with LZ-String & JSON & with LZ-String & JSON & with LZ-String \\ + \cmidrule(l){2-3}\cmidrule(l){4-5}\cmidrule(l){6-7}\cmidrule(l){8-9}\cmidrule(l){10-11} + & JSON & with LZ-String & JSON & with LZ-String & JSON & with LZ-String & JSON & with LZ-String & JSON & with LZ-String \\ \midrule - $|n| = 1024$ & 1,617B & 576B & 338,902B & 95,738B & 123,354B & 34,857B & 895,474B & 248,420B \\ - $|n| = 2048$ & 3,153B & 1,050B & 662,233B & 187,333B & 252,230B & 70,868B & 1,746,017B & 485,787B \\ - $|n| = 4096$ & 6,226B & 1,999B & 1,315,027B & 368,646B & 484,117B & 135,990B & 3,458,376B & 964,913B \\ + $|n| = 1024$ & 1,617B & 576B & 338,902B & 95,738B & 123,354B & 34,857B & 895,474B & 248,420B & 322,946B & 92,042B \\ + $|n| = 2048$ & 3,153B & 1,050B & 662,233B & 187,333B & 252,230B & 70,868B & 1,746,017B & 485,787B & 620,206B & 176,854B \\ + $|n| = 4096$ & 6,226B & 1,999B & 1,315,027B & 368,646B & 484,117B & 135,990B & 3,458,376B & 964,913B & 1,206,657B & 341,028B \\ \bottomrule \end{tabularx} \parnotes @@ -1193,7 +1219,7 @@ All measurements were taken on Brave 1.50.114 (Chromium 112.0.5615.49) 64-bit, u \section{Contributions} -This project has contributed an implementation of an optimised form of Paillier that is compatible with modern web browsers. Benchmarks show that, considering current hardware, Paillier in Jurik's form can be a viable cryptosystem for occasional use. However, additional work is needed to make it efficient enough for large amounts of encryptions, as seen in \hyperref[protocol4]{Protocol~\ref{protocol4}}. +This project has contributed an implementation of an optimised form of Paillier that is compatible with modern web browsers. Benchmarks show that, considering current hardware, Paillier in Jurik's form can be a viable cryptosystem for occasional use. However, additional work is required to make it efficient enough for large amounts of encryptions, as seen in \hyperref[protocol4]{Protocol~\ref*{protocol4}}. The Paillier implementation provides capability for Schnorr-style proofs of knowledge and also multi-round proofs of knowledge, which serialise to JSON. These are made non-interactive by applying the SHAKE cryptographic hash suite. @@ -1201,11 +1227,11 @@ Multi-round proofs combining set membership and graph isomorphism are among the \section{Domain} -The protocols devised are effective in the target domain of online games. With multi-round proofs of 24 rounds, players can be confident to a reasonably high probability that other players are not trying to cheat. +The protocols devised are effective in the target domain of online games. With multi-round proofs of 24 rounds, players can be reasonably confident that other players are not cheating. For the most part, the protocols shown run in a time-frame that would not disrupt the experience, with the exception of the bit length proof. With additional work, this proof could be replaced with a Bulletproof \cite{bulletproofs}, which may use less bandwidth and perform faster. -A large outstanding problem with the implementation is conflict resolution. Currently, if a player submits proofs that do not verify, other players simply ignore the message. However, a better solution should be that the other players can decide to remove a misbehaving player from the protocol. +A large outstanding problem with the implementation is conflict resolution. Currently, if a player submits proofs that do not verify, other players simply ignore the message. However, a better solution would be to allow other players to remove a misbehaving player from the protocol. \section{Wider application} @@ -1239,9 +1265,20 @@ Another consideration in this domain is the use of homomorphic encryption scheme \subsection{JavaScript} -JavaScript was the incorrect choice of language for this project. Whilst the event-based methodology was useful, I believe overall that JavaScript made development much more difficult. +JavaScript was the incorrect choice of language for this project. Whilst the event-based methodology was useful, I believe that JavaScript made development much more difficult. -JavaScript is a slow language. Prime generation takes a considerable amount of time, and this extends to encryption and decryption being slower than in an implementation in an optimising compiled language. This was seen in the results shown before. +JavaScript is a slow language. Prime generation takes a considerable amount of time, and this extends to encryption and decryption being slower than in an implementation in an optimising compiled language. + +\begin{table}[H] + \caption{Time to generate safe primes} + \begin{tabularx}{\hsize}{c *2{>{\Centering}X}} + \toprule + & My implementation & \texttt{openssl dhparam 512} \\ + \midrule + $|p| = 512$ & 8,660ms & 66ms \\ + \bottomrule + \end{tabularx} +\end{table} JavaScript's type system makes debugging difficult. It is somewhat obvious that this problem is far worse in systems with more interacting parts. TypeScript may have been a suitable alternative, but most likely the easiest solution was to avoid both and go with a language that was designed with stronger typing in mind from the outset.