MD5加密的一些记录
2016-06-12 10:37
302 查看
MD5加密是通常使用的加密方式,MD5加密其实很简单,传过去参数,然后就返回了一串加密过后的md5字符串.
刚开始的时候通常简单加密方式就是传入密码->通过MD5加密->返回字符串->存入数据库.就完成了;
这样的加密或许过于简单,我见过的加密有传入用户名和密码->通过md5加密->截取用户名密码加密过后的部分字符串在组成新的字符串,然后返回新的字符串才进行保存的.
看代码:
///<summary>MD5加密字符串
///
/// </summary>
/// <param name="str">原字符串</param>
/// <returns></returns>
public static string Md5(string str)
{
return FormsAuthentication.HashPasswordForStoringInConfigFile(str, "MD5");;
}
///<summary>MD5偏移加密字符串
///
/// </summary>
/// <param name="str">原字符串</param>
///
/// <returns></returns>
public static string Md5(string password, string username)
{
string md51 = Md5(FormsAuthentication.HashPasswordForStoringInConfigFile(password, "MD5"));
string md52 = FormsAuthentication.HashPasswordForStoringInConfigFile(username, "MD5");
string test = md51.Substring(0, 16);
return md51.Substring(0, 16) + md52.Substring(0, 8) + md51.Substring(16, 16) + md52.Substring(24, 8);
}
这样的加密方式增加了密码猜测解密的难度,这个加密后的字符串我查了好久也没有对应的字符,通常如果简单的密码通过md5直接加密的方法存入数据库,通过数据库字符去查询都能猜测到密码,可是这个用了六个1的密码通过数据库字符串我查了好久都没有查到,可见保密性提高了不少.通过这样的思想,可以引申出好多方式,学习了...
刚开始的时候通常简单加密方式就是传入密码->通过MD5加密->返回字符串->存入数据库.就完成了;
这样的加密或许过于简单,我见过的加密有传入用户名和密码->通过md5加密->截取用户名密码加密过后的部分字符串在组成新的字符串,然后返回新的字符串才进行保存的.
看代码:
///<summary>MD5加密字符串
///
/// </summary>
/// <param name="str">原字符串</param>
/// <returns></returns>
public static string Md5(string str)
{
return FormsAuthentication.HashPasswordForStoringInConfigFile(str, "MD5");;
}
///<summary>MD5偏移加密字符串
///
/// </summary>
/// <param name="str">原字符串</param>
///
/// <returns></returns>
public static string Md5(string password, string username)
{
string md51 = Md5(FormsAuthentication.HashPasswordForStoringInConfigFile(password, "MD5"));
string md52 = FormsAuthentication.HashPasswordForStoringInConfigFile(username, "MD5");
string test = md51.Substring(0, 16);
return md51.Substring(0, 16) + md52.Substring(0, 8) + md51.Substring(16, 16) + md52.Substring(24, 8);
}
这样的加密方式增加了密码猜测解密的难度,这个加密后的字符串我查了好久也没有对应的字符,通常如果简单的密码通过md5直接加密的方法存入数据库,通过数据库字符去查询都能猜测到密码,可是这个用了六个1的密码通过数据库字符串我查了好久都没有查到,可见保密性提高了不少.通过这样的思想,可以引申出好多方式,学习了...
相关文章推荐
- Patrol 7 架构下?的处理方法
- 清除IE分级审查密码
- 华为路由器密码恢复
- 注册表导出管理员密码文件
- 用ASP编写的加密和解密类
- 路由器版本与密码恢复
- 密码知识教程一
- 密码破解全教程
- VBS脚本加密/解密VBS脚本(简易免杀版1.1)
- 通过批处理修改FTP账号和密码
- BAT加密工具 EncryBat 非编译型bat批处理加密方案与代码
- C#对称加密(AES加密)每次生成的结果都不同的实现思路和代码实例
- redis中修改配置文件中的端口号 密码方法
- SQLServer 2008中的代码安全(一) 存储过程加密与安全上下文
- 更改Mysql root用户密码
- 实例讲解SQL Server加密功能
- C#实现对文件进行加密解密的方法
- C#实现数据包加密与解密实例详解
- C#判断密码强度的方法
- C#最简单的字符串加密解密方法