summary refs log tree commit diff
path: root/crypto/src/pqc/asn1/CmcePrivateKey.cs
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/src/pqc/asn1/CmcePrivateKey.cs')
-rw-r--r--crypto/src/pqc/asn1/CmcePrivateKey.cs34
1 files changed, 13 insertions, 21 deletions
diff --git a/crypto/src/pqc/asn1/CmcePrivateKey.cs b/crypto/src/pqc/asn1/CmcePrivateKey.cs
index 743b801f5..dba42f6c1 100644
--- a/crypto/src/pqc/asn1/CmcePrivateKey.cs
+++ b/crypto/src/pqc/asn1/CmcePrivateKey.cs
@@ -1,4 +1,5 @@
 using System;
+
 using Org.BouncyCastle.Asn1;
 using Org.BouncyCastle.Utilities;
 
@@ -22,6 +23,15 @@ namespace Org.BouncyCastle.Pqc.Asn1
     public class CmcePrivateKey
         : Asn1Object
     {
+        public static CmcePrivateKey GetInstance(Object o)
+        {
+            if (o == null)
+                return null;
+            if (o is CmcePrivateKey cmcePrivateKey)
+                return cmcePrivateKey;
+            return new CmcePrivateKey(Asn1Sequence.GetInstance(o));
+        }
+
         private int version;
         private byte[] delta;
         private byte[] c;
@@ -103,20 +113,6 @@ namespace Org.BouncyCastle.Pqc.Asn1
             return new DerSequence(v);
         }
 
-        public static  CmcePrivateKey GetInstance(Object o)
-        {
-            if (o is CmcePrivateKey)
-            {
-                return (CmcePrivateKey)o;
-            }
-            else if (o != null)
-            {
-                return new CmcePrivateKey(Asn1Sequence.GetInstance(o));
-            }
-
-            return null;
-        }
-        //TODO are these correct tags?
         internal override IAsn1Encoding GetEncoding(int encoding)
         {
             return ToAsn1Primitive().GetEncoding(encoding);
@@ -129,16 +125,12 @@ namespace Org.BouncyCastle.Pqc.Asn1
 
         protected override bool Asn1Equals(Asn1Object asn1Object)
         {
-            CmcePrivateKey other = asn1Object as CmcePrivateKey;
-            if (other == null)
-                return false;
-            
-            return Arrays.AreEqual(this.ToAsn1Primitive().GetEncoded(), other.ToAsn1Primitive().GetEncoded());
+            return ToAsn1Primitive().CallAsn1Equals(asn1Object);
         }
 
         protected override int Asn1GetHashCode()
         {
-            return ToAsn1Object().CallAsn1GetHashCode();
+            return ToAsn1Primitive().CallAsn1GetHashCode();
         }
     }
-}
\ No newline at end of file
+}