java-重用密码(防止初始化)

我正在尝试改善我们的加密性能.我们需要流式传输加密的视频,因此我们加密每个帧(准确地说是h.264 NALU)并通过网络发送.我们无法通过这种方式在Android上播放流式PAL视频.

我们使用的是AES(AES / CBC / PKCS7Padding),并且会话中的每个帧都使用相同的密钥和IV.我知道,这不是很安全,但是实施此方法时我不在那儿,现在改变它为时已晚.因此,对于每个帧,我们使用相同的参数(键和IV)调用Cipher.init(),然后仅调用doFinal.是否有可能防止这种情况并重用已初始化的Cipher对象?

还是有比AES更好的视频流算法?我们正在使用SpongyCastle.有更快的东西吗?还是我们应该使用OpenSSL在NDK中重写它?

解决方法:

我们只执行了一次init()调用,然后重复调用doFinal(),这将吞吐量提高了50%以上.

上一篇:用于mcrypt_encrypt的32个字符的PHP AES密钥


下一篇:FBEncrypter库与Android的兼容性