tendermint / tmkms

Key Management service for Tendermint Validator nodes

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Public key seems always strange

yulidai opened this issue · comments

for example, privKey/pubKey should be:

privKey: nELFcMHxcWNa7diMreQxgCanEvNAvphfFUfZnY+WYRM=
pubKey: A3fPi9YOUMooFqjJ8lnAyu3OfBbVoNOrrIulAsmR7aea

but get result from yubihsm by using get_public_key:

let key_id = 12;
if let Err(e) = client.put_asymmetric_key(
    key_id,
    Label::from("test1"),
    DOMAINS[1],
    yubihsm::Capability::SIGN_EDDSA,
    yubihsm::asymmetric::Algorithm::Ed25519,
  
 base64::decode("nELFcMHxcWNa7diMreQxgCanEvNAvphfFUfZnY+WYRM=".as_bytes()).unwrap(),
) {
    println!("key set failed #{}: {}", key_id, e);
}

let pub_key = client.get_public_key(key_id).unwrap_or_else(|e| {
    println!("couldn't get public key for key #{}: {}", key_id, e);
    process::exit(1);
});
// will get `vcIrFxllqZZePS7NvTzC2XdIUrkkXAWJU40BPS+ysro=`, it's very strange
println!("key_id: {}, pub_key: {:?}", key_id, String::from_utf8(base64::encode(pub_key.clone().into_vec())));

sorry for wrong place, should be here