public Asn1SignatureFactory(string algorithm, AsymmetricKeyParameter privateKey, SecureRandom random)
    {
        DerObjectIdentifier algorithmOid = X509Utilities.GetAlgorithmOid(algorithm);

        this.algorithm  = algorithm;
        this.privateKey = privateKey;
        this.random     = random;
        algID           = X509Utilities.GetSigAlgID(algorithmOid, algorithm);
    }
Example #2
0
        /// <summary>
        /// Set the signature algorithm that will be used to sign this certificate.
        /// </summary>
        /// <param name="signatureAlgorithm">Name of the signature algorithm</param>
        public void SetSignatureAlgorithm(string signatureAlgorithm)
        {
            this.signatureAlgorithm = signatureAlgorithm;

            try
            {
                sigOid = X509Utilities.GetAlgorithmOid(signatureAlgorithm);
            }
            catch (Exception)
            {
                throw new ArgumentException("Unknown signature type requested: " + signatureAlgorithm);
            }

            sigAlgId = X509Utilities.GetSigAlgID(sigOid, signatureAlgorithm);

            tbsGen.SetSignature(sigAlgId);
        }