0

4 バイトの IVを使用し一部のデータを暗号化する必要があります。ただし、私が使用している暗号化アルゴリズム (AES128) には 16 バイト (128 ビット) のキーが必要です。たとえば、私のコードは次のとおりです。

#include<gcrypt.h>
void encrypt(){
    int IV = 6174;
    gcry_cipher_hd_t hd;        
    errStatus = gcry_cipher_open(&hd, GCRY_CIPHER_AES128, GCRY_CIPHER_MODE_CBC, 0);
    errStatus = gcry_cipher_setkey(hd, keyBuffer, 16);
    gcry_cipher_setiv(hd, &IV, 16);
    gcry_cipher_encrypt(hd, output, 16, bytesToEncrypt, 16);
}

keyBufferたとえば、16 バイトのキーが含まれており、output`bytes,はそれぞれ入力と出力です。IVを適切に与えるにはどうすればよいですか?

4

1 に答える 1