From 0991c6bff95f4bd5d590d3d76cfe94415834c3f4 Mon Sep 17 00:00:00 2001 From: jude Date: Mon, 10 Apr 2023 11:19:11 +0100 Subject: [PATCH] Fix a lot of stuff --- static/js/modules/crypto/paillier.js | 22 ++++++++++----------- static/js/modules/interface/dom.js | 8 ++++++++ static/js/modules/interface/main.js | 16 +++++++++++++-- static/js/modules/interface/map.js | 4 ++++ static/js/modules/interface/packet.js | 8 ++++++++ static/js/modules/interface/player.js | 27 +++++++++++++++----------- whitepaper/Dissertation.pdf | Bin 380264 -> 380842 bytes whitepaper/Dissertation.tex | 4 +++- 8 files changed, 64 insertions(+), 25 deletions(-) diff --git a/static/js/modules/crypto/paillier.js b/static/js/modules/crypto/paillier.js index 52aafc4..1a9376d 100644 --- a/static/js/modules/crypto/paillier.js +++ b/static/js/modules/crypto/paillier.js @@ -1,7 +1,7 @@ import { cryptoRandom, generate_prime } from "./random_primes.js"; import { mod_exp } from "./math.js"; -class Cyphertext { +class Ciphertext { constructor(key, plainText, r) { if (r === undefined) { r = cryptoRandom(4096); @@ -46,15 +46,15 @@ class Cyphertext { } prove() { - return new ProofSessionProver(this); + return new ZeroProofSessionProver(this); } asReadOnlyCyphertext() { - return new ReadOnlyCyphertext(this.pubKey, this.cyphertext); + return new ReadOnlyCiphertext(this.pubKey, this.cyphertext); } } -class ProofSessionProver { +class ZeroProofSessionProver { constructor(cipherText) { this.cipherText = cipherText; @@ -87,9 +87,9 @@ class ProofSessionProver { } } -window.Cyphertext = Cyphertext; +window.Cyphertext = Ciphertext; -export class ReadOnlyCyphertext { +export class ReadOnlyCiphertext { constructor(key, cyphertext) { this.cyphertext = cyphertext; this.pubKey = key; @@ -107,15 +107,15 @@ export class ReadOnlyCyphertext { } prove(plainText, a) { - return new ProofSessionVerifier(this, plainText, a); + return new ZeroProofSessionVerifier(this, plainText, a); } clone() { - return new ReadOnlyCyphertext(this.pubKey, this.cyphertext); + return new ReadOnlyCiphertext(this.pubKey, this.cyphertext); } } -class ProofSessionVerifier { +class ZeroProofSessionVerifier { constructor(cipherText, plainText, a) { // Clone, otherwise the update below will mutate the original value this.cipherText = cipherText.clone(); @@ -147,7 +147,7 @@ class ProofSessionVerifier { } } -window.ReadOnlyCyphertext = ReadOnlyCyphertext; +window.ReadOnlyCyphertext = ReadOnlyCiphertext; export class PaillierPubKey { constructor(n) { @@ -157,7 +157,7 @@ export class PaillierPubKey { } encrypt(m, r) { - return new Cyphertext(this, m, r); + return new Ciphertext(this, m, r); } toJSON() { diff --git a/static/js/modules/interface/dom.js b/static/js/modules/interface/dom.js index 33384b7..df2342f 100644 --- a/static/js/modules/interface/dom.js +++ b/static/js/modules/interface/dom.js @@ -148,6 +148,14 @@ document.addEventListener("DOMContentLoaded", () => { el.addEventListener("click", (ev) => { let region = ev.target.closest(".node").dataset.name; game.us.sendReinforce(region); + + if (game.isPregame()) { + game.us.endTurn(); + + if (game.allReinforcementsPlaced()) { + game.incrementState(); + } + } }) ); diff --git a/static/js/modules/interface/main.js b/static/js/modules/interface/main.js index 96aa15c..97052c9 100644 --- a/static/js/modules/interface/main.js +++ b/static/js/modules/interface/main.js @@ -125,7 +125,7 @@ document.addEventListener("ACT", async (ev) => { game.setReady(data.author, data.ready); } else { // Throw out our own packets - if (data.author === game.us) { + if (data.author === game.us.id) { return; } @@ -149,6 +149,10 @@ document.addEventListener("ACT", async (ev) => { game.currentPlayer().endTurn(); } } + + if (game.allReinforcementsPlaced()) { + game.incrementState(); + } } else { if (await game.currentPlayer().act(data)) { game.currentPlayer().endTurn(); @@ -163,8 +167,16 @@ document.addEventListener("ACT", async (ev) => { // todo has to filter by player document.addEventListener("PROOF", async (ev) => { const data = ev.detail; + if (data.stage === "REQUEST") { + let region = Region.getRegion(data.region); + + // todo check if this is a valid request e.g actually has neighbour + if (region.owner === game.us) { + region.prove(); + } + } + if (data.stage === "CONJECTURE") { - // find the relevant entity let region = Region.getRegion(data.region); region.verify(BigInt(data.plainText), BigInt(data.a)); diff --git a/static/js/modules/interface/map.js b/static/js/modules/interface/map.js index a94a2cf..69e8b4b 100644 --- a/static/js/modules/interface/map.js +++ b/static/js/modules/interface/map.js @@ -157,6 +157,10 @@ export class Region { this.strength.prove(this.name); } + requestProof() { + socket.emit("message", Packet.createProofRequest(this.name)); + } + verify(plainText, a) { this.strength.verify(this.name, plainText, a); } diff --git a/static/js/modules/interface/packet.js b/static/js/modules/interface/packet.js index 312769f..fbc9cee 100644 --- a/static/js/modules/interface/packet.js +++ b/static/js/modules/interface/packet.js @@ -117,6 +117,14 @@ export class Packet { }); } + static createProofRequest(region) { + return this._sign({ + ...this._createBase("PROOF"), + stage: "REQUEST", + region: region, + }); + } + static createProofConjecture(region, plainText, a) { return this._sign({ ...this._createBase("PROOF"), diff --git a/static/js/modules/interface/player.js b/static/js/modules/interface/player.js index e86ed22..65d2e23 100644 --- a/static/js/modules/interface/player.js +++ b/static/js/modules/interface/player.js @@ -1,7 +1,7 @@ import { Packet } from "./packet.js"; import { socket, game, random } from "./main.js"; import { RsaPubKey } from "../crypto/rsa.js"; -import { PaillierPubKey, ReadOnlyCyphertext } from "../crypto/paillier.js"; +import { PaillierPubKey, ReadOnlyCiphertext } from "../crypto/paillier.js"; import { Region } from "./map.js"; import { showDefenseDom } from "./dom.js"; @@ -88,7 +88,7 @@ export class Player { if (region.owner === null) { region.claim( this, - new ReadOnlyCyphertext(this.paillierPubKey, BigInt(data.cipherText)) + new ReadOnlyCiphertext(this.paillierPubKey, BigInt(data.cipherText)) ); this.totalStrength += 1; @@ -112,7 +112,7 @@ export class Player { if (region.owner === this) { region.reinforce( - new ReadOnlyCyphertext( + new ReadOnlyCiphertext( this.paillierPubKey, BigInt(data.regions[regionName]) ) @@ -122,6 +122,13 @@ export class Player { this.totalStrength += 1; + // request proofs + for (let region of this.getRegions()) { + if ([...region.neighbours.values()].find((r) => r.owner === game.us)) { + region.requestProof(); + } + } + return true; } @@ -154,15 +161,13 @@ export class Player { this.totalStrength += 1; - // send proofs - for (let region of this.getRegions()) { - // eh - if ([...region.neighbours.values()].find((r) => r.owner !== this)) { - region.prove(); + if (game.isPlaying()) { + this.reinforcementsPlaced += 1; + + if (this.reinforcementsPlaced === this.reinforcementsAvailable) { + this.turnPhase = PHASE_ATTACK; } } - - this.endTurn(); } /** @@ -173,7 +178,7 @@ export class Player { */ async act(data) { if (this.turnPhase === PHASE_REINFORCE) { - if (data.region !== undefined) { + if (data.regions !== undefined) { if (this.reinforce(data)) { this.reinforcementsPlaced += 1; } diff --git a/whitepaper/Dissertation.pdf b/whitepaper/Dissertation.pdf index 4b70538c6ea5b5de367ab6691407e8f73daf934c..aeab9e02dd91a8dcd3afae4673b62f008e228f70 100644 GIT binary patch delta 56575 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 delta 56012 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

(pQoes_mwy1;(shY;@!1>c1j`he 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 diff --git a/whitepaper/Dissertation.tex b/whitepaper/Dissertation.tex index f1e0a64..ff30086 100644 --- a/whitepaper/Dissertation.tex +++ b/whitepaper/Dissertation.tex @@ -510,7 +510,7 @@ Various parts of the implementation use the random oracle model: in particular, Paillier ciphertexts are constant size, each $\sim$1.0kB in size (as they are taken modulo $n^2$, where $n$ is the product of two 2048 bit primes). This is small enough for the memory and network limitations of today. -The proof of zero uses two Paillier ciphertexts, a challenge of size 2048 bits, and a proof statement of size 4096 bits. In total, this is $\sim$2.8kB. These are constant size, and since they run in a single round, take constant time. +The proof of zero uses two Paillier ciphertexts, a challenge of size 2048 bits, and a proof statement of size 4096 bits. In total, this is a constant size of $\sim$2.8kB. On the other hand, \hyperref[protocol1]{Protocol~\ref*{protocol1}} requires multiple rounds. Assume that we use 42 rounds: this provides an acceptable level of soundness, with a cheat probability of $\left(\frac{1}{2}\right)^{-42} \approx 2.3 \times 10^{-13}$. Additionally, assume that there are 10 regions to verify. Each round then requires ten Paillier ciphertexts alongside ten proofs of zero. This results in a proof size of $\sim$1.7MB. Whilst this is still within current memory limitations, the network cost is extreme; and this value may exceed what can be reasonably operated on within a processor's cache. @@ -520,6 +520,8 @@ This is all in an ideal situation without compression or signatures: in the impl The size of the proof of zero communication is, in total, $3290 + 1744 + 2243$ characters, i.e $\sim$7.3kB. This is about 2-3 times larger than the ideal size. A solution to this is to use a more compact format, for example msgpack \cite{msgpack} (which also has native support for binary literals). +This only considers the network footprint. The other consideration is the memory footprint. The proof of zero requires auxiliary memory beyond the new values communicated. In particular, it must clone the ciphertext being proven, in order to prevent mutating the original ciphertext when multiplying by $g^{-m}$. + \subsubsection{Time complexity} It is remarked that Paillier encryption performs considerably slower than RSA on all key sizes. \cite{paillier1999public} provides a table of theoretic results, suggesting that Paillier encryption can be over 1,000 times slower than RSA for the same key size.