我将完全重新表述我的问题,以使其具有更一般的意义(并使用AES / RSA纠正我的错误)。
Alice有大量数据要通过不安全的本地邮箱发送给Bob。为了防止窥探数据,她这样做:
迈克,邮递员从邮箱中提取邮件。但是,如果bob不能解密数据,他不想一直将数据一直拖到Internet到Bob的地方。
问题是,Mike如何确定该密钥实际上是否已使用Bob的公共密钥加密?
在我的应用程序中,我需要将敏感数据传输到数据中心。为此,我有一个上传过程,可以接受文件(已经使用密钥对AES进行了加密,然后使用收件人的公共密钥对密钥进行了加密),然后将其发送到数据中心。相应的私钥保存在数据中心,并在收到文件后用于解密文件。当前处于设计阶段,因此要使用的公/私钥技术具有一定的灵活性,但很可能是正在执行此工作的C#应用程序。
我想防止上传未使用公钥加密的文件(因为我可能会浪费大量带宽,并且数据中心的接收应用程序将无法解密它们)。
那么,我想知道的是如何在发送端告诉文件是否已使用给定的公钥加密?
简而言之,我有一个加密的文件和一个公共密钥。文件已使用该密钥加密了吗?谢谢,等等!