RsaCryptTest.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. using Masuit.Tools.Security;
  2. using System;
  3. using Xunit;
  4. namespace Masuit.Tools.Abstractions.Test.Security
  5. {
  6. public class RsaCryptTest
  7. {
  8. public class RsaCryptTestEntity
  9. {
  10. public string Name { get; set; }
  11. public DateTime SdTime { get; set; }
  12. }
  13. [Fact]
  14. public void RsaCryptWordTestWithNoException()
  15. {
  16. var rsaKey = RsaCrypt.GenerateRsaKeys();
  17. string result = new RsaCryptTestEntity()
  18. {
  19. SdTime = DateTime.Parse("2020-08-14"),
  20. Name = "asdf"
  21. }
  22. .ToJsonString()
  23. .RSAEncrypt()
  24. .RSADecrypt();
  25. Assert.Equal(result, new RsaCryptTestEntity()
  26. {
  27. SdTime = DateTime.Parse("2020-08-14"),
  28. Name = "asdf"
  29. }
  30. .ToJsonString());
  31. }
  32. [Fact]
  33. public void Ç©ÃûÑéÖ¤()
  34. {
  35. RsaKey rsaKey = RsaCrypt.GenerateRsaKeys();
  36. string data = "Hello World!".Base64Encrypt();
  37. string sign = data.SignatureString(rsaKey.PrivateKey);
  38. // ÑéÖ¤½á¹ûΪFalse
  39. Assert.True(data.SignatureDeformatter(rsaKey.PublicKey, sign));
  40. }
  41. }
  42. }