You've already forked authentication-service
mirror of
https://github.com/matrix-org/matrix-authentication-service.git
synced 2025-07-31 09:24:31 +03:00
Upgrade more crypto crates
This commit is contained in:
19
Cargo.lock
generated
19
Cargo.lock
generated
@ -1155,6 +1155,15 @@ dependencies = [
|
|||||||
"digest 0.9.0",
|
"digest 0.9.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "hmac"
|
||||||
|
version = "0.12.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "ddca131f3e7f2ce2df364b57949a9d47915cfbd35e46cfee355ccebbf794d6a2"
|
||||||
|
dependencies = [
|
||||||
|
"digest 0.10.1",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "http"
|
name = "http"
|
||||||
version = "0.2.6"
|
version = "0.2.6"
|
||||||
@ -1562,10 +1571,10 @@ dependencies = [
|
|||||||
"async-trait",
|
"async-trait",
|
||||||
"base64ct",
|
"base64ct",
|
||||||
"crypto-mac",
|
"crypto-mac",
|
||||||
"digest 0.9.0",
|
"digest 0.10.1",
|
||||||
"ecdsa",
|
"ecdsa",
|
||||||
"elliptic-curve",
|
"elliptic-curve",
|
||||||
"hmac",
|
"hmac 0.12.0",
|
||||||
"p256",
|
"p256",
|
||||||
"pkcs1",
|
"pkcs1",
|
||||||
"pkcs8",
|
"pkcs8",
|
||||||
@ -1575,7 +1584,7 @@ dependencies = [
|
|||||||
"serde",
|
"serde",
|
||||||
"serde_json",
|
"serde_json",
|
||||||
"serde_with",
|
"serde_with",
|
||||||
"sha2 0.9.8",
|
"sha2 0.10.0",
|
||||||
"signature",
|
"signature",
|
||||||
"thiserror",
|
"thiserror",
|
||||||
"tokio",
|
"tokio",
|
||||||
@ -2582,7 +2591,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "96ef608575f6392792f9ecf7890c00086591d29a83910939d430753f7c050525"
|
checksum = "96ef608575f6392792f9ecf7890c00086591d29a83910939d430753f7c050525"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"crypto-bigint",
|
"crypto-bigint",
|
||||||
"hmac",
|
"hmac 0.11.0",
|
||||||
"zeroize",
|
"zeroize",
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -3118,7 +3127,7 @@ dependencies = [
|
|||||||
"futures-util",
|
"futures-util",
|
||||||
"hashlink",
|
"hashlink",
|
||||||
"hex",
|
"hex",
|
||||||
"hmac",
|
"hmac 0.11.0",
|
||||||
"indexmap",
|
"indexmap",
|
||||||
"itoa 1.0.1",
|
"itoa 1.0.1",
|
||||||
"libc",
|
"libc",
|
||||||
|
@ -10,10 +10,10 @@ anyhow = "1.0.52"
|
|||||||
async-trait = "0.1.52"
|
async-trait = "0.1.52"
|
||||||
base64ct = { version = "1.0.1", features = ["std"] }
|
base64ct = { version = "1.0.1", features = ["std"] }
|
||||||
crypto-mac = { version = "0.11.1", features = ["std"] }
|
crypto-mac = { version = "0.11.1", features = ["std"] }
|
||||||
digest = "0.9.0"
|
digest = "0.10.1"
|
||||||
ecdsa = { version = "0.13.3", features = ["sign", "verify", "pem", "pkcs8"] }
|
ecdsa = { version = "0.13.3", features = ["sign", "verify", "pem", "pkcs8"] }
|
||||||
elliptic-curve = { version = "0.11.6", features = ["ecdh", "pem"] }
|
elliptic-curve = { version = "0.11.6", features = ["ecdh", "pem"] }
|
||||||
hmac = "0.11.0"
|
hmac = "0.12.0"
|
||||||
p256 = { version = "0.10.0", features = ["ecdsa", "pem", "pkcs8"] }
|
p256 = { version = "0.10.0", features = ["ecdsa", "pem", "pkcs8"] }
|
||||||
pkcs1 = { version = "0.3.1", features = ["pem", "pkcs8"] }
|
pkcs1 = { version = "0.3.1", features = ["pem", "pkcs8"] }
|
||||||
pkcs8 = { version = "0.8.0", features = ["pem"] }
|
pkcs8 = { version = "0.8.0", features = ["pem"] }
|
||||||
@ -23,7 +23,7 @@ sec1 = "0.2.1"
|
|||||||
serde = { version = "1.0.133", features = ["derive"] }
|
serde = { version = "1.0.133", features = ["derive"] }
|
||||||
serde_json = "1.0.74"
|
serde_json = "1.0.74"
|
||||||
serde_with = { version = "1.11.0", features = ["base64"] }
|
serde_with = { version = "1.11.0", features = ["base64"] }
|
||||||
sha2 = "0.9.8"
|
sha2 = "0.10.0"
|
||||||
signature = "1.4.0"
|
signature = "1.4.0"
|
||||||
thiserror = "1.0.30"
|
thiserror = "1.0.30"
|
||||||
tokio = { version = "1.15.0", features = ["macros", "rt"] }
|
tokio = { version = "1.15.0", features = ["macros", "rt"] }
|
||||||
|
@ -19,7 +19,7 @@ use async_trait::async_trait;
|
|||||||
use base64ct::{Base64UrlUnpadded, Encoding};
|
use base64ct::{Base64UrlUnpadded, Encoding};
|
||||||
use digest::Digest;
|
use digest::Digest;
|
||||||
use ecdsa::VerifyingKey;
|
use ecdsa::VerifyingKey;
|
||||||
use hmac::{Hmac, Mac, NewMac};
|
use hmac::{Hmac, Mac};
|
||||||
use p256::{NistP256, PublicKey};
|
use p256::{NistP256, PublicKey};
|
||||||
use pkcs1::EncodeRsaPublicKey;
|
use pkcs1::EncodeRsaPublicKey;
|
||||||
use pkcs8::EncodePublicKey;
|
use pkcs8::EncodePublicKey;
|
||||||
@ -117,19 +117,19 @@ impl<'a> VerifyingKeystore for &SharedSecret<'a> {
|
|||||||
JsonWebSignatureAlgorithm::Hs256 => {
|
JsonWebSignatureAlgorithm::Hs256 => {
|
||||||
let mut mac = Hmac::<Sha256>::new_from_slice(self.inner)?;
|
let mut mac = Hmac::<Sha256>::new_from_slice(self.inner)?;
|
||||||
mac.update(payload);
|
mac.update(payload);
|
||||||
mac.verify(signature)?;
|
mac.verify(signature.try_into()?)?;
|
||||||
}
|
}
|
||||||
|
|
||||||
JsonWebSignatureAlgorithm::Hs384 => {
|
JsonWebSignatureAlgorithm::Hs384 => {
|
||||||
let mut mac = Hmac::<Sha384>::new_from_slice(self.inner)?;
|
let mut mac = Hmac::<Sha384>::new_from_slice(self.inner)?;
|
||||||
mac.update(payload);
|
mac.update(payload);
|
||||||
mac.verify(signature)?;
|
mac.verify(signature.try_into()?)?;
|
||||||
}
|
}
|
||||||
|
|
||||||
JsonWebSignatureAlgorithm::Hs512 => {
|
JsonWebSignatureAlgorithm::Hs512 => {
|
||||||
let mut mac = Hmac::<Sha512>::new_from_slice(self.inner)?;
|
let mut mac = Hmac::<Sha512>::new_from_slice(self.inner)?;
|
||||||
mac.update(payload);
|
mac.update(payload);
|
||||||
mac.verify(signature)?;
|
mac.verify(signature.try_into()?)?;
|
||||||
}
|
}
|
||||||
|
|
||||||
_ => bail!("unsupported algorithm"),
|
_ => bail!("unsupported algorithm"),
|
||||||
|
Reference in New Issue
Block a user