一种基于零知识证明的数据交互方法与系统
技术领域
本发明涉及数据交互的技术领域,具体涉及一种基于零知识证明的数据交互方法与系统。
背景技术
零知识证明,是指证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。数据交互系统是指主要功能用于进行数据交互或协调数据交互的系统。
现在已经开发出了很多数据交互系统,经过我们大量的检索与参考,发现现有技术的数据交互系统有如公开号为CN105278441A、CN103235766A、EP3288001A1、US09184885B2、JP2010160608A所公开的数据交互系统,这些一般包括:指令接收装置,用于接收外部设备发送的数据存储指令或者数据调取指令,并生成相应的数据存储请求或者数据调取请求;请求处理装置,用于接收所述指令接收装置发送的数据存储请求或者数据调取请求,根据所述数据存储请求,将所述数据存储请求对应的数据进行存储,或者将所述数据调取请求对应的数据进行调取,并将存储结果和调取到的数据发送给所述指令接收装置,由所述指令接收装置将所述存储结果和调取到的数据返回给所述外部设备。由于上述数据交互系统的工作过程较为简易,导致交互安全性下降,而且缺少交互调控,不利于快速地完成多次交互,造成了安全性较低和工作效率较低的缺陷。
发明内容
本发明的目的在于,针对上述数据交互系统存在的不足,提出一种基于零知识证明的数据交互方法与系统。
本发明采用如下技术方案:
一种基于零知识证明的数据交互系统,包括验证终端和若干个交互终端,所述验证终端用于验证两个需要进行交互的交互终端之间是否完成交互,所述验证终端用于协调若干个所述交互终端进行交互,若干个所述交互终端用于存储数据并进行数据交互;
所述验证终端包括读取模块、验证模块和控制模块,所述读取模块用于读取来自交互终端的待验证信息,所述验证模块用于根据待验证信息与预设的已知信息进行对比,生成验证结果信息,所述控制模块用于根据验证结果信息控制对应的交互终端;
所述交互终端包括交互模块、待验证信息生成模块和验证互联模块,所述交互模块用于实现交互终端之间的数据交互,所述待验证信息生成模块用于根据已完成交互的数据生成对应的待验证信息,所述验证互联模块用于实现交互终端与验证终端互联并发送待验证信息至对应的读取模块。
可选的,所述待验证信息生成模块包括交互数据读取子模块、数据交互进度子模块和待验证信息生成子模块,所述交互数据读取子模块用于读取已完成交互的数据,所述数据交互进度子模块用于监控当前交互终端与另一交互终端的交互进度,并生成交互进度信息,所述交互进度信息包括表示已完成交互的交互进度信息和表示未完成交互的交互进度信息,所述待验证信息生成子模块用于判断交互进度信息是否为表示已完成交互的交互进度信息,若是则根据已完成交互的数据生成对应的待验证信息。
可选的,所述待验证信息生成子模块包括第一数据特征提取单元、第一计算单元和第一待验证信息生成单元,所述第一数据特征提取单元用于对已完成交互的数据进行图片特征提取,生成图片信息,所述第一计算单元用于对图片信息进行图像识别并计算出图片信息的像素值指数,所述第一待验证信息生成单元用于根据像素值指数生成对应的待验证信息;
当所述第一计算单元计算时,满足以下式子:
其中,
表示图片信息中全部图像的像素值矩阵,
表示像素值矩阵中第i行第j列的元素,即第i行第j列的图像的像素值,
表示图片信息的像素值指数,
表示可调的修正系数,
表示矩阵元素筛选函数,
表示可调的筛选阈值,
表示像素值矩阵内第i行第j列的图像被划分后的第
行第
列的格块的像素值,
表示第
行第
列的格块内像素的变换后的像素值,
表示第
行第
列的格块内像素的变换前的像素值,
表示变换系数,
表示第
行第
列的格块内像素的变换前的平均值。
可选的,所述待验证信息生成子模块包括第二数据特征提取单元、第二计算单元和第二待验证信息生成单元,所述第二数据特征提取单元用于对已完成交互的数据进行文字特征提取,所述第二计算单元用于根据文字特征计算文字指数,所述第二待验证信息生成单元用于根据文字指数更新对应的待验证信息;
当第二计算单元计算时,满足以下式子:
其中,
表示对应的文字特征的文字指数,
表示可调的校对系数,
表示文字特征中文字的总个数,
表示文字特征中第m个文字对应的ASCII码,
表示文字特征中全部文字对应ASCII码的平均值。
可选的,所述验证模块包括第三计算单元和验证结果信息生成单元,所述第三计算单元用于将读取模块读取到的待验证信息与预设的已知信息中对应的对比信息进行对比和计算,生成对比结果信息,所述验证结果信息生成单元用于根据对比结果信息生成验证结果信息;
所述第三计算单元计算时,满足以下式子:
其中,
表示对比结果信息,
表示对应的对比信息的像素值指数对比区间
的最小值,
表示对应的对比信息的像素值指数对比区间
的最大值,
表示对应的对比信息的文字指数对比区间
的最小值,
表示对应的对比信息的文字指数对比区间
的最大值;
、
、
、
均为可调的区间边界;
当
时,验证结果信息为表示验证通过的验证结果;当
时,验证结果信息为表示验证不通过的验证结果。
一种基于零知识证明的数据交互方法,应用于如上述的一种基于零知识证明的数据交互系统,所述数据交互方法包括:
S1,实现交互终端之间的数据交互;
S2,根据已完成交互的数据生成对应的待验证信息;
S3,实现交互终端与验证终端互联并发送待验证信息至对应的读取模块;
S4,读取来自交互终端的待验证信息;
S5,根据待验证信息与预设的已知信息进行对比,生成验证结果信息;
S6,根据验证结果信息控制对应的交互终端。
本发明所取得的有益效果是:
1、读取模块、验证模块和控制模块的设置有利于快速且准确地验证交互终端之间是否完成交互,验证过程不涉及交互内容本身,有利于提高交互的安全性;交互模块、待验证信息生成模块和验证互联模块的设置有利于进行快速的交互、快速地提供待验证信息,从而进一步缩短验证过程的用时;
2、交互数据读取子模块、数据交互进度子模块和待验证信息生成子模块的设置有利于根据交互进度进行工作,实现全自动且迅速地响应,提高了待验证信息生成的及时性,进而提高验证效率;
3、第一数据特征提取单元、第一计算单元和第一待验证信息生成单元的设置配合第一计算单元的像素值指数算法有利于高效且准确地计算出像素值指数,进而根据像素值指数生成对应的待验证信息,提高了待验证信息的准确性;
4、第二数据特征提取单元、第二计算单元和第二待验证信息生成单元的设置有利于快速且准确地计算出文字指数,进而更新对应的待验证信息,使得待验证信息中具有两个用于被验证的指数,提高了验证的准确性;文字指数算法的设置有利于准确地计算出对应的文字指数,从而使得验证过程更加准确和顺利;
5、第三计算单元和验证结果信息生成单元的设置有利于准确地验证待验证信息中的像素值指数和文字指数,并输出简易的验证结果信息,从而提高了验证结果的反馈效率和准确性;
6、第四计算单元和控制单元的设置有利于高效且准确地计算出全部交互任务的排序分值,然后控制单元按照从大到小的顺序进行控制执行,从而有利于提高交互效率和工作效率。
为使能更进一步了解本发明的特征及技术内容,请参阅以下有关本发明的详细说明与附图,然而所提供的附图仅用于提供参考与说明,并非用来对本发明加以限制。
附图说明
图1为本发明的整体结构示意图;
图2为本发明中图片信息的图像被分割后的格块划分示意图;
图3为本发明中一种基于零知识证明的数据交互方法的方法流程图;
图4为本发明中一种基于零知识证明的数据交互系统的应用效果示意图。
具体实施方式
以下是通过特定的具体实施例来说明本发明的实施方式,本领域技术人员可由本说明书所公开的内容了解本发明的优点与效果。本发明可通过其他不同的具体实施例加以施行或应用,本说明书中的各项细节也可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。另外,本发明的附图仅为简单示意说明,并非依实际尺寸描绘,事先声明。以下实施方式将进一步详细说明本发明的相关技术内容,但所公开的内容并非用以限制本发明的保护范围。
实施例一。
本实施例提供了一种基于零知识证明的数据交互系统。结合图1所示,一种基于零知识证明的数据交互系统,包括验证终端和若干个交互终端,所述验证终端用于验证两个需要进行交互的交互终端之间是否完成交互,所述验证终端用于协调若干个所述交互终端进行交互,若干个所述交互终端用于存储数据并进行数据交互;
所述验证终端包括读取模块、验证模块和控制模块,所述读取模块用于读取来自交互终端的待验证信息,所述验证模块用于根据待验证信息与预设的已知信息进行对比,生成验证结果信息,所述控制模块用于根据验证结果信息控制对应的交互终端;
所述交互终端包括交互模块、待验证信息生成模块和验证互联模块,所述交互模块用于实现交互终端之间的数据交互,所述待验证信息生成模块用于根据已完成交互的数据生成对应的待验证信息,所述验证互联模块用于实现交互终端与验证终端互联并发送待验证信息至对应的读取模块。
可选的,所述待验证信息生成模块包括交互数据读取子模块、数据交互进度子模块和待验证信息生成子模块,所述交互数据读取子模块用于读取已完成交互的数据,所述数据交互进度子模块用于监控当前交互终端与另一交互终端的交互进度,并生成交互进度信息,所述交互进度信息包括表示已完成交互的交互进度信息和表示未完成交互的交互进度信息,所述待验证信息生成子模块用于判断交互进度信息是否为表示已完成交互的交互进度信息,若是则根据已完成交互的数据生成对应的待验证信息。
可选的,所述待验证信息生成子模块包括第一数据特征提取单元、第一计算单元和第一待验证信息生成单元,所述第一数据特征提取单元用于对已完成交互的数据进行图片特征提取,生成图片信息,所述第一计算单元用于对图片信息进行图像识别并计算出图片信息的像素值指数,所述第一待验证信息生成单元用于根据像素值指数生成对应的待验证信息;
当所述第一计算单元计算时,满足以下式子:
其中,结合图2所示,
表示图片信息中全部图像的像素值矩阵,
表示像素值矩阵中第i行第j列的元素,即第i行第j列的图像的像素值,
表示图片信息的像素值指数,
表示可调的修正系数,本领域技术人员根据经验和实际情况进行调节和确定,
表示矩阵元素筛选函数,
表示可调的筛选阈值,本领域技术人员根据经验和实际情况进行调节和确定,
表示像素值矩阵内第i行第j列的图像被划分后的第
行第
列的格块的像素值,
表示第
行第
列的格块内像素的变换后的像素值,
表示第
行第
列的格块内像素的变换前的像素值,
表示变换系数,本领域技术人员根据经验和实际情况进行调节和确定,
表示第
行第
列的格块内像素的变换前的平均值。
可选的,所述待验证信息生成子模块包括第二数据特征提取单元、第二计算单元和第二待验证信息生成单元,所述第二数据特征提取单元用于对已完成交互的数据进行文字特征提取,所述第二计算单元用于根据文字特征计算文字指数,所述第二待验证信息生成单元用于根据文字指数更新对应的待验证信息;
当第二计算单元计算时,满足以下式子:
其中,
表示对应的文字特征的文字指数,
表示可调的校对系数,本领域技术人员根据经验和实际情况进行调节和确定,
表示文字特征中文字的总个数,
表示文字特征中第m个文字对应的ASCII码,
表示文字特征中全部文字对应ASCII码的平均值。
需要注意的是,交互终端和验证终端均预设有文字特征ASCII码对照表,文字特征ASCII码对照表中包含了全部文字特征中文字的对应的ASCII码。
可选的,所述验证模块包括第三计算单元和验证结果信息生成单元,所述第三计算单元用于将读取模块读取到的待验证信息与预设的已知信息中对应的对比信息进行对比和计算,生成对比结果信息,所述验证结果信息生成单元用于根据对比结果信息生成验证结果信息;
所述第三计算单元计算时,满足以下式子:
其中,
表示对比结果信息,
表示对应的对比信息的像素值指数对比区间
的最小值,
表示对应的对比信息的像素值指数对比区间
的最大值,
表示对应的对比信息的文字指数对比区间
的最小值,
表示对应的对比信息的文字指数对比区间
的最大值;
、
、
、
均为可调的区间边界;
当
时,验证结果信息为表示验证通过的验证结果;当
时,验证结果信息为表示验证不通过的验证结果。
一种基于零知识证明的数据交互方法,结合图3所示,应用于如上述的一种基于零知识证明的数据交互系统,所述数据交互方法包括:
S1,实现交互终端之间的数据交互;
S2,根据已完成交互的数据生成对应的待验证信息;
S3,实现交互终端与验证终端互联并发送待验证信息至对应的读取模块;
S4,读取来自交互终端的待验证信息;
S5,根据待验证信息与预设的已知信息进行对比,生成验证结果信息;
S6,根据验证结果信息控制对应的交互终端。
实施例二。
本实施例包含了实施例一的全部内容,提供了一种基于零知识证明的数据交互系统,结合图4所示,所述控制模块包括第四计算单元和控制单元,所述第四计算单元用于计算出交互终端应执行的下一个交互任务,所述控制单元用于控制对应的交互终端执行对应的交互任务。
在交互任务较多的场景下,为了提高交互效率和工作效率,需要对交互任务进行排序,通过第四计算单元进行排序计算,再按顺序执行交互任务,排序过程的计算满足以下式子:
其中,
表示排序分值,N表示交互任务的总数,
表示交互任务的关于生成日期排序的变化函数,sort表示对应的交互任务的生成日期排序号。需要注意的是,交互任务生成或录入后将按照生成或录入的日期进行排序并添加有日期排序号。
表示加急函数,
表示加急程度数值,由本领域技术人员在录入交互任务时设定。
计算全部交互任务的排序分值,然后控制单元按照从大到小的顺序进行控制执行,从而有利于提高交互效率和工作效率。
以上所公开的内容仅为本发明的优选可行实施例,并非因此局限本发明的保护范围,所以凡是运用本发明说明书及附图内容所做的等效技术变化,均包含于本发明的保护范围内,此外,随着技术发展其中的元素是可以更新的。