現在、 でサポートされている暗号化モードAES 256 is CBC
。しかし、モードと一緒AES 256 encryption
に使いたいです。GCM
PKCS5Padding / PKCS7Padding
どうすればできるのか教えてください。
現在、 でサポートされている暗号化モードAES 256 is CBC
。しかし、モードと一緒AES 256 encryption
に使いたいです。GCM
PKCS5Padding / PKCS7Padding
どうすればできるのか教えてください。
Common Crypto は GCM をサポートしていません。ただし、Security.framework には AES GCM の実装があり、それを使用するために独自のヘッダー ファイルを追加できます。ただし、関連データ (AEAD) は機能しません。
soyerによるSO Answerから:
CCCryptorStatus CCCryptorGCM(
CCOperation op, // kCCEncrypt, kCCDecrypt
CCAlgorithm kCCAlgorithmAES,
const void *key, size_t keyLength,
const void *iv, size_t ivLen,
const void *aData, size_t aDataLen, // does not work
const void *dataIn, size_t dataInLength,
void *dataOut,
const void *tag, size_t *tagLength);
github には、Common Crypto と比較してかなり遅いと思われる実装AES GCMがあります。自己責任。