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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值