用RSA实现Web单点登录密码的加密传输

时间:2014-05-07 01:26:26   收藏:0   阅读:504

在使用通用权限管理系统(吉日嘎拉)的单点登录功能时,对登录密码使用了RSA加密(非对称加密),有使用这个权限管理系统的可参考下。

 

前端部分,请引用以下几个js文件:

<script type="text/javascript" src="ExtJS/jquery.js"></script>
<script type="text/javascript" src="ExtJS/BigInt.js" ></script>
<script type="text/javascript" src="ExtJS/RSA.js"></script>
<script type="text/javascript" src="ExtJS/Barrett.js"></script>

 下载:http://files.cnblogs.com/hnsongbiao/ExtJS.zip

登录页面前端主要代码:

setMaxDigits(129);
var key = new RSAKeyPair("<%=strPublicKeyExponent%>", "", "<%=strPublicKeyModulus%>");
var password = document.getElementById("password");
var pwd = encryptedString(key, password.value);

 bubuko.com,布布扣


后台主要功能代码:

 

bubuko.com,布布扣
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
Session["private_key"] = rsa.ToXmlString(true);
RSAParameters parameter = rsa.ExportParameters(true);
strPublicKeyExponent = BytesToHexString(parameter.Exponent);
strPublicKeyModulus = BytesToHexString(parameter.Modulus);

    。。。。。。

rsa.FromXmlString((string)Session["private_key"]);
byte[] results = rsa.Decrypt(HexStringToBytes(password), false);
System.Text.ASCIIEncoding enc = new ASCIIEncoding();
password = enc.GetString(results);
bubuko.com,布布扣

 bubuko.com,布布扣

 

 

 

下面截图可以看到传输时密码已经经过RSA非对称加密了(我这里同时进行了对称加密)

 

bubuko.com,布布扣

用RSA实现Web单点登录密码的加密传输,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!