其他分享
首页 > 其他分享> > iOS AES128加密解密的两种模式(CBC和ECB)

iOS AES128加密解密的两种模式(CBC和ECB)

作者:互联网

原理什么的不在本篇的范畴,网上很多大牛总结的很好了 请参考AES加密过程详解

1. 苹果默认是CBC模式的,有文档为证:

/*!
    @enum       CCOptions
    @abstract   Options flags, passed to CCCryptorCreate().

    @constant   kCCOptionPKCS7Padding   Perform PKCS7 padding.
    @constant   kCCOptionECBMode        Electronic Code Book Mode.
                                        Default is CBC.
*/
enum {
    /* options for block ciphers */
    kCCOptionPKCS7Padding   = 0x0001,
    kCCOptionECBMode        = 0x0002
    /* stream ciphers currently have no options */
};

2. 一般来说,我们客户端单纯只是做做业务的话,接触的加密算法或者需要我们去深入底层的东西少之又少,通常是后端提供加密的key(秘钥)和iv(偏移量)给前端小伙伴们使用.

3. CBCEBC,在调用方看来,仅仅只是一个枚举值的区别

//CBC模式
kCCOptionPKCS7Padding
//ECB模式
kCCOptionPKCS7Padding | kCCOptionECBMode

4. 下面

标签:CBC,ivPtr,ECB,buffer,iOS,iv,dataLength,sizeof,keyPtr
来源: https://www.cnblogs.com/wgb1234/p/12448741.html