【发布时间】:2015-12-30 08:51:44
【问题描述】:
您好,我只想从md5 解密为“普通字符串”
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
【问题讨论】:
-
MD5 不可逆
-
研究使用AES加密而不是
-
oops AES 很复杂,我可以像 md5 那样简单地使用任何可逆哈希吗?
-
虽然 md5 有其缺陷,但哈希函数的整个想法是一种方式。我建议你多学习一些关于哈希和加密的知识。
-
好的,谢谢,我会搜索两者