internal SignerInfoGenerator(SignerIdentifier sigId, ISignatureFactory <AlgorithmIdentifier> signerFactory, IDigestFactoryProvider <AlgorithmIdentifier> digesterProvider, ISignatureEncryptionAlgorithmFinder sigEncAlgFinder, bool isDirectSignature) { this.sigId = sigId; this.signer = signerFactory; this.signerCalculator = signerFactory.CreateCalculator(); if (digesterProvider != null) { this.digester = digesterProvider.CreateDigestFactory(digAlgFinder.Find(signer.AlgorithmDetails)); this.digestCalculator = digester.CreateCalculator(); } else { this.digester = null; } this.sigEncAlgFinder = sigEncAlgFinder; this.isDirectSignature = isDirectSignature; if (this.isDirectSignature) { this.signedGen = null; this.unsignedGen = null; } else { this.signedGen = new DefaultSignedAttributeTableGenerator(); this.unsignedGen = null; } }
internal static byte[] MakeKeyFromPassPhrase( IDigestFactoryProvider <PgpDigestTypeIdentifier> digCalcProvider, SymmetricKeyAlgorithmTag algorithm, S2k s2k, char[] passPhrase) { IDigestFactory <PgpDigestTypeIdentifier> digestCalculator; if (s2k != null) { digestCalculator = digCalcProvider.CreateDigestFactory(new PgpDigestTypeIdentifier(s2k.HashAlgorithm)); } else { digestCalculator = digCalcProvider.CreateDigestFactory(new PgpDigestTypeIdentifier(HashAlgorithmTag.MD5)); } return(MakeKeyFromPassPhrase(digestCalculator, algorithm, s2k, passPhrase)); }
internal SignerInfoGenerator(SignerIdentifier sigId, ISignatureFactory <AlgorithmIdentifier> contentSigner, IDigestFactoryProvider <AlgorithmIdentifier> digesterProvider, ISignatureEncryptionAlgorithmFinder sigEncAlgFinder, ICmsAttributeTableGenerator signedGen, ICmsAttributeTableGenerator unsignedGen) { this.sigId = sigId; this.signer = contentSigner; this.signerCalculator = contentSigner.CreateCalculator(); if (digesterProvider != null) { this.digester = digesterProvider.CreateDigestFactory(digAlgFinder.Find(signer.AlgorithmDetails)); this.digestCalculator = digester.CreateCalculator(); } else { this.digester = null; } this.sigEncAlgFinder = sigEncAlgFinder; this.signedGen = signedGen; this.unsignedGen = unsignedGen; this.isDirectSignature = false; }