summary refs log tree commit diff
path: root/Crypto/src/pkcs/PKCS12StoreBuilder.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Crypto/src/pkcs/PKCS12StoreBuilder.cs')
-rw-r--r--Crypto/src/pkcs/PKCS12StoreBuilder.cs41
1 files changed, 41 insertions, 0 deletions
diff --git a/Crypto/src/pkcs/PKCS12StoreBuilder.cs b/Crypto/src/pkcs/PKCS12StoreBuilder.cs
new file mode 100644

index 000000000..c8fa0f603 --- /dev/null +++ b/Crypto/src/pkcs/PKCS12StoreBuilder.cs
@@ -0,0 +1,41 @@ +using System; + +using Org.BouncyCastle.Asn1; +using Org.BouncyCastle.Asn1.Pkcs; + +namespace Org.BouncyCastle.Pkcs +{ + public class Pkcs12StoreBuilder + { + private DerObjectIdentifier keyAlgorithm = PkcsObjectIdentifiers.PbeWithShaAnd3KeyTripleDesCbc; + private DerObjectIdentifier certAlgorithm = PkcsObjectIdentifiers.PbewithShaAnd40BitRC2Cbc; + private bool useDerEncoding = false; + + public Pkcs12StoreBuilder() + { + } + + public Pkcs12Store Build() + { + return new Pkcs12Store(keyAlgorithm, certAlgorithm, useDerEncoding); + } + + public Pkcs12StoreBuilder SetCertAlgorithm(DerObjectIdentifier certAlgorithm) + { + this.certAlgorithm = certAlgorithm; + return this; + } + + public Pkcs12StoreBuilder SetKeyAlgorithm(DerObjectIdentifier keyAlgorithm) + { + this.keyAlgorithm = keyAlgorithm; + return this; + } + + public Pkcs12StoreBuilder SetUseDerEncoding(bool useDerEncoding) + { + this.useDerEncoding = useDerEncoding; + return this; + } + } +}