一种安全交换数据的方法

文档序号:10538752阅读:341来源:国知局
一种安全交换数据的方法
【专利摘要】本发明提供一种安全交换数据的方法,包括获取数据交换的双方各自发送的第一数据交换请求、对第一数据交换请求进行分析处理,获取数据交换的双方各自发送的第二数据交换请求、接收数据交换的双方分别根据对方发送的第二数据交换请求返回的第三数据交换请求以及接收数据交换的双方分别根据第三数据交换请求返回的加密待交换数据,将加密待交换数据分别发送给数据交换的对方。本发明的方法通过引导双方同时交换数据,在保证数据不泄密的情况下,对比出双方各自需要的数据索引清单,在双方确认的情况下,再给出完整的密文或者明文进行交换,从而可以避免出现一方给出数据,另一方不给数据的情况,通过加密签名机制,进一步提高了数据交换的安全性。
【专利说明】
一种安全交换数据的方法
技术领域
[0001]本发明涉及信息安全技术领域,尤其涉及一种安全交换数据的方法。
【背景技术】
[0002]数据交换的应用越来越广泛,信息清单是一种表达特定含义的名单的数据,如黑名单、白名单等,其索引本身就是核心信息。一般各自都具有自己的特定名单数据,当希望进行信息共享,需要与其他方进行数据交换时,通常存在如下问题:就是一方将自己的数据给了对方,对方看过以后反悔不交换了,其实此时自己的数据已经泄露,对方获益,而己方未获益反而损失了自己的数据资源。

【发明内容】

