MD5加密

作者: dididududididu | 来源:发表于2016-04-18 19:13 被阅读745次

百度百科 MD5加密

MD5使用场景 1.登录注册 2.签名sign
MD5加密是不可逆的

  • 首先需要导入头文件
    #import <Foundation/Foundation.h>
  • Data类型数据的加密算法
//1.需要MD5变量并且初始化
    CC_MD5_CTX md5;
    CC_MD5_Init(&md5);
    //2.开始加密
    //第一个参数:对MD5变量取地址(要为该变量指向的内存空间存储计算好的数据)
    //第二个参数:需要计算的源数据
    //第三个参数:数据的长度 需要转化为CC_LONG类型(32位整形)
    CC_MD5_Update(&md5, sourceData.bytes,(CC_LONG)sourceData.length);//sourceData为需要加密的data数据
    //3.声明一个无符号的字符数组用来盛放转换好的数据
    unsigned char result[CC_MD5_DIGEST_LENGTH];
    //4.将数据放入数组
    CC_MD5_Final(result, &md5);
    //5.将result中的字符拼接为OC语言中的字符串,以便使用
    NSMutableString *resultStr = [[NSMutableString alloc] init];
    for (int i = 0; i < CC_MD5_DIGEST_LENGTH; i++) {
        [resultStr appendFormat:@"%02X",result[i]];
    }
//resultStr为加密后得到的字符串
  • string类型的数据的加密算法
   //1.由于MD5加密都是通过C级别的函数来计算,所以要将加密的字符串转化的C语言字符串.
    const char * cStr = sourceString.UTF8String;
    //2.创建一个C语言字符数组用来接收加密之后的字符
    unsigned char result[CC_MD5_DIGEST_LENGTH];
    //3.MD5计算(加密)
    //第一个参数:需要加密的字符串
    //第二个参数:需要加密的字符串的长度  需要转化为CC_LONG类型(32位整形)
    //第三个参数:加密完成后的字符串存储的地方
    CC_MD5(cStr, (CC_LONG)strlen(cStr), result);
    //4.将加密完成的字符拼接起来使用(16进制)
    //声明一个可变类型 用来拼接转换好的字符
    NSMutableString *resultStr = [[NSMutableString alloc] init];
    //遍历result数组,取出所有的字符来拼接
    for (int i = 0; i < CC_MD5_DIGEST_LENGTH; i++) {
        [resultStr appendFormat:@"%02x",result[i]];
    }
 //resultStr为加密后得到的字符串

//如何让MD5更安全
//1.加盐
//2.先加密 在打乱顺序

相关文章

  • iOS常见信息加密方式总结

    目录 MD5加密HMAC加密base64加密对称加密RSA加密 - 非对称加密 一.MD5加密 MD5加密是最常用...

  • iOS 数据加密

    iOS 常用加密方式算法包括MD5加密、AES加密、BASE64加密 MD5加密 MD5:全称是Message D...

  • iOS加密

    iOS代码常见的加密方式包括MD5加密、AES加密、BASE64加密,RSA加密。 MD5加密 MD5是不可逆的只...

  • Java加密

    MD5加密: RSA加密: CBC加密:

  • linux进行md5加密

    linux进行md5加密 openssl做MD5加密 md5加密 交互式输入 管道标准输入处理 对文件处理 md5...

  • 数据加密

    单向散列:哈希加密。 PHP MD5函数 加密长度是64/32位的。MD5("这里是加密串")MD5($POST...

  • iOS开发之系统MD5加密

    常见的加密有Base64加密和MD5加密。Base64加密是可逆的,MD5加密目前来说一般是不可逆的。MD5生成的...

  • Java 常用加密算法(一)---单向加密算法(MD5/SHA)

    Java 常用加密算法(一)---单向加密算法(MD5/SHA) MD5加密MD5以512位分组来处理输入的信息,...

  • md5加密

    md5加密 生成的加密串

  • Java 登录模块设计

    登录流程 前端登录传输用户名和md5加密后的密码 后端对密码在进行md5加密,或者使用md5加密的密码 + id ...

网友评论

      本文标题:MD5加密

      本文链接:https://www.haomeiwen.com/subject/wiealttx.html