#crypto #sha


Cryptography Utils for Rust

5 releases (3 breaking)

0.4.1 Sep 16, 2022
0.4.0 Jun 29, 2022
0.3.0 Jun 23, 2022
0.2.0 Jun 11, 2022
0.1.0 Jun 11, 2022

#963 in Cryptography

50 downloads per month

MIT license

228 lines

Cryptography Utils for Rust

github crates-io docs-rs ci

Cryptography Utils for Rust


The driver is available on crates.io. To use the driver in your application, simply add it to your project's Cargo.toml.

crypto-utils = "0.4.1"

How to use?

Compute a Sha hash

Quick and easy Sha1, Sha256 and Sha512 hash computing.

use crypto_utils::sha::{Algorithm, CryptographicHash};

// input data for a hasher
let input = "P@ssw0rd"; // &str

// compute hash
let hash_bytes = CryptographicHash::hash(Algorithm::SHA1, input.as_bytes()); // Vec<u8>

// decode hash to a String
let hash = hex::encode(hash_bytes); // String

assert_eq!(hash, "21bd12dc183f740ee76f27b78eb39c8ad972a757".to_string())

Json Web Token

Create and decode a token

use crypto_utils::jsonwebtoken::{Claims, Token};

let secret = b"secret";
let user_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

let claims = Claims::new(user_id, 24);
let token = Token::new(secret, claims).unwrap();

let decoded = Token::decode(secret, token.encoded).unwrap();

All Feature flags

Feature Description Dependencies Default
sha Enable support for the Sha1, Sha256 and Sha512 hasher sha and sha2 yes
jwt Enable support for the Json Web Token utils chrono, serde and jsonwebtoken yes

License: MIT


~76K SLoC