Rust-RSA_NO_PADDING


按照 实现一个Rust版本

[dependencies]
num-bigint = "0.4"
hex = "0.4"
use num_bigint::{BigInt, Sign};

let ras_m = "008ae...";
let ras_e = "010001";
let mut data = b"hello".to_vec();
data.reverse();

let m = hex::decode(ras_m).unwrap();
let e = hex::decode(ras_e).unwrap();
let e = BigInt::from_bytes_be(Sign::Plus, &e);  //Sign 数字的符号
let m = BigInt::from_bytes_be(Sign::Plus, &m);
let data = BigInt::from_bytes_be(Sign::Plus, &data);

let enc = data.modpow(&e, &m);
let (_, enc) = enc.to_bytes_be();
let enc_data = hex::encode(enc);