全速加载中

用户信息保存方式

Session

保存在服务器端,在用户登录以后调用用户的信息的时候可以进行获取

Cookie

保存在用户的浏览器中,在用户登录的时候进行获取。如果Cookie中存在用户的信息,则进行直接登录跳转。

保存的方式有以下两种:

1.、保存到用户表中

在用户第一次登录的时候生成一个Guid保存到用户表中,然后写入浏览器的Cookie中,下次登录的时候进行检测,因为Guid的唯一性。

可以在用户对密码进行修改的时候再次生成一个Guid保存到用户表中,提高安全性。比如在外人的浏览器中进行登录,为了不让他使用可以进行密码修改,之前保存的Cookie就失去了作用。

2、将用户名以及密码写进用户浏览器的Cookie中去

安全性不高

加密后进行存储。

用户登录的时候可以进行解密。

可以自定义加密解密算法。

用户密码:p

随机产生一个两位的字符:s

加密算法:result = s + md5(s + md5(p));

s用来保存加密的时候在md5算法后面加上的字符,读取的时候读取字符串的前两位即可得到,之后再进行运算。以此来达到加密的目的

MD5生成方法:

 

  private static string MD5Computer(string str)
          {
              MD5 md = MD5.Create();//为抽象方法,无法直接使用new创建对象,可以通过其静态方法Create()进行创建
              byte[] bytes = System.Text.Encoding.UTF8.GetBytes(str);//将要转化的对象转化为二进制数组
              byte[] comBytes = md.ComputeHash(bytes);//将对象转化后的二进制数组转化为MD5的方法生成的二进制数组
              string mdStr = "";
              foreach (byte item in comBytes)
              {
                  mdStr += item.ToString("X").Length == 1 ? "0" + item.ToString("X") : item.ToString("X");// 转变成十六位的时候,应该转化成两位的十六位数字。如果是一位的则在前面加0,如果不是则直接添加到转化后的值
              }
              return mdStr;
          }
         

 

 

 

posted @ 2013-03-02 10:48  许鸿飞  阅读(1046)  评论(0编辑  收藏  举报