<PackageReference Include="BouncyCastle.Cryptography" Version="2.6.2" />

Pkcs12StoreBuilder

public class Pkcs12StoreBuilder
using Org.BouncyCastle.Asn1; using Org.BouncyCastle.Asn1.Pkcs; namespace Org.BouncyCastle.Pkcs { public class Pkcs12StoreBuilder { private DerObjectIdentifier certAlgorithm = PkcsObjectIdentifiers.PbewithShaAnd40BitRC2Cbc; private DerObjectIdentifier certPrfAlgorithm; private DerObjectIdentifier keyAlgorithm = PkcsObjectIdentifiers.PbeWithShaAnd3KeyTripleDesCbc; private DerObjectIdentifier keyPrfAlgorithm; private bool useDerEncoding; private bool reverseCertificates; private bool overwriteFriendlyName = true; private bool enableOracleTrustedKeyUsage = true; public Pkcs12Store Build() { return new Pkcs12Store(certAlgorithm, certPrfAlgorithm, keyAlgorithm, keyPrfAlgorithm, useDerEncoding, reverseCertificates, overwriteFriendlyName, enableOracleTrustedKeyUsage); } public Pkcs12StoreBuilder SetCertAlgorithm(DerObjectIdentifier certAlgorithm) { this.certAlgorithm = certAlgorithm; certPrfAlgorithm = null; return this; } public Pkcs12StoreBuilder SetCertAlgorithm(DerObjectIdentifier certAlgorithm, DerObjectIdentifier certPrfAlgorithm) { this.certAlgorithm = certAlgorithm; this.certPrfAlgorithm = certPrfAlgorithm; return this; } public Pkcs12StoreBuilder SetEnableOracleTrustedKeyUsage(bool enableOracleTrustedKeyUsage) { this.enableOracleTrustedKeyUsage = enableOracleTrustedKeyUsage; return this; } public Pkcs12StoreBuilder SetKeyAlgorithm(DerObjectIdentifier keyAlgorithm) { this.keyAlgorithm = keyAlgorithm; keyPrfAlgorithm = null; return this; } public Pkcs12StoreBuilder SetKeyAlgorithm(DerObjectIdentifier keyAlgorithm, DerObjectIdentifier keyPrfAlgorithm) { this.keyAlgorithm = keyAlgorithm; this.keyPrfAlgorithm = keyPrfAlgorithm; return this; } public Pkcs12StoreBuilder SetOverwriteFriendlyName(bool overwriteFriendlyName) { this.overwriteFriendlyName = overwriteFriendlyName; return this; } public Pkcs12StoreBuilder SetReverseCertificates(bool reverseCertificates) { this.reverseCertificates = reverseCertificates; return this; } public Pkcs12StoreBuilder SetUseDerEncoding(bool useDerEncoding) { this.useDerEncoding = useDerEncoding; return this; } } }