From 12f158a3d66b685cfbc616955c2afc2a09397876 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Hru=C5=A1ka?= Date: Fri, 6 Dec 2019 22:02:41 +0100 Subject: [PATCH] update crypto dependencies to new crates --- Cargo.toml | 6 ++++-- src/enums.rs | 9 ++++++--- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 97deced..02894ad 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "digest_auth" -version = "0.2.1" +version = "0.2.2" authors = ["Ondřej Hruška "] edition = "2018" description = "Implementation of the Digest Auth algorithm as defined in IETF RFC 2069, 2617, and 7616, intended for HTTP clients" @@ -15,6 +15,8 @@ categories = [ license = "MIT" [dependencies] -rust-crypto = "0.2" rand = "0.6" hex = "0.3.2" +sha2 = "0.8.0" +md-5 = "0.8.0" +digest = "0.8.1" diff --git a/src/enums.rs b/src/enums.rs index 39331e6..87eeb57 100644 --- a/src/enums.rs +++ b/src/enums.rs @@ -1,9 +1,12 @@ use crate::{Error, Error::*, Result}; -use crypto::{digest::Digest, md5::Md5, sha2::Sha256, sha2::Sha512Trunc256}; use std::fmt; use std::fmt::{Display, Formatter}; use std::str::FromStr; +use digest::{Digest, DynDigest}; +use md5::Md5; +use sha2::{Sha256, Sha512Trunc256}; + /// Algorithm type #[derive(Debug, PartialEq, Clone, Copy)] #[allow(non_camel_case_types)] @@ -28,14 +31,14 @@ impl Algorithm { /// Calculate a hash of bytes using the selected algorithm pub fn hash(&self, bytes: &[u8]) -> String { - let mut hash: Box = match self.algo { + let mut hash : Box = match self.algo { AlgorithmType::MD5 => Box::new(Md5::new()), AlgorithmType::SHA2_256 => Box::new(Sha256::new()), AlgorithmType::SHA2_512_256 => Box::new(Sha512Trunc256::new()), }; hash.input(bytes); - hash.result_str() + hex::encode(hash.result()) } /// Calculate a hash of string's bytes using the selected algorithm