我的数据库中用户密码是加密了的,可是现在要用ASP.NET来登陆,这就成了问题,原来的解密程序是用VC写的动态库。而且参数还是指针。
我想这种情况下是不是不加密算了,不知道哪位有ASP下的加密、解密源程序啊,我想借过来用用。最好也不要太简单,比如用替换的方法,解密太容易了。

解决方案 »

  1.   

    如果要建议用C#来做的话,请给点源程序好吗?我完全不懂C#,也不懂如何从数据库取出二进制的数据来(关键是要把取出来的数据变成动态库需要的BYTE*型数据,加密后的数据用二进制数据保存,很明显不能用字符串来保存的),解密程序的申明是:
    __declspec(dllexport) BOOL DeEncryption(BYTE* Pass,  int Len)
      

  2.   

    重新写一个加密算法就是了。
    使用DES吧。
      

  3.   

    用户密码是用来作比较的,所以可以不用解密说白了,用MD5之类就OK。(当然安全性要求很高的要用更好的算法)
      

  4.   

    一般采用Hash密码(单向密码)形式,即用MD5等算法生成,.Net有现成的类支持。
      

  5.   

    能不能给个例子啊,我在MSDN中就找到下面的信息:
    Dim data(DATA_SIZE) As Byte' This is one implementation of the abstract class MD5.
    Dim md5 As New MD5CryptoServiceProvider()Dim result As Byte() = md5.ComputeHash(data)我有两点不明白:
    一:计算出来的结果是什么东西,如何写入数据库?
    二:MSDN上说计算结果HashSize以位为单位,可是写入数据库只能以字节为单位,那么用户登陆的时候,对输入的密码用ComputeHash加密,再与数据库比较,还能正确吗?比如加密后HashSize为5位,而数据库中的数据不可能为5位,至少8位,他们之间一比较,正确的密码还能得出正确的结果吗?
      

  6.   

    要加密的
    http://blog.csdn.net/pwqzc
    有你要的东西
      

  7.   

    MD5最简单,但速度最快~~类System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile就Hash加密类,要将密码进行MD5加密这样即可
    public string md5PWD(string str)
    {
    return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str,"md5").ToLower();
    }
    登录时把输入密码再加密一次,和数据库里的纪录匹配一下就行了,不用解密。
      

  8.   

    为了安全,一定要加密.
    .net提供了几个加密类,可根据需要选择.
    http://www.chinamacro.com/blog/visit_detail.aspx?blogID=39
    http://www.chinamacro.com/blog/visit_detail.aspx?blogID=101