EasyPQCTest.SignatureTest

Creates two keys and a signature, before testing both VerifySignature methods.

 public async Task SignatureTest()
 {
     // Generate key pair
     var (publicKeyDict, privateKeyDict) = await EasyPQC.Signatures.CreateKeys();
     var message = "This is a test message.";

     // Encode and display key data
     Console.WriteLine("Public Key (Base64):");
     foreach (var kv in publicKeyDict)
         Console.WriteLine($"{kv.Key}: {Convert.ToBase64String(kv.Value)}");

     Console.WriteLine("\nPrivate Key (Base64):");
     foreach (var kv in privateKeyDict)
         Console.WriteLine($"{kv.Key}: {Convert.ToBase64String(kv.Value)}");

     Console.WriteLine();

     // Create signature
     var signature = await EasyPQC.Signatures.CreateSignature(privateKeyDict, message);
     Console.WriteLine("Signature (Base64): " + Convert.ToBase64String(signature));
     Console.WriteLine();

     // Verify signature
     var isValid = await EasyPQC.Signatures.VerifySignature(publicKeyDict, signature, message);
     Console.WriteLine("Signature valid Test Result: " + isValid);
     Console.WriteLine();

     // Verify with an invalid message
     var invalidMessage = "InvalidSignature";
     var invalidTest = await EasyPQC.Signatures.VerifySignature(publicKeyDict, signature, Encoding.UTF8.GetBytes(invalidMessage));
     Console.WriteLine("Invalid Signature Test Result: " + invalidTest);
     Console.WriteLine("\n\n");



     int i = 0;

     while (12 <= i)
     {
         Console.WriteLine(Environment.NewLine);
         i++;

     }

     Console.WriteLine("Summary:");
     Console.WriteLine("Signature valid Test Result: " + isValid);
     Console.WriteLine("Invalid Signature Test Result: " + invalidTest);

 }