1 files changed, 60 insertions, 0 deletions
diff --git a/Crypto/src/pkcs/AsymmetricKeyEntry.cs b/Crypto/src/pkcs/AsymmetricKeyEntry.cs
new file mode 100644
index 000000000..6da3ade3e
--- /dev/null
+++ b/Crypto/src/pkcs/AsymmetricKeyEntry.cs
@@ -0,0 +1,60 @@
+using System;
+using System.Collections;
+
+using Org.BouncyCastle.Crypto;
+using Org.BouncyCastle.Utilities;
+
+namespace Org.BouncyCastle.Pkcs
+{
+ public class AsymmetricKeyEntry
+ : Pkcs12Entry
+ {
+ private readonly AsymmetricKeyParameter key;
+
+ public AsymmetricKeyEntry(
+ AsymmetricKeyParameter key)
+ : base(Platform.CreateHashtable())
+ {
+ this.key = key;
+ }
+
+#if !(SILVERLIGHT || PORTABLE)
+ [Obsolete]
+ public AsymmetricKeyEntry(
+ AsymmetricKeyParameter key,
+ Hashtable attributes)
+ : base(attributes)
+ {
+ this.key = key;
+ }
+#endif
+
+ public AsymmetricKeyEntry(
+ AsymmetricKeyParameter key,
+ IDictionary attributes)
+ : base(attributes)
+ {
+ this.key = key;
+ }
+
+ public AsymmetricKeyParameter Key
+ {
+ get { return this.key; }
+ }
+
+ public override bool Equals(object obj)
+ {
+ AsymmetricKeyEntry other = obj as AsymmetricKeyEntry;
+
+ if (other == null)
+ return false;
+
+ return key.Equals(other.key);
+ }
+
+ public override int GetHashCode()
+ {
+ return ~key.GetHashCode();
+ }
+ }
+}
|