hex->base64转换增加保护, 增加测试
This commit is contained in:
parent
6ec2c56005
commit
1b2708141d
@ -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,
|
||||
|
Loading…
x
Reference in New Issue
Block a user