MD5使用

来源:互联网 发布:sql注入分析 编辑:程序博客网 时间:2024/04/30 15:13

MD5解释

  • 1 . 什么是MD5

    • 全称是Message Digest Algorithm 5,译为“消息摘要算法第5版”
      效果:对输入信息生成唯一的128位散列值(32个字符)
  • 2 MD5的特点

    • 输入两个不同的明文不会得到相同的输出值
      根据输出值,不能得到原始的明文,即其过程不可逆
  • 3 MD5的应用

    • 由于MD5加密算法具有较好的安全性,而且免费,因此该加密算法被广泛使用
      主要运用在数字签名、文件完整性验证以及口令加密等方面

MD5解密网站:http://www.cmd5.com


注册

登录


  • MD5改进

    • 现在的MD5已不再是绝对安全,对此,可以对MD5稍作改进,以增加解密的难度
  • 加盐(Salt):

    • 在明文的固定位置插入随机串,然后再进行MD5先加密,后乱序:先对明文进行MD5,然后对加密得到的MD5串的字符进行乱序
      ……

总之宗旨就是:黑客就算攻破了数据库,也无法解密出正确的明文

  • 代码实现

    • 没有加盐的
//引入 #import "NSString+Hash.h"  // 原始数据    NSString *password = @"zhang1";    // 将原始数据进行MD5 加密.    password = password.md5String;    NSLog(@"password:%@",password);    NSString *pass1 = @"zhang2";    pass1 = pass1.md5String;    NSLog(@"pass1:%@",pass1);
  • 加盐的MD5加密

    // 单纯的 MD5 加密能够被破解!// 更高一级的MD5机密:  MD5 加盐.// 在用户原始密码的基础上增加一个 "盐值",提高用户密码的复杂度!NSString *salt = @"~!@#$%^&*greedyDoor";password = [password stringByAppendingString:salt];password = password.md5String;
0 0
原创粉丝点击