登录实现密文传输账号密码
首页,引入 jsencrypt.js
文件
<script src="../../Scripts/jsencrypt.js"></script>
前端页面-实现加密
var encrypt = new JSEncrypt();
//密钥
function SetKey()
{
var PUBLIC_KEY = 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDLY0yi9xiYUZBAvzSeO5yz/WisVqj06VOzzgiUYp6pQmP3urKA/n+GfhU9Sm/pQdEGNIc8vuJiKWt5a1Lhj77n44ap9eedbmvUnROg1+75wDqMWbieaInYrNX0Ri8kKWXGKdZF0kkWRxbl8wcZ0Zxx+cGqcJiA0zCKty2UbkR1RwIDAQAB';
encrypt.setPublicKey('-----BEGIN PUBLIC KEY-----' + PUBLIC_KEY + '-----END PUBLIC KEY-----');
}
//实现加密
var CmpCode = encrypt.encrypt($("#CmpCode").val());
var Code = encrypt.encrypt($("#Code").val());
var Password = encrypt.encrypt($("#Password").val());
encrypt.encrypt(“明文”)→实现加密
后台实现解密
userLogin.CmpCode = RSAHelper.RSADecrypt(userLogin.CmpCode);
userLogin.Code = RSAHelper.RSADecrypt(userLogin.Code);
userLogin.Password = RSAHelper.RSADecrypt(userLogin.Password);
RSAHelper.RSADecrypt(“密文”)→实现解密
后台加密解密类
public class RSAHelper
{
/// <summary>
/// RSA加密
/// </summary>
/// <param name="publickey"></param>
/// <param name="content"></param>
/// <returns></returns>
public static string RSAEncrypt(string content)
{
string publickey = @"<RSAKeyValue><Modulus>y2NMovcYmFGQQL80njucs/1orFao9OlTs84IlGKeqUJj97qygP5/hn4VPUpv6UHRBjSHPL7iYilreWtS4Y++5+OGqfXnnW5r1J0ToNfu+cA6jFm4nmiJ2KzV9EYvJCllxinWRdJJFkcW5fMHGdGccfnBqnCYgNMwirctlG5EdUc=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>";
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
byte[] cipherbytes;
rsa.FromXmlString(publickey);
cipherbytes = rsa.Encrypt(Encoding.UTF8.GetBytes(content), false);
return Convert.ToBase64String(cipherbytes);
}
/// <summary>
/// RSA解密
/// </summary>
/// <param name="privatekey"></param>
/// <param name="content"></param>
/// <returns></returns>
public static string RSADecrypt(string content)
{
string privatekey = @"<RSAKeyValue><Modulus>y2NMovcYmFGQQL80njucs/1orFao9OlTs84IlGKeqUJj97qygP5/hn4VPUpv6UHRBjSHPL7iYilreWtS4Y++5+OGqfXnnW5r1J0ToNfu+cA6jFm4nmiJ2KzV9EYvJCllxinWRdJJFkcW5fMHGdGccfnBqnCYgNMwirctlG5EdUc=</Modulus><Exponent>AQAB</Exponent><P>56HM7xO0KO0TuXFoE2XT/RDAdAhUTEMBupKGbuSa7zelK05WQXvusHR64FWp9wgkEZR/addvYqNf9eZiN9NApw==</P><Q>4MjXavZsy2OsV1wKAp7XqhpTbQXaKZKDIMSPeWMjxbt7/kxiza4ZG+I2pGUr8d0ItTgIo7tJxVItYDXrhRgaYQ==</Q><DP>mvttrYGXh9Ko4el5Y5E8eBTfUEPKc4RaAcXMYSJgcDLhNsqheAs+N56YIMXwhTNTPtgHMIBPLMZ3jIZrrUKR/Q==</DP><DQ>JIkAWmZLMJO2w0w2ZE6lBwTYYnP9DZy+q2jHWReADPd4I9EOjheqBRozf2ziQ6GFdM7yuIoMZ4H/1g9thGhygQ==</DQ><InverseQ>eX6bMoBRnUF88tEmkroPPHis7zdHSko6ofvnm+oiqb80qPLaTLSGIaD/LRemhubx4RLuXCDYr7MWRTaEdcG7Yg==</InverseQ><D>so66+Vd1gEQbILy8tS4gpOQUwThTnLA7i9+WKK9sG6ztls+RZy4HR0vp2aVAGshtecUj9XCfzw4ODMrsOJq6PcoPD92G1YFdxOxhsSsNSQM3Ucyd1Sp+pheGCjLms2tIOxO5NBsZaNzbYSx0SCpGu7nA/C9zI5hwcYKGaEnKsAE=</D></RSAKeyValue>";
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
byte[] cipherbytes;
rsa.FromXmlString(privatekey);
cipherbytes = rsa.Decrypt(Convert.FromBase64String(content), false);
return Encoding.UTF8.GetString(cipherbytes);
}
}