は、私はEVPインターフェイスを介して暗号化のためのCTRモードでのOpenSSLのAESを使用し、それは私がこのようなものを持っている:入力データのCTRモードで出力バッファをAESブロックサイズの倍数にする必要がありますか?私のCコードで
ret = EVP_EncryptInit_ex(ctx, EVP_aes_256_ctr(), NULL, key, iv))
...
ret = EVP_EncryptUpdate(ctx, out, &outlen, in, inlen);
長は、AESブロックサイズの倍数ではありません、その場合たとえば、CBCモードを使用すると、出力バッファにパディングするために追加のバイトを割り当てる必要があります。
私はCTRモードで同じことをする必要がありますか?また、私はCFBとOFBモードについて興味があります。
EVP_EncryptUpdateのOpenSSL manは、「ストリーム様」モードに特化したものは何も言わず、パディングのために追加のバイトが必要であることを警告します。
@otus私たちは、Stackoverflowへの移行を考慮する必要があります。私自身は十分な評判を持っていません。 – olegst
通常、キーストリームを生成するために必要なブロックは、暗号実装によって内部的にバッファされます。 –
あなたの仲間の注意のためにあなたのポストにフラグを立てて、あなたの希望を説明することができます... – SEJPM