iPhone开发中 验证”字符串“/“文件”的MD5的加密
2012-04-16 22:13
816 查看
+(NSString*) md5:(NSString*) str { const char *cStr = [str UTF8String]; unsigned char result[CC_MD5_DIGEST_LENGTH]; CC_MD5( cStr, strlen(cStr), result ); NSMutableString *hash = [NSMutableString string]; for(int i=0;i<CC_MD5_DIGEST_LENGTH;i++) { [hash appendFormat:@"%02X",result[i]]; } return [hash lowercaseString]; } #define CHUNK_SIZE 1024 +(NSString *)file_md5:(NSString*) path { NSFileHandle* handle = [NSFileHandle fileHandleForReadingAtPath:path]; if(handle == nil) return nil; CC_MD5_CTX md5_ctx; CC_MD5_Init(&md5_ctx); NSData* filedata; do { filedata = [handle readDataOfLength:CHUNK_SIZE]; CC_MD5_Update(&md5_ctx, [filedata bytes], [filedata length]); } while([filedata length]); unsigned char result[CC_MD5_DIGEST_LENGTH]; CC_MD5_Final(result, &md5_ctx); [handle closeFile]; NSMutableString *hash = [NSMutableString string]; for(int i=0;i<CC_MD5_DIGEST_LENGTH;i++) { [hash appendFormat:@"%02x",result[i]]; } return [hash lowercaseString]; } +(NSString *)NSStringToMD5String:(NSString *)str{ NSString *result = nil; if(str) { unsigned char digest[16]; const char *cStr=[str UTF8String]; CC_MD5(cStr, strlen(cStr), digest); result = [NSString stringWithFormat: @"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x", digest[0], digest[1], digest[2], digest[3], digest[4], digest[5], digest[6], digest[7], digest[8], digest[9], digest[10], digest[11], digest[12], digest[13], digest[14], digest[15]]; result = [result uppercaseString]; } return result; }
相关文章推荐
- iPhone开发中 验证”字符串“/“文件”的MD5的加密
- MD5原理及加密字符串和文件
- 文件的md5验证是什么意思 MD5加密文件
- MD5原理及加密字符串和文件
- 文件和字符串的加密工具类md5
- OC,iphone,把字符串加密成MD5 string
- MD5原理及加密字符串和文件
- java中字符串 MD5密码的加密与验证
- 加密:Java利用MessageDigest获取字符串或文件MD5详解
- 利用MD5对字符串和文件进行加密
- MD5原理及加密字符串和文件
- java中字符串 MD5密码的加密与验证
- MD5原理及加密字符串和文件
- WP开发笔记——字符串 转 MD5 加密
- MD5原理及加密字符串和文件
- linux md5 加密字符串和文件方法
- MD5原理及加密字符串和文件
- JAVA实现文件AES加密或MD5验证
- iOS使用MD5 - 字符串加密至MD5&获取文件MD5
- MD5原理及加密字符串和文件