【问题标题】:Support of AES 256 with GCM not possible in iOS? [duplicate]在 iOS 中无法使用 GCM 支持 AES 256? [复制]
【发布时间】:2017-03-05 22:46:53
【问题描述】:

目前支持AES 256 is CBC的加密模式。但我想使用AES 256 encryptionGCM 模式以及PKCS5Padding / PKCS7Padding

请告诉我怎么做?

【问题讨论】:

标签: ios encryption commoncrypto aes-gcm


【解决方案1】:

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

来自SO Answer 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 相比,这似乎是合理的,但速度较慢。使用风险自负。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-25
    • 2018-10-29
    • 2021-09-23
    • 2020-07-03
    • 2021-04-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多