[0003]本发明的目的在于提供一种安全交换数据的方法,用以解决现有技术中数据交换时存在的一方发出数据另一方不给数据的安全问题。
[0004]为了实现上述目的,本发明提供了一种安全交换数据的方法,包括如下步骤:
[0005]获取数据交换的双方各自发送的第一数据交换请求,其中,第一数据交换请求中包括数据交换的双方各自所有的数据索引清单;
[0006]对第一数据交换请求进行分析处理,获取数据交换的双方各自发送的第二数据交换请求,其中,第二数据交换请求中包括数据交换的双方各自能够进行数据交换的数据索引清单和数量,并分别将其发送给数据交换的对方;
[0007]接收数据交换的双方分别根据对方能够进行数据交换的数据索引清单和数量返回的第三数据交换请求,其中,第三数据交换请求中包括数据交换的双方各自希望进行数据交换的数据索引清单和数量,并分别将其发送给数据交换的对方;
[0008]接收数据交换的双方分别根据对方希望进行数据交换的数据索引清单和数量返回的加密待交换数据,将加密待交换数据分别发送给数据交换的对方。
[0009]进一步的,数据交换的双方协商确定数据交换的模式。
[0010]采用上述本发明技术方案的有益效果是:通过引导双方同时交换数据,在保证数据不泄密的情况下,对比出双方各自需要的数据索引清单,在双方确认的情况下,再给出完整的密文或者明文进行交换,从而可以避免出现一方给出数据,另一方不给数据的情况,通过加密签名机制,进一步提高了数据交换的安全性。
【附图说明】
[0011 ]图1为本发明安全交换数据的方法流程图。
【具体实施方式】
[0012]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
[0013]本发明实施例公开了一种安全交换数据的方法,如图1所示,该方法可以包括如下步骤:
[0014]步骤SlOl,数据交换的双方协商确定数据交换的模式;
[0015]在本发明实施例中,如果需要进行数据交换的双方为机构X和机构Y,那么,机构X和机构Y在进行数据交换之前,可以通过数据交换平台确定数据交换的模式。其中,数据交换的模式具体可以包括:数据预处理方式和参数,即在原始信息中是否增加随机值,前端增加还是后端增加,增加的随机值是什么等;数据处理的单向散列算法,其算法可以选择MD5、SHA-1或SHA256等;数据选取方式,即确定选取多少长度的信息,选择那一部分的信息进行对比;数据交换方式,即采用密文交换或者明文交换等。
[0016]在本发明实施例中,双方可以采用离线方式协商,也可以采用在线方式协商。数据交换的模式可以双方协商一次后长期使用,也可以每次交换前都重新协商确定。以下举例说明机构X和机构Y协商确定的数据交换的模式,如在原数据末尾增加end值,使用SHA256算法,选取数据的前30字节,密文交换。
[0017]步骤S102,获取数据交换的双方各自发送的第一数据交换请求;
[0018]需要说明的是,本发明的执行主体是数据交换平台Z,本实施例还是以机构X和机构Y为例进行说明,在本实施例中,机构对用有唯一的公私钥对(Ρχ,Κχ),数据索引清单Dx,包括Nx条索引;机构Y拥有唯一的公私钥对(Py,Ky),数据索引清单Dy,包括Ny条索引;数据交换平台Z拥有唯一的公私钥对(Pz,Kz)。使用公钥P加密数据A记为P(A),使用私钥K对数据A进行签名记为K(A),假设机构Χ、Υ和数据交换平台Z都认可各方的公钥信息。
[0019]则机构X和Y需要进行数据交换时,都分别向数据交换平台Z发送各自的第一数据交换请求,其中,第一数据交换请求中包括数据交换的双方各自所有的数据索引清单,即机构X对清单Dx中的数据按照协商确定的数据交换的模式进行处理:在其末尾增加end参数;使用SHA256算法进行HASH处理;提取每条记录的前30字节形成新的清单列表Dx30。机构Y则对Dy进行相同处理,形成新的清单列表Dy 30。
[0020]机构对是取Dx30清单,使用机构X的私钥签名发送给数据交换平台Z,记为Dx30+Kx(Dx30) ο机构Y也将Dy30清单签名后发送给数据交换平台Z,记为Dy30+Ky (Dy30)。
[0021]步骤S103,对第一数据交换请求进行分析处理,获取数据交换的双方各自发送的第二数据交换请求;
[0022]在本实施例中,第二数据交换请求中包括数据交换的双方各自能够进行数据交换的数据索引清单和数量,并分别将其发送给数据交换的对方。具体为:数据交换平台Z将机构X和Y发来的信息进行验证后,进行密文对比,获取不在X机构清单列表中的Y机构清单Dy-X,数量记为Cy-X,获取不在Y机构清单列表中的X机构清单Dx-y,数量记为Cx_y,然后将Dy-χ和Cx-y签名发送给X,记为Dy-x+Cx-y+Kz (Dy-x+Cx-y),将Dx_y和Cy-χ签名发送给Y,记为Dx-y+Cy-χ+Κζ(Dx-y+Cy-x)。
[0023]步骤S104,接收数据交换的双方分别根据对方能够进行数据交换的数据索引清单和数量返回的第三数据交换请求;
[0024]在本实施例中,第三数据交换请求中包括数据交换的双方各自希望进行数据交换的数据索引清单和数量,并分别将其发送给数据交换的对方。具体的,机构X收到Z方发过来的Dy-x和Cx-y,如果希望进行交换,则计算Dy-χ的数量Cy-χ,选取Cx_y和Cy-χ中的较小值作为交换数量Cxy,从Dy-χ中选取Cxy数量的交换清单Dxy,签名后发送到Z,记为Cxy+Dxy+Kx(Cxy+Dxy),表明希望得到Y的Dxy对应的清单。同样原理,机构Y收到Z方发过来的Dx_y和Cy-X,如果希望进行交换,则计算Dx-y的数量Cx-y,选取Cx-y和Cy-χ中的较小值作为交换数量Cxy,从Dx-y中选取Cxy数量的交换清单Dyx,签名后发送到Z,记为Cxy+Dyx+Ky (Cxy+Dyx),表明希望得到X的Dyx对应的清单。
[0025]当Z 收到X 发来的Cxy+Dxy+Kx (Cxy+Dxy)和 Y发来的Cxy+Dyx+Ky (Cxy+Dyx)后,确认双方都希望交换清单,则将请求分别发给Y和X。
[0026]步骤S105,接收数据交换的双方分别根据对方希望进行数据交换的数据索引清单和数量返回的加密待交换数据,将加密待交换数据分别发送给数据交换的对方。
[0027]当X收到Cxy+Dyx+Ky(Cxy+Dyx)后,验证Y的签名是否正确,然后提取Dyx对应的原文或者完整密文DX,使用Y的公钥加密后发给Z,记为Py(DX)+Kx(Py(DX))。同样的,当Y收到Cxy+Dxy+Kx(Cxy+Dxy)后,验证X的签名是否正确,然后提取Dxy对应的原文或者完整密文DY,使用X的公钥加密后发给Z,记为Px(DY)+Ky(Px(DY))。
[0028]当Z收到X发来的?7(0乂)+1^(?7(0乂))和¥发来的?40¥)+1^(?40¥))后,确认双方都完成交换清单准备,则将交换的清单分别发给Y和X。
[0029]X收到Px(DY)+Ky(Px(DY))后,验证Y的签名是否正确,然后使用自身的私钥Kx解密Px(DY),得到Y发送的清单DY,然后将DY与Dxy进行比较,确认Y发送的DY是否为希望交换的清单,比较方法是,若DY为明文,则将DY中的每项清单末尾增加end参数,使用SHA256算法进行HASH处理,若Dxy清单每一项是交换清单HASH处理后每一项的前30字节,则表明交换清单正确;如果DY为密文,若Dxy清单每一项为DY每一项的前30字节,则表明交换清单正确。同样道理,Y收到Py (DX) +Kx(Py (DX))后,验证X的签名是否正确,然后使用自身的私钥Ky解密Py(DX),得到X发送的清单DX,然后将DX与Dyx进行比较,按照同样的方法确认X发送的DX是否为希望交换的清单。
[0030]清单交换后,如果采用的是明文清单交换,则交换的清单可以直接与自有清单合并,形成新的清单数据。如果采用的是密文清单交换,则无法与自有清单直接合并,如果要判断外部信息是否在加密的清单中,则需要采用单独的应用流程:首先,将外部信息根据密文规则处理,如在信息末尾增加end参数,使用SHA256算法进行HASH处理;然后将处理后的外部信息密文与密文清单进行对比,如果有匹配项,则说明外部信息在清单中,如果没有匹配项,则说明外部信息未在清单中。
[0031]本发明的方法通过第三方机构即数据交换平台对双方发送的数据进行对比和引导双方同时交换数据。在交换的过程中,通过将索引进行单向散列HASH处理成密文,并且给出部分的密文进行对比,在保证信息不泄密的情况下(即使对方获取到这些密文也无法应用),可以对比出双方各自需要的数据索引清单,在双方确认的情况下,再给出完整的密文或者明文数据进行交换,从而可以避免出现一方给出数据,另一方不给数据的情况;另外,通过采用公私钥的加密签名机制,也可以保证第三方无法解密和使用信息,进一步提高了数据交换的安全性。
[0032]本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0033]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
【主权项】
1.一种安全交换数据的方法,其特征在于,包括如下步骤: 获取数据交换的双方各自发送的第一数据交换请求,所述第一数据交换请求中包括数据交换的双方各自所有的数据索引清单; 对所述第一数据交换请求进行分析处理,获取数据交换的双方各自发送的第二数据交换请求,所述第二数据交换请求中包括数据交换的双方各自能够进行数据交换的数据索引清单和数量,并分别将其发送给数据交换的对方; 接收数据交换的双方分别根据对方能够进行数据交换的数据索引清单和数量返回的第三数据交换请求,所述第三数据交换请求中包括数据交换的双方各自希望进行数据交换的数据索引清单和数量,并分别将其发送给数据交换的对方; 接收数据交换的双方分别根据对方希望进行数据交换的数据索引清单和数量返回的加密待交换数据,将所述加密待交换数据分别发送给数据交换的对方。2.根据权利要求1所述的安全交换数据的方法,其特征在于,在所述获取数据交换的双方各自发送的第一数据交换请求之前还包括: 数据交换的双方协商确定数据交换的模式。
【文档编号】H04L29/06GK105897737SQ201610327988
【公开日】2016年8月24日
【申请日】2016年5月17日
【发明人】韩洪慧
【申请人】上海凭安网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1