Bouncycastle加密文件正在强制输入密码



我对Bouncycastle有一些特殊问题。

正在发生的事情是我使用公共密钥来加密文本文件,然后将其传输到第三方。当他们尝试在其末端自动将文件自动限制时(使用GlobalScape-不确定版本),该过程失败了,要求使用密码以解锁秘密密钥。

如果我执行相同的过程,但是使用GPG4WIN加密使用相同键的文件,则它们不会遇到相同的问题。

这是执行加密的代码:

private static bool EncryptFile(Stream outputStream, string fileName, PgpPublicKey encKey, bool withIntegrityCheck)
        {
            try
            {
                var bytes = PgpUtils.CompressFile(fileName, CompressionAlgorithmTag.Uncompressed);
                // encrypt using AES-256
                var encryptedDataGenerator = new PgpEncryptedDataGenerator(SymmetricKeyAlgorithmTag.Aes256, withIntegrityCheck, new SecureRandom());
                encryptedDataGenerator.AddMethod(encKey);
                using (var cOutStream = encryptedDataGenerator.Open(outputStream, bytes.Length))
                {
                    cOutStream.Write(bytes, 0, bytes.Length);
                }
                return true;
            }
            catch (Exception e)
            {
                Trace.TraceError($"Exception in EncryptFile: {e}");
                return false;
            }
        }

我承认我在这里有点迷路。谁能指出我缺少的东西?还是我应该要求第三方进一步挖掘?

欢呼

这是固定潜在问题的高级方法:

您正在使用公钥加密。这意味着收件人需要匹配的私钥。

IT 看起来就像收件人具有键

检查以下内容(从易于轻松)

  • 接收者进入密码时可以解密吗?如果是,请配置客户端以保存密码。
  • 尝试与您的本地GPG解密
  • 您确定客户端具有私钥吗?如果不是,请确保客户端具有私钥(也许您使用代码和GPG4WIN使用不同的键)
  • 客户端可以处理加密方法吗?IE。客户知道如何解密您发送的消息格式吗?

最新更新