本发明一般地涉及通信。更具体地,本发明涉及基于http协议的数据加密、解密方法及系统。
背景技术:
1、http协议是互联网时代最重要的网络协议之一,它是互联网上数据交换的基础,用于在web服务器和客户端浏览器之间传输文本、图片、视频等各种资源。http具有简单性、可扩展性、无连接等优点,它的出现极大地促进了信息的共享和互联网的普及。
2、http协议由于其设计初衷是为了便捷的信息交换,因此在安全性方面存在一些固有的缺点,例如,http协议在传输数据时不进行加密,数据以明文形式传输,容易被第三方读取该数据;此外,http不提供数据完整性验证机制,因此在传输过程中,数据可能会被未经授权的第三方篡改,而接收方无法轻易检测到这种篡改。对此,现有技术一般通过在http上加入ssl/tls协议,即改用https协议,以对数据进行加密和完整性验证,然而这种方式需要向第三方证书颁发机构购买ssl证书;或者是在通信的双方之间建立安全的vpn专用网络,在此vpn内部进行数据访问,然而这种方式需要额外提供vpn服务器,并使用专用的终端进行辅助连接vpn,便捷性差。
技术实现思路
1、为解决上述http协议安全性差的技术问题,本发明在如下的多个方面中提供方案。
2、在第一方面中,本发明提供了一种基于http协议的数据加密方法,包括:生成发送端的公钥和发送端的私钥;向接收端发送交换公钥的请求,获得所述接收端的公钥;生成第一秘钥,根据所述第一秘钥对待发送的数据进行加密,获得密文数据;根据所述接收端的公钥对所述第一秘钥进行加密,根据所述发送端的私钥对加密后的所述第一秘钥进行签名,获得第二秘钥;将所述密文数据和所述第二秘钥进行拼接合成,发送至所述接收端。
3、进一步地,生成第一秘钥,包括:根据对称加密算法生成所述第一秘钥。
4、进一步地,生成发送端的公钥和发送端的私钥,包括:根据rsa加密算法生成所述发送端的公钥和所述发送端的私钥。
5、进一步地,还包括:定期向所述接收端发送交换公钥的请求。
6、进一步地,将所述密文数据和所述第二秘钥进行拼接合成,包括:根据预设的分隔符将所述密文数据和所述第二秘钥进行连接,对连接后的数据体进行huffman编码压缩。
7、进一步地,向接收端发送交换公钥的请求,包括:基于http协议向所述接收端发送交换公钥的请求。
8、在第二方面中,本发明提供了一种基于http协议的数据解密方法,包括:生成接收端的公钥和接收端的私钥,响应于发送端的交换公钥请求,获得所述发送端的公钥;接收并分解所述发送端发送的数据体,获得由第一秘钥加密的密文数据和第二秘钥;根据所述发送端的公钥对所述第二秘钥进行解密验签;根据所述接收端的私钥对通过验证的第二秘钥进行解密,获得第一秘钥;根据所述第一秘钥对所述密文数据进行解密。
9、进一步地,还包括:在响应所述发送端的请求时,生成新的数据秘钥,根据所述数据秘钥对待发送的数据进行加密,获得密文数据;根据所述发送端的公钥对所述数据秘钥进行加密,根据所述接收端的私钥对加密后的所述数据秘钥进行签名,获得签名秘钥;将所述密文数据和所述签名秘钥进行拼接合成,发送至所述发送端。
10、在第三方面中,本发明还提供了一种基于http协议的通信加密系统,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序指令,当所述计算机程序指令被所述处理器执行时实现根据第一方面中任一项所述的一种基于http协议的数据加密方法。
11、在第四方面中,本发明提供了一种基于http协议的通信解密系统,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序指令,当所述计算机程序指令被所述处理器执行时实现根据第二方面中所述的一种基于http协议的数据解密方法。
12、本发明的有益效果在于:本发明通过对明文数据使用对称加密算法进行加密,保证了数据的安全性和加密的效率,通过对数据秘钥使用非对称加密算法进行加密,确保了数据秘钥传输的安全性,通过对秘钥进行签名,确保了传输的数据的完整性以及通信双方的身份的识别,此外,通过在通信双方设置相同的拼接规则和分解规则,进一步提高了基于http协议通信的安全性,并且不需要额外引入https、vpn等第三方协议,也无需提供硬件支持,容易实现,成本低。
1.一种基于http协议的数据加密方法,其特征在于,包括:
2.根据权利要求1所述的基于http协议的数据加密方法,其特征在于,生成第一秘钥,包括:根据对称加密算法生成所述第一秘钥。
3.根据权利要求1所述的基于http协议的数据加密方法,其特征在于,生成发送端的公钥和发送端的私钥,包括:根据rsa加密算法生成所述发送端的公钥和所述发送端的私钥。
4.根据权利要求1所述的基于http协议的数据加密方法,其特征在于,还包括:定期向所述接收端发送交换公钥的请求。
5.根据权利要求1所述的基于http协议的数据加密方法,其特征在于,将所述密文数据和所述第二秘钥进行拼接合成,包括:根据预设的分隔符将所述密文数据和所述第二秘钥进行连接,对连接后的数据体进行huffman编码压缩。
6.根据权利要求1所述的基于http协议的数据加密方法,其特征在于,向接收端发送交换公钥的请求,包括:基于http协议向所述接收端发送交换公钥的请求。
7.一种基于http协议的数据解密方法,其特征在于,包括:
8.据权利要求7所述的基于http协议的数据解密方法,其特征在于,还包括:
9.一种基于http协议的通信加密系统,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序指令,当所述计算机程序指令被所述处理器执行时实现根据权利要求1-6中任一项所述的一种基于http协议的数据加密方法。
10.一种基于http协议的通信解密系统,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序指令,当所述计算机程序指令被所述处理器执行时实现根据权利要求7或8中所述的一种基于http协议的数据解密方法。