我的关注 |
¥0 swift3.0中如何进行md5加密?
0
请问:iOS环境下,使用swift3.0作为语言,如何对字符串进行md5加密?
大智若愚
修改
评论(0)
1个回答
0
采纳
  • 在Xcode中,新建一个“Objective-c File”文件。名称随意,比如”md5”.点击下一步,会提示你选择”bridging-header”,选择。
    这个时候回在Xcode项目里新建了2个文件,1个是: NSObject_md5_Bridging-header.h
    第二个是: 项目名-Bridging-Header.h
  • 在两个文件里都引入#import <CommonCrypto/CommonDigest.h>
  • 新建StringMd5.swift文件。代码:
  1. import Foundation
  2. extension String {
  3. func md5() -> String {
  4. let str = self.cString(using: String.Encoding.utf8)
  5. let strLen = CUnsignedInt(self.lengthOfBytes(using: String.Encoding.utf8))
  6. let digestLen = Int(CC_MD5_DIGEST_LENGTH)
  7. let result = UnsafeMutablePointer<CUnsignedChar>.allocate(capacity: digestLen)
  8. CC_MD5(str!, strLen, result)
  9. let hash = NSMutableString()
  10. for i in 0 ..< digestLen {
  11. hash.appendFormat("%02x", result[i])
  12. }
  13. result.deinitialize()
  14. return String(format: hash as String)
  15. }
  16. }
  • 这个时候在项目中就可以使用md5加密了,方法:
    print(“123456”.md5())
    输出:e10adc3949ba59abbe56e057f20f883e
采纳答案
佛法不二
修改
评论 (0)
撰写回答