支持GCM的AES 256不可能在iOS?

目前AES 256 is CBC支持的encryption模式AES 256 is CBC 。 但是我想使用GCM模式的AES 256 encryptionPKCS5Padding / PKCS7Padding

请让我知道如何做到这一点?

Common Crypto不支持GCM。 但在Security.framework中有一个AES GCM的实现,您可以添加自己的头文件来使用它。 但是关联的数据(AEAD)不起作用。

从SO回答 soyer:

 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上有一个实现AES GCM ,与Common Crypto相比似乎合理。 使用风险自负。