首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >swift2解密MD5

swift2解密MD5
EN

Stack Overflow用户
提问于 2015-12-30 08:51:44
回答 2查看 780关注 0票数 1

你好,我只想把md5解密成“普通字符串”

代码语言:javascript
复制
extension String {
func MD5() -> String {
    var data = (self as NSString).dataUsingEncoding(NSUTF8StringEncoding)
    let result = NSMutableData(length: Int(CC_MD5_DIGEST_LENGTH))
    let resultBytes = UnsafeMutablePointer<CUnsignedChar>(result!.mutableBytes)
    CC_MD5(data!.bytes, CC_LONG(data!.length), resultBytes)

    let buff = UnsafeBufferPointer<CUnsignedChar>(start: resultBytes, count: result!.length)
    let hash = NSMutableString()
    for i in buff {
        hash.appendFormat("%02x", i)
    }
    return hash as String
}

var x = "abc".MD5()

我想从"x“回到abc

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-12-30 11:39:36

这是不可能的,这就是哈希的全部意义。但是,您可以通过遍历所有可能性(使用所有可能的数字、字符和所有可能的顺序),对它们进行散列并检查碰撞。反向是很难的。还有检查.https://en.wikipedia.org/wiki/MD5

票数 1
EN

Stack Overflow用户

发布于 2015-12-30 11:27:10

简单:Not possible,因为MD5哈希不可能反转。

检查单向函数

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34526038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档