CN112115522A - 利用散列算法实现数据的可信存储的方法 - Google Patents

利用散列算法实现数据的可信存储的方法 Download PDF

Info

Publication number
CN112115522A
CN112115522A CN202011029689.2A CN202011029689A CN112115522A CN 112115522 A CN112115522 A CN 112115522A CN 202011029689 A CN202011029689 A CN 202011029689A CN 112115522 A CN112115522 A CN 112115522A
Authority
CN
China
Prior art keywords
data
line data
hash value
hash
current line
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011029689.2A
Other languages
English (en)
Other versions
CN112115522B (zh
Inventor
余巍
张戎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Zhongke Hexun Technology Co ltd
Original Assignee
Chengdu Zhongke Hexun Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chengdu Zhongke Hexun Technology Co ltd filed Critical Chengdu Zhongke Hexun Technology Co ltd
Priority to CN202011029689.2A priority Critical patent/CN112115522B/zh
Publication of CN112115522A publication Critical patent/CN112115522A/zh
Application granted granted Critical
Publication of CN112115522B publication Critical patent/CN112115522B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了利用散列算法实现数据的可信存储的方法,其通过纯软件的方式来对数据进行存储和安全验证,以此在数据存储效率和数据安全可信上两个方面取得平衡,此外该方法还能够对海量数据在短时间内进行全面地和定期的数据安全性查询,从而便于在存储的数据发生篡改的情况下能够快速地和准确地定位被篡改的数据,以及增大存储数据的可信性。

Description

利用散列算法实现数据的可信存储的方法
技术领域
本发明涉及数据存储的技术领域,尤其涉及利用散列算法实现数据的可信存储的方法。
背景技术
目前,通常采用硬件的方式对存储的数据进行加密处理和解密处理,以此避免存储的数据发生篡改,从而保证存储的数据的信息安全性,但是该加密处理通常需要相应硬件进行支持,并且该加密处理的硬件资源开销也比较大,这对存储硬件的性能提出较高的要求,不利于对海量数据进行快速的存储和高效的安全验证。虽然,现有技术已经存在通过软件和硬件相结合的方式来对数据进行存储和安全验证,但是这种方式对于硬件和软件的技术环境要求较高,其并不适用于所有数据存储场合。可见,现有技术需要能够通过纯软件的方式来对数据进行存储和安全验证,从而在数据存储效率和数据安全可信上两个方面取得平衡。
发明内容
针对上述现有技术存在的缺陷,本发明提供利用散列算法实现数据的可信存储的方法,其通过获取存储数据的生成时间信息,以此将该存储数据预先划分为若干行数据,其中,每一个行数据包括相同数量的数据单元,并根据该行数据包含的数据单元,生成关于该行数据的第一散列值,并将该行数据和与其对应的第一散列值进行存储,再根据该行数据自身对应的第一散列值和该行数据对应的前一个行数据的第一散列值,生成关于该行数据的第二散列值,最后根据该第一散列值,确定其对应的行数据的正确性,或者根据该第二散列值,对所有行数据进行定期校验,从而确定该存储数据的可信度;可见,该利用散列算法实现数据的可信存储的方法通过纯软件的方式来对数据进行存储和安全验证,以此在数据存储效率和数据安全可信上两个方面取得平衡,此外该方法还能够对海量数据在短时间内进行全面地和定期的数据安全性查询,从而便于在存储的数据发生篡改的情况下能够快速地和准确地定位被篡改的数据,以及增大存储数据的可信性。
本发明提供一种利用散列算法实现数据的可信存储的方法,其特征在于,其包括如下步骤:
步骤S1,获取存储数据的生成时间信息,以此将所述存储数据预先划分为若干行数据,其中,每一个所述行数据包括相同数量的数据单元;
步骤S2,根据所述行数据包含的数据单元,生成关于所述行数据的第一散列值,并将所述行数据和与其对应的第一散列值进行存储;
步骤S3,根据所述行数据自身对应的第一散列值和所述行数据对应的前一个行数据的第一散列值,生成关于所述行数据的第二散列值;
步骤S4,根据所述第一散列值,确定其对应的行数据的正确性,或者根据所述第二散列值,对所有行数据进行定期校验,从而确定所述存储数据的可信度;
进一步,在所述步骤S1中,获取存储数据的生成时间信息,以此将所述存储数据预先划分为若干行数据,其中,每一个所述行数据包括相同数量的数据单元具体包括:
步骤S101,获取所述存储数据包含的所有数据单元各自的生成时间值;
步骤S102,按照所有数据单元各自的生成时间值的时间先后顺序,将所有数据单元进行关于生成时间点由远至近的顺序进行排列,从而生成数据单元序列;
步骤S103,按照预设数据长度,对所述数据单元序列由头开始进行切割,从而将所述数据单元序列划分为若干行数据,并使每一个所述行数据包括相同数量的数据单元;
进一步,在所述步骤S103之后还包括:
步骤S104,按照所述行数据在所述数据单元中的顺序,对每一个行数据依次标定相应的序号,并将所述序号作为所述行数据的索引信息;
进一步,在所述步骤S2中,根据所述行数据包含的数据单元,生成关于所述行数据的第一散列值,并将所述行数据和与其对应的第一散列值进行存储具体包括:
步骤S201,对所述行数据包含的所述数据单元进行SHA256哈希算法处理,从而生成关于所述行数据的第一散列值,其中所述第一散列值是由随机字母和数字共同组成的字符串;
步骤S202,将所述第一散列值作为所述行数据的附加数据信息,从而实现所述行数据与所述第一散列值的共同存储;
进一步,在所述步骤S201,对所述行数据包含的所述数据单元进行SHA256哈希算法处理,从而生成关于所述行数据的第一散列值具体包括:
对所述行数据包含的所有数据单元进行哈希初始值设置处理、哈希初始值预处理和逻辑函数运算处理,从而生成关于所述行数据的第一散列值;
进一步,在所述步骤S201中,对所述行数据包含的所有数据单元进行哈希初始值设置处理具体包括:根据哈希函数,对所述数据单元进行处理,从而生成关于每一个数据单元的哈希初始值,并且所有数据单元对应的哈希初始值两两互为互质数;
在所述步骤S201中,所述哈希初始值预处理具体包括:将每一个数据单元对应的哈希初始值转换为二进制数值,并对所述二进制数值进行附加比特填充处理,以此在所述二进制数值中随机填充数字和字母相关的比特代码,从而将每一个数据单元对应的所述二进制数值转换为具有相同长度的预处理哈希代码;
在所述步骤S201中,逻辑函数运算处理具体包括:将所有数据单元对应的预处理哈希代码进行逻辑函数运算处理,从而生成关于所述行数据的第一散列值;
进一步,在所述步骤S3中,根据所述行数据自身对应的第一散列值和所述行数据对应的前一个行数据的第一散列值,生成关于所述行数据的第二散列值具体包括:
若当前行数据属于第一个行数据,则根据所述当前行数据自身对应的第一散列值和预设初始散列值,生成关于所述当前行数据的第二散列值;
若当前行数据不属于第一个行数据,则根据所述当前行数据自身对应的第一散列值和所述当前行数据对应的前一个行数据的第一散列值,生成关于所述当前行数据的第二散列值;
进一步,若当前行数据属于第一个行数据,则根据所述当前行数据自身对应的第一散列值和预设初始散列值,生成关于所述当前行数据的第二散列值具体包括:将所述当前行数据自身对应的第一散列值与所述预设初始散列值进行逻辑相加运算,从而生成关于所述当前行数据的第二散列值;
若当前行数据不属于第一个行数据,则根据所述当前行数据自身对应的第一散列值和所述当前行数据对应的前一个行数据的第一散列值,生成关于所述当前行数据的第二散列值具体包括:将所述当前行数据自身对应的第一散列值与所述前一个行数据的第一散列值进行逻辑相加运算,从而生成关于所述当前行数据的第二散列值;
进一步,在所述步骤S4中,根据所述第一散列值,确定其对应的行数据的正确性具体包括:将所述第一散列值与对所述行数据进行重新计算处理后得到的另一第一散列值进行比对,若所述第一散列值与所述另一第一散列值相同,则确定其对应的行数据具有正确性,否则,确定其对应的行数据不具有正确性;
进一步,在所述步骤S4中,根据所述第二散列值,对所有行数据进行定期校验,从而确定所述存储数据的可信度具体包括:
如果当前行数据属于第一个行数据,则将所述当前行数据进行重新计算处理后得到的另一第一散列值与预设初始散列值进行逻辑相加运算,若所述逻辑相加运算的结果与所述当前行数据对应的第二散列值相同,则确定所述当前行数据具有可信度,否则,确定所述当前行数据不具有可信度;
如果当前行数据不属于第一个行数据,则将所述当前行数据进行重新计算处理后得到的另一个第一散列值与所述当前行数据对应的前一个行数据的第二散列值进行逻辑相加运算,若所述逻辑相加运算的结果与所述当前行数据对应的第二散列值相同,则确定所述当前行数据具有可信度,否则,确定所述当前行数据不具有可信度;
如果所有行数据均具有可信度,则确定所述存储数据具有可信度,否则,确定所述存储数据不具有可信度。
相比于现有技术,本发明的利用散列算法实现数据的可信存储的方法通过获取存储数据的生成时间信息,以此将该存储数据预先划分为若干行数据,其中,每一个行数据包括相同数量的数据单元,并根据该行数据包含的数据单元,生成关于该行数据的第一散列值,并将该行数据和与其对应的第一散列值进行存储,再根据该行数据自身对应的第一散列值和该行数据对应的前一个行数据的第一散列值,生成关于该行数据的第二散列值,最后根据该第一散列值,确定其对应的行数据的正确性,或者根据该第二散列值,对所有行数据进行定期校验,从而确定该存储数据的可信度;可见,该利用散列算法实现数据的可信存储的方法通过纯软件的方式来对数据进行存储和安全验证,以此在数据存储效率和数据安全可信上两个方面取得平衡,此外该方法还能够对海量数据在短时间内进行全面地和定期的数据安全性查询,从而便于在存储的数据发生篡改的情况下能够快速地和准确地定位被篡改的数据,以及增大存储数据的可信性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的利用散列算法实现数据的可信存储的方法的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参阅图1,为本发明提供的一种利用散列算法实现数据的可信存储的方法的流程示意图。该利用散列算法实现数据的可信存储的方法包括如下步骤:
步骤S1,获取存储数据的生成时间信息,以此将该存储数据预先划分为若干行数据,其中,每一个该行数据包括相同数量的数据单元;
步骤S2,根据该行数据包含的数据单元,生成关于该行数据的第一散列值,并将该行数据和与其对应的第一散列值进行存储;
步骤S3,根据该行数据自身对应的第一散列值和该行数据对应的前一个行数据的第一散列值,生成关于该行数据的第二散列值;
步骤S4,根据该第一散列值,确定其对应的行数据的正确性,或者根据该第二散列值,对所有行数据进行定期校验,从而确定该存储数据的可信度。
上述技术方案的有益效果为:该利用散列算法实现数据的可信存储的方法通过纯软件的方式来对数据进行存储和安全验证,以此在数据存储效率和数据安全可信上两个方面取得平衡,此外该方法还能够对海量数据在短时间内进行全面地和定期的数据安全性查询,从而便于在存储的数据发生篡改的情况下能够快速地和准确地定位被篡改的数据,以及增大存储数据的可信性。
优选地,在该步骤S1中,获取存储数据的生成时间信息,以此将该存储数据预先划分为若干行数据,其中,每一个该行数据包括相同数量的数据单元具体包括:
步骤S101,获取该存储数据包含的所有数据单元各自的生成时间值;
步骤S102,按照所有数据单元各自的生成时间值的时间先后顺序,将所有数据单元进行关于生成时间点由远至近的顺序进行排列,从而生成数据单元序列;
步骤S103,按照预设数据长度,对该数据单元序列由头开始进行切割,从而将该数据单元序列划分为若干行数据,并使每一个该行数据包括相同数量的数据单元。
上述技术方案的有益效果为:按照所有数据单元各自的生成时间值对数据单元进行排序和划分,以此形成若干行数据,能够提高对存储数据划分的便捷性和准确性。
优选地,在该步骤S103之后还包括:
步骤S104,按照该行数据在该数据单元中的顺序,对每一个行数据依次标定相应的序号,并将该序号作为该行数据的索引信息。
上述技术方案的有益效果为:对每一个行数据标定相应的序号以此作为相应的索引信息,能够对每一个行数据进行有效的标定,从而避免发生散列值计算错误的情况发生。
优选地,在该步骤S2中,根据该行数据包含的数据单元,生成关于该行数据的第一散列值,并将该行数据和与其对应的第一散列值进行存储具体包括:
步骤S201,对该行数据包含的该数据单元进行SHA256哈希算法处理,从而生成关于该行数据的第一散列值,其中该第一散列值是由随机字母和数字共同组成的字符串;
步骤S202,将该第一散列值作为该行数据的附加数据信息,从而实现该行数据与该第一散列值的共同存储。
上述技术方案的有益效果为:通过SHA256哈希算法确定每一个行数据的第一散列值能够简化第一散列值的计算难度和提高第一散列值的计算准确性。
优选地,在该步骤S201,对该行数据包含的该数据单元进行SHA256哈希算法处理,从而生成关于该行数据的第一散列值具体包括:
对该行数据包含的所有数据单元进行哈希初始值设置处理、哈希初始值预处理和逻辑函数运算处理,从而生成关于该行数据的第一散列值。
上述技术方案的有益效果为:通过对数据单元依次进行哈希初始值设置处理、哈希初始值预处理和逻辑函数运算处理生成该第一散列值,能够提高对数据单元的处理效率,以便于对海量数据单元进行快速高效的第一散列值计算确定。
优选地,在该步骤S201中,对该行数据包含的所有数据单元进行哈希初始值设置处理具体包括:根据哈希函数,对该数据单元进行处理,从而生成关于每一个数据单元的哈希初始值,并且所有数据单元对应的哈希初始值两两互为互质数;
在该步骤S201中,该哈希初始值预处理具体包括:将每一个数据单元对应的哈希初始值转换为二进制数值,并对该二进制数值进行附加比特填充处理,以此在该二进制数值中随机填充数字和字母相关的比特代码,从而将每一个数据单元对应的该二进制数值转换为具有相同长度的预处理哈希代码;
在该步骤S201中,逻辑函数运算处理具体包括:将所有数据单元对应的预处理哈希代码进行逻辑函数运算处理,从而生成关于该行数据的第一散列值。
上述技术方案的有益效果为:通过上述过程对该数据单元进行相应的计算处理,能够有针对性地对每一个数据单元进行可靠的第一散列值计算确定。
优选地,在该步骤S3中,根据该行数据自身对应的第一散列值和该行数据对应的前一个行数据的第一散列值,生成关于该行数据的第二散列值具体包括:
若当前行数据属于第一个行数据,则根据该当前行数据自身对应的第一散列值和预设初始散列值,生成关于该当前行数据的第二散列值;
若当前行数据不属于第一个行数据,则根据该当前行数据自身对应的第一散列值和该当前行数据对应的前一个行数据的第一散列值,生成关于该当前行数据的第二散列值。
优选地,若当前行数据属于第一个行数据,则根据该当前行数据自身对应的第一散列值和预设初始散列值,生成关于该当前行数据的第二散列值具体包括:将该当前行数据自身对应的第一散列值与该预设初始散列值进行逻辑相加运算,从而生成关于该当前行数据的第二散列值;
若当前行数据不属于第一个行数据,则根据该当前行数据自身对应的第一散列值和该当前行数据对应的前一个行数据的第一散列值,生成关于该当前行数据的第二散列值具体包括:将该当前行数据自身对应的第一散列值与该前一个行数据的第一散列值进行逻辑相加运算,从而生成关于该当前行数据的第二散列值。
上述技术方案的有益效果为:通过上述方式计算确定第二散列值,能够将相邻的两个行数据进行关联,从而提高对所有行数据的关联安全验证和改善对存储数据的安全验证全面性。
优选地,在该步骤S4中,根据该第一散列值,确定其对应的行数据的正确性具体包括:将该第一散列值与对该行数据进行重新计算处理后得到的另一第一散列值进行比对,若该第一散列值与该另一第一散列值相同,则确定其对应的行数据具有正确性,否则,确定其对应的行数据不具有正确性。
上述技术方案的有益效果为:通过上述过程确定某一个行数据是否具有正确性,能够在对单个行数据进行读取时能够快速地确定该单个行数据是否被篡改,从而提高对行数据可信性确定的可靠性。
优选地,在该步骤S4中,根据该第二散列值,对所有行数据进行定期校验,从而确定该存储数据的可信度具体包括:
如果当前行数据属于第一个行数据,则将该当前行数据进行重新计算处理后得到的另一第一散列值与预设初始散列值进行逻辑相加运算,若该逻辑相加运算的结果与该当前行数据对应的第二散列值相同,则确定该当前行数据具有可信度,否则,确定该当前行数据不具有可信度;
如果当前行数据不属于第一个行数据,则将该当前行数据进行重新计算处理后得到的另一个第一散列值与该当前行数据对应的前一个行数据的第二散列值进行逻辑相加运算,若该逻辑相加运算的结果与该当前行数据对应的第二散列值相同,则确定该当前行数据具有可信度,否则,确定该当前行数据不具有可信度;
如果所有行数据均具有可信度,则确定该存储数据具有可信度,否则,确定该存储数据不具有可信度。
上述技术方案的有益效果为:上述过程以纯软件的方式来对所有行数据进行关联性的安全性确定,这使得当其中一个行数据被篡改时,其关联的第二散列值也会相应发生变化,通过对该第二散列值进行比对能够及时地确定存储数据是否被篡改以及准确地定位被篡改数据的位置。
从上述实施例的内容可知,该利用散列算法实现数据的可信存储的方法通过获取存储数据的生成时间信息,以此将该存储数据预先划分为若干行数据,其中,每一个行数据包括相同数量的数据单元,并根据该行数据包含的数据单元,生成关于该行数据的第一散列值,并将该行数据和与其对应的第一散列值进行存储,再根据该行数据自身对应的第一散列值和该行数据对应的前一个行数据的第一散列值,生成关于该行数据的第二散列值,最后根据该第一散列值,确定其对应的行数据的正确性,或者根据该第二散列值,对所有行数据进行定期校验,从而确定该存储数据的可信度;可见,该利用散列算法实现数据的可信存储的方法通过纯软件的方式来对数据进行存储和安全验证,以此在数据存储效率和数据安全可信上两个方面取得平衡,此外该方法还能够对海量数据在短时间内进行全面地和定期的数据安全性查询,从而便于在存储的数据发生篡改的情况下能够快速地和准确地定位被篡改的数据,以及增大存储数据的可信性。

Claims (10)

1.利用散列算法实现数据的可信存储的方法,其特征在于,其包括如下步骤:
步骤S1,获取存储数据的生成时间信息,以此将所述存储数据预先划分为若干行数据,其中,每一个所述行数据包括相同数量的数据单元;
步骤S2,根据所述行数据包含的数据单元,生成关于所述行数据的第一散列值,并将所述行数据和与其对应的第一散列值进行存储;
步骤S3,根据所述行数据自身对应的第一散列值和所述行数据对应的前一个行数据的第一散列值,生成关于所述行数据的第二散列值;
步骤S4,根据所述第一散列值,确定其对应的行数据的正确性,或者根据所述第二散列值,对所有行数据进行定期校验,从而确定所述存储数据的可信度。
2.根据权利要求1所述的利用散列算法实现数据的可信存储的方法,其特征在于:
在所述步骤S1中,获取存储数据的生成时间信息,以此将所述存储数据预先划分为若干行数据,其中,每一个所述行数据包括相同数量的数据单元具体包括:
步骤S101,获取所述存储数据包含的所有数据单元各自的生成时间值;
步骤S102,按照所有数据单元各自的生成时间值的时间先后顺序,将所有数据单元进行关于生成时间点由远至近的顺序进行排列,从而生成数据单元序列;
步骤S103,按照预设数据长度,对所述数据单元序列由头开始进行切割,从而将所述数据单元序列划分为若干行数据,并使每一个所述行数据包括相同数量的数据单元。
3.根据权利要求2所述的利用散列算法实现数据的可信存储的方法,其特征在于:
在所述步骤S103之后还包括:
步骤S104,按照所述行数据在所述数据单元中的顺序,对每一个行数据依次标定相应的序号,并将所述序号作为所述行数据的索引信息。
4.根据权利要求1所述的利用散列算法实现数据的可信存储的方法,其特征在于:
在所述步骤S2中,根据所述行数据包含的数据单元,生成关于所述行数据的第一散列值,并将所述行数据和与其对应的第一散列值进行存储具体包括:
步骤S201,对所述行数据包含的所述数据单元进行SHA256哈希算法处理,从而生成关于所述行数据的第一散列值,其中所述第一散列值是由随机字母和数字共同组成的字符串;
步骤S202,将所述第一散列值作为所述行数据的附加数据信息,从而实现所述行数据与所述第一散列值的共同存储。
5.根据权利要求4所述的利用散列算法实现数据的可信存储的方法,其特征在于:
在所述步骤S201,对所述行数据包含的所述数据单元进行SHA256哈希算法处理,从而生成关于所述行数据的第一散列值具体包括:
对所述行数据包含的所有数据单元进行哈希初始值设置处理、哈希初始值预处理和逻辑函数运算处理,从而生成关于所述行数据的第一散列值。
6.根据权利要求5所述的利用散列算法实现数据的可信存储的方法,其特征在于:
在所述步骤S201中,对所述行数据包含的所有数据单元进行哈希初始值设置处理具体包括:根据哈希函数,对所述数据单元进行处理,从而生成关于每一个数据单元的哈希初始值,并且所有数据单元对应的哈希初始值两两互为互质数;
在所述步骤S201中,所述哈希初始值预处理具体包括:将每一个数据单元对应的哈希初始值转换为二进制数值,并对所述二进制数值进行附加比特填充处理,以此在所述二进制数值中随机填充数字和字母相关的比特代码,从而将每一个数据单元对应的所述二进制数值转换为具有相同长度的预处理哈希代码;
在所述步骤S201中,逻辑函数运算处理具体包括:将所有数据单元对应的预处理哈希代码进行逻辑函数运算处理,从而生成关于所述行数据的第一散列值。
7.根据权利要求1所述的利用散列算法实现数据的可信存储的方法,其特征在于:
在所述步骤S3中,根据所述行数据自身对应的第一散列值和所述行数据对应的前一个行数据的第一散列值,生成关于所述行数据的第二散列值具体包括:
若当前行数据属于第一个行数据,则根据所述当前行数据自身对应的第一散列值和预设初始散列值,生成关于所述当前行数据的第二散列值;
若当前行数据不属于第一个行数据,则根据所述当前行数据自身对应的第一散列值和所述当前行数据对应的前一个行数据的第一散列值,生成关于所述当前行数据的第二散列值。
8.根据权利要求7所述的利用散列算法实现数据的可信存储的方法,其特征在于:
若当前行数据属于第一个行数据,则根据所述当前行数据自身对应的第一散列值和预设初始散列值,生成关于所述当前行数据的第二散列值具体包括:将所述当前行数据自身对应的第一散列值与所述预设初始散列值进行逻辑相加运算,从而生成关于所述当前行数据的第二散列值;
若当前行数据不属于第一个行数据,则根据所述当前行数据自身对应的第一散列值和所述当前行数据对应的前一个行数据的第一散列值,生成关于所述当前行数据的第二散列值具体包括:将所述当前行数据自身对应的第一散列值与所述前一个行数据的第一散列值进行逻辑相加运算,从而生成关于所述当前行数据的第二散列值。
9.根据权利要求1所述的利用散列算法实现数据的可信存储的方法,其特征在于:
在所述步骤S4中,根据所述第一散列值,确定其对应的行数据的正确性具体包括:将所述第一散列值与对所述行数据进行重新计算处理后得到的另一第一散列值进行比对,若所述第一散列值与所述另一第一散列值相同,则确定其对应的行数据具有正确性,否则,确定其对应的行数据不具有正确性。
10.根据权利要求1所述的利用散列算法实现数据的可信存储的方法,其特征在于:
在所述步骤S4中,根据所述第二散列值,对所有行数据进行定期校验,从而确定所述存储数据的可信度具体包括:
如果当前行数据属于第一个行数据,则将所述当前行数据进行重新计算处理后得到的另一第一散列值与预设初始散列值进行逻辑相加运算,若所述逻辑相加运算的结果与所述当前行数据对应的第二散列值相同,则确定所述当前行数据具有可信度,否则,确定所述当前行数据不具有可信度;
如果当前行数据不属于第一个行数据,则将所述当前行数据进行重新计算处理后得到的另一个第一散列值与所述当前行数据对应的前一个行数据的第二散列值进行逻辑相加运算,若所述逻辑相加运算的结果与所述当前行数据对应的第二散列值相同,则确定所述当前行数据具有可信度,否则,确定所述当前行数据不具有可信度;
如果所有行数据均具有可信度,则确定所述存储数据具有可信度,否则,确定所述存储数据不具有可信度。
CN202011029689.2A 2020-09-27 2020-09-27 利用散列算法实现数据的可信存储的方法 Active CN112115522B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011029689.2A CN112115522B (zh) 2020-09-27 2020-09-27 利用散列算法实现数据的可信存储的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011029689.2A CN112115522B (zh) 2020-09-27 2020-09-27 利用散列算法实现数据的可信存储的方法

Publications (2)

Publication Number Publication Date
CN112115522A true CN112115522A (zh) 2020-12-22
CN112115522B CN112115522B (zh) 2023-10-20

Family

ID=73798284

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011029689.2A Active CN112115522B (zh) 2020-09-27 2020-09-27 利用散列算法实现数据的可信存储的方法

Country Status (1)

Country Link
CN (1) CN112115522B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101655820A (zh) * 2009-08-28 2010-02-24 深圳市茁壮网络股份有限公司 关键字存储方法及存储装置
CN102446250A (zh) * 2010-10-13 2012-05-09 索尼公司 数据完整性的保护和验证方法、设备和系统
CN106570423A (zh) * 2016-10-28 2017-04-19 上海斐讯数据通信技术有限公司 一种数据防篡改方法及系统
US20170154042A1 (en) * 2015-12-01 2017-06-01 Facebook, Inc. Co-prime hashing
US20180115428A1 (en) * 2016-10-26 2018-04-26 Acronis International Gmbh System and method for verification of data transferred among several data storages
CN109299038A (zh) * 2018-08-29 2019-02-01 南京数睿数据科技有限公司 一种适用于区块链的海量数据摘要生成系统和方法
CN109388335A (zh) * 2017-08-10 2019-02-26 中国移动通信集团宁夏有限公司 一种数据存储方法及系统
CN109753788A (zh) * 2017-11-03 2019-05-14 厦门雅迅网络股份有限公司 内核运行时的完整性校验方法及计算机可读存储介质
CN109889505A (zh) * 2019-01-23 2019-06-14 平安科技(深圳)有限公司 数据持有性验证方法及终端设备
US20190228086A1 (en) * 2018-01-25 2019-07-25 Merck Sharp & Dohme Corp. Verification of Data Provenance for Existing Computer Systems

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101655820A (zh) * 2009-08-28 2010-02-24 深圳市茁壮网络股份有限公司 关键字存储方法及存储装置
CN102446250A (zh) * 2010-10-13 2012-05-09 索尼公司 数据完整性的保护和验证方法、设备和系统
US20170154042A1 (en) * 2015-12-01 2017-06-01 Facebook, Inc. Co-prime hashing
US20180115428A1 (en) * 2016-10-26 2018-04-26 Acronis International Gmbh System and method for verification of data transferred among several data storages
CN106570423A (zh) * 2016-10-28 2017-04-19 上海斐讯数据通信技术有限公司 一种数据防篡改方法及系统
CN109388335A (zh) * 2017-08-10 2019-02-26 中国移动通信集团宁夏有限公司 一种数据存储方法及系统
CN109753788A (zh) * 2017-11-03 2019-05-14 厦门雅迅网络股份有限公司 内核运行时的完整性校验方法及计算机可读存储介质
US20190228086A1 (en) * 2018-01-25 2019-07-25 Merck Sharp & Dohme Corp. Verification of Data Provenance for Existing Computer Systems
CN109299038A (zh) * 2018-08-29 2019-02-01 南京数睿数据科技有限公司 一种适用于区块链的海量数据摘要生成系统和方法
CN109889505A (zh) * 2019-01-23 2019-06-14 平安科技(深圳)有限公司 数据持有性验证方法及终端设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
彭真 等: "云存储中基于喷泉码的数据恢复系统", 《计算机应用》, vol. 34, no. 04, pages 986 - 993 *

Also Published As

Publication number Publication date
CN112115522B (zh) 2023-10-20

Similar Documents

Publication Publication Date Title
CN109388975B (zh) 针对安全性和可靠性的存储器组织
US9934400B2 (en) System and methods for encrypting data
US10237074B2 (en) Redactable document signatures
US20200076624A1 (en) Secure digital signatures using physical unclonable function devices with reduced error rates
US8650649B1 (en) Systems and methods for determining whether to evaluate the trustworthiness of digitally signed files based on signer reputation
CN113806134A (zh) 具有增量更新的多个高速缓存线上的基于聚合ghash的消息认证码
US20100220853A1 (en) Method and Apparatus for Compound Hashing Via Iteration
US20130262421A1 (en) Checksum and hashing operations resilient to malicious input data
US20210234709A1 (en) Integrated circuit performing authentication using challenge-response protocol and method of using the integrated circuit
CN104317823A (zh) 一种利用数据指纹进行数据检测的方法
WO2020197776A1 (en) Error identification in executed code
CN106712968A (zh) 密钥获取方法、数字签名方法和装置
KR20210089485A (ko) 소프트웨어의 인증을 위한 장치 및 방법
CN114499859A (zh) 密码验证方法、装置、设备及存储介质
CN112115522A (zh) 利用散列算法实现数据的可信存储的方法
US8832450B2 (en) Methods and apparatus for data hashing based on non-linear operations
CN114448794B (zh) 一种基于芯片可信根对固件进行安全升级的方法及装置
US11580091B2 (en) Method of ensuring confidentiality and integrity of stored data and metadata in an untrusted environment
JP6007918B2 (ja) デバイス固有情報生成出力装置、デバイス固有情報生成方法および生成プログラム
CN114884646B (zh) 基于改进md5加密处理的系统密码存储方法
CN116484443B (zh) 一种基于鸿蒙系统的可信安全存储方法及装置
US11431490B1 (en) System and method for securing data in a quantum computing environment using multi-party computation
CN113849385B (zh) 一种日志文件的生成与解析方法及装置
US12130933B2 (en) Authentication of files
CN111737704B (zh) 用于数据证明的设备和方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant