【发布时间】:2012-05-23 06:20:23
【问题描述】:
当我尝试使用错误的密钥解密密文时,CCCrypt 返回 kCCDecodeError。
问题是,它这样做是否可靠(例如,我是否保证如果它返回成功,我的输入密钥是用于加密纯文本的密钥,我是否也保证我的输出数据是我的原始纯文本) 它怎么知道我的密钥是否正确?
据我了解加密,引擎无法预测密钥是否有效,应该只给我随机噪声作为输出数据和成功的返回码。
【问题讨论】:
标签: ios macos commoncrypto
当我尝试使用错误的密钥解密密文时,CCCrypt 返回 kCCDecodeError。
问题是,它这样做是否可靠(例如,我是否保证如果它返回成功,我的输入密钥是用于加密纯文本的密钥,我是否也保证我的输出数据是我的原始纯文本) 它怎么知道我的密钥是否正确?
据我了解加密,引擎无法预测密钥是否有效,应该只给我随机噪声作为输出数据和成功的返回码。
【问题讨论】:
标签: ios macos commoncrypto
如果您指定了 PCKS7 填充 (kCCOptionPKCS7Padding),那么它可以判断您是否未能正确解密 - 大多数情况下。错误密钥的随机结果有可能导致消息的最后几位看起来像有效的 PKCS7 填充。
它唯一可以检测到的另一件事是您的密钥是否根本不是有效长度。
【讨论】: