一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种验证数据的方法及系统、数据提供端、数据验证端与流程

2022-05-06 07:05:11 来源:中国专利 TAG:


1.本发明涉及计算机技术领域,尤其涉及一种验证数据的方法及系统、数据提供端、数据验证端。


背景技术:

2.在电子交易过程中,交易发起方在发起交易时,需要将证明自己身份的证明数据发送至交易受理方,交易受理方接收到该证明数据后会向有资质颁发该证明数据的第三方进行验证,当验证通过时,说明该证明数据真实可信,交易受理方才会受理交易发起方发起的交易。
3.在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
4.在实践中,交易发起方和交易受理方二者的业务往来信息常常需要保密,不能或者不愿被第三方知晓,但是在交易受理方请求第三方验证交易发起方的证明数据时,第三方就知道了交易发起方是交易受理方的客户、二者正在进行业务往来,从而使交易双方的业务关系具有了被泄露的风险,降低了二者交易的安全性。


技术实现要素:

5.有鉴于此,本发明实施例提供一种验证数据的方法及系统、数据提供端、数据验证端,数据提供端能够针对交易请求中包括的待验证数据的每一位,分别确定出对应的多个第一密钥,并选择与待验证数据每一位的值相对应的第一密钥作为第一密文。数据提供端将该第一密文打包进数据验证请求,与上述多个第一密钥一起发送给数据验证端,以使数据验证端根据第一密钥和验证数据对第一密文进行验证。数据提供端再根据数据验证端的验证反馈,确定是否执行交易请求,从而使得数据验证端在不知晓与数据提供端进行交易的客户信息时就可以提供待验证数据是否正确的验证反馈,既保证了交易的正常进行,又降低了交易双方业务关系被泄露的风险,提高了交易的安全性。
6.为实现上述目的,根据本发明实施例的一个方面,提供了一种验证数据的方法。
7.本发明实施例的一种验证数据的方法应用于数据提供端,包括:
8.接收交易请求,其中,交易请求中包括:交易数据和一位或多位待验证数据;
9.针对待验证数据的每一位,分别确定对应的多个第一密钥;其中,每一位待验证数据对应的第一密钥的个数与自身的进制相关;
10.针对每一位待验证数据:从待验证数据对应的多个第一密钥中,选择与待验证数据的值相对应的第一密钥作为第一密文;
11.向数据验证端发送数据验证请求和各位待验证数据分别对应的多个第一密钥,其中,数据验证请求包含第一密文,以使数据验证端根据第一密钥和验证数据对第一密文进行验证;
12.对数据验证端的验证反馈进行解析,以确定验证反馈是否指示待验证数据正确;当解析出待验证数据正确时,根据交易数据执行交易请求。
13.可选地,
14.通过不经意传输协议向数据验证端发送各位待验证数据分别对应的多个第一密钥,以使数据验证端从多个第一密钥中获得至少一个与验证数据相对应的第二密文,并根据第二密文对第一密文进行验证。
15.可选地,
16.数据验证请求还包含:验证结果对应的多个第二密钥,当验证反馈是被第二密钥加密后的验证结果时,对数据验证端的验证反馈进行解析,以确定验证反馈是否指示待验证数据正确;当解析出待验证数据正确时,根据交易数据执行交易请求,包括:
17.对数据验证端的验证反馈进行解析,其中,验证反馈中包含第二密钥;
18.确定第二密钥对应的验证结果是否指示待验证数据正确,当第二密钥指示待验证数据正确时,执行交易请求。
19.可选地,
20.当验证反馈是验证结果对应的第二密钥时,确定第二密钥对应的验证结果是否指示待验证数据正确,包括:
21.根据预先存储的真值表,确定第二密钥对应的验证结果是否指示待验证数据正确,其中,真值表中包含第二密钥、验证结果以及第二密钥与验证结果之间的对应关系。
22.为实现上述目的,根据本发明实施例的另一方面,提供了一种验证数据的方法。
23.本发明实施例的一种验证数据的方法应用于数据验证端,包括:
24.接收数据提供端发来的数据验证请求和各位待验证数据分别对应的多个第一密钥,其中,数据验证请求包含第一密文;
25.根据第一密钥和验证数据对第一密文进行验证,生成验证反馈,其中,验证反馈指示了待验证数据是否正确;
26.向数据提供端返回验证反馈。
27.可选地,
28.通过计算电路,根据第一密钥和验证数据对第一密文进行验证,生成验证反馈。
29.可选地,
30.该方法还包括:
31.接收数据提供端发送的真值表,以使计算电路根据真值表得到用于生成验证反馈的第二密钥。
32.可选地,
33.接收数据提供端发来的数据验证请求和各位待验证数据分别对应的多个第一密钥,包括:
34.通过不经意传输协议,从多个第一密钥中接收与验证数据相对应的第一密钥,生成至少一个与验证数据相对应的第二密文。
35.可选地,
36.将至少一个第二密文和第一密文输入计算电路,以使计算电路分别对每一个第二密文与第一密文进行逐位比较;
37.根据计算电路的输出,生成验证反馈。
38.可选地,
39.计算电路输出的验证反馈是根据第二密钥生成的。
40.可选地,
41.计算电路包括:加法电路和等值电路;计算电路分别对每一个第二密文与第一密文进行逐位比较,包括:
42.a1:从未被对比过的第二密文中确定当前第二密文;
43.a2:将第一密文和当前第二密文的第一位作为当前对比位;
44.a3:针对当前对比位,利用加法电路对当前对比位对应的值做差;
45.a4:利用等值电路判断加法电路的输出是否为第一预设值;如果是,执行a5,如果否执行a1;
46.a5:判断当前对比位是否为第一密文或当前第二密文的最后一位;如果是,根据第二密钥生成验证反馈;如果否将当前对比为的下一位作为当前对比位,并执行a3。
47.为实现上述目的,根据本发明实施例的又一方面,提供了一种数据提供端。
48.本发明实施例的一种数据提供端包括请求接收模块、密钥确定模块、密文生成模块、密钥发送模块以及交易执行模块;其中:
49.请求接收模块,用于接收交易请求,其中,交易请求中包括:交易数据和一位或多位待验证数据;
50.密钥确定模块,用于针对请求接收模块接收到的待验证数据的每一位,分别确定对应的多个第一密钥;其中,每一位待验证数据对应的第一密钥的个数与自身的进制相关;
51.密文生成模块,用于针对每一位待验证数据:从密钥确定模块确定出的待验证数据对应的多个第一密钥中,选择与待验证数据的值相对应的第一密钥作为第一密文;
52.密钥发送模块,用于向数据验证端发送数据验证请求和各位待验证数据分别对应的多个第一密钥,其中,数据验证请求包含密文生成模块生成的第一密文,以使数据验证端根据第一密钥和验证数据对第一密文进行验证;
53.交易执行模块,用于对数据验证端的验证反馈进行解析,以确定验证反馈是否指示待验证数据正确;当解析出待验证数据正确时,根据请求接收模块接收到的交易数据执行交易请求。
54.为实现上述目的,根据本发明实施例的又一方面,提供了一种数据验证端。
55.本发明实施例的一种数据验证端包括密钥接收模块、密文验证模块以及反馈返回模块;其中:
56.密钥接收模块,用于接收数据提供端发来的数据验证请求和各位待验证数据分别对应的多个第一密钥,其中,数据验证请求包含第一密文;
57.密文验证模块,用于根据密钥接收模块接收到的第一密钥和验证数据对第一密文进行验证,生成验证反馈,其中,验证反馈指示了待验证数据是否正确;
58.反馈返回模块,用于向数据提供端返回密文验证模块生成的验证反馈。
59.为实现上述目的,根据本发明实施例的又一方面,提供了一种验证数据的系统。
60.本发明实施例的一种验证数据的系统包括:上述发明实施例提供的一种数据提供端以及上述发明实施例提供的一种数据验证端。
61.为实现上述目的,根据本发明实施例的又一方面,提供了一种验证数据的电子设备。
62.本发明实施例的一种验证数据的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本发明实施例的一种验证数据的方法。
63.为实现上述目的,根据本发明实施例的再一方面,提供了一种计算机可读存储介质。
64.本发明实施例的一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现本发明实施例的一种验证数据的方法。
65.上述发明中的一个实施例具有如下优点或有益效果:
66.1.数据提供端能够针对交易请求中包括的待验证数据的每一位,分别确定出对应的多个第一密钥,并选择与待验证数据每一位的值相对应的第一密钥作为第一密文。数据提供端将该第一密文打包进数据验证请求,与上述多个第一密钥一起发送给数据验证端,以使数据验证端根据第一密钥和验证数据对第一密文进行验证。数据提供端再根据数据验证端的验证反馈,确定是否执行交易请求,从而使得数据验证端在不知晓与数据提供端进行交易的客户信息时就可以提供待验证数据是否正确的验证反馈,既保证了交易的正常进行,又降低了交易双方业务关系被泄露的风险,提高了交易的安全性。
67.2.在接收到数据提供端发来的包含第一密文的数据验证请求、以及各位待验证数据分别对应的多个第一密钥之后,数据验证端根据第一密钥和自身的验证数据对第一密文进行验证,生成指示待验证数据是否正确的验证反馈,并向数据提供端返回该验证反馈,以使数据提供端确定是否执行交易请求,从而使得数据验证端在不知晓与数据提供端进行交易的客户信息时就可以提供待验证数据是否正确的验证反馈,既保证了交易的正常进行,又降低了交易双方业务关系被泄露的风险,提高了交易的安全性。
68.上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
69.附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
70.图1是根据本发明实施例的一种应用于数据提供端的验证数据的方法的主要步骤的示意图;
71.图2是根据本发明实施例的一种应用于数据验证端的验证数据的方法的主要步骤的示意图;
72.图3是根据本发明实施例的一种计算电路分别对每一个第二密文与第一密文进行逐位比较的方法的主要步骤的示意图;
73.图4是根据本发明实施例的一种数据提供端的主要模块的示意图;
74.图5是根据本发明实施例的一种数据验证端的主要模块的示意图;
75.图6是根据本发明实施例的一种验证数据的系统的主要模块的示意图;
76.图7是本发明实施例可以应用于其中的示例性系统架构图;
77.图8是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
78.以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
79.需要指出的是,在不冲突的情况下,本发明的实施例以及实施例中的技术特征可以相互结合。
80.图1是根据本发明实施例的一种应用于数据提供端的验证数据的方法的主要步骤的示意图。
81.如图1所示,本发明实施例的一种应用于数据提供端的验证数据的方法主要包括以下步骤:
82.步骤s101:接收交易请求,其中,交易请求中包括:交易数据和一位或多位待验证数据。
83.在本发明实施例中,交易请求由交易发起方发来,待验证数据则是交易发起方用于证明自己身份的证明数据,例如交易发起方自己的数字证书、电子社保卡、电子身份证等。待验证数据可以是任意进制的数据。由于在数据在网络中是以二进制传输的,因此在本发明一个优选的实施例中,待验证数据是二进制的数据。
84.步骤s102:针对待验证数据的每一位,分别确定对应的多个第一密钥;其中,每一位待验证数据对应的第一密钥的个数与自身的进制相关。
85.举例来说,假设待验证数据为二进制下的10,此时待验证数据共有两位,则数据提供端会根据待验证数据的进制,针对待验证数据的每一位,分别确定相对应的多个第一密钥,即:数据提供端为待验证数据中“1”所在的第一数据位生成k0和k1两个第一密钥,其中,k0是第一数据位的值为0时对应的第一密钥,k1是第一数据位的值为1时对应的第一密钥;数据提供端又为待验证数据中“0”所在的第二数据位生成k0’和k1’两个第一密钥,其中,k0’是第二数据位的值为0时对应的第一密钥,k1’是第二数据位的值为1时对应的第一密钥。并且,k0、k1、k0’和k1’是四个各不相同的第一密钥。
86.同理,假设待验证数据为二进制下的101,则数据提供端将针对待验证数据这三位,分别生成m0、m1、m0’、m1’、m0”和m1”六个各不相同的第一密钥。当待验证数据有更多位时,第一密钥的生成方法以此类推,在此不再赘述。
87.在本发明实施例中,第一密钥可以是数据提供端实时生成的,也可以是从预先生成的密钥库中选择的,对此本方案不作具体限定。
88.步骤s103:针对每一位待验证数据:从待验证数据对应的多个第一密钥中,选择与待验证数据的值相对应的第一密钥作为第一密文。
89.在本发明实施例中,数据提供端不会直接将待验证数据发送至数据验证端,而是根据待验证数据生成第一密文,然后将第一密文发送至数据验证端进行验证,使得数据验证端无从知晓证明数据,进而无法知道交易发起方是谁,从而实现了数据提供端与交易发起方的业务往来信息对数据验证端保密的效果。
90.具体地,数据提供端针对每一位待验证数据,均执行:从待验证数据对应的多个第一密钥中,选择与待验证数据的值相对应的第一密钥作为第一密文。仍以上述待验证数据
为二进制下的10为例:数据提供端从生成的k0、k1、k0’和k1’四个第一密钥中,根据待验证数据10,针对第一数据位为1,选择对应的第一密钥k1,针对第二数据位为0,选择对应的第一密钥k0’,作为第一密文k1k0’。
91.步骤s104:向数据验证端发送数据验证请求和各位待验证数据分别对应的多个第一密钥,其中,数据验证请求包含第一密文,以使数据验证端根据第一密钥和验证数据对第一密文进行验证。
92.在本发明实施例中,数据提供端将第一密文打包进数据验证请求并发送至数据验证端,并且利用密码学协议中的不经意传输协议,向数据验证端发送各位待验证数据分别对应的多个第一密钥,以使数据验证端根据第一密钥和验证数据对第一密文进行验证。
93.仍以上述待验证数据为二进制下的10为例:数据提供端将第一密文k1k0’打包进数据验证请求并发送至数据验证端,并且利用密码学协议中的不经意传输协议,向数据验证端发送各位待验证数据分别对应的多个第一密钥即k0、k1、k0’和k1’,根据不经意传输协议的特性,数据验证端并不能同时获得k0、k1、k0’和k1’这四把第一密钥,而是也需要向不经意传输协议发送数据,才能获取到发送给不经意传输协议的数据相对应的第一密钥。假设数据验证端有11、00、10三个验证数据,则数据验证端向不经意传输协议发送11、00、10,得到三个第二密文k1k1’、k0k0’、k1k0’。由于每个第一密钥之间不可区分,所以数据验证端不知道三个第二密文k1k1’、k0k0’、k1k0’与三个验证数据11、00、10之间的对应关系,同时,根据不经意传输协议的特性,数据提供端也不知道数据验证端发送了什么、取得了什么,从而实现了数据提供端与交易发起方的业务往来信息对数据验证端保密的效果。
94.步骤s105:对数据验证端的验证反馈进行解析,以确定验证反馈是否指示待验证数据正确;当解析出待验证数据正确时,根据交易数据执行交易请求。
95.在本发明实施例中,数据验证请求还可以包含:验证结果对应的多个第二密钥。验证结果可以用0和1指示,其中,可以由0指示待验证数据不正确、1指示待验证数据正确,也可以由0指示待验证数据正确、1指示待验证数据不正确。并且数据提供端可以为不同的验证结果生成不同的第二密钥,第二密钥的个数可以与验证结果的进制有关,举例来说,假设验证结果为0时指示待验证数据不正确,并生成其对应的第二密钥p0;验证结果为1时指示待验证数据正确,并生成其对应的第二密钥p1。
96.在本发明实施例中,数据验证端根据第一密钥和验证数据对第一密文进行验证之后,会向数据提供端返回验证反馈,其中,验证反馈可以是被第二密钥加密后的验证结果,也可以直接是第二密钥。
97.当验证反馈是被第二密钥加密后的验证结果时,步骤s105可以进一步包括:对数据验证端的验证反馈进行解析,其中,验证反馈中包含第二密钥;确定第二密钥对应的验证结果是否指示待验证数据正确,当第二密钥指示待验证数据正确时,执行交易请求。
98.当验证反馈直接是第二密钥时,步骤s105可以进一步包括:根据预先存储的真值表,确定第二密钥对应的验证结果是否指示待验证数据正确,其中,真值表中包含第二密钥、验证结果以及第二密钥与验证结果之间的对应关系;当解析出待验证数据正确时,根据交易数据执行交易请求。
99.根据本发明实施例的一种应用于数据提供端的验证数据方法可以看出,数据提供端能够针对交易请求中包括的待验证数据的每一位,分别确定出对应的多个第一密钥,并
选择与待验证数据每一位的值相对应的第一密钥作为第一密文。数据提供端将该第一密文打包进数据验证请求,与上述多个第一密钥一起发送给数据验证端,以使数据验证端根据第一密钥和验证数据对第一密文进行验证。数据提供端再根据数据验证端的验证反馈,确定是否执行交易请求,从而使得数据验证端在不知晓与数据提供端进行交易的客户信息时就可以提供待验证数据是否正确的验证反馈,既保证了交易的正常进行,又降低了交易双方业务关系被泄露的风险,提高了交易的安全性。
100.图2是根据本发明实施例的一种应用于数据验证端的验证数据的方法的主要步骤的示意图。
101.如图2所示,本发明实施例的一种应用于数据验证端的验证数据的方法主要包括以下步骤:
102.步骤s201:接收数据提供端发来的数据验证请求和各位待验证数据分别对应的多个第一密钥,其中,数据验证请求包含第一密文。
103.在本发明实施例中,数据验证端可以通过密码学协议中的不经意传输协议,从多个第一密钥中接收与自身的验证数据相对应的第一密钥,生成至少一个与验证数据相对应的第二密文。仍以上述待验证数据为二进制下的10为例:数据提供端将各位待验证数据分别对应的多个第一密钥即k0、k1、k0’和k1’发送给了不经意传输协议,数据验证端接收到数据验证请求后,也将自身的三个验证数据11、00、10发送给不经意传输协议,就从多个第一密钥中接收到了与自身的验证数据相对应的第一密钥,生成了三个与验证数据相对应的第二密文k1k1’、k0k0’、k1k0’。但是,由于每个第一密钥之间不可区分,所以数据验证端并不能知道三个第二密文k1k1’、k0k0’、k1k0’与三个验证数据11、00、10之间的对应关系。
104.步骤s202:根据第一密钥和验证数据对第一密文进行验证,生成验证反馈,其中,验证反馈指示了待验证数据是否正确。
105.在本发明实施例中,数据验证端可以通过计算电路,根据第一密钥和验证数据对第一密文进行验证,生成验证反馈。具体地,计算电路可以包括加法电路和等值电路,数据验证端则将至少一个第二密文和第一密文输入该计算电路,以使计算电路分别对每一个第二密文与第一密文进行逐位比较。然后可以由数据验证端根据计算电路的输出,生成验证反馈,也可以由计算电路根据逐位比较的结果直接生成验证反馈。在本发明一个优选的实施例中,是由计算电路根据逐位比较的结果直接生成验证反馈,以使数据验证方无法得知验证结果(因为验证结果被加密或被第二密钥替代),也就不知道自身的验证数据中是否有待验证数据,从而进一步加强了数据提供端与交易发起方的业务往来信息对数据验证端保密的效果。
106.举例来说,计算电路逐位比较的结果为0,然后用0对应的第二密钥p0对0进行加密,作为输出的验证反馈,数据验证端没有第二密钥p0对应的私钥,所以无法得知验证结果究竟是0还是1,而数据提供端则可以根据第二密钥p0对应的私钥对验证反馈进行解密,得到验证结果为0,进而确定待验证数据不正确,拒绝执行交易请求。
107.在本发明实施例中,当计算电路根据逐位比较的结果直接生成验证反馈时,计算电路输出的验证反馈是根据第二密钥生成的。其中,验证反馈可以是被第二密钥加密后的验证结果,也可以直接是第二密钥。
108.计算电路分别对每一个第二密文与第一密文进行逐位比较的方法如图3所示,主
要包括以下步骤:
109.步骤s301:从未被对比过的第二密文中确定当前第二密文;
110.步骤s302:将第一密文和当前第二密文的第一位作为当前对比位;
111.步骤s303:针对当前对比位,利用加法电路对当前对比位对应的值做差;
112.步骤s304:利用等值电路判断加法电路的输出是否为第一预设值;如果是,执行步骤s305,否则返回执行步骤s301;
113.步骤s305:判断当前对比位是否为第一密文或当前第二密文的最后一位;如果是,执行步骤s307,否则执行步骤s306。
114.步骤s306:将当前对比为的下一位作为当前对比位,并返回执行步骤s303;
115.步骤s307:根据第二密钥生成验证反馈。
116.在本发明一个优选的实施例中,第一预设值可以是0。
117.仍以上述待验证数据为二进制下的10为例对本部分进行说明:当数据验证端通过不经意传输协议,生成第二密文k1k1’、k0k0’、k1k0’之后,将数据验证请求中包含的第一密文k1k0’与生成的第二密文k1k1’、k0k0’、k1k0’输入计算电路,对第一密文进行验证,以确定第一密文是否包含于第二密文中,如果确定出第一密文包含于第二密文中,则说明待验证数据正确可信,数据提供端就可以执行交易请求了。由于计算电路通常是布尔电路,所以第一密文和第二密文在计算过程中都要转化为二进制进行计算,所以假设第一密文转化为二进制为111000,假设第二密文转化为二进制分别为111111、000000、111000,则计算电路需要将第一密文分别与三个第二密文进行逐位比较:首先选取111111作为当前第二密文,然后将第一密文和当前第二密文从左向右数起的第一位作为当前对比位,并针对当前对比位,利用加法电路对当前对比位对应的值做差,可得差值为第一预设值0,并且判断得知当前对比位不是第一密文和当前第二密文的最后一位,则将当前对比位的下一位,即第一密文和当前第二密文从左向右数起的第二位作为当前对比位,重复上述步骤。可知当当前对比位为第一密文和当前第二密文从左向右数起的第四位时,当前对比位对应的值做差得到的差值不为第一预设值0,说明第一密文与当前第二密文不同,则从未被对比过的第二密文中重新确定一个作为当前第二密文,并重复上述步骤。
118.当从第二密文中将111000确定为当前第二密文时,经上述步骤可知:直至第一密文和当前第二密文的最后一位,该当前第二密文与第一密文的当前对比位的差值均为第一预设值0,则说明第一密文与当前第二密文相等,即第一密文包含于第二密文中,则说明待验证数据正确可信,数据提供端就可以执行交易请求了。
119.在本发明实施例中,该方法还包括:接收数据提供端发送的真值表,以使计算电路根据真值表得到用于生成验证反馈的第二密钥,其中,真值表中包含第二密钥、验证结果以及第二密钥与验证结果之间的对应关系。
120.步骤s203:向数据提供端返回验证反馈。
121.根据本发明实施例的一种应用于数据验证端的验证数据方法可以看出,在接收到数据提供端发来的包含第一密文的数据验证请求、以及各位待验证数据分别对应的多个第一密钥之后,数据验证端根据第一密钥和自身的验证数据对第一密文进行验证,生成指示待验证数据是否正确的验证反馈,并向数据提供端返回该验证反馈,以使数据提供端确定是否执行交易请求,从而使得数据验证端在不知晓与数据提供端进行交易的客户信息时就
可以提供待验证数据是否正确的验证反馈,既保证了交易的正常进行,又降低了交易双方业务关系被泄露的风险,提高了交易的安全性。
122.图4是根据本发明实施例的一种数据提供端的主要模块的示意图。
123.如图4所示,本发明实施例的一种数据提供端400包括请求接收模块401、密钥确定模块402、密文生成模块403、密钥发送模块404以及交易执行模块405;其中:
124.请求接收模块401,用于接收交易请求,其中,交易请求中包括:交易数据和一位或多位待验证数据;
125.密钥确定模块402,用于针对请求接收模块401接收到的待验证数据的每一位,分别确定对应的多个第一密钥;其中,每一位待验证数据对应的第一密钥的个数与自身的进制相关;
126.密文生成模块403,用于针对每一位待验证数据:从密钥确定模块402确定出的待验证数据对应的多个第一密钥中,选择与待验证数据的值相对应的第一密钥作为第一密文;
127.密钥发送模块404,用于向数据验证端发送数据验证请求和各位待验证数据分别对应的多个第一密钥,其中,数据验证请求包含密文生成模块403生成的第一密文,以使数据验证端根据第一密钥和验证数据对第一密文进行验证;
128.交易执行模块405,用于对数据验证端的验证反馈进行解析,以确定验证反馈是否指示待验证数据正确;当解析出待验证数据正确时,根据请求接收模块401接收到的交易数据执行交易请求。
129.在本发明实施例中,密钥发送模块404进一步用于:通过不经意传输协议向数据验证端发送各位待验证数据分别对应的多个第一密钥,以使数据验证端从多个第一密钥中获得至少一个与验证数据相对应的第二密文,并根据第二密文对第一密文进行验证。
130.在本发明实施例中,数据验证请求还包含:验证结果对应的多个第二密钥;当验证反馈是被第二密钥加密后的验证结果时,交易执行模块405进一步用于:对数据验证端的验证反馈进行解析,其中,验证反馈中包含第二密钥;确定第二密钥对应的验证结果是否指示待验证数据正确,当第二密钥指示待验证数据正确时,执行交易请求。
131.在本发明实施例中,当验证反馈是验证结果对应的第二密钥时,交易执行模块405进一步用于:根据预先存储的真值表,确定第二密钥对应的验证结果是否指示待验证数据正确,其中,真值表中包含第二密钥、验证结果以及第二密钥与验证结果之间的对应关系。
132.根据本发明实施例的一种数据提供端可以看出,数据提供端能够针对交易请求中包括的待验证数据的每一位,分别确定出对应的多个第一密钥,并选择与待验证数据每一位的值相对应的第一密钥作为第一密文。数据提供端将该第一密文打包进数据验证请求,与上述多个第一密钥一起发送给数据验证端,以使数据验证端根据第一密钥和验证数据对第一密文进行验证。数据提供端再根据数据验证端的验证反馈,确定是否执行交易请求,从而使得数据验证端在不知晓与数据提供端进行交易的客户信息时就可以提供待验证数据是否正确的验证反馈,既保证了交易的正常进行,又降低了交易双方业务关系被泄露的风险,提高了交易的安全性。
133.图5是根据本发明实施例的一种数据验证端的主要模块的示意图。
134.如图5所示,本发明实施例的一种数据验证端500包括密钥接收模块501、密文验证
模块502以及反馈返回模块503;其中:
135.密钥接收模块501,用于接收数据提供端发来的数据验证请求和各位待验证数据分别对应的多个第一密钥,其中,数据验证请求包含第一密文;
136.密文验证模块502,用于根据密钥接收模块501接收到的第一密钥和验证数据对第一密文进行验证,生成验证反馈,其中,验证反馈指示了待验证数据是否正确;
137.反馈返回模块503,用于向数据提供端返回密文验证模块502生成的验证反馈。
138.在本发明实施例中,密文验证模块502进一步用于:通过计算电路,根据第一密钥和验证数据对第一密文进行验证,生成验证反馈。
139.在本发明实施例中,密钥接收模块501进一步用于:接收数据提供端发送的真值表,以使计算电路根据真值表得到用于生成验证反馈的第二密钥。
140.在本发明实施例中,密钥接收模块501进一步用于:通过不经意传输协议,从多个第一密钥中接收与验证数据相对应的第一密钥,生成至少一个与验证数据相对应的第二密文。
141.在本发明实施例中,密文验证模块502进一步用于:将至少一个第二密文和第一密文输入计算电路,以使计算电路分别对每一个第二密文与第一密文进行逐位比较;根据计算电路的输出,生成验证反馈。
142.在本发明实施例中,计算电路输出的验证反馈是根据第二密钥生成的。
143.在本发明实施例中,计算电路包括:加法电路和等值电路;密文验证模块502进一步用于执行以下步骤:a1:从未被对比过的第二密文中确定当前第二密文;a2:将当前第一密文和当前第二密文的第一位作为当前对比位;a3:针对当前对比位,利用加法电路对当前对比位对应的值做差;a4:利用等值电路判断加法电路的输出是否为第一预设值;如果是,执行a5,如果否执行a1;a5:判断当前对比位是否为第一密文或第二密文的最后一位;如果是,根据第二密钥生成验证反馈;如果否将当前对比为的下一位作为当前对比位,并执行a3。
144.根据本发明实施例的一种数据验证端可以看出,在接收到数据提供端发来的包含第一密文的数据验证请求、以及各位待验证数据分别对应的多个第一密钥之后,数据验证端根据第一密钥和自身的验证数据对第一密文进行验证,生成指示待验证数据是否正确的验证反馈,并向数据提供端返回该验证反馈,以使数据提供端确定是否执行交易请求,从而使得数据验证端在不知晓与数据提供端进行交易的客户信息时就可以提供待验证数据是否正确的验证反馈,既保证了交易的正常进行,又降低了交易双方业务关系被泄露的风险,提高了交易的安全性。
145.图6是根据本发明实施例的一种验证数据的系统的主要模块的示意图。
146.如图6所示,本发明实施例的一种验证数据的系统600包括:上述发明实施例中提供的任意一种数据提供端400以及上述发明实施例中提供的任意一种数据验证端500。
147.图7示出了可以应用本发明实施例的一种验证数据的方法、一种数据提供端或一种数据验证端的示例性系统架构700。
148.如图7所示,系统架构700可以包括终端设备701、702、703,网络704和服务器705。网络704用以在终端设备701、702、703和服务器705之间提供通信链路的介质。网络704可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
149.用户可以使用终端设备701、702、703通过网络704与服务器705交互,以接收或发送消息等。终端设备701、702、703上可以安装有各种交易类应用,例如购物类应用、证券交易类应用、即时支付类应用等。
150.终端设备701、702、703可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
151.服务器705可以是提供各种服务的服务器,例如对用户利用终端设备701、702、703所浏览的交易类网站提供支持的后台管理服务器。后台管理服务器可以对接收到的证明数据、交易数据进行分析等处理,并将处理结果(例如身份验证通过、交易完成等)反馈给终端设备。
152.应该理解,图7中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
153.下面参考图8,其示出了适于用来实现本发明实施例的终端设备的计算机系统800的结构示意图。图8示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
154.如图8所示,计算机系统800包括中央处理单元(cpu)801,其可以根据存储在只读存储器(rom)802中的程序或者从存储部分808加载到随机访问存储器(ram)803中的程序而执行各种适当的动作和处理。在ram 803中,还存储有系统800操作所需的各种程序和数据。cpu 801、rom 802以及ram 803通过总线804彼此相连。输入/输出(i/o)接口805也连接至总线804。
155.以下部件连接至i/o接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至i/o接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
156.特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(cpu)801执行时,执行本发明的系统中限定的上述功能。
157.需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本
发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
158.附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
159.描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括请求接收模块、密钥确定模块、密文生成模块、密钥发送模块以及交易执行模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,请求接收模块还可以被描述为“用于接收交易请求的模块”。
160.作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:接收交易请求,其中,交易请求中包括:交易数据和一位或多位待验证数据;针对待验证数据的每一位,分别确定对应的多个第一密钥;其中,每一位待验证数据对应的第一密钥的个数与自身的进制相关;针对每一位待验证数据:从待验证数据对应的多个第一密钥中,选择与待验证数据的值相对应的第一密钥作为第一密文;向数据验证端发送数据验证请求和各位待验证数据分别对应的多个第一密钥,其中,数据验证请求包含第一密文,以使数据验证端根据第一密钥和验证数据对第一密文进行验证;对数据验证端的验证反馈进行解析,以确定验证反馈是否指示待验证数据正确;当解析出待验证数据正确时,根据交易数据执行交易请求。
161.上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备还可以包括:接收数据提供端发来的数据验证请求和各位待验证数据分别对应的多个第一密钥,其中,数据验证请求包含第一密文;根据第一密钥和验证数据对第一密文进行验证,生成验证反馈,其中,验证反馈指示了待验证数据是否正确;向数据提供端返回验证反馈。
162.根据本发明实施例的技术方案,能够实现如下优点或有益效果:
163.1.数据提供端能够针对交易请求中包括的待验证数据的每一位,分别确定出对应
的多个第一密钥,并选择与待验证数据每一位的值相对应的第一密钥作为第一密文。数据提供端将该第一密文打包进数据验证请求,与上述多个第一密钥一起发送给数据验证端,以使数据验证端根据第一密钥和验证数据对第一密文进行验证。数据提供端再根据数据验证端的验证反馈,确定是否执行交易请求,从而使得数据验证端在不知晓与数据提供端进行交易的客户信息时就可以提供待验证数据是否正确的验证反馈,既保证了交易的正常进行,又降低了交易双方业务关系被泄露的风险,提高了交易的安全性。
164.2.在接收到数据提供端发来的包含第一密文的数据验证请求、以及各位待验证数据分别对应的多个第一密钥之后,数据验证端根据第一密钥和自身的验证数据对第一密文进行验证,生成指示待验证数据是否正确的验证反馈,并向数据提供端返回该验证反馈,以使数据提供端确定是否执行交易请求,从而使得数据验证端在不知晓与数据提供端进行交易的客户信息时就可以提供待验证数据是否正确的验证反馈,既保证了交易的正常进行,又降低了交易双方业务关系被泄露的风险,提高了交易的安全性。
165.上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献