System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请属于数据处理,尤其涉及一种数据处理方法、装置、设备及计算机存储介质。
技术介绍
1、目前,为了对数据的修改权限进行限制,通常将密钥分发给有权限的用户,用户使用密钥来对目标数据进行修改。利用变色龙哈希算法,用户可以在不改变哈希值的前提下使用密钥对目标数据进行修改。
2、变色龙哈希函数是基于有限域上的离散对数问题进行构造的,基于有限域上的离散对数问题生成与变色龙哈希函数对应的密钥,然而为保证密钥的安全性,基于有限域上的离散对数问题生成的密钥较长,导致修改数据过程中的计算效率较低。
技术实现思路
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、在参与修改数据的用户有多个的情况下,针对本用户生成t-1次随机多项式;
31、根据t-1次随机多项式以及每个用户对应的变量值,生成每个用户对应的秘密片段值,变量值为t-1次随机多项式中变量的取值;
32、向每个用户发送相应的秘密片段值;
33、接收每个用户发送的秘密片段值;
34、计算本用户对应的秘密片段值以及除本用户以外的其他用户发送的秘密片段值之和,得到本用户对应的私钥的秘密片段,私钥为多个用户的共识私钥;
35、获取每个用户对应的私钥的秘密片段,基于全部用户对应的私钥的秘密片段计算拉格朗日插值,得到私钥;
36、将私钥与预设椭圆曲线函数的生成元进行倍点运算,得到公钥,公钥为多个用户的共识公钥。
37、在一些实施例中,将第三参数值与预设椭圆曲线函数的生成元进行椭圆曲线倍点运算,得到第二输入值,包括:
38、在参与修改数据的用户有多个的情况下,在目标域上随机获取第六参数值,将第六参数值与预设椭圆曲线函数的生成元进行椭圆曲线倍点运算,得到椭圆曲线点坐标;
39、接收除本用户以外的其他用户发送的椭圆曲线点坐标;
40、基于椭圆曲线点坐标和其他用户发送的椭圆曲线点坐标计算拉格朗日差值,得到第二输入值。
41、在一些实施例中,根据私钥、第三参数值和第三函数值,生成第五参数值,包括:
42、接收其他用户发送的秘密片段,计算全部用户的秘密片段值之和,得到私钥的秘密片段;
43、基于第六参数值、第三函数值和私钥的秘密片段,生成第五参数值片段;
44、接收其他用户发送的与其他用户对应的第五参数值片段,基于全部用户对应的第五参数值片段计算拉格朗日差值,得到第五参数值。
45、第二方面,本申请实施例提供一种数据处理装置,包括:
46、第一获取模块,用于响应于接收到对第一数据的修改指令,获取第二数据;
47、第二获取模块,用于基于预设椭圆曲线函数获取私钥及其对应的公钥;
48、第一生成模块,用于基于在目标域中随机获取的值生成并存储第一哈希参数值,目标域包括预设椭圆曲线函数对应的变量取值范围;
49、第二生成模块,用于根据第一哈希参数值、公钥和预设椭圆曲线函数生成与第一数据对应的哈希值;
50、第三生成模块,用于利用哈希值和第二数据,生成第二哈希参数值;
51、修改模块,用于将存储的第一哈希参数值修改为第二哈希参数值,以及将第一数据修改为第二数据,第二哈希参数值用于验证第二数据的有效性。
52、第三方面,本申请实施例提供一种电子设备,设备包括:处理器以及存储有计算机程序指令的存储器;
53、处理器执行计算机程序指令时实现如第一方面任意一项的数据处理方法。
54、第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现如第一方面任意一项的数据处理方法。
55、第五方面,本申请实施例提供一种计算机程序产品,计算机程序产品中的指令由电子设备的处理器执行时,使得电子设备执行如第一方面任意一项的数据处理法。
56、本申请实施例的数据处理方法、装置、设备及计算机存储介质,能够通过椭圆曲线来构造变色龙本文档来自技高网...
【技术保护点】
1.一种数据处理方法,其特征在于,包括:
2.根据权利要求1所述的数据处理方法,其特征在于,所述第一哈希参数值包括第一参数值;
3.根据权利要求2所述的数据处理方法,其特征在于,所述第一哈希参数值还包括第二参数值;
4.根据权利要求2或3所述的数据处理方法,其特征在于,在根据预设的第一哈希函数、所述第一哈希参数值、所述公钥和所述预设椭圆曲线函数,确定第一输入值之前,还包括:
5.根据权利要求2所述的数据处理方法,其特征在于,所述第二哈希参数值包括第四参数值和第五参数值;
6.根据权利要求1所述的数据处理方法,其特征在于,所述基于预设椭圆曲线函数获取私钥及其对应的公钥,包括:
7.根据权利要求5所述的数据处理方法,其特征在于,所述将所述第三参数值与所述预设椭圆曲线函数的生成元进行椭圆曲线倍点运算,得到第二输入值,包括:
8.根据权利要求7所述的数据处理方法,其特征在于,所述根据所述私钥、所述第三参数值和所述第三函数值,生成所述第五参数值,包括:
9.一种数据处理装置,其特征在于,包括:<
...【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:
2.根据权利要求1所述的数据处理方法,其特征在于,所述第一哈希参数值包括第一参数值;
3.根据权利要求2所述的数据处理方法,其特征在于,所述第一哈希参数值还包括第二参数值;
4.根据权利要求2或3所述的数据处理方法,其特征在于,在根据预设的第一哈希函数、所述第一哈希参数值、所述公钥和所述预设椭圆曲线函数,确定第一输入值之前,还包括:
5.根据权利要求2所述的数据处理方法,其特征在于,所述第二哈希参数值包括第四参数值和第五参数值;
6.根据权利要求1所述的数据处理方法,其特征在于,所述基于预设椭圆曲线函数获取私钥及其对应的公钥,包括...
【专利技术属性】
技术研发人员:方有轩,关志,叶可可,赖思为,赵思远,郑旭晓,王珂,何逸飞,陈钟,
申请(专利权)人:中移动信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。