音频、AES CBC 和 IV

标签 audio initialization aes vector

我目前正在从事一个 voip 项目,并且对 AES-CBC 模式的实现有疑问。我知道对于基于文本消息通信的即时消息,重要的是为每条消息生成一个 IV,以避免在通信过程中第一个 block 是冗余的情况下可能猜测第一个 block 。
但是对音频数据做同样的事情有用吗?由于音频数据比明文复杂得多,我想知道为每个音频 block 生成一个 IV 是否明智(这意味着每秒有很多 IV,超过 40 个),或者这只会减慢一切一无所有?还是只在对话开始时生成一个 IV 就足够了?

提前致谢,

诺利安

最佳答案

您不需要每次都生成新的 IV。
例如,在 SSH 和 TLS 中,只有一个 IV 用于整个数据 session ,并且只有在几 GB 数据之后才需要重新加密。

关于音频、AES CBC 和 IV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3535481/

相关文章:

java - 触摸按钮时发出哔声

ios - 如何在iOS上的音频缓冲区中跳过样本

wpf - 控制初始化顺序惨败

c++ - union Initializer "error: expected primary-expression before ‘.’ token ”

java - 加密不适用于从 openssl 生成的 AES-256 key

java - 无法初始化 cipher.init()

ios - 快速录制音频并将录制的音频传递到下一个 View Controller

c++ - 初始化字符串时额外的大括号

java - 如何使用 AES 解密 Android 中的文件?

audio - 树莓派只播放单声道声音