ساخت امضای rsa برای پرداخت آنلاین بانک پاسارگاد
با سلام
در نمونهکدهای منتشر شده بانک پاسارگاد خروجی php و asp.net متفاوته (بگذریم از اینکه سمپل asp.net کلا ایراد نحوی داره و کامپایل نمیشه) و سیستم خود بانک هم فقط با خروجی که مثال php تولید میکنه کار میکنه که اون هم یک کلاس ثانویه داره که بر طبق میل خودش داده رو sign میکنه.
حالا سوال اینه که کسی این کار رو در asp.net انجام داده؟ به چه صورت امضای rsa رو تولید کردید؟
با تشکر
نقل قول: ساخت امضای rsa برای پرداخت آنلاین بانک پاسارگاد
من از همچین متدی استفاده میکنم :
public void SendToBank(string amount,
string invoiceNumber,
string redirectUrl = "http://mycallbackurl.com",
string actionId = "1003")
{
var timeStamp = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");
var invoiceDate = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");
var rsa = new RSACryptoServiceProvider();
rsa.FromXmlString(PrivateKey);
var data = "#" + MerchantCode + "#" + TerminalCode + "#" + invoiceNumber + "#" + invoiceDate +
"#" + amount + "#" + redirectUrl + "#" + actionId + "#" + timeStamp + "#";
var signedData = rsa.SignData(Encoding.UTF8.GetBytes(data), new SHA1CryptoServiceProvider());
var signedString = Convert.ToBase64String(signedData);
var dp = new DataPost {Url = GatewayUrl, FormName = "form1", Method = "post"};
dp.AddKey("merchantCode", MerchantCode);
dp.AddKey("terminalCode", TerminalCode);
dp.AddKey("amount", amount);
dp.AddKey("redirectAddress", redirectUrl);
dp.AddKey("invoiceNumber", invoiceNumber);
dp.AddKey("invoiceDate", invoiceDate);
dp.AddKey("action", actionId);
dp.AddKey("sign", signedString);
dp.AddKey("timeStamp", timeStamp);
dp.Post();
}
که کد DataPost در خود نمونه کدهای پاسارگاد هست.
نقل قول: ساخت امضای rsa برای پرداخت آنلاین بانک پاسارگاد
شخصا از این کد جواب گرفتی؟ یعنی کار میکنه در محیط واقعی؟