From 7d3ebf734edc8eb0e37d6b1a3456e68a05ce72c1 Mon Sep 17 00:00:00 2001 From: royb Date: Mon, 12 Feb 2024 16:41:42 -0500 Subject: added missing SphincsPlus Oids/Params (Haraka_simple which isn't approved by FIPS 205) --- crypto/src/pqc/crypto/utils/PqcPublicKeyFactory.cs | 7 +++++++ crypto/src/pqc/crypto/utils/PqcUtilities.cs | 14 ++++++++++++++ 2 files changed, 21 insertions(+) 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; -- cgit 1.4.1