需求:
对字符串(NSString)格式数据进行SHA256加密之后再进行Base64编码。SHA256加密生成的不是标准的占位2的十六进制格式,而是需要直接输出字节数组。
方案:
创建新的SecurityUtility.h以及SecurityUtility.m文件,在需要加密的字符串所在文件调用SecurityUtility.h头文件,并调用所写方法。
实施例:
1.SecurityUtility.h文件代码:
其中, 输入NSString格式数据,输出NSData格式数据(Objectc中想要生成Base64编码,需要先转换成NSData格式,因此这里直接生成NSData格式数据)
2.SecurityUtility.m文件代码:
其中, digest为uint8_t格式,如果用unsigned char格式直接输出字符数组的话会导致输出结果每次结果不同(结果最后两位每次都会变,不清楚原因)
3.调用代码:
(1)首先需要在需要调用SHA256编码方法的文件中引入SecurityUtility头文件。
其中,SecurityUtility.h为SHA256方法头文件的名称(可换其他名称)。
(2)调用sha256HashFor方法
注:如果需要标准的SHA256格式编码(占位为2的十六进制)可以参考下面的代码:
1.SecurityUtility.h文件代码:
2.SecurityUtility.m文件代码:
3.调用代码:
参考博客:
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。