【发布时间】:2011-09-13 15:07:04
【问题描述】:
我正在考虑通过 HTTP 在特定客户端和特定服务器之间编写安全连接。当然 SSL 是最好和最明显的选择。但我一直认为我可以自己做密码学。
请注意,这不是将任何客户端连接到特定服务器,而是将特定客户端(例如我的 PC 上的 Java 客户端应用程序)连接到特定服务器(我的网站托管在其他地方)。所以第三方认证似乎没有必要,因为服务器确切地知道要寻找哪个客户端,而客户端确切地知道要找到哪个服务器。
如果我想将文件从客户端上传到服务器。我可以手动加密它(AES 或其他),并将密钥硬编码到客户端应用程序中,并将其放入服务器上的文件中,不让公众看到。
请告诉我我是疯了还是傻了,还是在推风车。我的想法可行吗?
【问题讨论】:
-
使用 SSL,这是最简单的方法,而且足够安全。如果您想更进一步,您可以使用 X509 4096bit 证书。这将只识别您,并且非常安全(大多数技术支持 X509 证书)
-
是的。我意识到 SSH 和 SSL(甚至是自我认证)都更好,但它更多的是一种思想实验。
-
AES => 对称的。如果只有一个客户端,并且您有一种安全的方式将密钥从生成密钥的机器发送到对方,那么就可以了。否则,公钥加密是可行的方法。
标签: security http encryption ssl