署名のverifyはtrue or falseで返したいが、、、
pub async fn verify_signature(signedtransaction: &kernel::SignedTransaction) -> bool { // 省略 return verifying_key.verify(posted_serialized.as_bytes(), &signature).is_ok() }
偽のpublic keyを送ってきた可能性もあるため、Result型で返却しないといけない。
pub async fn verify_signature(signedtransaction: &SignedTransaction) -> Result<bool, Box<dyn std::error::Error>>{ // 省略 Ok(verifying_key.verify(posted_serialized.as_bytes(), &signature).is_ok()) }
なるほど、こういうのは、UnitTestを書いてテストしないと気づかない…