根据这篇文章 http://blog.gdssecurity.com/labs/2013/3/5/retrieving-crypto-keys-via-ios-runtime-hooking.html
在 Apple 的 doCipher:key:context:padding 方法http://developer.apple.com/library/ios/#samplecode/CryptoExercise/Listings/Classes_SecKeyWrapper_m.html的示例代码中有“不好的做法。以下代码片段显示它将使用 16 字节 0x0 的静态 IV。
// Initialization vector; dummy in this case 0’s.
uint8_t iv[kChosenCipherBlockSize];
memset((void *) iv, 0x0, (size_t) sizeof(iv));
为什么用外行的话来说真的很糟糕以及如何解决它?
我只了解可以挂钩该代码以拦截对称密钥。但我不明白为什么以及如何防止这种情况。