From 47d28c6f47aeae7ad7139d8c41fde17beeff1e68 Mon Sep 17 00:00:00 2001 From: asonix Date: Sat, 25 Nov 2023 19:52:55 -0600 Subject: [PATCH] Update ring, base64 --- reqwest/Cargo.toml | 8 ++++---- reqwest/src/digest/ring.rs | 4 +++- reqwest/src/digest/sha2.rs | 3 ++- reqwest/src/digest/sha3.rs | 3 ++- 4 files changed, 11 insertions(+), 7 deletions(-) diff --git a/reqwest/Cargo.toml b/reqwest/Cargo.toml index 87a67f2..25d0688 100644 --- a/reqwest/Cargo.toml +++ b/reqwest/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "http-signature-normalization-reqwest" description = "An HTTP Signatures library that leaves the signing to you" -version = "0.10.0" +version = "0.11.0" authors = ["asonix "] license = "AGPL-3.0" readme = "README.md" @@ -25,12 +25,12 @@ required-features = ["default-spawner", "ring"] [dependencies] async-trait = "0.1.71" -base64 = { version = "0.13", optional = true } +base64 = { version = "0.21", optional = true } http-signature-normalization = { version = "0.7.0", path = ".." } httpdate = "1.0.2" reqwest = { version = "0.11", default-features = false, features = ["json"] } reqwest-middleware = { version = "0.2.0", optional = true } -ring = { version = "0.16.20", optional = true } +ring = { version = "0.17.5", optional = true } sha2 = { version = "0.10", optional = true } sha3 = { version = "0.10", optional = true } thiserror = "1.0" @@ -39,7 +39,7 @@ tokio = { version = "1", default-features = false, features = [ ], optional = true } [dev-dependencies] -pretty_env_logger = "0.4" +pretty_env_logger = "0.5" tokio = { version = "1", default-features = false, features = [ "rt-multi-thread", "macros", diff --git a/reqwest/src/digest/ring.rs b/reqwest/src/digest/ring.rs index a9d8771..41ab0b4 100644 --- a/reqwest/src/digest/ring.rs +++ b/reqwest/src/digest/ring.rs @@ -81,9 +81,11 @@ impl Default for Sha512 { } fn create(mut context: ring::digest::Context, input: &[u8]) -> String { + use base64::prelude::*; + context.update(input); let digest = context.finish(); - base64::encode(digest.as_ref()) + BASE64_STANDARD.encode(digest.as_ref()) } impl DigestCreate for Sha256 { diff --git a/reqwest/src/digest/sha2.rs b/reqwest/src/digest/sha2.rs index 8b05711..5ef428b 100644 --- a/reqwest/src/digest/sha2.rs +++ b/reqwest/src/digest/sha2.rs @@ -1,3 +1,4 @@ +use base64::prelude::*; use sha2::{Sha224, Sha256, Sha384, Sha512}; use super::DigestCreate; @@ -7,7 +8,7 @@ fn create( input: &[u8], ) -> String { sha2::Digest::update(digest, input); - base64::encode(&digest.finalize_reset()) + BASE64_STANDARD.encode(&digest.finalize_reset()) } impl DigestCreate for Sha224 { diff --git a/reqwest/src/digest/sha3.rs b/reqwest/src/digest/sha3.rs index cdd3bca..2135b12 100644 --- a/reqwest/src/digest/sha3.rs +++ b/reqwest/src/digest/sha3.rs @@ -1,3 +1,4 @@ +use base64::prelude::*; use sha3::{ Keccak224, Keccak256, Keccak256Full, Keccak384, Keccak512, Sha3_224, Sha3_256, Sha3_384, Sha3_512, @@ -10,7 +11,7 @@ fn create( input: &[u8], ) -> String { sha3::Digest::update(digest, input); - base64::encode(&digest.finalize_reset()) + BASE64_STANDARD.encode(&digest.finalize_reset()) } impl DigestCreate for Sha3_224 {