iOS AES加密方式,加密模式ECB,填充方式pkcs7padding
2020-06-17 10:11
183 查看
[code]#import <CommonCrypto/CommonCryptor.h> // AES加密之ECB128模式 Padding - (NSString *)cs_aes128EncryptECBModeWithkey:(NSString *)key { if (key.length == 0) { key = @"AES128Key"; } char keyPtr[kCCKeySizeAES128+1]; memset(keyPtr, 0, sizeof(keyPtr)); [key getCString:keyPtr maxLength:sizeof(keyPtr) encoding:NSUTF8StringEncoding]; NSData* data = [self dataUsingEncoding:NSUTF8StringEncoding]; NSUInteger dataLength = [data length]; size_t bufferSize = dataLength + kCCBlockSizeAES128; void *buffer = malloc(bufferSize); size_t numBytesEncrypted = 0; CCCryptorStatus cryptStatus = CCCrypt(kCCEncrypt, kCCAlgorithmAES128, kCCOptionPKCS7Padding|kCCOptionECBMode, keyPtr, kCCBlockSizeAES128, NULL, [data bytes], dataLength, buffer, bufferSize, &numBytesEncrypted); if (cryptStatus == kCCSuccess) { NSData *resultData = [NSData dataWithBytesNoCopy:buffer length:numBytesEncrypted]; NSString *base64String = [resultData base64EncodedStringWithOptions:0]; return base64String; } free(buffer); return nil; }
相关文章推荐
- IOS AES 128 ECB PKCS7Padding 16进制加密解密
- Java版适用于PHP版3DES加密解密(PHP语言开发的MCRYPT_3DES算法、MCRYPT_MODE_ECB模式、PKCS7填充方式)
- AES/ECB/PKCS5Padding/PKCS7Padding 128位密钥(带密钥补位功能)加密解密
- IOS AES加密之ECB128模式
- php中实现3DES算法(ECB加密模式PKCS5Padding填充)
- PHP OpenSSL 加密扩展 - 跟 Java 的交锋(AES 加密方式,ECB 模式)
- PHP对接java的AES/ECB/PKCS5Padding加密方式
- AES加密模式和填充方式,hash,md5,ca
- IOS AES 128 ECB PKCS7Padding 16进制加密解密
- java实现基于PKCS7Padding填充方式的AES加解密
- AES 加密 中的PKCS5Padding、PKCS7Padding 和NO Padding的问题
- AES五种加密模式(CBC、ECB、CTR、OCF、CFB)
- AES 加密位: 128位,加密模式:CBC, 填充模式:Zeros
- vue项目AES加密 AES/ECB/PKCS5Padding/PKCS7Padding 128位
- AES 分组对称加密模式:ECB/CBC/CFB/OFB缺CTR
- JCE中支持AES,支持的模式和填充方式
- JCE中支持AES,支持的模式和填充方式
- AES五种加密模式(CBC、ECB、CTR、OCF、CFB)
- AES加密解密(ECB模式)
- iOS经常使用加密方式(MD5,AES,BASE64)与网络数据安全