生活随笔
收集整理的這篇文章主要介紹了
支付对接常用:关于asp rsa加密
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
????????asp 算是老編程語(yǔ)言了吧,不支持RSA加密,ASP RSA類(lèi)庫(kù)基本上也很少見(jiàn),好些支付平臺(tái)也不提供asp支付demo,一方面是沒(méi)有開(kāi)源的ASP RSA加密類(lèi)庫(kù),一方面是這種語(yǔ)言太古老了有些新特性不支持。
????? ? 但是有時(shí)候網(wǎng)站就是ASP語(yǔ)言開(kāi)發(fā)的,不得不接入,常用的對(duì)接方式,就用asp.net或者php語(yǔ)言作為跳板,好些支付平臺(tái)也是這樣子實(shí)現(xiàn)的,提供asp支付demo,讓的RSA加密部分是用.NET實(shí)現(xiàn)的,然后IIS導(dǎo)入dll,通過(guò)COM的方式實(shí)現(xiàn)。
? ? ? ? 現(xiàn)在也有一種方案,不需要COM或者第三方橋接實(shí)現(xiàn)RSA加密,因?yàn)锳SP本身就支持調(diào)用JS類(lèi)庫(kù),可以用JS類(lèi)庫(kù),因?yàn)镴S有RSA加密的開(kāi)源類(lèi)庫(kù)。
? ? ? ?實(shí)現(xiàn)代碼如下,希望對(duì)大家接入有所幫助。
????? ?ASP利用JAVASCRIPT 實(shí)現(xiàn)RSA加密和校驗(yàn)。
<script language="JavaScript" type="text/javascript" src="jsrsasign-all-min.js" runat="server"></script>
<script language="JavaScript" runat="server">function rsasignpublic(pubkey,plaintxt){encHex = KJUR.crypto.Cipher.encrypt(plaintxt, KEYUTIL.getKey(pubkey), "RSA");sign = hextob64(encHex); // 得到簽名Hex,并轉(zhuǎn)成base64string return sign;}function rsasignprivate(privatekey,plaintxt){var sig = new KJUR.crypto.Signature({"alg": "SHA1withRSA", "prov": "cryptojs/jsrsa"}); // alg為MD5WithRSA,這個(gè)還有個(gè)常見(jiàn)的是SHA1WithRSA,不過(guò)貌似支付寶是用的MD5,所以我們公司用的也是MD5,也許java默認(rèn)的就是這個(gè)格式。 sig.init(KEYUTIL.getKey(privatekey)); // 設(shè)置key sig.signString(plaintxt); // 簽名 sign = hextob64(sig.hSign); // 得到簽名Hex,并轉(zhuǎn)成base64string return sign;}function verify(publickey,plaintxt,sigValueHex){var sig = new KJUR.crypto.Signature({"alg": "SHA1withRSA", "prov": "cryptojs/jsrsa"}); // alg為MD5WithRSA,這個(gè)還有個(gè)常見(jiàn)的是SHA1WithRSA,不過(guò)貌似支付寶是用的MD5,所以我們公司用的也是MD5,也許java默認(rèn)的就是這個(gè)格式。 sig.init(publickey); // 設(shè)置key sig.updateString(plaintxt); // 簽名 return sig.verify(b64tohex(sigValueHex));}</script>
????????那么這樣子,ASP就很容易實(shí)現(xiàn)RSA加密了和校驗(yàn)了, ASP支付寶RSA加密,也就很容實(shí)現(xiàn)了。其他平臺(tái)的RSA加密也就簡(jiǎn)單了
? ? ? ? 這里需要一個(gè)JS類(lèi)庫(kù)
jsrsasign-all-min.js
資源下載地址
???? https://download.csdn.net/download/weixin_38895490/10440076
??????點(diǎn)擊打開(kāi)鏈
總結(jié)
以上是生活随笔為你收集整理的支付对接常用:关于asp rsa加密的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。