Exemplo n.º 1
0
        /// <summary>
        /// 使用公钥对待验签数据进行验签
        /// </summary>
        /// <param name="data">参与验签字符</param>
        /// <param name="signature">要验签的签名串</param>
        /// <param name="pkInfo">公钥信息</param>
        /// <returns>返回验签结果</returns>
        public static bool VerifyData(byte[] data, byte[] signature, AsymmetricKeyParameter pkInfo)
        {
            Org.BouncyCastle.Crypto.Signers.SM2Signer signer = new Org.BouncyCastle.Crypto.Signers.SM2Signer();

            signer.Init(false, pkInfo);
            signer.BlockUpdate(data, 0, data.Length);
            return(signer.VerifySignature(signature));
        }