public bool VerifySignature(T token) { byte[] pubkey = Nethereum.Hex.HexConvertors.Extensions.HexByteConvertorExtensions.HexToByteArray(token.PublicKey); PubKey pubk = new PubKey(pubkey); return(pubk.VerifyMessage(token.GetUnsignedEncodedToken(), token.Signature)); }
private bool VerifySignature() { if (Signature == null) { return(false); } var pubKey = new PubKey(PublicKey); return(pubKey.VerifyMessage(SignedData, Signature)); }
public void CanVerifyTrezorSignature() { string visual_challenge = "2015-03-23 17:39:22"; byte[] random_challenge = Encoders.Hex.DecodeData("cd8552569d6e4509266ef137584d1e62c7579b5b8ed69bbafa4b864c6521e7c2"); byte[] signature = Encoders.Hex.DecodeData("20f2d1a42d08c3a362be49275c3ffeeaa415fc040971985548b9f910812237bb41770bf2c8d488428799fbb7e52c11f1a3404011375e4080e077e0e42ab7a5ba02"); var hiddenChallenge_Sha = Hashes.SHA256(random_challenge); var visualChallenge_Sha = Hashes.SHA256(Encoding.ASCII.GetBytes(visual_challenge)); PubKey pubKey = new PubKey("023a472219ad3327b07c18273717bb3a40b39b743756bf287fbd5fa9d263237f45"); bool verified = pubKey.VerifyMessage(hiddenChallenge_Sha.Concat(visualChallenge_Sha).ToArray(), Encoders.Base64.EncodeData(signature)); Assert.True(verified); }
public bool Verify(PubKey pubKey, byte[] contractCode, byte[] signature) { try { var ecdsaSig = new ECDSASignature(signature); return(pubKey.VerifyMessage(contractCode, ecdsaSig)); } catch (Exception) { // new ECDSASignature can throw a format exception // PubKey.VerifyMessage can throw unknown exceptions return(false); } }
public static bool VerifySignatureECDSA(byte[] message, PubKey key, string signature) { return(key.VerifyMessage(message, signature)); }