diff options
| author | David Lönnhager <david.l@mullvad.net> | 2022-06-08 10:38:07 +0200 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2022-06-14 12:38:39 +0200 |
| commit | 678949a4ef18426b7f093bdc86c31b676810a688 (patch) | |
| tree | 52708c767c1ffbdda15d5626548c1206ac8174f7 | |
| parent | 8f78d9164c3c758062f4e3ef2a21d838e26882c6 (diff) | |
| download | mullvadvpn-678949a4ef18426b7f093bdc86c31b676810a688.tar.xz mullvadvpn-678949a4ef18426b7f093bdc86c31b676810a688.zip | |
Use v2 branch of classic-mceliece-rust
| -rw-r--r-- | Cargo.lock | 43 | ||||
| -rw-r--r-- | talpid-relay-config-client/Cargo.toml | 2 | ||||
| -rw-r--r-- | talpid-relay-config-client/src/kem.rs | 10 |
3 files changed, 8 insertions, 47 deletions
diff --git a/Cargo.lock b/Cargo.lock index 810c22e39c..758ca19a76 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -186,7 +186,7 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" dependencies = [ - "block-padding 0.1.5", + "block-padding", "byte-tools", "byteorder", "generic-array 0.12.4", @@ -194,16 +194,6 @@ dependencies = [ [[package]] name = "block-buffer" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" -dependencies = [ - "block-padding 0.2.1", - "generic-array 0.14.4", -] - -[[package]] -name = "block-buffer" version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1d36a02058e76b040de25a4464ba1c80935655595b661505c8b39b664828b95" @@ -212,16 +202,6 @@ dependencies = [ ] [[package]] -name = "block-modes" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cb03d1bed155d89dce0f845b7899b18a9a163e148fd004e1c28421a783e2d8e" -dependencies = [ - "block-padding 0.2.1", - "cipher", -] - -[[package]] name = "block-padding" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -231,12 +211,6 @@ dependencies = [ ] [[package]] -name = "block-padding" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae" - -[[package]] name = "bumpalo" version = "3.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -366,13 +340,8 @@ dependencies = [ [[package]] name = "classic-mceliece-rust" version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fa9a48fdd99179698111d76d2e66f185ef18b4ef4851a4f9dde20f1ed6c9aa1" +source = "git+https://github.com/mullvad/classic-mceliece-rust?rev=5130d9e3bfbf54735177e15636a643366c250b78#5130d9e3bfbf54735177e15636a643366c250b78" dependencies = [ - "aes", - "block-modes", - "hex", - "lazy_static", "rand 0.8.4", "sha3", ] @@ -3075,14 +3044,12 @@ dependencies = [ [[package]] name = "sha3" -version = "0.9.1" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f81199417d4e5de3f04b1e871023acea7389672c4135918f05aa9cbf2f2fa809" +checksum = "31f935e31cf406e8c0e96c2815a5516181b7004ae8c5f296293221e9b1e356bd" dependencies = [ - "block-buffer 0.9.0", - "digest 0.9.0", + "digest 0.10.1", "keccak", - "opaque-debug 0.3.0", ] [[package]] diff --git a/talpid-relay-config-client/Cargo.toml b/talpid-relay-config-client/Cargo.toml index 73f5cdb630..a94a0d576a 100644 --- a/talpid-relay-config-client/Cargo.toml +++ b/talpid-relay-config-client/Cargo.toml @@ -16,7 +16,7 @@ prost = "0.8" prost-types = "0.9" tower = "0.4" tokio = "1" -classic-mceliece-rust = { version = "1.0", features = ["mceliece8192128f"] } +classic-mceliece-rust = { git = "https://github.com/mullvad/classic-mceliece-rust", rev = "5130d9e3bfbf54735177e15636a643366c250b78", features = ["mceliece8192128f"] } [dev-dependencies] tokio = { version = "1", features = ["rt-multi-thread"] } diff --git a/talpid-relay-config-client/src/kem.rs b/talpid-relay-config-client/src/kem.rs index 3fd1bff497..7b7817e5e3 100644 --- a/talpid-relay-config-client/src/kem.rs +++ b/talpid-relay-config-client/src/kem.rs @@ -3,10 +3,9 @@ use std::fmt; use super::Error; use classic_mceliece_rust::{ - crypto_kem_dec, crypto_kem_keypair, AesState, RNGState, CRYPTO_BYTES, CRYPTO_CIPHERTEXTBYTES, + crypto_kem_dec, crypto_kem_keypair, CRYPTO_BYTES, CRYPTO_CIPHERTEXTBYTES, CRYPTO_PUBLICKEYBYTES, CRYPTO_SECRETKEYBYTES, }; -use rand::RngCore; use talpid_types::net::wireguard::PresharedKey; const STACK_SIZE: usize = 8 * 1024 * 1024; @@ -32,12 +31,7 @@ pub async fn generate_keys() -> Result<(PublicKey, SecretKey), Error> { let (tx, rx) = tokio::sync::oneshot::channel(); let gen_key = move || { - let mut rng = AesState::new(); - - let mut entropy = [0u8; 48]; - rand::thread_rng().fill_bytes(&mut entropy); - rng.randombytes_init(entropy); - + let mut rng = rand::thread_rng(); let mut pubkey = Box::new([0u8; CRYPTO_PUBLICKEYBYTES]); let mut secret = Box::new([0u8; CRYPTO_SECRETKEYBYTES]); crypto_kem_keypair(&mut pubkey, &mut secret, &mut rng).map_err(|error| { |
