天天看點

java web登入的時候加密傳輸_用RSA實作Web單點登入密碼的加密傳輸

在使用通用權限管理系統(吉日嘎拉)的單點登入功能時,對登入密碼使用了RSA加密(非對稱加密),有使用這個權限管理系統的可參考下。

前端部分,請引用以下幾個js檔案:

下載下傳:http://files.cnblogs.com/hnsongbiao/ExtJS.zip

登入頁面前端主要代碼:setMaxDigits(129);

var key = new RSAKeyPair("", "", "");

var password = document.getElementById("password");

var pwd = encryptedString(key, password.value);

java web登入的時候加密傳輸_用RSA實作Web單點登入密碼的加密傳輸

背景主要功能代碼:

java web登入的時候加密傳輸_用RSA實作Web單點登入密碼的加密傳輸

RSACryptoServiceProvider rsa = newRSACryptoServiceProvider();

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= newASCIIEncoding();

password= enc.GetString(results);

java web登入的時候加密傳輸_用RSA實作Web單點登入密碼的加密傳輸
java web登入的時候加密傳輸_用RSA實作Web單點登入密碼的加密傳輸

下面截圖可以看到傳輸時密碼已經經過RSA非對稱加密了(我這裡同時進行了對稱加密)

java web登入的時候加密傳輸_用RSA實作Web單點登入密碼的加密傳輸

原文:http://www.cnblogs.com/hnsongbiao/p/3712312.html