zoukankan      html  css  js  c++  java
  • iOS 字符串加密至MD5

    iOS 字符串加密至MD5

    复制代码
     1 #import <CommonCrypto/CommonDigest.h>
    2
    3 + (NSString *) md5:(NSString *)str
    4 {
    5 const char *cStr = [str UTF8String];
    6 unsigned char result[16];
    7 CC_MD5( cStr, strlen(cStr), result );
    8 return [NSString stringWithFormat:@"%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X",
    9 result[0], result[1], result[2], result[3],
    10 result[4], result[5], result[6], result[7],
    11 result[8], result[9], result[10], result[11],
    12 result[12], result[13], result[14], result[15]
    13 ];
    14 }
    复制代码

      

    iPhone处理大文件检测MD5的代码

    复制代码
     1 +(NSString*)fileMD5:(NSString*)path
    2 {
    3 NSFileHandle *handle = [NSFileHandle fileHandleForReadingAtPath:path];
    4 if( handle== nil ) return @"ERROR GETTING FILE MD5"; // file didnt exist
    5
    6 CC_MD5_CTX md5;
    7
    8 CC_MD5_Init(&md5);
    9
    10 BOOL done = NO;
    11 while(!done)
    12 {
    13 NSData* fileData = [handle readDataOfLength: CHUNK_SIZE ];
    14 CC_MD5_Update(&md5, [fileData bytes], [fileData length]);
    15 if( [fileData length] == 0 ) done = YES;
    16 }
    17 unsigned char digest[CC_MD5_DIGEST_LENGTH];
    18 CC_MD5_Final(digest, &md5);
    19 NSString* s = [NSString stringWithFormat: @"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",
    20 digest[0], digest[1],
    21 digest[2], digest[3],
    22 digest[4], digest[5],
    23 digest[6], digest[7],
    24 digest[8], digest[9],
    25 digest[10], digest[11],
    26 digest[12], digest[13],
    27 digest[14], digest[15]];
    28 return s;
    29 }
    复制代码

     

  • 相关阅读:
    apache的并发
    PHP 文件上传
    打包备份3天
    dz改写CSS
    linux cifs自动挂载远程windows硬盘或文件夹
    C++面向对象
    "i++"和"++i"
    《程序员面试宝典》一个程序
    《程序员面试宝典》强制转换,内存地址
    《程序员面试宝典》编程技巧--位运算
  • 原文地址:https://www.cnblogs.com/ChrisYu/p/4745419.html
Copyright © 2011-2022 走看看