RustCrypto: SHA-1
Pure Rust implementation of the SHA-1 cryptographic hash algorithm.
Warning: Cryptographically Broken!
The SHA-1 hash function should be considered cryptographically broken and unsuitable for further use in any security critical capacity, as it is practically vulnerable to chosen-prefix collisions.
We provide this crate for legacy interoperability purposes only.
If possible use the sha1-checked crate, while slower it provides the ability to detect potential collisions, as well as generate alternative safe hashes.
Examples
One-shot API
use hex;
use ;
let result = digest;
assert_eq!;
Incremental API
use hex;
use ;
let mut hasher = new;
hasher.update;
let hash = hasher.finalize;
assert_eq!;
// Hex-encode hash using https://docs.rs/base16ct
let hex_hash = encode_string;
assert_eq!;
Also, see the examples section in the RustCrypto/hashes readme.
License
The crate is licensed under either of:
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.