Refactor code structure and optimize performance across multiple modules

This commit is contained in:
StellaOps Bot
2025-12-26 20:03:22 +02:00
parent c786faae84
commit b4fc66feb6
3353 changed files with 88254 additions and 1590657 deletions

View File

@@ -5,11 +5,14 @@ using FluentAssertions;
using StellaOps.Cryptography;
using Xunit;
using StellaOps.TestKit;
namespace StellaOps.Cryptography.Tests;
public class PolicyProvidersTests
{
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task FipsSoft_Signs_And_Verifies_Es256()
{
Environment.SetEnvironmentVariable("FIPS_SOFT_ALLOWED", "1");
@@ -32,7 +35,8 @@ public class PolicyProvidersTests
provider.GetHasher(HashAlgorithms.Sha256).ComputeHash(data).Length.Should().Be(32);
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task EidasSoft_Signs_And_Verifies_Es384()
{
Environment.SetEnvironmentVariable("EIDAS_SOFT_ALLOWED", "1");
@@ -55,7 +59,8 @@ public class PolicyProvidersTests
provider.GetHasher(HashAlgorithms.Sha384).ComputeHash(data).Length.Should().Be(48);
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public void KcmvpHashOnly_Computes_Hash()
{
Environment.SetEnvironmentVariable("KCMVP_HASH_ALLOWED", "1");

View File

@@ -9,6 +9,7 @@ using StellaOps.Cryptography;
using StellaOps.Cryptography.Plugin.PqSoft;
using Xunit;
using StellaOps.TestKit;
namespace StellaOps.Cryptography.Tests;
public class PqSoftCryptoProviderTests
@@ -20,7 +21,8 @@ public class PqSoftCryptoProviderTests
private const string FalconPrivate = "CADAE9CBC9D6BC+DE88+D+9A+7EKAE9/E9B96FI+BF/83BI/AE/++CG7+4AEDE+E76CC8A+++E8CABBDB7/CCA9C4BFD/6G62CBDBHAAF4/BGBJD+BAGA/89JFC+9AB9FG78+EA8EDE/C+D78/J/8B7+/BEF+CBD7+/7F596AADGD/F/EE+DB/A++7CFI/D/A//+9/E+AA/7+D99A988C7ACJ/B+F+BADAB98KFBBEJ+D7+A8EBD/75A9/99BI9BE8A8D/IC/638/A8/6CH+A5CAB+/I9CDG76ALB/ABD947E579AA6BA5/9B5AFCDA7KE97A5DB/FACE//D/F+MD8978/AEE7F3B++C3BEB7C+H/CBE+188EDAD+8+C9EE9AF6IG/4+CCEFFD5HF+7FE/E+/B76+LI8G/A/777A898E98CG8AB8H5EE9CJE+A/+I5DAHD8BFCD+76+9B+/7H7FEA8/A/BHA+JB+D7DE3CFF8B+E898BI6B8FA6//BBA8BFGFB8F9/F+A+BD4A/MA+CBC9+IA/E7D+AC/DFD+DA8B9+CF6BBB9/L2+/A+FEF6+ECB9FC866E2/5DA+C/9C1+HC/AF88A+FFB/C//97A7/BBDD/AHCE8+FC9EBA88H9B7B6AA48BD+DFCC8+/58/GG8CAF+D8AAH/CK/KJACB7/6ICDE8F/DC/ABF6+HEzDHBGBC4B9D+CBDA/++/+AE69FBB7ABCC89785CDFGD6A9/ADKD9C5BD895CC/DFBAD45AAFAB6+EI79C+BBDGK+HC46E9CB7AD+B977/ECC+A/+3ABC+8G878CHGBCG9DDD2+97C7+6DCHCE/6AEG6E0B+AADBDIF8DA39B/85C9//6C9+6G/+BFEAAD57/H/BCB9DJ/AF+ABBH+AABG8EEA/9B8FED6D/D9E9BGEMC+GFBE+9A6+A8JFE7CAAD9BDCBAEC7BADBBF2/EAEB/GKBHC/D/FDDA89//EA/B6/5/GB/AD6A6AE74GAF+CAFd4f/wwCEBw0CS0R9trX5BPh+x4BAcYl+wUJ/xH55e0ICe0IDgINBBf8ABoVJPr/Ggb4HvIvBf3JAxz3/foCDgv4+hm31hkK7QsG5+LmKwUoxBoTAvMgFN/eAB/8+/Ah3/kD9gDpB/X1+A8czukx8w/yGAfw9+vV/fITJQMZGRwCBOL15tMJ9RMJG/732hbU0wcuKPk76/wM8gcK2B//K93j6Ojo6hj7A/8G9cQDE+bpA/In9Q0IDtAxEwH38hQ+CfMj++Tw/vX7Afoe6/gqz/f0AwIIENkU+u/1AggxF+z07AkM1hra5QYnMOvn9wv84O7lFSUx+Q0JChEY9gzqAvz/Lfz3BQj5GgQi/xcYLAvvA9AS9gAL+Qzl8hfk8wgVDx/96eHcH98aIPYPKhjV8vvkIiMELAUm1dcP8+gh7egiAhQK/AsW9dD9AQsD9gMNBxj6HO8Q/xvzBQkSDPEC6P30Hw3X0iX37uUFORr16hzd7+VC2/H2AxbtJxUEGusbJf7iDuTtG+MrFAHSz//m9P4KEQj95wTq//wS+vvWJwbnFgnyDvIRJ+TxGQX2FCgAzfPMAAPdCQoDAy7fuv8OFSIPBv0G6wbftwHuJPspKPnm+vgS3tT1Fe7w3QXT5g4L5DPg6AEVCPX3GEUpIh7xFtssp/n2MAn+LSQF/MTrDMc=";
private const string FalconPublic = "Jv6LkSCSV25Fk8XuSAZVAYuFsivvFkrde2eUhjeNOIi7FnEOVhDy2tulOoFJYB1eLnKWcfcB4B6iWvuQvZ+NRHYbZJNnlG/JrcCTSQFybqYY5tv7TAYHcozO9Qe6Nju25ThfuANwomnNsCWsizGs4xO2IdZ1inooJGnmcCAhIsa8WvXVIBhoSlSjV/Nxjmw7c5KSFUqUiQ6KFn8dELZNK/10OLBzBMWQIrmCi+0NmUieiKcVk1MdeKJFslEISCHi1vDiUpgQFPTH2MAsOqz591JFAD7FyWarfGLh6Rgd1WwZAWtWxpAnSXGkY9ADO0R+wXnuIoiEOQi1axW0UwjMZCoivmoJf5ZsEn4CyfenMNKqe5K+Z7fiw5Vdjoh4ZqoH0gzbWYZoGlRpC6XmWlQIwbnBaQRFRdkphuMTTBK8NKDHxod1xzEJrXmAiG4xZQGXvopGQMNdqGja8sOcncMN4lN4dp9VDOK4algsVBglrOuwinwp+GxLz+rcHwV0hkNUswmpWOPplUZLJtlmeJ1YJjRk8egce6oQRYde4QsWIIyoKYOfh/7hV2NYdEcIPCknRZsPiXyqcGoFqAZTMlZblFQ5A1e+1FyQ8DPQeKzlO8A1JRAJ7A6eioHBKJ1zYZblxiwyggHOOoXK1HbpU4PvJROQ6MW08ZK4tAkXZI0lw3s50ViSBFd5zI8xtFrzpjRLOZzMY0dkVDGLlr8+9gsBCU48dfyMga6lrbgVJVcW6rFgPD9lG09mhDArGR8opVeSm6WR60Wq9RRI9WCmDFL+9N/Z8YsdGgo8y2Fx9mNz88DRd0hGyQ/pZTluDuuWEHxx0UCyzWofcq7TkT2pLGq5cBBB3klRWK4CgpRns+HRQhuWeEEtH8Pm4pyJ1NYkXeEbOohkk5NgEmfCF/NmlORdZDxAQSi9r/bvBnlGdS6aV9BvpWugvJV3wcDFvQVjR4HT0IlBwwpHyQhJdcrKsebSaynfQfySaUgMOgUGARAn4jl34sZZia3UCQhpO7yYcacxXRwHSK5nTGePiOoiWCfZYwGQ92k0aLO5fIL4GWo6VmrQu/HiJrF1/GCHa9ozFvcW4wHkejos9Nkf8at5c7QoRoNfEl4zkKjvSKivpZyetasiOuf/6UW06A8m2xfHU0ixQB1emzSGRpGP0gWwicUbdE1tcakAKtMV2I3NolR5wO4=";
private const string FalconSignature = "OfUX6CmZ14QRj1xzxUFf657ng0GtWjPuT3HVLNV+es9pwMAMZe98/2POuD5YQ9z85g2fkSKqDx9pgyiMLG4lTERJ/qorc9KgSKomkUgS1JL+78qdsnkwUS4cA5BDHB0ipP3thSLVkEWt74ReIz2TDDfbzqzX/ZgFf5ZiYPhsZBSQ0fq23cqYYKTWZ4rjDOkiawuFEMUmCaEp9amx9essVLyEcTqQMCfjdFbJ3LTPweD8Q2SGECYNL7PdUbqJWRWWGR9LE14EpNLNckyFPP3uEYevr1CYF+kbUd3nNyXPG0zHKe2KEffTP3EcmO/x5HjGXZSUdrElbQU0FjYiwm8s2vOO7+IfOm8Fj4rslTRlDuuwDHGB40q57r4P3JMv61tqa0ynSglolqkOBp7EZfAyb7sMwrU6arvXpIDlzCmagDW8DGw7SPUxcV1CZ/XvoNs1jfjWQfVOiTrFDWOvm6WSRYZnLkHaVKUN7CMbFI1lzaNdu2UfMQKA6zsRs+NwVeZGJ26q0rvMmkIvVuMUlaav+Rp/kKKIZVM7Sj7LnrkU2zrII+WSsy9JaZmbHi+XxIXUi9XeT2Xc5anTE9manN4x/wvpByQogntxZb6ej8ZXD1t/a6sPQKc9MJWX9UVl2/wr07iHww0317LqLLC2FNHclYcLR7KK/GEVnAvrDn94r4wY88nsusNDmli3Thh1C6UNg17gjsazteq6m0y+Yrzrb3ZmMzl0bkganSnNTOIsgwyCbDo0d8/WTKjMeoNWQQhKUJM2elWn2TvmaFdOZHMV6Iuw17ociTXHko3J/MZKncSPjYE12pw70mHZ2B+ZxvM1Cj4RUbLHfYz0ANGuSbUGjlgzmewiNXJS4KOsY2K6PYcZ";
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task Dilithium3_Signs_And_Verifies()
{
var provider = CreateProvider();
@@ -46,7 +48,8 @@ public class PqSoftCryptoProviderTests
(await signer.VerifyAsync(data, signature)).Should().BeTrue();
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task Falcon512_Signs_And_Verifies()
{
var provider = CreateProvider();

View File

@@ -10,11 +10,14 @@ using StellaOps.Cryptography.Plugin.SimRemote;
using StellaOps.Cryptography.DependencyInjection;
using Xunit;
using StellaOps.TestKit;
namespace StellaOps.Cryptography.Tests;
public class SimRemoteProviderTests
{
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public void Supports_DefaultAlgorithms_CoversStandardIds()
{
var handler = new NoopHandler();
@@ -27,7 +30,8 @@ public class SimRemoteProviderTests
Assert.True(provider.Supports(CryptoCapability.Signing, SignatureAlgorithms.Dilithium3));
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task SignAndVerify_WithSimProvider_Succeeds()
{
// Arrange

View File

@@ -20,5 +20,6 @@
<ProjectReference Include="..\StellaOps.Cryptography.Plugin.PqSoft\StellaOps.Cryptography.Plugin.PqSoft.csproj" />
<ProjectReference Include="..\StellaOps.Cryptography.DependencyInjection\StellaOps.Cryptography.DependencyInjection.csproj" />
<ProjectReference Include="..\StellaOps.Cryptography.Plugin.SimRemote\StellaOps.Cryptography.Plugin.SimRemote.csproj" />
<ProjectReference Include="../StellaOps.TestKit/StellaOps.TestKit.csproj" />
</ItemGroup>
</Project>