diff options
author | Артём Павлов [Artyom Pavlov] <newpavlov@gmail.com> | 2017-08-14 07:37:17 +0300 |
---|---|---|
committer | Артём Павлов [Artyom Pavlov] <newpavlov@gmail.com> | 2017-08-14 07:37:17 +0300 |
commit | 331727194c231a10dc2e296922e09aa0e888f4bd (patch) | |
tree | 46e2a32679f399a7584b3b33d3986611195a395c /src/tools.rs | |
parent | defd41c0ee00cf06930b733e9ab06163bc6ad1cf (diff) | |
download | PAKEs-331727194c231a10dc2e296922e09aa0e888f4bd.tar.xz |
PAKE repository reorganization
Diffstat (limited to 'src/tools.rs')
-rw-r--r-- | src/tools.rs | 19 |
1 files changed, 0 insertions, 19 deletions
diff --git a/src/tools.rs b/src/tools.rs deleted file mode 100644 index 8cb6910..0000000 --- a/src/tools.rs +++ /dev/null @@ -1,19 +0,0 @@ -use num::BigUint; - -pub fn powm(base: &BigUint, exp: &BigUint, modulus: &BigUint) -> BigUint { - let zero = BigUint::new(vec![0]); - let one = BigUint::new(vec![1]); - let two = BigUint::new(vec![2]); - let mut exp = exp.clone(); - let mut result = one.clone(); - let mut base = base % modulus; - - while exp > zero { - if &exp % &two == one { - result = (result * &base) % modulus; - } - exp = exp >> 1; - base = (&base * &base) % modulus; - } - result -} |