我可以使用 crypto_box_seal_open 解密我自己的消息吗?

Will I be able to decrypt my own message using crypto_box_seal_open?

我已经使用 crypto_box_seal 通过其他人的 public 密钥加密了一条消息。收件人可以使用自己的密钥对毫无问题地解密它。

if(crypto_box_seal_open(decryptedMessage, [ciphertextDataDerived mutableBytes], [ciphertextDataDerived length], [pubkey bytes], [privkey bytes]) != 0){
   NSLog(@"Oops! Error on decryption");
} else {
   NSUInteger sizeDecrypted = sizeof(decryptedMessage);
   NSData* dataDecrypted = [NSData dataWithBytes:(const void *)decryptedMessage length:sizeof(unsigned char)*sizeDecrypted];
   NSString *decryptedString = [[NSString alloc] initWithData:dataDecrypted encoding:NSUTF8StringEncoding];
   NSLog(@"Decrypted Message: %@", decryptedString);
}

但是否也可以解密我自己的消息。如果是这样,如何? 我已经尝试使用我自己的 public 和私钥对其进行解密,但它只是失败了。

如果实际上可以使用 除收件人私钥以外的任何东西 来解密消息,这将表明整个星球的软件安全性基本上是无效的。 所以,不,除非收件人向您透露他们的私钥,否则不可能解密您的原始邮件,当然他们永远不应该这样做。