如何在Swift 3中进行aes ccm加密

如何在Swift 3中进行aes ccm加密,swift,encryption,aes,Swift,Encryption,Aes,我需要使用AES-CCM在Swift 3中加密和解密。 我已经安装了CryptoSwift模块,我的应用程序可以正常运行AES128,如下所示: //aes let input: Array<UInt8> = [0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f] let key: Array<UInt8> = [0x00,0x01,0x02,0x03,0x04,

我需要使用AES-CCM在Swift 3中加密和解密。 我已经安装了CryptoSwift模块,我的应用程序可以正常运行AES128,如下所示:

//aes
let input: Array<UInt8> = [0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f]

let key: Array<UInt8> = [0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f]
let iv: Array<UInt8> = AES.randomIV(AES.blockSize)

do {
    let encrypted = try AES(key: key, iv: iv, blockMode: .CBC, padding: .pkcs7).encrypt(input)
    print(encrypted)
    let decrypted = try AES(key: key, iv: iv, blockMode: .CBC, padding: .pkcs7).decrypt(encrypted)
    print(decrypted)
} catch {
    print(error)
}
//aes
让输入:数组=[0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a、0x0b、0x0c、0x0d、0x0e、0x0f]
let key:Array=[0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a、0x0b、0x0c、0x0d、0x0e、0x0f]
设iv:Array=AES.randomIV(AES.blockSize)
做{
let encrypted=尝试AES(密钥:key,iv:iv,块模式:.CBC,填充:.pkcs7)。加密(输入)
打印(加密)
let decrypted=尝试AES(密钥:key,iv:iv,块模式:.CBC,填充:.pkcs7)。解密(加密)
打印(解密)
}抓住{
打印(错误)
}
但我找不到一种方法来实现CCM模式,它没有IV,只有一个小于16字节的nonce

CryptoSwift是否能够执行AES-CCM或我是否必须寻找其他模块? 请给我一些建议