Rust实现字符串sha1、sha256、sha512加密

本文将在Rust语言中使用sha1、sha256、sha512等安全散列算法对字符串进行加密;

首先,在Cargo.toml文件中添加依赖:

[dependencies]
rust-crypto = "0.2.36"

sha1加密

use crypto::sha1::Sha1;
use crypto::digest::Digest;

fn main(){

    let mut hasher = Sha1::new();

    let text = String::from("123456");

    hasher.input_str(&text);
    
    println!("{} => {}",text,hasher.result_str())
    
}

程序输出:

123456 => 7c4a8d09ca3762af61e59520943dc26494f8941b

sha256加密

use crypto::sha2::Sha256;
use crypto::digest::Digest;

fn main(){

    let mut hasher = Sha256::new();

    let text = String::from("123456");

    hasher.input_str(&text);
    
    println!("{} => {}",text,hasher.result_str())
    
}

程序输出:

123456 => 8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92

sha512加密

将前文中的Sha256替换成Sha512即可。

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/rust-implements-string-sha1-sha2-encryption.html

分类: 计算机技术
推荐阅读:
使用MATLAB求函数的导数 要使用 MATLAB 求一个函数的导数,可以使用 "diff" 函数。这个函数需要两个输入参数:要求导的函数和自变量。
Rust获取目录下的所有文件名 在 Rust 中,要获取一个目录下的所有文件名,您可以使用标准库中的 std::fs 模块来进行文件系统操作。
Python round()函数 在 Python 中,round() 函数用于将一个浮点数四舍五入到指定的小数位数。它可以接受两个参数:要四舍五入的浮点数和指定的小数位数(默认为 0)。
使用Rust实现CRC32算法 CRC32是一种循环冗余校验码(Cyclic Redundancy Check)算法,通常用于数据传输或存储中的错误检测。该算法通过对输入数据进行位操作和模2除法来生成一个32位的校验码,该校验码可以用于验证输入数据是否已经损坏或被篡改。
Python len()函数 在Python中,len()函数用于返回一个对象的长度(元素个数)。这个对象可以是序列类型(如字符串、列表、元组、字节序列等),也可以是映射类型(如字典)。
Windows安装Visual Studio Code Visual Studio Code 是一个运行于Mac OS、Windows、Linux之上的,针对于编写现代Web 和运用的跨平台源代码编辑器;