Swift MD5加密

很多时候我们会用到md5加密,下面是swift 3.0的实现方法:

首先新建桥接文件 xx-Bridging-Header,方法很多,这里就不介绍了。

然后在桥接文件中引入加密库

#import <CommonCrypto/CommonDigest.h>

新建一个 Swift 扩展类文件 String+Extension

extension String {
    
    /// MD5 加密
    ///
    /// - Returns: 32 位大写
    func ss_md5() -> String {
        let str = self.cString(using: .utf8)
        let strLen = CUnsignedInt(self.lengthOfBytes(using: .utf8))
        let digestLen = Int(CC_MD5_DIGEST_LENGTH)
        let result = UnsafeMutablePointer<CUnsignedChar>.allocate(capacity:digestLen)
        CC_MD5(str!, strLen, result)
        
        let hash = NSMutableString()
        for i in 0 ..< digestLen {
            hash.appendFormat("%02X", result[i])
        }
        result.deinitialize()
        
        return String(format: hash as String)
    }
}

使用方法:

let MD5Str = str.ss_MD5()
原文地址:https://www.cnblogs.com/shen5214444887/p/7481829.html