Skip to content

Commit be739ff

Browse files
committed
Refinements.
1 parent 67fb0ea commit be739ff

File tree

2 files changed

+21
-21
lines changed

2 files changed

+21
-21
lines changed

src/lib.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,9 @@ pub use symmetric_encryption::{
5858

5959
mod public_key_encryption;
6060
pub use public_key_encryption:: {
61-
x25519_new_agreement_private_key_using,
62-
x25519_agreement_public_key_from_private_key,
63-
x25519_derive_agreement_private_key,
61+
x25519_new_private_key_using,
62+
x25519_public_key_from_private_key,
63+
x25519_derive_private_key,
6464
x25519_derive_signing_private_key,
6565
x25519_shared_key,
6666
X25519_PRIVATE_KEY_SIZE,

src/public_key_encryption.rs

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,19 @@ pub const X25519_PRIVATE_KEY_SIZE: usize = 32;
66
pub const X25519_PUBLIC_KEY_SIZE: usize = 32;
77

88
/// Create a new X25519 private key using the given random number generator.
9-
pub fn x25519_new_agreement_private_key_using(rng: &mut impl RandomNumberGenerator) -> [u8; X25519_PRIVATE_KEY_SIZE] {
9+
pub fn x25519_new_private_key_using(rng: &mut impl RandomNumberGenerator) -> [u8; X25519_PRIVATE_KEY_SIZE] {
1010
rng.random_data(X25519_PRIVATE_KEY_SIZE).try_into().unwrap()
1111
}
1212

1313
/// Derive a X25519 public key from a private key.
14-
pub fn x25519_agreement_public_key_from_private_key(agreement_private_key: &[u8; X25519_PRIVATE_KEY_SIZE]) -> [u8; X25519_PUBLIC_KEY_SIZE] {
15-
let sk = StaticSecret::from(*agreement_private_key);
14+
pub fn x25519_public_key_from_private_key(x25519_private_key: &[u8; X25519_PRIVATE_KEY_SIZE]) -> [u8; X25519_PUBLIC_KEY_SIZE] {
15+
let sk = StaticSecret::from(*x25519_private_key);
1616
let pk = PublicKey::from(&sk);
1717
pk.as_bytes().to_owned()
1818
}
1919

20-
/// Derive an X25519 agreement private key from the given key material.
21-
pub fn x25519_derive_agreement_private_key(key_material: impl AsRef<[u8]>) -> [u8; X25519_PRIVATE_KEY_SIZE] {
20+
/// Derive an X25519 private key from the given key material.
21+
pub fn x25519_derive_private_key(key_material: impl AsRef<[u8]>) -> [u8; X25519_PRIVATE_KEY_SIZE] {
2222
hkdf_hmac_sha256(key_material, "agreement".as_bytes(), X25519_PRIVATE_KEY_SIZE).try_into().unwrap()
2323
}
2424

@@ -27,10 +27,10 @@ pub fn x25519_derive_signing_private_key(key_material: impl AsRef<[u8]>) -> [u8;
2727
hkdf_hmac_sha256(key_material, "signing".as_bytes(), X25519_PRIVATE_KEY_SIZE).try_into().unwrap()
2828
}
2929

30-
/// Compute the shared symmetric key from the given agreement private key and agreement public key.
31-
pub fn x25519_shared_key(agreement_private_key: &[u8; X25519_PRIVATE_KEY_SIZE], agreement_public_key: &[u8; X25519_PUBLIC_KEY_SIZE]) -> [u8; SYMMETRIC_KEY_SIZE] {
32-
let sk = StaticSecret::from(*agreement_private_key);
33-
let pk = PublicKey::from(*agreement_public_key);
30+
/// Compute the shared symmetric key from the given X25519 private and public keys.
31+
pub fn x25519_shared_key(x25519_private_key: &[u8; X25519_PRIVATE_KEY_SIZE], x25519_public_key: &[u8; X25519_PUBLIC_KEY_SIZE]) -> [u8; SYMMETRIC_KEY_SIZE] {
32+
let sk = StaticSecret::from(*x25519_private_key);
33+
let pk = PublicKey::from(*x25519_public_key);
3434
let shared_secret = sk.diffie_hellman(&pk);
3535
hkdf_hmac_sha256(shared_secret.as_bytes(), "agreement".as_bytes(), 32).try_into().unwrap()
3636
}
@@ -40,18 +40,18 @@ mod tests {
4040
use bc_rand::make_fake_random_number_generator;
4141
use hex_literal::hex;
4242

43-
use crate::{x25519_new_agreement_private_key_using, x25519_agreement_public_key_from_private_key, x25519_derive_agreement_private_key, x25519_derive_signing_private_key, x25519_shared_key};
43+
use crate::{x25519_new_private_key_using, x25519_public_key_from_private_key, x25519_derive_private_key, x25519_derive_signing_private_key, x25519_shared_key};
4444

4545
#[test]
4646
fn test_x25519_keys() {
4747
let mut rng = make_fake_random_number_generator();
48-
let private_key = x25519_new_agreement_private_key_using(&mut rng);
48+
let private_key = x25519_new_private_key_using(&mut rng);
4949
assert_eq!(private_key, hex!("7eb559bbbf6cce2632cf9f194aeb50943de7e1cbad54dcfab27a42759f5e2fed"));
50-
let public_key = x25519_agreement_public_key_from_private_key(&private_key);
50+
let public_key = x25519_public_key_from_private_key(&private_key);
5151
assert_eq!(public_key, hex!("f1bd7a7e118ea461eba95126a3efef543ebb78439d1574bedcbe7d89174cf025"));
5252

53-
let derived_agreement_private_key = x25519_derive_agreement_private_key(b"password");
54-
assert_eq!(derived_agreement_private_key, hex!("7b19769132648ff43ae60cbaa696d5be3f6d53e6645db72e2d37516f0729619f"));
53+
let derived_x25519_private_key = x25519_derive_private_key(b"password");
54+
assert_eq!(derived_x25519_private_key, hex!("7b19769132648ff43ae60cbaa696d5be3f6d53e6645db72e2d37516f0729619f"));
5555

5656
let derived_signing_private_key = x25519_derive_signing_private_key(b"password");
5757
assert_eq!(derived_signing_private_key, hex!("05cc550daa75058e613e606d9898fedf029e395911c43273a208b7e0e88e271b"));
@@ -60,10 +60,10 @@ mod tests {
6060
#[test]
6161
fn test_key_agreement() {
6262
let mut rng = make_fake_random_number_generator();
63-
let alice_private_key = x25519_new_agreement_private_key_using(&mut rng);
64-
let alice_public_key = x25519_agreement_public_key_from_private_key(&alice_private_key);
65-
let bob_private_key = x25519_new_agreement_private_key_using(&mut rng);
66-
let bob_public_key = x25519_agreement_public_key_from_private_key(&bob_private_key);
63+
let alice_private_key = x25519_new_private_key_using(&mut rng);
64+
let alice_public_key = x25519_public_key_from_private_key(&alice_private_key);
65+
let bob_private_key = x25519_new_private_key_using(&mut rng);
66+
let bob_public_key = x25519_public_key_from_private_key(&bob_private_key);
6767
let alice_shared_key = x25519_shared_key(&alice_private_key, &bob_public_key);
6868
let bob_shared_key = x25519_shared_key(&bob_private_key, &alice_public_key);
6969
assert_eq!(alice_shared_key, bob_shared_key);

0 commit comments

Comments
 (0)