asp.net :textbox的属性textmode如果设置为password,那输入的字符串能保存到cookie里面吗?
3个回答
展开全部
不能,textbox和cookie 没有关系,楼下你乱讲什么。说密码是不能明文保存到cookie 里面的,太不安全了。
一般保存的密码保存cookie 都是经过加密算法的,下面是一个我写过的cookie加密算法,其他可以自己选择。
/// <summary>
/// 验证cookies
/// </summary>
/// <param name="strLetter">2位字母</param>
/// <param name="strMd5Password">数据库中的的密码</param>
public String GetCookies(String strLetter, String strMd5Password)
{
String strCookies = String.Empty;
strCookies = strLetter + GB.Common.CryptoUtility.MD5(strMd5Password);
strCookies = strLetter + GB.Common.CryptoUtility.MD5(strCookies);
return strCookies;
}
/// <summary>
/// 记住密码功能的加密算法
/// </summary>
/// <param name="strMd5Password"></param>
public void SaveCookies(String strEmail, String strMd5Password)
{
String strKey = String.Empty;
String strLetter = String.Empty;
for (int i = 0; i < 2; i++)
{
strLetter += ((Char)new Random().Next(65, 91)).ToString();//随机生成字母A-Z
}
strKey = strLetter + GB.Common.CryptoUtility.MD5(strMd5Password);//将数据库中密码进行一次加密,加上随机生成的A-Z两位字母
strKey = strLetter + GB.Common.CryptoUtility.MD5(strKey);//将上面结果加密,再加上上面的随机生成的A-Z两位字母
HttpCookie cookie = new HttpCookie(SystemConfig.COOKIE_KEY_SAVELOGIN);
cookie.Domain = SystemConfig.RootDomain;
cookie.Values[SystemConfig.COOKIE_KEY_SAVELOGIN_USERNAME] = strEmail;
cookie.Values[SystemConfig.COOKIE_KEY_SAVELOGIN_USERPASS] = strKey;
cookie.Expires = DateTime.Now.AddDays(7.0);
Response.Cookies.Add(cookie);
}
一般保存的密码保存cookie 都是经过加密算法的,下面是一个我写过的cookie加密算法,其他可以自己选择。
/// <summary>
/// 验证cookies
/// </summary>
/// <param name="strLetter">2位字母</param>
/// <param name="strMd5Password">数据库中的的密码</param>
public String GetCookies(String strLetter, String strMd5Password)
{
String strCookies = String.Empty;
strCookies = strLetter + GB.Common.CryptoUtility.MD5(strMd5Password);
strCookies = strLetter + GB.Common.CryptoUtility.MD5(strCookies);
return strCookies;
}
/// <summary>
/// 记住密码功能的加密算法
/// </summary>
/// <param name="strMd5Password"></param>
public void SaveCookies(String strEmail, String strMd5Password)
{
String strKey = String.Empty;
String strLetter = String.Empty;
for (int i = 0; i < 2; i++)
{
strLetter += ((Char)new Random().Next(65, 91)).ToString();//随机生成字母A-Z
}
strKey = strLetter + GB.Common.CryptoUtility.MD5(strMd5Password);//将数据库中密码进行一次加密,加上随机生成的A-Z两位字母
strKey = strLetter + GB.Common.CryptoUtility.MD5(strKey);//将上面结果加密,再加上上面的随机生成的A-Z两位字母
HttpCookie cookie = new HttpCookie(SystemConfig.COOKIE_KEY_SAVELOGIN);
cookie.Domain = SystemConfig.RootDomain;
cookie.Values[SystemConfig.COOKIE_KEY_SAVELOGIN_USERNAME] = strEmail;
cookie.Values[SystemConfig.COOKIE_KEY_SAVELOGIN_USERPASS] = strKey;
cookie.Expires = DateTime.Now.AddDays(7.0);
Response.Cookies.Add(cookie);
}
追问
我刚才试过了,如果textbox的textmode属性设为password的时候,保存到cookie里,再页面重新加载的时候password模式的文本框就不能显示出来,我之后又改成了默认的,明文的就行了,这么弄啊
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询