using System; using System.Text; using BWP.ABCClient.Businesses.Type; using NUnit.Framework; namespace BWP.ABCClient { [TestFixture] public class RSAServiceTest { [SetUp] public void Setup() { new CertManager().ClearAll(); } [Test] public void Sign() { string msg = "B2C103452083980409PayReq6343338239222187452540112011/02/1516:02:29http://119.167.225.52/B2/InternetSale/Pub/B2CReceive.aspx?id=10821211http://119.167.225.52/B2/InternetSale/Pub/B2CReceive.aspx1"; string sign = "yGt5aaDrHmWBFb5Lk5WZlLmpuJXe4B25/t4FJzvQlAeKA+cqegiddcpfjGbv3AmspoRqZYNTEfnyLSOjZ8iz9L1U5nl415CzNml2uTLx1aiX4SpHSQASlu6fGqgO2yl2PrABslo+/njsy1tkzwFGm+y1gpjPNykkOWpaYyUjnfw="; var certManager = new CertManager(); certManager.SetupPfx("Certs/asC.pfx", "14814622"); var signedMsg = RSAService.Sign(msg, "103452083980419"); Console.WriteLine(signedMsg); Assert.AreEqual(sign, signedMsg); } [Test] public void Verify() { string returnMsg = "B2C1034520839804090000交易成功PayReq634333823922218745https://easyabc.95599.cn/b2c/NotCheckStatus/PaymentModeAct.ebf?TOKEN=12977568750460430844254011"; string abcSign = "3+0sE/7PTfYfHYqHUwWoFzUVvr0h2HUaXpq5pr+r3+DhyvufhVUPq1We9a0E+DzqzwnW3ZD5EYLhA204o4oRiLauEzM1cj8ddXZJGAtk5ftv1OGVCV+bvts/Ei9FQp8ws5b7pNqAvIyoSbIToartR7AJ42RJsT5DxXBtFy0Y2oQ="; var certManager = new CertManager(); certManager.SetupABCPubKey("Certs/TrustPay.cer"); var pass = RSAService.Verify(returnMsg, abcSign); Assert.IsTrue(pass); } [Test] public void MarketVerify() { string returnMsg = "1301643918078商户状态不允许交易!01Java_V1.0187.61.1.1MARKET0000500105337199901033E01"; string abcSign = "0m9ZR3zXZPKNa7z7Tr3DqHSoDx8NzgHeI0UCmlnpCqBGZS/YcGNZ+UThdVgfBacC27ELhtnRQaAzduQ0zzROs/Cpqm6h8BXfbhaU6Qr+Pp7Qfsu13XuBGr0iCfesFY5yoUlBnedUxCz6GOt9hGhVpPGsROvXU1cKIyafEGtpn9k="; var certManager = new CertManager(); certManager.SetupABCPubKey("Certs/TrustPay.cer"); var pass = RSAService.Verify(returnMsg, abcSign ); Assert.IsTrue(pass); } } }