http://www.hangge.com/blog/cache/detail_850.html 原文地址

MD5即Message-Digest Algorithm 5(信息-摘要算法5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。


其作用是让大容量信息在用数字签名软件签署私人密钥前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的十六进制数字串)。
下面介绍如何使用Swift对字符串进行md5加密:

1,首先创建桥接头文件bridge.h来包含需要引用的Objective-C头文件,并在项目中配置
1
# import < CommonCrypto / CommonDigest .h>

2,对String增加MD5扩展
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import Foundation
extension String {
var md5 : {
let str = self .cStringUsingEncoding( NSUTF8StringEncoding )
strLen = CC_LONG ( .lengthOfBytesUsingEncoding( ))
digestLen = Int ( CC_MD5_DIGEST_LENGTH )
result = UnsafeMutablePointer CUnsignedChar >.alloc(digestLen);
CC_MD5 (str!,strLen,result);
hash = NSMutableString ();
for i in 0 ..< digestLen {
hash.appendFormat( "%02x" ,result[i]);
}
result.destroy();
return (format: hash as )
}
}

3,使用样例
2
print ( "welcome to hangge.com" .md5)
//输出:6ad70eb3a4a50011af9c62cc0674803a

原文出自: www.hangge.com 转载请保留原文链接: http://www.hangge.com/blog/cache/detail_850.html

swift MD5 加密的更多相关文章

  1. 用Swift实现MD5算法&amp;引入第三方类库MBProgressHUD

    之前项目里面是用objc写的MD5加密算法,最近在用swift重写以前的项目,遇到了这个问题。顺带解决掉的还有如何引入第三方的类库,例如MBProgressHUD等一些特别好的控件解决的方法其实是用objc和swift混合编程的方法,利用Bridging-header文件。你可以简单的理解为在一个用swift语言开发的工程中,引入objective-c文件是需要做的一个串联文件,好比架设了一个桥,让swift中也可以调用objective-c的类库和frame等等。

  2. Swift开发教程--如何对字符串进行md5加密

    在swift工程中随便建一个objective-c类,会提示你生成一个Bridging-Header,点YES,然后删除刚才建立的objective-c类,只留下[工程名]-Bridging-Header.h文件。

  3. OC获取文件MD5值与swift字符串MD5加密方法

    3,调用varfielad:Nsstring=字符串.md5()//字符串MD5加密extensionString{funcmd5()->String!

  4. swift MD5 加密

    是计算机广泛使用的杂凑算法之一,主流编程语言普遍已有MD5实现。其作用是让大容量信息在用数字签名软件签署私人密钥前被"压缩"成一种保密的格式。

  5. 使用Swift 3.0实现原生的MD5加密

    对称加密以DataEncryptionStandard数据加密标准算法即DES为典型代表,非对称加密通常以RivestShamirAdleman即RSA算法为代表。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法,如图2所示:图2MD5加密MD5的全称是MessageDigestAlgorithm5,即消息摘要算法第五版,是计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。不同之处是在第16行的代码中,给NSData添加了一个名为MD5的扩展方式,用来实现数据的MD5加密

  6. Swift3实现字符串的MD5加密

    Swift3实现字符串的MD5加密新建一个oc文件使用桥接头文件引入扩展String建立一个md5的方法新建一个OC文件如图所示接着下一步下一步使用桥接头文件引入接上一步xcode会自动提醒你实现点击CreateBridgingHeader即可之后在新建的.h文件上添加如图所示代码扩展String建立一个md5的方法新建一个Swift文件添加如下代码之后就大功告成了可以这么使用

  7. swift3.0 MD5加密源码

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

  8. 如何在swift语言中使用CC_MD5方法

    在objective-c中,我们可以通过以下代码用md5加密字符串但现在CC_MD5不工作在swift。

  9. MD5是否可以在Android中与MessageDigest一起使用?

    我想知道在我直接忽略MessageDigest.getInstance(“MD5”)可以抛出的已检查异常之前,MD5摘要算法是否保证在所有Android设备中都可用.解决方法AndroidJCE(JavaCryptographyExtension)基于bouncycastle实现,但被剥离.bouncycastle提供了大量不同的MessageDigests,可以找到here.并不能保证每个And

  10. iOS中常见的几种加密方法总结

    这篇文章主要给大家介绍了关于iOS中常见的几种加密方法,其中包括 base64加密、POST加密、Token值介绍、MD5加密--(信息-摘要算法) 哈希算法之一、时间戳密码以及指纹识别等方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。

随机推荐

  1. Swift UITextField,UITextView,UISegmentedControl,UISwitch

    下面我们通过一个demo来简单的实现下这些控件的功能.首先,我们拖将这几个控件拖到storyboard,并关联上相应的属性和动作.如图:关联上属性和动作后,看看实现的代码:

  2. swift UISlider,UIStepper

    我们用两个label来显示slider和stepper的值.再用张图片来显示改变stepper值的效果.首先,这三个控件需要全局变量声明如下然后,我们对所有的控件做个简单的布局:最后,当slider的值改变时,我们用一个label来显示值的变化,同样,用另一个label来显示stepper值的变化,并改变图片的大小:实现效果如下:

  3. preferredFontForTextStyle字体设置之更改

    即:

  4. Swift没有异常处理,遇到功能性错误怎么办?

    本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请发送邮件至dio@foxmail.com举报,一经查实,本站将立刻删除。

  5. 字典实战和UIKit初探

    ios中数组和字典的应用Applicationschedule类别子项类别名称优先级数据包contactsentertainment接触UIKit学习用Swift调用CocoaTouchimportUIKitletcolors=[]varbackView=UIView(frame:CGRectMake(0.0,0.0,320.0,CGFloat(colors.count*50)))backView

  6. swift语言IOS8开发战记21 Core Data2

    上一话中我们简单地介绍了一些coredata的基本知识,这一话我们通过编程来实现coredata的使用。还记得我们在coredata中定义的那个Model么,上面这段代码会加载这个Model。定义完方法之后,我们对coredata的准备都已经完成了。最后强调一点,coredata并不是数据库,它只是一个框架,协助我们进行数据库操作,它并不关心我们把数据存到哪里。

  7. swift语言IOS8开发战记22 Core Data3

    上一话我们定义了与coredata有关的变量和方法,做足了准备工作,这一话我们来试试能不能成功。首先打开上一话中生成的Info类,在其中引用头文件的地方添加一个@objc,不然后面会报错,我也不知道为什么。

  8. swift实战小程序1天气预报

    在有一定swift基础的情况下,让我们来做一些小程序练练手,今天来试试做一个简单地天气预报。然后在btnpressed方法中依旧增加loadWeather方法.在loadWeather方法中加上信息的显示语句:运行一下看看效果,如图:虽然显示出来了,但是我们的text是可编辑状态的,在storyboard中勾选Editable,再次运行:大功告成,而且现在每次单击按钮,就会重新请求天气情况,大家也来试试吧。

  9. 【iOS学习01】swift ? and !  的学习

    如果不初始化就会报错。

  10. swift语言IOS8开发战记23 Core Data4

    接着我们需要把我们的Rest类变成一个被coredata管理的类,点开Rest类,作如下修改:关键字@NSManaged的作用是与实体中对应的属性通信,BinaryData对应的类型是NSData,CoreData没有布尔属性,只能用0和1来区分。进行如下操作,输入类名:建立好之后因为我们之前写的代码有些地方并不适用于coredata,所以编译器会报错,现在来一一解决。

返回
顶部