gpt4 book ai didi

ios - 如何获取 CCCrypt iOS 的返回数据?

转载 作者:行者123 更新时间:2023-11-29 11:53:09 31 4
gpt4 key购买 nike

我正在获取 CCCryptorStatus as kCCSuccess。
这意味着加密已成功完成。
但是,我想获取加密数据,如何获取?

任何帮助将不胜感激。

谢谢,
法会拉托

最佳答案

好好看看 CCCrypt 的参数:

CCCryptorStatus CCCrypt(CCOperation op,
CCAlgorithm alg,
CCOptions options,
const void *key,
size_t keyLength,
const void *iv,
const void *dataIn,
size_t dataInLength,
void *dataOut,
size_t dataOutAvailable,
size_t *dataOutMoved);

(这来自旧的 man page,它使用 C 类型。)

对于最后三个参数,您必须提供:

  • 函数写入加密数据的字节缓冲区
  • 缓冲区的总(可用)长度
  • 以及函数可以写入写入字节数的地方。

在 Objective-C 中,您可以使用 NSMutableData 来提供必要的缓冲区(代码示例取自 here):

CCCryptorStatus ccStatus   = kCCSuccess;
size_t cryptBytes = 0;
NSMutableData *dataOut = [NSMutableData dataWithLength:dataIn.length + kCCBlockSizeAES128];

ccStatus = CCCrypt(encryptOrDecrypt, // kCCEncrypt or kCCDecrypt
kCCAlgorithmAES128,
kCCOptionPKCS7Padding,
key.bytes,
kCCKeySizeAES128,
iv.bytes,
dataIn.bytes,
dataIn.length,
dataOut.mutableBytes,
dataOut.length,
&cryptBytes);

dataOut.length = cryptBytes;

关于ios - 如何获取 CCCrypt iOS 的返回数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40282977/

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