Initial commit: Client Doc docs Server Tools
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
using System.Security.Cryptography;
|
||||
using Xunit;
|
||||
using XWorld.PublishTool;
|
||||
|
||||
namespace XWorld.PublishTool.Tests
|
||||
{
|
||||
public class ManifestSignerTests
|
||||
{
|
||||
[Fact]
|
||||
public void Sign_Then_Verify_Succeeds()
|
||||
{
|
||||
using var rsa = RSA.Create(2048);
|
||||
string priv = rsa.ExportRSAPrivateKeyPem();
|
||||
string pub = rsa.ExportRSAPublicKeyPem();
|
||||
|
||||
byte[] sig = ManifestSigner.Sign("digest-content", priv);
|
||||
Assert.True(ManifestSigner.Verify("digest-content", sig, pub));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Verify_Fails_OnTamperedContent()
|
||||
{
|
||||
using var rsa = RSA.Create(2048);
|
||||
byte[] sig = ManifestSigner.Sign("original", rsa.ExportRSAPrivateKeyPem());
|
||||
Assert.False(ManifestSigner.Verify("tampered", sig, rsa.ExportRSAPublicKeyPem()));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Verify_Fails_OnWrongKey()
|
||||
{
|
||||
using var signer = RSA.Create(2048);
|
||||
using var other = RSA.Create(2048);
|
||||
byte[] sig = ManifestSigner.Sign("c", signer.ExportRSAPrivateKeyPem());
|
||||
Assert.False(ManifestSigner.Verify("c", sig, other.ExportRSAPublicKeyPem()));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user