首页 新闻 搜索 专区 学院

iOS中两种常见的加密方式

0
[待解决问题]

Objective-c实现MD5和SHA1算法相对还是比较简单的,可以直接调用系统的C/C++共享库来实现调用
MD5即Message Digest Algorithm 5(信息-摘要算法 5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一
SHA即Secure Hash Algorithm(安全散列算法) 是美国国家安全局 (NSA) 设计,美国国家标准与技术研究院 (NIST) 发布的一系列密码散列函数。

//MD5加密方式

  • (NSString )md5:(NSString )input{

    NSData *data = [input dataUsingEncoding:NSUTF8StringEncoding];

    unsigned char digest[CC_MD5_DIGEST_LENGTH];
    CC_MD5(data.bytes, (unsigned int)data.length, digest);

    NSMutableString *output = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2];

    for (int i =0; i <CC_MD5_DIGEST_LENGTH; i++) {

    [output appendFormat:@"%02x",digest[i]];

    }

    return output;
    }

//SHA1加密方式

  • (NSString )sha1:(NSString )input
    {

    NSData *data = [input dataUsingEncoding:NSUTF8StringEncoding];

    uint8_t digest[CC_SHA1_DIGEST_LENGTH];

    CC_SHA1(data.bytes, (unsigned int)data.length, digest);

    NSMutableString *output = [NSMutableString stringWithCapacity:CC_SHA1_DIGEST_LENGTH * 2];

    for(int i=0; i<CC_SHA1_DIGEST_LENGTH; i++) {
    [output appendFormat:@"%02x", digest[i]];
    }

    return output;
    }

有缘人2830的主页 有缘人2830 | 菜鸟二级 | 园豆:204
提问于:2016-10-26 14:06
< >
分享
所有回答(1)
0

不是问问题的话,可以写博客。

顾晓北 | 园豆:10215 (专家六级) | 2016-11-02 10:56
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册