public static object VerifyCertificateSignature(object[] args)
        {
            byte[] encodedCert       = (byte[])args[0];
            byte[] encodedIssuerCert = (byte[])args[1];
            Logger.log("VerifyCertificateSignature started");
            bool result = NeoVMSignatureValidator.CheckCertificateSignature(encodedCert, encodedIssuerCert);

            Logger.log("VerifyCertificateSignature finished");
            Logger.log(result);
            return(result);
        }
        public static bool ValidateCertificateSignature(Certificate certificate, Certificate issuerCertificate)
        {
#if NEO
            return(NeoVMSignatureValidator.CheckCertificateSignature(certificate.EncodedValue, issuerCertificate.EncodedValue));
#endif
#if NET_CORE
            SignedData signedData = new SignedData();
            signedData.subjectPublicKeyInfo = issuerCertificate.SubjectPublicKeyInfo;
            signedData.signedData           = certificate.TbsCertificate;
            signedData.signatureAlgorithm   = certificate.SignatureAlgorithm;
            signedData.signatureValue       = certificate.Signature;
            return(NetCoreSignatureValidator.Validate(signedData));
#endif
        }