【发布时间】:2014-02-14 17:17:39
【问题描述】:
在 ECC 的 SecKeyGeneratePair 之后,我尝试使用公钥加密明文。 SecKeyEncrypt 返回 -4(errSecUnimplemented)。我不确定填充类型是否正确。我尝试了我的 xcode 中的所有类型,它们都不能正常工作。有人可以解释为什么SecKeyEncrypt 返回 -4 吗?
(NSData *)encrypt:(NSString *)plainTextString key:(SecKeyRef)publicKey {
NSData *data = [plainTextString dataUsingEncoding:NSUTF8StringEncoding];
size_t encryptedDataLength = SecKeyGetBlockSize(publicKey);
NSMutableData *encryptedData = [[NSMutableData alloc]
initWithLength:encryptedDataLength];
OSStatus err = SecKeyEncrypt(publicKey,
kSecPaddingOAEP,
[data bytes],
[data length],
[encryptedData mutableBytes],
&encryptedDataLength);
NSLog(@"errEXX: %ld", err);
[encryptedData setLength:encryptedDataLength];
return encryptedData;
}
【问题讨论】:
标签: ios objective-c encryption elliptic-curve