hex->base64转换增加保护, 增加测试

This commit is contained in:
zhl 2023-03-01 18:08:50 +08:00
parent 6ec2c56005
commit 1b2708141d

View File

@ -178,7 +178,10 @@ impl Wallet {
{
let secp = Secp256k1::new();
let secret_key = self.get_secret_key();
let hex_str = hex::decode(msg).unwrap();
let hex_str = match hex::decode(msg){
Ok(v) => v,
Err(e) => panic!("error decode hex str: {}", e),
};
let message_to_hash = Message::from_slice(&hex_str).unwrap();
let (_recovery_id, signature) = secp
.sign_ecdsa_recoverable(&message_to_hash, &secret_key)
@ -192,29 +195,33 @@ impl Wallet {
let pk = self.get_public_key();
let pk = &pk.serialize();
let msg = msg.as_bytes();
println!("msg before encrypt: {:?}", msg);
// println!("msg before encrypt: {:?}", msg);
let msg_encrypt = match encrypt(pk, &msg) {
Ok(v) => v,
Err(e) => panic!("error encrypt content: {}", e),
};
println!("msg after encrypt: {:?}", &msg_encrypt);
// println!("msg after encrypt: {:?}", &msg_encrypt);
let str_encrypt = hex::encode(&msg_encrypt);
Ok(str_encrypt)
}
pub fn zdecrypt(&self, msg: &str) -> Result<String> {
pub fn zdecrypt(&self, msg1: &str) -> Result<String> {
let sk = self.get_secret_key();
let sk = sk.secret_bytes();
let mut msg: String = msg1.clone().to_string();
if msg.len() % 2 == 1 {
msg = "0".to_owned() + &msg;
}
println!("msg to decrypt: {:?}", &msg);
let msg = match hex::decode(&msg) {
Ok(v) => v,
Err(e) => panic!("error decode hex str {}", e),
Err(e) => panic!("error decode hex str: {}", e),
};
println!("msg to decrypt: {:?}", &msg);
let msg_decrypt = match decrypt(&sk, &msg) {
Ok(v) => v,
Err(e) => panic!("error decrypt content: {}", e),
};
println!("msg after decrypt: {:?}", &msg_decrypt);
// println!("msg after decrypt: {:?}", &msg_decrypt);
// let msg_decrypt = hex::encode(msg_decrypt);
let str_decrypt = match str::from_utf8(&msg_decrypt) {
Ok(v) => v,