iOS MD5加密

.h文件

/**
 - MD5加密
 */
//头文件
#import <Foundation/Foundation.h>

@interface iOSMD5 : NSObject {

}

/**
 MD5加密
 */
+(NSString *) md5: (NSString *) inPutText ;
/**
 md5加撒盐加密
 */
+ (NSString *) md5Salt:(NSString *) inPutText;
@end

.m文件

//.m文件
#import "iOSMD5.h"
#import "CommonCrypto/CommonDigest.h"

@implementation MyMD5

+(NSString *) md5: (NSString *) inPutText
{
    const char *cStr = [inPutText UTF8String];
    unsigned char result[CC_MD5_DIGEST_LENGTH];
    CC_MD5(cStr, strlen(cStr), result);

    return [[NSString stringWithFormat:@"%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X",
             result[0], result[1], result[2], result[3],
             result[4], result[5], result[6], result[7],
             result[8], result[9], result[10], result[11],
             result[12], result[13], result[14], result[15]
             ] lowercaseString];
}

+ (NSString *) md5Salt:(NSString *) inPutText{
    NSMutableString *md5Str = [NSMutableString stringWithFormat:[iOSMD5 md5: inPutText]];
    NSRange range1 = {arc4random()%5,arc4random()%6};
    NSRange range2 = {arc4random()%5 + 4,arc4random()%6};
    NSString *str1 = [md5Str substringWithRange:range1];
    NSString *str2 = [md5Str substringWithRange:range2];
    [md5Str replaceCharactersInRange:range2 withString:str1];
    [md5Str replaceCharactersInRange:range1 withString:str2];
    return md5Str;
}
@end
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • MD5相关知识: 1.MD5:全称是Message Digest Algorithm 5,译为“消息摘要算法第5版...
    SunshineAutumn阅读 1,248评论 0 1
  • MyMd5.h文件中+(NSString *) md5: (NSString *) inPutText ; MyM...
    T_label阅读 653评论 0 1
  • 前言 有时候,我们在项目中,需要对密码在客户端进行加密处理。这时就需要用到md5加密,废话不多说,直接上代码。 代...
    方同学哈阅读 2,869评论 5 10
  • 封装一个类 .h里 #import@interface NSString (md5string) + (NSStr...
    iOSFxq阅读 740评论 0 2
  • 做一个类别吧,以后用来很方便。代码如下: .h .m
    th先生阅读 346评论 0 0

友情链接更多精彩内容