diff --git a/Cargo.toml b/Cargo.toml index dc17e861..9c03a0e1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,15 +8,15 @@ license = "MIT" name = "ruma-signatures" readme = "README.md" repository = "https://github.com/ruma/ruma-signatures" -version = "0.3.0" +version = "0.4.0" [dependencies] base64 = "0.5.0" lazy_static = "0.2.8" -ring = "0.7" +ring = "0.9.4" serde = "1.0" serde_json = "1.0" -untrusted = "0.3" +untrusted = "0.5" url = "1.4" [dev-dependencies] diff --git a/src/lib.rs b/src/lib.rs index 9305da39..62b6e557 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -342,9 +342,9 @@ pub trait Verifier { impl KeyPair for Ed25519KeyPair { fn new(public_key: &[u8], private_key: &[u8], version: String) -> Result { Ok(Ed25519KeyPair { - ring_key_pair: RingEd25519KeyPair::from_bytes( - private_key, - public_key, + ring_key_pair: RingEd25519KeyPair::from_seed_and_public_key( + untrusted::Input::from(private_key), + untrusted::Input::from(public_key), ).map_err(|_| Error::new("invalid key pair"))?, version: version, }) @@ -353,7 +353,7 @@ impl KeyPair for Ed25519KeyPair { fn sign(&self, message: &[u8]) -> Signature { Signature { algorithm: Algorithm::Ed25519, - signature: self.ring_key_pair.sign(message).as_slice().to_vec(), + signature: self.ring_key_pair.sign(message).as_ref().to_vec(), version: self.version.clone(), } }