我使用以下类来加密/解密我的文本。
http://code.google.com/p/iphonebits/source/browse/trunk/src/Encryption/NSData-AES.m?r=2
这完美无缺。但是当我用无效密钥(加密密钥以外的任何一个密钥)解密加密文本时,这会返回一些文本,而不是解密文本的实际长度。可能是什么原因(这应该归零)?这是更好的方法吗?库是否应该为无效的解密密钥返回错误?这是必须的吗?
谢谢
答案 0 :(得分:1)
嗯,算法不知道你提供的密钥是否正确。要知道密钥是否正确,算法必须拥有它的副本,这是不安全的。虽然它可以拥有它的散列副本,但仍然适用于加密和解密算法仅适用于一个密钥。您当前的解密接受密钥并将其置于解码算法中。结果应该反映原始文本,但如果密钥错误,它将为您提供根据错误密钥生成的文本。一切正常。