import Foundation

extension Int
{
func hexedString() -> String
{
return NSString(format:"%02x", self) as String
}
} extension NSData
{
func hexedString() -> String
{
var string = String()
let unsafePointer = bytes.assumingMemoryBound(to: UInt8.self)
for i in UnsafeBufferPointer<UInt8>(start:unsafePointer, count: length)
{
string += Int(i).hexedString()
}
return string
} func MD5() -> NSData
{
let result = NSMutableData(length: Int(CC_MD5_DIGEST_LENGTH))!
let unsafePointer = result.mutableBytes.assumingMemoryBound(to: UInt8.self)
CC_MD5(bytes, CC_LONG(length), UnsafeMutablePointer<UInt8>(unsafePointer))
return NSData(data: result as Data)
}
} extension String
{
func MD5() -> String
{
let data = (self as NSString).data(using: String.Encoding.utf8.rawValue)! as NSData
return data.MD5().hexedString()
}
}

转载请注明出处:http://www.cnblogs.com/ficow/p/7132289.html

最新文章

  1. JAVA程序中SQL语句无法传递中文参数
  2. Linux非root用户如何使用80端口启动程序
  3. eclipse maven web环境搭建
  4. Spring MVC 学习总结(四)——视图与综合示例
  5. 优秀的技术Leader
  6. unity3d 特殊文件夹和脚本编译顺序
  7. Android 反编译 -- apktool、dex2jar、jd-gui
  8. ArduinoYun的电源插座
  9. RS232与RS485时序分析
  10. 动态规划略有所得 数字三角形(POJ1163)
  11. Entity Framework相关介绍
  12. Codeforces 1088F(贪心+倍增)
  13. MongoDB系列----uupdate和数组
  14. 解决Jira和Confluence访问打开越来越缓慢问题
  15. 问题:虚拟环境名字相同遇到bug,please specify a different sdk name?
  16. vue过滤动画
  17. AAC音频格式详解
  18. 持续集成之Jenkins插件使用(一)- 多个job之间的串并联
  19. BZOJ 3224 Tyvj 1728 普通平衡树模板
  20. scrapy+selenium+chromedriver解析动态渲染页面

热门文章

  1. Qt浅谈之二十一log调试日志
  2. peewee模块
  3. CentOS7虚拟机桥接设置及问题
  4. forEach、for-in与for-of的区别
  5. Spring中的事务管理(学习笔记)
  6. django-sso单点登陆的实现
  7. URAL1519 Formula 1 —— 插头DP
  8. poj 1195 Mobile phones 解题报告
  9. poj 1258 Agri-Net 解题报告
  10. wukong引擎源码分析之索引——part 1 倒排列表本质是有序数组存储