ios - 使用MD5算法在iOS中解密加密字符串

标签 ios objective-c nsstring md5 encryption

基本上我想在 iOS加密和解密密码。

到目前为止,我使用以下方法来加密密码

- (NSString *) stringFromMD5{

    if(self == nil || [self length] == 0)
        return nil;

    const char *value = [self UTF8String];

    unsigned char outputBuffer[CC_MD5_DIGEST_LENGTH];
    CC_MD5(value, strlen(value), outputBuffer);

    NSMutableString *outputString = [[NSMutableString alloc] initWithCapacity:CC_MD5_DIGEST_LENGTH * 2];
    for(NSInteger count = 0; count < CC_MD5_DIGEST_LENGTH; count++){
        [outputString appendFormat:@"%02x",outputBuffer[count]];
    }

    return [outputString autorelease];
}

这是使用MD5散列来加密字符串。

问题:

  1. 正如我在某处读到的那样,MD5 哈希是不可能解密的。这是真的吗?如果不是,请指导我使用 MD5 进行解密。
  2. 如果第一个不可能,那么在 iOS 中是否有任何其他方法可以加密和解密 NSString

我非常欢迎您对此提出建议。

最佳答案

  1. 是的,这是真的。 MD5 是一种单向散列函数。您可以比较两个经过 MD5 哈希处理的字符串,以检查原始纯文本输入是否相等。

  2. 看看NSString 的AES 加密讨论here .

关于ios - 使用MD5算法在iOS中解密加密字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15964926/

相关文章:

ios - 带有笑脸和德语或法语文本的字符串

ios - UIViewController 基类——好不好

ios - UIView 插入 UIWebView 的 ScrollView ,在横向模式下不可点击

ios - RestKit 和 CocoaPods 的 Xcode 7 链接器错误

ios - 无法在 iOS7.1 应用程序上找到 EXC_BAD_ACCESS 的原因

ios - NSURLSession 后台 session 中的 NSURLSessionDownloadTask 出错

iOS:后台调用服务器经常导致超时

iphone - 两个应用程序之间如何通信

iphone - NSString 变量不是 NSstring

objective-c - 字符串格式 : with unknown datatype