From 5445e138284e110bed0b69764183bc6dc39ab534 Mon Sep 17 00:00:00 2001 From: Michael Vines Date: Fri, 1 Oct 2021 09:43:59 -0700 Subject: [PATCH] Rename dlog.rs to discrete_log.rs --- .../encryption/{dlog.rs => discrete_log.rs} | 6 +++--- zk-token-sdk/src/encryption/elgamal.rs | 18 +++++++++--------- zk-token-sdk/src/encryption/mod.rs | 2 +- 3 files changed, 13 insertions(+), 13 deletions(-) rename zk-token-sdk/src/encryption/{dlog.rs => discrete_log.rs} (97%) diff --git a/zk-token-sdk/src/encryption/dlog.rs b/zk-token-sdk/src/encryption/discrete_log.rs similarity index 97% rename from zk-token-sdk/src/encryption/dlog.rs rename to zk-token-sdk/src/encryption/discrete_log.rs index 0584e4cde..f15bb85fe 100644 --- a/zk-token-sdk/src/encryption/dlog.rs +++ b/zk-token-sdk/src/encryption/discrete_log.rs @@ -16,7 +16,7 @@ const TWO18: u32 = 262144; // 2^18 /// /// The goal of discrete log is to find x such that x * generator = target. #[derive(Serialize, Deserialize, Copy, Clone, Debug, Eq, PartialEq)] -pub struct DiscreteLogInstance { +pub struct DiscreteLog { /// Generator point for discrete log pub generator: RistrettoPoint, /// Target point for discrete log @@ -56,7 +56,7 @@ pub fn decode_u32_precomputation_for_G() -> HashMap<[u8; 32], u32> { } /// Solves the discrete log instance using a 18/14 bit offline/online split -impl DiscreteLogInstance { +impl DiscreteLog { /// Solves the discrete log problem under the assumption that the solution /// is a 32-bit number. pub fn decode_u32(self) -> Option { @@ -120,7 +120,7 @@ mod tests { fn test_decode_correctness() { let amount: u32 = 65545; - let instance = DiscreteLogInstance { + let instance = DiscreteLog { generator: G, target: Scalar::from(amount) * G, }; diff --git a/zk-token-sdk/src/encryption/elgamal.rs b/zk-token-sdk/src/encryption/elgamal.rs index c476403f6..c2dfafda6 100644 --- a/zk-token-sdk/src/encryption/elgamal.rs +++ b/zk-token-sdk/src/encryption/elgamal.rs @@ -2,7 +2,7 @@ use rand::{rngs::OsRng, CryptoRng, RngCore}; use { crate::encryption::{ - dlog::DiscreteLogInstance, + discrete_log::DiscreteLog, pedersen::{Pedersen, PedersenBase, PedersenComm, PedersenDecHandle, PedersenOpen}, }, arrayref::{array_ref, array_refs}, @@ -80,16 +80,16 @@ impl ElGamal { /// On input a secret key and a ciphertext, the function decrypts the ciphertext. /// - /// The output of the function is of type `DiscreteLogInstance`. The exact message - /// can be recovered via the DiscreteLogInstance's decode method. - pub fn decrypt(sk: &ElGamalSK, ct: &ElGamalCiphertext) -> DiscreteLogInstance { + /// The output of the function is of type `DiscreteLog`. The exact message + /// can be recovered via the DiscreteLog's decode method. + pub fn decrypt(sk: &ElGamalSK, ct: &ElGamalCiphertext) -> DiscreteLog { let ElGamalSK(s) = sk; let ElGamalCiphertext { message_comm, decrypt_handle, } = ct; - DiscreteLogInstance { + DiscreteLog { generator: PedersenBase::default().G, target: message_comm.get_point() - s * decrypt_handle.get_point(), } @@ -167,7 +167,7 @@ impl ElGamalSK { } /// Utility method for code ergonomics. - pub fn decrypt(&self, ct: &ElGamalCiphertext) -> DiscreteLogInstance { + pub fn decrypt(&self, ct: &ElGamalCiphertext) -> DiscreteLog { ElGamal::decrypt(self, ct) } @@ -262,7 +262,7 @@ impl ElGamalCiphertext { } /// Utility method for code ergonomics. - pub fn decrypt(&self, sk: &ElGamalSK) -> DiscreteLogInstance { + pub fn decrypt(&self, sk: &ElGamalSK) -> DiscreteLog { ElGamal::decrypt(sk, self) } @@ -360,7 +360,7 @@ mod tests { let msg: u32 = 57; let ct = ElGamal::encrypt(&pk, msg); - let expected_instance = DiscreteLogInstance { + let expected_instance = DiscreteLog { generator: PedersenBase::default().G, target: Scalar::from(msg) * PedersenBase::default().G, }; @@ -385,7 +385,7 @@ mod tests { let ct_1 = decrypt_handle_1.to_elgamal_ctxt(comm); let ct_2 = decrypt_handle_2.to_elgamal_ctxt(comm); - let expected_instance = DiscreteLogInstance { + let expected_instance = DiscreteLog { generator: PedersenBase::default().G, target: Scalar::from(msg) * PedersenBase::default().G, }; diff --git a/zk-token-sdk/src/encryption/mod.rs b/zk-token-sdk/src/encryption/mod.rs index 40e70f986..ea34448d3 100644 --- a/zk-token-sdk/src/encryption/mod.rs +++ b/zk-token-sdk/src/encryption/mod.rs @@ -1,3 +1,3 @@ -pub mod dlog; +pub mod discrete_log; pub mod elgamal; pub mod pedersen;