欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

swift MD5加密源码的实例详解

程序员文章站 2023-12-20 19:24:10
swift md5加密源码的实例详解 因为md5加密是不可逆的,所以一般只有md5加密的算法,而没有md5解密的算法。 创建一个sting+md5.swift字符串分类...

swift md5加密源码的实例详解

因为md5加密是不可逆的,所以一般只有md5加密的算法,而没有md5解密的算法。

创建一个sting+md5.swift字符串分类文件(同时此处需要创建一个bridge.h桥接文件,引入这个头文件

#import <commoncrypto/commondigest.h>,md5加密方法需要使用的文件)

1.bridge.h桥接文件如下:

#ifndef bridge_h  
#define bridge_h  
  
#import <commoncrypto/commondigest.h>  
  
#endif /* bridge_h */  

2. sting+md5.swift字符串分类文件如下

md5加密算法如下

import foundation  
  
extension string {  
  var md5 : string{  
    let str = self.cstring(using: string.encoding.utf8)  
    let strlen = cc_long(self.lengthofbytes(using: string.encoding.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)  
  }  
}  

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

上一篇:

下一篇: