我正在考虑做一个附带的项目,将涉及到一个标准的直接连接方式文件传输。为了澄清,如果9.9.9.9想将文件发送到10.10.10.10,那么10.10.10.10将监听某个端口,然后9.9.9.9可以使用安全连接连接到10.10.10.10。在
不幸的是,我几乎没有任何安全协议的背景,但我最近正在阅读双向SSL是如何工作的。我在考虑用Python编写这个,这样我就可以使用pythonsl库了。在
我正试图想出一个高层次的概述,我将如何转移文件。我想到了以下几点:
1)当程序第一次启动时,程序将生成一个自签名证书。此证书将与此程序一起使用,直到证书过期或被删除。在
2)用户A想向用户B发送文件。假设他们从未在彼此之间传输过文件。B必须在某个端口上有一个SSL侦听套接字。A将尝试连接到B
3)当A试图连接到B时,双方都会被警告他们从未连接到对方。如果双方选择继续,它们将在各自的计算机上存储彼此的证书。将来,如果A想向B发送一个文件,反之亦然,程序不会警告它们,因为它们都有彼此的证书。在
4)A现在可以将文件发送到B
几个问题:
1)概述有什么问题吗(我肯定有)?在
2)除了客户端可以访问侦听器的证书外,双向SSL还允许侦听器访问客户端的证书,对吗?在
3)对于这些生成的证书,什么是有效的过期时间限制(如果有的话)?在
非常感谢你们!在