论文部分内容阅读
SSL协议又名安全套接层,作为一种在互联网络中大范围使用的一种通信协议,它通过互相认证、使用数字签名、使用加密,以实现客户端和服务器之间的安全通讯,并确保通讯的完整性和私密性。而SSL协议是目前在网络中大范围使用的一种常见的通信协议,它的使用范围已经几乎覆盖世界各地,但是从09年开始,SSL协议被发现有重大安全漏洞,容易受到中间人攻击,其后若干年全球诸多大公司以及个人甚至政府都收到过中间人攻击。近几年,区块链技术大火,它是比特币的底层技术,它脱胎于比特币,又不仅限于比特币,可以被应用于多种领域,被认为是互联网发明以来最具颠覆性的技术创新,甚至被认为可以用来重塑金融和生活架构。区块链技术是P2P网络连接、非对称加密、随机分部算法、数字签名等技术,以及经济学上的宏观经济学和经济学博弈等相互结合,而产生的一个全新技术理论,所以区块链技术并不是一项技术,而是在一个共识思想之下,诸多技术的一个集合体。本文则会运用区块链技术中的工作量证明机制、数字加密算法、身份验证机制以及共识思想,对SSL协议做改进,来提高SSL协议的安全性。应用区块链中的共识思想,去中心化,通过大量的平行节点来保证传输中的安全,具体是改进SSL协议中的握手协议,改变握手协议中用于计算最终密钥的三个随机数的传输过程。在SSL协议中,三个随机数在同一通道内传输,本文将第三个随机数通过一条不确定的而又可靠的通道传输。在寻找这条随机通道时使用区块链中寻找最佳矿工的方式,应用工作量证明机制,客户端会将第的三个在随机数交给挖矿中产生的最佳矿工,并由矿工交给服务器。在传输过程中使用的区块链数字签名算法来进行身份验证,并且将原本SSL协议中使用的对称加密算法改为区块链中的非对称加密。由于在原SSL模型中增加了挖矿过程以及加密过程,会延长改进模型的连通时间,本文还通过一些方式缩短整个连接过程的时间开销,首先,通过将SSL协议中用于传输的TCP更换为网内可靠的一个UDP协议,然后,简化矿工挖矿的随机算法,缩短挖矿成功的平均时间,最后,改进数字签名算法,不进行消息摘要,而是加入时间戳,接收方直接验证时间戳的有效性。最后通过实验来验证改进模型的安全性、可靠性和连通性。