gpt4 book ai didi

iphone - Objective-C 中的 PKCS5 填充

转载 作者:搜寻专家 更新时间:2023-10-30 19:44:25 25 4
gpt4 key购买 nike

有没有办法在 Cocoa Touch 中获得实际的 PKCS5 填充?虽然我很清楚出于解密目的,PKCS7 和 PKCS5 是兼容的,但我需要匹配服务器使用的确切加密方法,因为加密密码经过哈希处理并用作加密数据的解密 key 。这很复杂,但是很安全。不幸的是,如果您之后对填充的字符串进行哈希处理,我认为 PKCS7 和 PKCS5 不能互换使用。谁能帮我?如果它与 NSData+CommonCrypto 或 RNCryptor 库一起正常工作,则加分。

最佳答案

这是我的解决方案。工作起来很有魅力。

NSString *password = @"YOUR PASSWORD HERE";
NSMutableData *passwordData = [[NSMutableData alloc] initWithData:[password dataUsingEncoding:NSUTF8StringEncoding]];
int blockSize = 16;
int charDiv = blockSize - ((passwordData.length + 1) % blockSize);

//PKCS5 Padding
NSMutableString *padding = [[NSMutableString alloc] initWithFormat:@"%c",(unichar)10];

for (int c = 0; c <charDiv; c++) {
[padding appendFormat:@"%c",(unichar)charDiv];
}
[passwordData appendData:[padding dataUsingEncoding:NSUTF8StringEncoding]];

...您填充的数据将在 passwordData 中。

关于iphone - Objective-C 中的 PKCS5 填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11728947/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com