Js引數RSA加密傳輸,jsencrypt.js的使用
阿新 • • 發佈:2019-01-07
<!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>Login</title> <script src="~/Scripts/jquery-1.10.2.min.js"></script> <script src="http://passport.cnblogs.com/scripts/jsencrypt.min.js"></script> <script type="text/javascript"> $(function () { var encrypt = new JSEncrypt(); encrypt.setPublicKey($("#tra").val()); var data = encrypt.encrypt("123456789"); alert(data); $("#btn").click(function () { $.ajax({ url:'@Url.Action("Login")', data: "pwd=" + encodeURI(data).replace(/\+/g, '%2B'), //+號的處理:因為資料在網路上傳輸時,非字母數字字元都將被替換成百分號(%)後跟兩位十六進位制數,而base64編碼在傳輸到後端的時候,+會變成空格,因此先替換掉。後端再替換回來 type: 'post', success: function (msg) { alert(msg); } }); }); });</script> </head> <body> <div> <input type="button" id="btn" value="點我" /> <textarea id="tra" rows="15" cols="65"> MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCa4KHNwDX44gGmmIAtRu4gjVYt GWZzcm4t+1wjUD4dn7fMLPvuK7ai4UrfDeEJE1RPwudJw+lJ6crql8wSIg7/DbTl G3ihsCT6dT9H5B9OoeR7K9VWUesaW/iyVL6HXiYOANabW14pvJATDmdq91Tfgp6P SQyvdfiRdV4r07crpQIDAQAB </textarea> <hr/> 注意+好的處理 </div> </body> </html>