著录项信息
专利名称 | 消息中间件的数据加密传输方法和系统 |
申请号 | CN200910241425.0 | 申请日期 | 2009-12-08 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2011-06-08 | 公开/公告号 | CN102088352A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L9/32 | IPC分类号 | H;0;4;L;9;/;3;2;;;H;0;4;L;9;/;3;0;;;H;0;4;L;2;9;/;0;6查看分类表>
|
申请人 | 北京大学;北大方正集团有限公司;北京方正奥德计算机系统有限公司 | 申请人地址 | 北京市海淀区颐和园路5号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 北京大学,北大方正集团有限公司,方正国际软件(北京)有限公司 | 当前权利人 | 北京大学,北大方正集团有限公司,方正国际软件(北京)有限公司 |
发明人 | 乐以长;彭飞;原锋 |
代理机构 | 北京康信知识产权代理有限责任公司 | 代理人 | 余刚 |
摘要
本发明提供了一种消息中间件的数据加密传输方法,包括:发送装置使用随机生成的公共密钥加密所要发送的实体数据得到实体数据密文以及使用第一密钥加密公共密钥得到第一密文,并将实体数据密文和第一密文发送给数据交换服务器;数据交换服务器使用第一密钥对接收到的第一密文进行解密,得到公共密钥;数据交换服务器使用第二密钥对解密得到的公共密钥进行加密,并将加密得到的第二密文以及接收到的实体数据密文发送给接收装置;接收装置使用第二密钥解密接收到的第二密文得到公共密钥,并使用公共密钥解密实体数据密文得到实体数据。本发明还提供了一种消息中间件的数据加密传输系统。本发明适合特大数据量数据的加密传输。
1.一种消息中间件的数据加密传输方法,其特征在于,包括:
发送装置使用随机生成的公共密钥加密所要发送的实体数据得到实体数据密文以及使用第一密钥加密所述公共密钥得到第一密文,并将所述实体数据密文和所述第一密文发送给数据交换服务器;
所述数据交换服务器使用第一密钥对接收到的第一密文进行解密,得到所述公共密钥;
所述数据交换服务器使用第二密钥对解密得到的公共密钥进行加密,并将加密得到的第二密文以及接收到的所述实体数据密文发送给接收装置;
所述接收装置使用第二密钥解密接收到的第二密文得到所述公共密钥,并使用所述公共密钥解密所述实体数据密文得到所述实体数据。
2.根据权利要求1所述的方法,其特征在于,在存储装置的数据库或者磁盘文件中预先存储有用户信息,所述用户信息包括用户名和登录口令。
3.根据权利要求2所述的方法,其特征在于,所述第一密钥为发送用户的登录口令,发送装置使用随机生成的公共密钥加密所要发送的实体数据得到实体数据密文以及使用第一密钥加密所述公共密钥得到第一密文,并将所述实体数据密文和所述第一密文发送给数据交换服务器包括:
所述发送装置随机生成一个字符串作为所述公共密钥;
所述发送装置使用所述公共密钥对所要发送的实体数据进行加密得到所述实体数据密文;
所述发送装置使用发送用户输入的发送用户的登录口令对所述公共密钥进行加密得到所述第一密文;
所述发送装置将所述实体数据密文、所述第一密文以及所述发送用户指定的发送方式的信息发送给所述数据交换服务器。
4.根据权利要求3所述的方法,其特征在于,所述发送方式的信息包括:点对点、一点对多点或者广播发送方式;当发送方式为点对点或者一点对多点发送方式时,所述发送方式的信息还包括接收用户的用户名或者用户名列表。
5.根据权利要求3所述的方法,其特征在于,所述数据交换服务器使用第一密钥对接收到的第一密文进行解密,得到所述公共密钥包括:
所述数据交换服务器从所述存储装置中查找到所述发送用户的登录口令;
所述数据交换服务器使用所述发送用户的登录口令解密所述第一密文,得到所述公共密钥。
6.根据权利要求5所述的方法,其特征在于,所述第二密钥为接收用户的登录口令,所述数据交换服务器使用第二密钥对解密得到的公共密钥进行加密,并将加密得到的第二密文以及接收到的所述实体数据密文发送给接收装置包括:
所述数据交换服务器根据接收到的所述发送方式的信息以及预先设置的消息路由规则获得路由表;
所述数据交换服务器依次遍历所述路由表中的各个接收用户,根据当前的接收用户的用户名从所述存储装置中查找到所述当前的接收用户的登录口令,并使用所述当前的接收用户的登录口令加密所述公共密钥,得到第二密文;
根据所述路由表将所述第二密文以及接收到的所述实体数据密文发送给所述当前的接收用户对应的接收装置。
7.根据权利要求6所述的方法,其特征在于,所述接收装置使用第二密钥解密接收到的第二密文得到所述公共密钥,并使用所述公共密钥解密所述实体数据密文得到所述实体数据包括:
所述接收装置使用接收用户输入的接收用户的登录口令对接收到的第二密文进行解密,得到所述公共密钥;
所述接收装置使用所述公共密钥对接收到的实体数据密文进行解密得到所述实体数据。
8.根据权利要求2所述的方法,其特征在于,所述存储装置由所述数据交换服务器实现。
9.一种消息中间件的数据加密传输系统,其特征在于,包括:发送装置,用于使用随机生成的公共密钥加密所要发送的实体数据得到实体数据密文以及使用第一密钥加密所述公共密钥得到第一密文,并将所述实体数据密文和所述第一密文发送给数据交换服务器;
所述数据交换服务器,用于使用第一密钥对接收到的第一密文进行解密,得到所述公共密钥;还用于使用第二密钥对解密得到的公共密钥进行加密,并将加密得到的第二密文以及接收到的所述实体数据密文发送给接收装置;
所述接收装置,用于使用第二密钥解密接收到的第二密文得到所述公共密钥,并使用所述公共密钥解密所述实体数据密文得到所述实体数据。
10.根据权利要求9所述的系统,其特征在于,还包括:
存储装置,用于在其数据库或者磁盘文件中预先存储用户信息,所述用户信息包括用户名和登录口令。
11.根据权利要求10所述的系统,其特征在于,所述第一密钥为发送用户的登录口令,所述发送装置包括:
公共密钥生成模块,用于随机生成一个字符串作为所述公共密钥;
第一加密模块,用于使用所述公共密钥生成模块生成的公共密钥对所要发送的实体数据进行加密得到所述实体数据密文;还用于使用发送用户输入的发送用户的登录口令对所述公共密钥进行加密得到所述第一密文;
第一发送模块,用于将所述实体数据密文、所述第一密文以及所述发送用户指定的发送方式的信息发送给所述数据交换服务器。
12.根据权利要求11所述的系统,其特征在于,所述数据交换服务器包括:
第二接收模块,用于接收所述实体数据密文、所述第一密文以及所述发送方式的信息;
第二解密模块,用于从所述存储装置中查找到所述发送用户的登录口令;还用于使用所述发送用户的登录口令解密所述第一密文,得到所述公共密钥。
13.根据权利要求12所述的系统,其特征在于,所述第二密钥为接收用户的登录口令,所述数据交换服务器还包括:
第二发送模块,用于根据所述第二接收模块接收到的所述发送方式的信息以及预先设置的消息路由规则获得路由表;还用于根据所述路由表将所述第二密文以及所述第二接收模块接收到的所述实体数据密文发送给所述路由表中的所有接收用户对应的接收装置;
第二加密模块,用于依次遍历所述路由表中的各个接收用户,根据当前的接收用户的用户名从所述存储装置中查找到所述当前的接收用户的登录口令,并使用所述当前的接收用户的登录口令加密所述公共密钥,得到第二密文。
14.根据权利要求13所述的系统,其特征在于,所述接收装置包括:
第三接收模块,用于接收所述第二密文以及所述实体数据密文;
第三解密模块,用于使用接收用户输入的接收用户的登录口令对所述第三接收模块接收到的第二密文进行解密,得到所述公共密钥;还用于使用所述公共密钥对所述第三接收模块接收到的实体数据密文进行解密得到所述实体数据。
消息中间件的数据加密传输方法和系统\n技术领域\n[0001] 本发明涉及通信领域,具体而言,涉及一种消息中间件的数据加密传输方法和系统。\n背景技术\n[0002] 随着现代计算机技术和网络通讯技术的不断发展普及,利用互联网进行数据交换及资源共享已经非常普遍。由于互联网是一个基于TCP/IP协议的开放式互连网络,用户的数据资源实际上被暴露在网络传输路径上,黑客或非法用户会利用嗅探器等恶意软件拦截传输的数据,因此在INTERNET上实现数据的安全传输就显得尤其重要。\n[0003] 现在较成熟的加密传输技术有Netscape公司开发的安全套接字层协议(Secure Sockets Layer,SSL)、VISA和MasterCard两大信用卡公司联合推出的安全电子交易(Secure ElectronicTransaction,SET)。这两种加密传输方法能够对信用卡和个人信息提供较强的保护。但是这两种加密传输方法要求通信双方进行额外的密钥交换工作,并对消息进行加密和解密,性能较低,只适合电子交易这种小数量的加密传输。另外这两种加密传输方法只适合两台机器(通常是客户机/服务器)之间的加密传输。在企业级数据交换和资源共享的消息中间件领域,通常会涉及两方以上的多方通讯,也包括视音频文件等大数据的传输。传统的加密传输方法无法满足这种应用场合,无法应用在企业级数据交换和资源共享的消息中间件领域。\n[0004] 发明人发现现有技术中至少存在如下问题:相关技术的加密传输方法性能较低、不适合多方通讯以及数据量较大的加密传输。\n发明内容\n[0005] 本发明旨在提供一种消息中间件的数据加密传输方法和系统,能够解决相关技术不适合多方通讯以及数据量较大的加密传输的问题。\n[0006] 在本发明的实施例中,提供了一种消息中间件的数据加密传输方法,包括:发送装置使用随机生成的公共密钥加密所要发送的实体数据得到实体数据密文以及使用第一密钥加密公共密钥得到第一密文,并将实体数据密文和第一密文发送给数据交换服务器;数据交换服务器使用第一密钥对接收到的第一密文进行解密,得到公共密钥;数据交换服务器使用第二密钥对解密得到的公共密钥进行加密,并将加密得到的第二密文以及接收到的实体数据密文发送给接收装置;接收装置使用第二密钥解密接收到的第二密文得到公共密钥,并使用公共密钥解密实体数据密文得到实体数据。\n[0007] 在本发明的实施例中,还提供了一种消息中间件的数据加密传输系统,包括:\n[0008] 发送装置,用于使用随机生成的公共密钥加密所要发送的实体数据得到实体数据密文以及使用第一密钥加密公共密钥得到第一密文,并将实体数据密文和第一密文发送给数据交换服务器;\n[0009] 数据交换服务器,用于使用第一密钥对接收到的第一密文进行解密,得到公共密钥;还用于使用第二密钥对解密得到的公共密钥进行加密,并将加密得到的第二密文以及接收到的实体数据密文发送给接收装置;\n[0010] 接收装置,用于使用第二密钥解密接收到的第二密文得到公共密钥,并使用公共密钥解密实体数据密文得到实体数据。\n[0011] 由于通过数据交换服务器转发加密的实体数据和加密的公共密钥,每次发送数据均随机生成一个公共密钥,使用该公共密钥加密要发送的实体数据,数据交换服务器只需对小数量的公共密钥进行加密和解密操作,且对实体数据的加密是采用对称加密算法进行加密,加密、解密速度快,解决了相关技术不适合数据量较大的加密传输以及不适合多方通讯的问题,从而使得发送端和接收端之间的公共密钥交换通过系统自动完成,避免了密钥交换的麻烦;数据交换服务器只对小数量的公共密钥进行解密和加密操作,避免了在数据交换服务器对大数据量的实体数据进行加密和解密操作而引起的性能问题;同时由于对实体数据本身的加密是采用对称加密算法进行加密,对于数据的加密和解密的速度很快,适合特大数据量数据的加密传输。\n附图说明\n[0012] 此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:\n[0013] 图1示出了根据本发明实施例的消息中间件的数据加密传输方法的流程图;\n[0014] 图2示出了根据本发明实施例的消息中间件的数据加密传输系统的示意图;\n[0015] 图3示出了根据本发明优选实施例的消息中间件的数据加密传输系统的框架示意图;\n[0016] 图4示出了根据本发明优选实施例的消息中间件的数据加密传输系统的整体工作流程图;\n[0017] 图5示出了根据本发明优选实施例的发送装置的工作流程图;\n[0018] 图6示出了根据本发明优选实施例的数据交换服务器的工作流程图;\n[0019] 图7示出了根据本发明优选实施例的接收装置的工作流程图。\n具体实施方式\n[0020] 为了解决相关技术不适合数据量较大的加密传输以及不适合多方通讯的问题,本发明提供了一种消息中间件的数据加密传输方法和系统,其中,方法包括:发送装置使用随机生成的公共密钥加密所要发送的实体数据得到实体数据密文以及使用第一密钥加密公共密钥得到第一密文,并将实体数据密文和第一密文发送给数据交换服务器;数据交换服务器使用第一密钥对接收到的第一密文进行解密,得到公共密钥;数据交换服务器使用第二密钥对解密得到的公共密钥进行加密,并将加密得到的第二密文以及接收到的实体数据密文发送给接收装置;接收装置使用第二密钥解密接收到的第二密文得到公共密钥,并使用公共密钥解密实体数据密文得到实体数据。本发明的数据加密传输方法和系统对于实体数据的加密和解密的速度很快,适合特大数据量数据的加密传输,且数据交换服务器只对小数量的公共密钥进行解密和加密操作,避免了在数据交换服务器对大数据量的实体数据进行加密和解密操作而引起的性能问题。此外,为企业应用系统之间的数据交换提供了点对点、一点对多点、广播方式等多种加密传输方式,提高了数据在网络上传输的保密性和安全性。\n[0021] 下面将参考附图并结合实施例,来详细说明本发明。\n[0022] 图1示出了根据本发明实施例的消息中间件的数据加密传输方法的流程图,包括以下步骤:\n[0023] 步骤S101,发送装置使用随机生成的公共密钥加密所要发送的实体数据得到实体数据密文以及使用第一密钥加密公共密钥得到第一密文,并将实体数据密文和第一密文发送给数据交换服务器;\n[0024] 步骤S102,数据交换服务器使用第一密钥对接收到的第一密文进行解密,得到公共密钥;\n[0025] 步骤S103,数据交换服务器使用第二密钥对解密得到的公共密钥进行加密,并将加密得到的第二密文以及接收到的实体数据密文发送给接收装置;\n[0026] 步骤S104,接收装置使用第二密钥解密接收到的第二密文得到公共密钥,并使用公共密钥解密实体数据密文得到实体数据。\n[0027] 该实施例由于通过数据交换服务器转发加密的实体数据和加密的公共密钥,每次发送数据均随机生成一个公共密钥,使用该公共密钥加密要发送的实体数据,数据交换服务器只需对小数量的公共密钥进行解密和加密操作,且对实体数据的加密是采用对称加密算法进行加密,加密、解密速度快,从而解决了相关技术不适合数据量较大的加密传输以及不适合多方通讯的问题。\n[0028] 该实施例实现了在消息中间件领域的加密传输方案,每一次发送实体数据均生成一个新的随机密钥作为公共密钥,保证实体数据每次加密密钥都是唯一的;发送端和接收端之间的公共密钥交换通过系统自动完成,避免了密钥交换的麻烦;数据交换服务器只对小数量的公共密钥进行加密和解密操作,避免了在数据交换服务器对大数据量的实体数据进行加密和解密操作而引起的性能问题;同时由于对实体数据本身的加密是采用对称加密算法进行加密,对于数据的加密和解密的速度很快,适合特大数据量数据的加密传输。\n[0029] 优选地,在存储装置的数据库或者磁盘文件中预先存储有用户信息,用户信息包括用户名和登录口令。\n[0030] 上述步骤S101中的第一密钥为发送用户的登录口令,步骤S101包括:发送装置随机生成一个字符串作为公共密钥;发送装置使用公共密钥对所要发送的实体数据进行加密得到实体数据密文;发送装置使用发送用户输入的发送用户的登录口令对公共密钥进行加密得到第一密文;发送装置将实体数据密文、第一密文以及发送用户指定的发送方式的信息发送给数据交换服务器。\n[0031] 其中,发送方式的信息包括:点对点、一点对多点或者广播发送方式;当发送方式为点对点或者一点对多点发送方式时,发送方式的信息还包括接收用户的用户名或者用户名列表。通过提供多种发送方式为企业应用系统之间的数据交换提供了点对点(单播)、一点对多点(多播)、广播方式等多种加密传输方式,提高了数据在网络上传输的保密性和安全性。\n[0032] 步骤S102包括:数据交换服务器从存储装置中查找到发送用户的登录口令;数据交换服务器使用发送用户的登录口令解密第一密文,得到公共密钥。\n[0033] 上述步骤S103中的第二密钥为接收用户的登录口令,步骤S103包括:数据交换服务器根据接收到的发送方式的信息以及预先设置的消息路由规则获得路由表;数据交换服务器依次遍历路由表中的各个接收用户,根据当前的接收用户的用户名从存储装置中查找到当前的接收用户的登录口令,并使用当前的接收用户的登录口令加密公共密钥,得到第二密文;根据路由表将第二密文以及接收到的实体数据密文发送给当前的接收用户对应的接收装置。当发送方式为一点到多点或广播方式时,路由表中的接收用户可能是多个,此时,需要依次使用每一个接收用户的登录口令加密公共密钥,并将加密后得到的第二密文发送给每一个接收用户对应的接收装置。\n[0034] 步骤S104包括:接收装置使用接收用户输入的接收用户的登录口令对接收到的第二密文进行解密,得到公共密钥;接收装置使用公共密钥对接收到的实体数据密文进行解密得到实体数据。\n[0035] 上述优选实施例提供了本发明的消息中间件的数据加密传输方法的具体实施方案。通过数据交换服务器访问存储装置,从存储装置中查找预先存储的用户的密码信息,来对公共密钥进行加密和解密。数据交换服务器只对小数量的公共密钥进行加密和解密操作,避免了在数据交换服务器对大数据量的实体数据进行加密和解密操作而引起的性能问题。\n[0036] 上述的存储装置也可以由数据交换服务器实现。用户信息(包括用户名和登录口令)可以预先存储在数据交换服务器以外的另一个装置中,也可以存储在数据交换服务器中,即由数据交换服务器来实现存储装置的功能。\n[0037] 图2示出了根据本发明实施例的消息中间件的数据加密传输系统的示意图,包括:\n[0038] 发送装置10,用于使用随机生成的公共密钥加密所要发送的实体数据得到实体数据密文以及使用第一密钥加密公共密钥得到第一密文,并将实体数据密文和第一密文发送给数据交换服务器;\n[0039] 数据交换服务器20,用于使用第一密钥对接收到的第一密文进行解密,得到公共密钥;还用于使用第二密钥对解密得到的公共密钥进行加密,并将加密得到的第二密文以及接收到的实体数据密文发送给接收装置;\n[0040] 接收装置30,用于使用第二密钥解密接收到的第二密文得到公共密钥,并使用公共密钥解密实体数据密文得到实体数据。\n[0041] 优选地,上述的系统还包括:存储装置40,用于在其数据库或者磁盘文件中预先存储用户信息,用户信息包括用户名和登录口令。\n[0042] 优选地,第一密钥为发送用户的登录口令,发送装置10包括:\n[0043] 公共密钥生成模块101,用于随机生成一个字符串作为公共密钥;\n[0044] 第一加密模块102,用于使用公共密钥生成模块101生成的公共密钥对所要发送的实体数据进行加密得到实体数据密文;还用于使用发送用户输入的发送用户的登录口令对公共密钥进行加密得到第一密文;\n[0045] 第一发送模块103,用于将实体数据密文、第一密文以及发送用户指定的发送方式的信息发送给数据交换服务器。\n[0046] 优选地,数据交换服务器20包括:\n[0047] 第二接收模块201,用于接收实体数据密文、第一密文以及发送方式的信息;\n[0048] 第二解密模块202,用于从存储装置40中查找到发送用户的登录口令;还用于使用发送用户的登录口令解密第一密文,得到公共密钥。\n[0049] 优选地,第二密钥为接收用户的登录口令,数据交换服务器20还包括:\n[0050] 第二发送模块203,用于根据第二接收模块接收到的发送方式的信息以及预先设置的消息路由规则获得路由表;还用于根据路由表将第二密文以及第二接收模块接收到的实体数据密文发送给路由表中的所有接收用户对应的接收装置;\n[0051] 第二加密模块204,用于依次遍历路由表中的各个接收用户,根据当前的接收用户的用户名从存储装置中查找到当前的接收用户的登录口令,并使用当前的接收用户的登录口令加密公共密钥,得到第二密文。\n[0052] 接收装置30包括:\n[0053] 第三接收模块301,用于接收第二密文以及实体数据密文;\n[0054] 第三解密模块302,用于使用接收用户输入的接收用户的登录口令对第三接收模块301接收到的第二密文进行解密,得到公共密钥;还用于使用公共密钥对第三接收模块\n301接收到的实体数据密文进行解密得到实体数据。\n[0055] 图3示出了根据本发明优选实施例的数据加密传输系统的基本框架示意图,接收装置可以有多个(如图中的接收装置A和接收装置B),支持单播、多播和广播等多种数据加密传输方式,其包括:发送装置、数据交换服务器、接收装置。\n[0056] 如图4所示,整体的工作流程包括如下步骤:\n[0057] 步骤401,发送用户将要发送的实体数据传给发送装置,并指定消息发送方式。如此处指定要发送的数据为一个长度为4096字节的字节数组data,发送方式为广播消息。\n[0058] 步骤402,发送装置利用公共密钥生成模块生成一个30个字符长度的随机字符串“I8T7OZ91KCCHZ3LKH5UYX273EM4141”作为对实体数据进行加密的公共密钥。\n[0059] 步骤403,发送装置利用生成的公共密钥“I8T7OZ91KCCHZ3LKH5UYX273EM4141”作为密码对指定的实体数据data进行加密、得到实体数据密文encdata。\n[0060] 步骤404,发送装置利用发送用户的登录口令(此处假定为123456)对公共密钥“I8T7OZ91KCCHZ3LKH5UYX273EM4141”进行加密,得到发送方公共密钥密文(即上述的第一密文)“pRmMgM2B5gsK2zB3jVpohdBZlbAEx+J7/nP3XQF9J22dCPuXadFttIUd3KZMdG0AXNKew6ZFy5SkUcWbMVzC8g==”。\n[0061] 步骤405,发送装置将实体数据密文encdata和发送方公共密钥密文“pRmMgM2B5gsK2zB3jVpohdBZlbAEx+J7/nP3XQF9J22dCPuXadFttIUd3KZMdG0AXNKew6ZFy5SkUcWbMVzC8g==”组装成数据包,并将该数据包发送到数据交换服务器。\n[0062] 步骤406,数据交换服务器接收发送装置发送的数据包,从数据包中得到实体数据密文encdata和发送方公共密钥密文“pRmMgM2B5gsK2zB3jVpohdBZlbAEx+J7/nP3XQF9J22dCPuXadFttIUd3KZMdG0AXNKew6ZFy5SkUcWbMVzC8g==”;数据交换服务器根据消息路由规则得到路由表,此处假定路由结果有两个接收用户App1和App2。\n[0063] 步骤407,数据交换服务器从存储装置中查找得到发送用户的登录口令(此处为\n123456),并使用该登录口令对发送方公共密钥密文“pRmMgM2B5gsK2zB3jVpohdBZlbAEx+J7/nP3XQF9J22dCPuXadFttIUd3KZMdG0AXNKew6ZFy5SkUcWbMVzC 8g==”进行解密,得到公共密钥的明文“I8T7OZ91KCCHZ3LKH5UYX273EM4141”。\n[0064] 步骤408,数据交换服务器从存储装置中得到接收用户App1的登录密码,此处假定为abc123,使用该登录密码对公共密钥“I8T7OZ91KCCHZ3LKH5UYX273EM4141”进行加密,得到接收方公共密钥密文(即上述的第二密文)“kK7yvzY+I0HNyoQgfe5nhTVx85Js2zfbee8Uc7npuD4RL1XXlUh2g5tImkMbjvHgK/oQ38AcY0kgY1UUVOw0GA==”。\n[0065] 步骤409,数据交换服务器将步骤406中得到的实体数据密文encdata和步骤408中得到的接收方公共密钥密文“kK7yvzY+I0HNyoQgfe5nhTVx85Js2zfbee8Uc7npuD4RL1XXlUh2g5tImkMbjvHgK/oQ38AcY0kgY1UUVOw0GA==”组装成新的数据包发送到接收用户App1对应的接收装置A。数据交换服务器根据步骤406得到的路由表对App2重复步骤408和步骤409,直到将数据发送给路由表的每一个接收用户。\n[0066] 步骤410,接收装置A收到数据交换服务器的数据包后从数据包中得到实体数据密文encdata和接收方公共密钥密文“kK7yvzY+I0HNyoQgfe5nhTVx85Js2zfbee8Uc7npuD4RL1XXlUh2g5tImkMbjvHgK/oQ38AcY0kgY1UUVOw0GA==”。\n[0067] 步骤411,接收装置A使用接收用户App1的登录口令(此处为abc123)对接收方公共密钥密文“kK7yvzY+I0HNyoQgfe5nhTVx85Js2zfbee8Uc7npuD4RL1XXlUh2g5tImkMbjvHgK/oQ38AcY0kgY1UUVOw0GA==”进行解密得到公共密钥“I8T7OZ91KCCHZ3LKH5UYX273EM414\n1”。\n[0068] 步骤412,接收装置A使用公共密钥“I8T7OZ91KCCHZ3LKH5UYX273EM4141”对步骤\n410中得到的实体数据密文encdata进行解密,得到发送端传输的真实数据data,完成一次加密数据传输过程。\n[0069] 图5示出了根据本发明优选实施例的发送装置的工作流程图,包括以下步骤:\n[0070] 步骤S501,发送装置接收发送用户要发送的实体数据以及发送用户指定的点对点、一点对多点或广播等消息发送方式;\n[0071] 步骤S502,发送装置生成一个随机字符串作为对实体数据进行加密的公共密钥;\n[0072] 步骤S503,发送装置利用公共密钥对指定的实体数据进行加密、得到实体数据密文;\n[0073] 步骤S504,发送装置利用发送用户的登录口令对公共密钥进行加密,得到发送方公共密钥密文;\n[0074] 步骤S505,发送装置将实体数据密文和发送方公共密钥密文组装成数据包,并将该数据包发送到数据交换服务器。\n[0075] 图6示出了根据本发明优选实施例的数据交换服务器的工作流程图,包括以下步骤:\n[0076] 步骤S601,数据交换服务器接收到发送装置发送的数据包后,从数据包中得到实体数据密文和发送方公共密钥密文;\n[0077] 步骤S602,数据交换服务器从存储装置中得到发送用户的登录口令,并使用该登录口令对发送方公共密钥密文进行解密,得到公共密钥;\n[0078] 步骤S603,数据交换服务器根据消息路由规则得到路由表,交换服务器从路由表得到接收端列表;\n[0079] 步骤S604,数据交换服务器从存储装置中得到接收用户的登录口令,并使用该登录口令对公共密钥进行加密,得到接收方公共密钥密文;\n[0080] 步骤S605,数据交换服务器将得到的实体数据密文和接收方公共密钥密文组装成新的数据包发送到接收装置;\n[0081] 步骤S606,数据交换服务根据得到的路由表判断是否已将公共密钥加密并将加密的公共密钥和实体数据密文转发给所有接收用户,若否,则继续对下一个接收端重复步骤S604和步骤S605,直到将加密的公共密钥和实体数据密文发送给路由表中的每一个接收用户。\n[0082] 图7示出了根据本发明优选实施例的接收装置的工作流程图,包括以下步骤:\n[0083] 步骤S701,接收装置收到数据交换服务器的数据包后从数据包中得到实体数据密文和接收方公共密钥密文;\n[0084] 步骤S702,接收装置使用接收用户的登录口令对接收方公共密钥密文进行解密得到公共密钥;\n[0085] 步骤S703,接收装置使用公共密钥对实体数据密文进行解密,得到发送端传输的真实数据,完成一次加密传输过程。\n[0086] 采用本发明的数据加密传输方法和系统能够提高应用系统之间的数据传输安全性和数据传输性能,可以保证数据在网络上传输加密后的数据,防止非法用户拦截传输的数据后用于非法目的,保证数据传输的安全性。\n[0087] 从以上的描述中,可以看出,本发明上述的实施例实现了如下技术效果:\n[0088] (1)对每一次消息均生成一个新的随机密钥作为公共密钥,保证实体数据每次加密密钥都是唯一的;发送端和接收端之间的公共密钥交换通过系统自动完成,避免了密钥交换的麻烦;\n[0089] (2)数据交换服务器只对小数量的公共密钥进行解密和加密操作,避免了在数据交换服务器对大数据量的实体数据进行加密和解密操作而引起的性能问题;\n[0090] (3)对于实体数据的加密和解密的速度很快,适合特大数据量数据的加密传输;\n[0091] (4)提供多种发送方式为企业应用系统之间的数据交换提供了点对点、一点对多点、广播方式等多种加密传输方式,提高了数据在网络上传输的保密性和安全性。\n[0092] 显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。\n[0093] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
法律信息
- 2022-09-23
专利权的转移
登记生效日: 2022.09.14
专利权人由北京大学变更为北京大学
地址由100871 北京市海淀区颐和园路5号变更为100871 北京市海淀区颐和园路5号
专利权人由北大方正集团有限公司 方正国际软件(北京)有限公司 变更为新方正控股发展有限责任公司 方正国际软件(北京)有限公司
- 2013-04-10
- 2011-07-20
实质审查的生效
IPC(主分类): H04L 9/32
专利申请号: 200910241425.0
申请日: 2009.12.08
- 2011-06-08
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2008-06-11
|
2007-12-10
| | |
2
| |
2009-06-24
|
2008-12-19
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |