我正在考虑开发一种软件,用于在服务器上安全地存储文件。
假设我有一个秘密文件最初存储在我的客户端计算机上,我想上传到服务器。这里的要求是服务器上的文件应始终加密,并且由于私钥在客户端上,因此任何直接访问服务器的人都无法读取它。也许我可以使用 javascript 来完成,或者我需要开发一个完整的应用程序来处理上传。无论哪种方式都可以,但我需要能够仅使用网络浏览器下载和解密文件。
这让我开始思考。我能否以可以预先计算从服务器到客户端的加密响应的方式配置 HTTPS (SSL)。在这种情况下,我可以在上传时执行此操作,并且在请求文档时,我可以返回将由客户端上的 SSL 堆栈解密的预加密数据。
我知道会有一个随机数交换来防止这种情况发生。但是有没有办法配置 SSL,以便从服务器到客户端的响应总是相同的。在这种情况下,从服务器到客户端的重放攻击是可以接受的,而不是问题。