zoukankan      html  css  js  c++  java
  • RSA加密前端JS加密,后端asp.net解密,报异常

    RSA加密前端JS加密,后端asp.net解密,报异常

    参考引用:http://www.ohdave.com/rsa/的JS加密库

    前端JS加密代码:

    function GetChangeStr() 
    { debugger; var pwdStr = document.getElementById("txtPassWordStr").value; var uidStr= $("#<%=txtUserStr.ClientID%>").val(); if (!pwdStr || pwdStr.length == 0 || !uidStr || uidStr.length==0) { return false; } var keyE = "<%=PubRsaKeyE%>"; var keyM = "<%=PubRsaKeyM%>"; setMaxDigits(131); var key = new RSAKeyPair(keyE, "", keyM); var pwdRtn = encryptedString(key, pwdStr); var uidRtn = encryptedString(key, uidStr); $("#<%=txtPassword.ClientID%>").val(pwdRtn); $("#<%=txtUser.ClientID%>").val(uidRtn); }

    后台解密代码:

            try
            {
                RSACryptoServiceProvider rsa = (RSACryptoServiceProvider)Cache.Get("privateKey");
                byte[] result = rsa.Decrypt(HexStringToBytes(password), false);
                password = Encoding.UTF8.GetString(result);
    
                result = rsa.Decrypt(HexStringToBytes(userName), false);
                userName = Encoding.UTF8.GetString(result);
            }
            catch (Exception ex)
            {
                ShowMessage("身份验证失败!", "您登陆的帐号或密码错误!","");
                return;
            }    
    

    发现在某些研发环境时会报“参数错误”异常。但在其它项目或服务器环境是正常的。

    没有找到原因,不明原理啊!!

    仅此做个记录。

  • 相关阅读:
    poj 1269(两条直线交点)
    poj 2398(叉积判断点在线段的哪一侧)
    poj 2318(叉积判断点在线段的哪一侧)
    HDU 5650 so easy
    POJ 1328 Radar Installation
    POJ 1017 Packets
    POJ 3190 Stall Reservations
    CodeForces 652A Gabriel and Caterpillar
    CodeForces 652B z-sort
    CodeForces 652C Foe Pairs
  • 原文地址:https://www.cnblogs.com/mxm2005/p/5015461.html
Copyright © 2011-2022 走看看