summary refs log tree commit diff
path: root/crypto
diff options
context:
space:
mode:
authorroyb <roy.basmacier@primekey.com>2024-02-12 16:41:42 -0500
committerroyb <roy.basmacier@primekey.com>2024-02-12 16:41:42 -0500
commit7d3ebf734edc8eb0e37d6b1a3456e68a05ce72c1 (patch)
tree5009ab8fa5ecfbf2ccd19da11b5d061cd091d32a /crypto
parentCorrectly disable tests on Linux (diff)
downloadBouncyCastle.NET-ed25519-7d3ebf734edc8eb0e37d6b1a3456e68a05ce72c1.tar.xz
added missing SphincsPlus Oids/Params (Haraka_simple which isn't approved by FIPS 205)
Diffstat (limited to 'crypto')
-rw-r--r--crypto/src/pqc/crypto/utils/PqcPublicKeyFactory.cs7
-rw-r--r--crypto/src/pqc/crypto/utils/PqcUtilities.cs14
2 files changed, 21 insertions, 0 deletions
diff --git a/crypto/src/pqc/crypto/utils/PqcPublicKeyFactory.cs b/crypto/src/pqc/crypto/utils/PqcPublicKeyFactory.cs
index 32321f30b..a1c8b5172 100644
--- a/crypto/src/pqc/crypto/utils/PqcPublicKeyFactory.cs
+++ b/crypto/src/pqc/crypto/utils/PqcPublicKeyFactory.cs
@@ -143,6 +143,13 @@ namespace Org.BouncyCastle.Pqc.Crypto.Utilities
             Converters[BCObjectIdentifiers.sphincsPlus_haraka_256s_r3] = new SphincsPlusConverter();
             Converters[BCObjectIdentifiers.sphincsPlus_haraka_256f_r3] = new SphincsPlusConverter();
 
+            Converters[BCObjectIdentifiers.sphincsPlus_haraka_128f_r3_simple] = new SphincsPlusConverter();
+            Converters[BCObjectIdentifiers.sphincsPlus_haraka_128s_r3_simple] = new SphincsPlusConverter();
+            Converters[BCObjectIdentifiers.sphincsPlus_haraka_192f_r3_simple] = new SphincsPlusConverter();
+            Converters[BCObjectIdentifiers.sphincsPlus_haraka_192s_r3_simple] = new SphincsPlusConverter();
+            Converters[BCObjectIdentifiers.sphincsPlus_haraka_256f_r3_simple] = new SphincsPlusConverter();
+            Converters[BCObjectIdentifiers.sphincsPlus_haraka_256s_r3_simple] = new SphincsPlusConverter();
+
             Converters[BCObjectIdentifiers.sphincsPlus_sha2_128s] = new SphincsPlusConverter();
             Converters[BCObjectIdentifiers.sphincsPlus_sha2_128f] = new SphincsPlusConverter();
             Converters[BCObjectIdentifiers.sphincsPlus_shake_128s] = new SphincsPlusConverter();
diff --git a/crypto/src/pqc/crypto/utils/PqcUtilities.cs b/crypto/src/pqc/crypto/utils/PqcUtilities.cs
index f3097c721..5034e4f57 100644
--- a/crypto/src/pqc/crypto/utils/PqcUtilities.cs
+++ b/crypto/src/pqc/crypto/utils/PqcUtilities.cs
@@ -248,6 +248,20 @@ namespace Org.BouncyCastle.Pqc.Crypto.Utilities
             sphincsPlusOids[SphincsPlusParameters.shake_256s_simple] = BCObjectIdentifiers.sphincsPlus_shake_256s;
             sphincsPlusOids[SphincsPlusParameters.shake_256f_simple] = BCObjectIdentifiers.sphincsPlus_shake_256f;
 
+            sphincsPlusOids[SphincsPlusParameters.haraka_128f_simple] = BCObjectIdentifiers.sphincsPlus_haraka_128f_r3_simple;
+            sphincsPlusOids[SphincsPlusParameters.haraka_128s_simple] = BCObjectIdentifiers.sphincsPlus_haraka_128s_r3_simple;
+            sphincsPlusOids[SphincsPlusParameters.haraka_192f_simple] = BCObjectIdentifiers.sphincsPlus_haraka_192f_r3_simple;
+            sphincsPlusOids[SphincsPlusParameters.haraka_192s_simple] = BCObjectIdentifiers.sphincsPlus_haraka_192s_r3_simple;
+            sphincsPlusOids[SphincsPlusParameters.haraka_256f_simple] = BCObjectIdentifiers.sphincsPlus_haraka_256f_r3_simple;
+            sphincsPlusOids[SphincsPlusParameters.haraka_256s_simple] = BCObjectIdentifiers.sphincsPlus_haraka_256s_r3_simple;
+            
+            sphincsPlusParams[BCObjectIdentifiers.sphincsPlus_haraka_128f_r3_simple] = SphincsPlusParameters.haraka_128f_simple;
+            sphincsPlusParams[BCObjectIdentifiers.sphincsPlus_haraka_128s_r3_simple] = SphincsPlusParameters.haraka_128s_simple;
+            sphincsPlusParams[BCObjectIdentifiers.sphincsPlus_haraka_192f_r3_simple] = SphincsPlusParameters.haraka_192f_simple;
+            sphincsPlusParams[BCObjectIdentifiers.sphincsPlus_haraka_192s_r3_simple] = SphincsPlusParameters.haraka_192s_simple;
+            sphincsPlusParams[BCObjectIdentifiers.sphincsPlus_haraka_256f_r3_simple] = SphincsPlusParameters.haraka_256f_simple;
+            sphincsPlusParams[BCObjectIdentifiers.sphincsPlus_haraka_256s_r3_simple] = SphincsPlusParameters.haraka_256s_simple;
+
             sphincsPlusParams[BCObjectIdentifiers.sphincsPlus_sha2_128s_r3] = SphincsPlusParameters.sha2_128s;
             sphincsPlusParams[BCObjectIdentifiers.sphincsPlus_sha2_128f_r3] = SphincsPlusParameters.sha2_128f;
             sphincsPlusParams[BCObjectIdentifiers.sphincsPlus_shake_128s_r3] = SphincsPlusParameters.shake_128s;