CN114462998A - 一种日志防篡改方法、系统及存储介质 - Google Patents
一种日志防篡改方法、系统及存储介质 Download PDFInfo
- Publication number
- CN114462998A CN114462998A CN202011237554.5A CN202011237554A CN114462998A CN 114462998 A CN114462998 A CN 114462998A CN 202011237554 A CN202011237554 A CN 202011237554A CN 114462998 A CN114462998 A CN 114462998A
- Authority
- CN
- China
- Prior art keywords
- log
- information
- hash
- hash information
- block
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种日志防篡改方法、系统及存储介质,包括:获取日志后,生成日志的哈希信息;将所述哈希信息形成交易信息;将所述交易信息记录到区块中,并在区块链上存储。采用本发明,便于发现日志被篡改,进而实现日志数据从源头上的真正不可篡改,保证日志的实时防篡改。既实现日志数据的防篡改特性,又减少系统运行压力、降低区块链节点的存储消耗,增强系统可实施性。便于快速搜索到区块链上数据,提高日志完整性验证的效率。
Description
技术领域
本发明涉及信息安全技术领域,特别涉及一种日志防篡改方法、系统及存储介质。
背景技术
日志审计在企业安全建设中起到事关重要的作用,能够达到事后追责、追踪溯源的目的,有助于企业安全的建设。传统日志审计系统中存在日志被特权账号人员篡改、删除、伪造的风险,导致日志审计失去意义。所以需要技术手段防止日志被篡改。
由于区块链技术具备防伪、防篡改的特性,因此也有基于区块链的防篡改日志记录的方案。
现有技术的不足在于:不能防止日志上链前存在的被恶意特权用户篡改的问题。
发明内容
本发明提供了一种日志防篡改方法、系统及存储介质,用以解决不能防止日志上链前存在的被恶意特权用户篡改的问题。
本发明提供以下技术方案:
一种日志防篡改方法,包括:
获取日志后,生成日志的哈希信息;
将所述哈希信息形成交易信息;
将所述交易信息记录到区块中,并在区块链上存储。
实施中,进一步包括:
对哈希信息使用私钥签名后形成交易信息;
将私钥对应的公钥在区块链上公开,用以供区块链对交易信息进行验证。
实施中,进一步包括:
确定存储交易信息的区块的区块高度;
在存储日志的哈希信息时,存储该哈希信息对应的交易信息的区块的区块高度,该区块高度用以供检索该哈希信息。
实施中,在获取日志后,生成日志的哈希信息时,是生成日志的第一条日志记录与最后一条日志记录的哈希信息。
实施中,进一步包括:
若日志的哈希信息,与区块链上存储的哈希信息不一致,则确定日志存在篡改。
实施中,在确定日志是否存在篡改时,包括:
确定需审计的日志所处的时间段的开始时间T1与结束时间T2;
确定T1时间存储的日志的哈希信息以及区块高度height1,以及T2时间存储的日志的哈希信息以及区块高度height2;
获取height1和height2之间区块的所有交易信息;
确定交易信息对应的哈希信息;
将所述哈希信息与区块链上存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
实施中,在与区块链上存储的哈希信息进行对比确定日志不存在篡改后,进一步包括:
计算交易信息对应的哈希信息;
将所述哈希信息与本地存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
实施中,进一步包括:
确定日志存在篡改时,发出告警。
一种日志防篡改系统,包括:
处理器,用于读取存储器中的程序,执行下列过程:
获取日志后,生成日志的哈希信息;
将所述哈希信息形成交易信息;
将所述交易信息记录到区块中,并在区块链上存储;
收发机,用于在处理器的控制下接收和发送数据。
实施中,进一步包括:
对哈希信息使用私钥签名后形成交易信息;
将私钥对应的公钥在区块链上公开,用以供区块链对交易信息进行验证。
实施中,进一步包括:
确定存储交易信息的区块的区块高度;
在存储日志的哈希信息时,存储该哈希信息对应的交易信息的区块的区块高度,该区块高度用以供检索该哈希信息。
实施中,在获取日志后,生成日志的哈希信息时,是生成日志的第一条日志记录与最后一条日志记录的哈希信息。
实施中,进一步包括:
若日志的哈希信息,与区块链上存储的哈希信息不一致,则确定日志存在篡改。
实施中,在确定日志是否存在篡改时,包括:
确定需审计的日志所处的时间段的开始时间T1与结束时间T2;
确定T1时间存储的日志的哈希信息以及区块高度height1,以及T2时间存储的日志的哈希信息以及区块高度height2;
获取height1和height2之间区块的所有交易信息;
确定交易信息对应的哈希信息;
将所述哈希信息与区块链上存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
实施中,在与区块链上存储的哈希信息进行对比确定日志不存在篡改后,进一步包括:
计算交易信息对应的哈希信息;
将所述哈希信息与本地存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
实施中,进一步包括:
确定日志存在篡改时,发出告警。
一种日志防篡改系统,包括:
哈希处理模块,用于在获取日志后,生成日志的哈希信息;
信息处理模块,用于将所述哈希信息形成交易信息;
区块上链模块,将所述交易信息记录到区块中,并在区块链上存储。
实施中,信息处理模块进一步用于对哈希信息使用私钥签名后形成交易信息;将私钥对应的公钥在区块链上公开,用以供区块链对交易信息进行验证。
实施中,区块上链模块进一步用于确定存储交易信息的区块的区块高度;在存储日志的哈希信息时,存储该哈希信息对应的交易信息的区块的区块高度,该区块高度用以供检索该哈希信息。
实施中,哈希处理模块进一步用于在获取日志后,生成日志的哈希信息时,是生成日志的第一条日志记录与最后一条日志记录的哈希信息。
实施中,进一步包括:
审计模块,用于若日志的哈希信息,与区块链上存储的哈希信息不一致,则确定日志存在篡改。
实施中,审计模块进一步用于在确定日志是否存在篡改时,包括:
确定需审计的日志所处的时间段的开始时间T1与结束时间T2;
确定T1时间存储的日志的哈希信息以及区块高度height1,以及T2时间存储的日志的哈希信息以及区块高度height2;
获取height1和height2之间区块的所有交易信息;
确定交易信息对应的哈希信息;
将所述哈希信息与区块链上存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
实施中,审计模块进一步用于在与区块链上存储的哈希信息进行对比确定日志不存在篡改后,包括:
计算交易信息对应的哈希信息;
将所述哈希信息与本地存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
实施中,审计模块进一步用于确定日志存在篡改时,发出告警。
一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述日志防篡改方法的计算机程序。
本发明有益效果如下:
本发明实施例提供的技术方案中,由于在日志数据采集过程中,对日志文件中的日志记录实时进行哈希链式计算,并存储日志记录与哈希值的对应关系表,因此一旦出现日志数据被篡改,则导致日志审计过程中哈希值比对结果不一致,便于发现日志被篡改,进而实现日志数据从源头上的真正不可篡改,保证日志的实时防篡改。
进一步的,由于在获取日志后,生成日志的哈希信息时,是生成日志的第一条日志记录与最后一条日志记录的哈希信息,因此将日志文件中第一条与最后一条日志记录的哈希值实时上传到区块链上存储,既实现日志数据的防篡改特性,又减少系统运行压力、降低区块链节点的存储消耗,增强系统可实施性。
进一步的,由于在存储日志的哈希信息时,存储该哈希信息对应的交易信息的区块的区块高度,该区块高度用以供检索该哈希信息,因此在区块链存储日志哈希的同时,在链下建立索引数据库,同步存储日志哈希所存储区块的高度,便于快速搜索到区块链上数据,提高日志完整性验证的效率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例中审计日志防篡改方法实施流程示意图;
图2为本发明实施例中基于区块链的日志防篡改系统结构示意图;
图3为本发明实施例中日志审核实施流程示意图;
图4为本发明实施例中日志防篡改方法系统结构一示意图;
图5为本发明实施例中日志防篡改方法系统结构二示意图。
具体实施方式
发明人在发明过程中注意到:
现有的基于区块链的防篡改日志记录方案中,客户端使用录入接口接收客户通过应用系统录入的日志,并检测日志的合法性,如果合法,则客户端对其进行签名并发送到服务端,如果不合法,则拒绝该日志录入。服务端对客户端发送的日志进行验证签名,并将合法日志暂存在日志缓存池。
之后,服务端将日志缓存池中所有日志按照时间顺序取出组成日志列表,并附上新区块编号,记为新区块并签名,然后根据日志列表的哈希、上一个区块的签名以及一个随机区块的签名共同为依据生成新区块的签名。
最后,将签名后的区块存储到数据库中,并更新区块链账本。
用户通过客户端发起对指定时间范围内的审计请求,客户端对服务端所存储的日志进行审计,一旦发现篡改痕迹,及时告警并阻断后续日志录入。
现有关于区块链的日志防篡改方案中,要么采取日志实时上链的机制,要么默认日志数据上链前是正确的。
实际上,日志上链前存在被恶意特权用户篡改的风险。若采用实时上链,对于日志系统来说,性能要求太高,可实施性不强。
虽然该方案在一定程度上保证了日志数据的防篡改特性,但无法保证日志数据在上传到区块链前未被篡改,无法实现日志的实时防篡改。
进一步的,在该方案中,将全部日志哈希上传至区块链,由于区块链本身就有多个备份,存储空间消耗较大,全部日志哈希上传到区块链进一步增加了存储空间的消耗,而且数据量也影响着通信代价,因此对系统性能要求较高。
基于此,本发明实施例中提供了基于区块链的日志防篡改方案,下面结合附图对本发明的具体实施方式进行说明。
图1为审计日志防篡改方法实施流程示意图,如图所示,可以包括:
步骤101、获取日志后,生成日志的哈希信息;
步骤102、将所述哈希信息形成交易信息;
步骤103、将所述交易信息记录到区块中,并在区块链上存储。
实施中,还可以进一步包括:
对哈希信息使用私钥签名后形成交易信息;
将私钥对应的公钥在区块链上公开,用以供区块链对交易信息进行验证。
实施中,还可以进一步包括:
确定存储交易信息的区块的区块高度;
在存储日志的哈希信息时,存储该哈希信息对应的交易信息的区块的区块高度,该区块高度用以供检索该哈希信息。
实施中,在获取日志后,生成日志的哈希信息时,是生成日志的第一条日志记录与最后一条日志记录的哈希信息。
下面实施中,将以功能模块的实施方式进行说明,为便于理解,在实施例中,会将采用基于区块链的日志防篡改系统来进行具体说明,但需要注意的是,功能模块的命名、以及功能的分配仅用于实施说明,并不意味仅有实施例中所说的一种功能结构的系统架构。
首先对整体架构进行说明。
图2为基于区块链的日志防篡改系统结构示意图,如图所示,系统可以包含四个部分:业务系统、日志处理服务器、区块链、审计客户端。其中,用户通过操作业务系统生成各个业务系统的日志数据;日志处理服务器负责采集、处理、存储业务系统日志数据,并根据日志数据计算日志哈希信息,形成交易信息,以及上链前交易的签名处理;区块链负责交易信息的验证以及区块的存储;审计客户端负责发起日志完整性校验请求以验证日志数据是否篡改,同时负责日志的常规审计功能。
系统对日志数据的操作,可以按照以下流程实施:
1、系统初始化。
日志处理服务器生成公私钥对(sk,pk),分别作为其签名密钥与验证密钥,然后向区块链公开公钥pk。
2、日志采集、处理。
用户可以通过操作业务系统生成日志数据,日志处理服务器从业务系统采集日志源数据,并对其进行处理、存储。
为确保日志上链前数据的完整性,从源头上做到不可篡改,在日志采集过程中,实时建立日志哈希链。在存储日志记录的同时,同步存储对应的哈希信息以及*所在区块高度(*内容将在日志审计中使用),日志记录与哈希值对应关系如表1所示。其中,logi为日志记录,hashi为该日志记录对应的哈希信息。
当日志文件中的第一条日志记录log1生成时,计算日志的哈希信息hash1=Hash(log1);后续日志记录logi生成时,计算日志的哈希信息hashi=Hash(logi||hashi-1)。
表1:日志记录与哈希值对应表
3、日志上链。
当日志文件中第1条日志记录的哈希值生成时,日志处理服务器对哈希值使用私钥sk进行签名,将交易实时上传到区块链。当最后1条日志记录的哈希值生成时,同样使用私钥sk进行签名,并将交易实时上传到区块链。使用私钥签名的目的是防止交易伪造。
交易上传后,区块链使用日志处理服务器的公钥pk对交易信息进行验证,验证通过则进行上链处理,否则丢掉此交易。
为了增加区块链搜索效率,将日志哈希在区块链所存储的区块高度在本地记录,在日志处理服务器建立一个便于搜索的索引数据库。在表1中增设“所在区块高度”字段便能实现上述功能,帮助提高区块链的搜索效率。当区块高度增加时,自动同步索引数据库,记录日志哈希所在区块高度。
4、日志审计。
下面对日志审计的实施进行说明。
实施中,还可以进一步包括:
若日志的哈希信息,与区块链上存储的哈希信息不一致,则确定日志存在篡改。
具体实施中,在确定日志是否存在篡改时,包括:
确定需审计的日志所处的时间段的开始时间T1与结束时间T2;
确定T1时间存储的日志的哈希信息以及区块高度height1,以及T2时间存储的日志的哈希信息以及区块高度height2;
获取height1和height2之间区块的所有交易信息;
确定交易信息对应的哈希信息;
将所述哈希信息与区块链上存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
具体实施中,在与区块链上存储的哈希信息进行对比确定日志不存在篡改后,进一步包括:
计算交易信息对应的哈希信息;
将所述哈希信息与本地存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
具体实施中,进一步包括:
确定日志存在篡改时,发出告警。
下面以实例进行说明。
图3为日志审核实施流程示意图,如图所示,可以包括:
步骤301、用户输入审计时间段T1、T2;
步骤302、搜索索引数据库,找到区块高度height1和height2;
步骤303、下载对应区块交易信息;
步骤304、对比区块链上哈希值和本地存储的哈希值;
步骤305、判断是否一致,是则转入步骤306,否则转入步骤309;
步骤306、重新计算该时间段内全部日志哈希,并与本地存储哈希值比对;
步骤307、判断是否一致,是则转入步骤308,否则转入步骤309;
步骤308、输出,未发生篡改;
步骤309、告警:发生篡改。
具体的,当用户使用审计客户端进行日志审计时,用户输入待审计日志的时间段T1、T2。日志处理服务器首先根据T1、T2搜索索引数据库,快速找到此时间段内日志哈希信息所存储的区块高度height1和height2。下载height1和height2之间区块的所有交易信息,比对区块链上哈希值与对应本地存储的哈希信息(日志文件的第一条与最后一条)。若不一致,则进行篡改告警;若一致,则继续进行下面步骤。然后重新计算全部日志哈希值,并与本地存储的哈希值比对:若一致,则证明未被篡改;否则,证明日志数据被篡改。重新计算日志哈希值可在日志审计分析时同步进行,减少计算代价。
基于同一发明构思,本发明实施例中还提供了一种日志防篡改系统、及计算机可读存储介质,由于这些设备解决问题的原理与日志防篡改方法相似,因此这些设备的实施可以参见方法的实施,重复之处不再赘述。
在实施本发明实施例提供的技术方案时,可以按如下方式实施。
图4为日志防篡改方法系统结构一示意图,如图所示,系统中包括:
处理器400,用于读取存储器420中的程序,执行下列过程:
获取日志后,生成日志的哈希信息;
将所述哈希信息形成交易信息;
将所述交易信息记录到区块中,并在区块链上存储;
收发机410,用于在处理器400的控制下接收和发送数据。
实施中,进一步包括:
对哈希信息使用私钥签名后形成交易信息;
将私钥对应的公钥在区块链上公开,用以供区块链对交易信息进行验证。
实施中,进一步包括:
确定存储交易信息的区块的区块高度;
在存储日志的哈希信息时,存储该哈希信息对应的交易信息的区块的区块高度,该区块高度用以供检索该哈希信息。
实施中,在获取日志后,生成日志的哈希信息时,是生成日志的第一条日志记录与最后一条日志记录的哈希信息。
实施中,进一步包括:
若日志的哈希信息,与区块链上存储的哈希信息不一致,则确定日志存在篡改。
实施中,在确定日志是否存在篡改时,包括:
确定需审计的日志所处的时间段的开始时间T1与结束时间T2;
确定T1时间存储的日志的哈希信息以及区块高度height1,以及T2时间存储的日志的哈希信息以及区块高度height2;
获取height1和height2之间区块的所有交易信息;
确定交易信息对应的哈希信息;
将所述哈希信息与区块链上存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
实施中,在与区块链上存储的哈希信息进行对比确定日志不存在篡改后,进一步包括:
计算交易信息对应的哈希信息;
将所述哈希信息与本地存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
实施中,进一步包括:
确定日志存在篡改时,发出告警。
其中,在图4中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器400代表的一个或多个处理器和存储器420代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机410可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器400负责管理总线架构和通常的处理,存储器420可以存储处理器400在执行操作时所使用的数据。
图5为日志防篡改方法系统结构二示意图,如图所示,系统中包括:
哈希处理模块501,用于在获取日志后,生成日志的哈希信息;
信息处理模块502,用于将所述哈希信息形成交易信息;
区块上链模块503,将所述交易信息记录到区块中,并在区块链上存储。
实施中,信息处理模块进一步用于对哈希信息使用私钥签名后形成交易信息;将私钥对应的公钥在区块链上公开,用以供区块链对交易信息进行验证。
实施中,区块上链模块进一步用于确定存储交易信息的区块的区块高度;在存储日志的哈希信息时,存储该哈希信息对应的交易信息的区块的区块高度,该区块高度用以供检索该哈希信息。
实施中,哈希处理模块进一步用于在获取日志后,生成日志的哈希信息时,是生成日志的第一条日志记录与最后一条日志记录的哈希信息。
实施中,进一步包括:
审计模块504,用于若日志的哈希信息,与区块链上存储的哈希信息不一致,则确定日志存在篡改。
实施中,审计模块进一步用于在确定日志是否存在篡改时,包括:
确定需审计的日志所处的时间段的开始时间T1与结束时间T2;
确定T1时间存储的日志的哈希信息以及区块高度height1,以及T2时间存储的日志的哈希信息以及区块高度height2;
获取height1和height2之间区块的所有交易信息;
确定交易信息对应的哈希信息;
将所述哈希信息与区块链上存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
实施中,审计模块进一步用于在与区块链上存储的哈希信息进行对比确定日志不存在篡改后,包括:
计算交易信息对应的哈希信息;
将所述哈希信息与本地存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
实施中,审计模块进一步用于确定日志存在篡改时,发出告警。
为了描述的方便,以上所述装置的各部分以功能分为各种模块或单元分别描述。当然,在实施本发明时可以把各模块或单元的功能在同一个或多个软件或硬件中实现。
本发明实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述日志防篡改方法的计算机程序。
具体实施中可以参见日志防篡改方法的实施。
综上所述,本发明实施例提供的技术方案中,在日志数据采集过程中,对日志文件中的日志记录实时进行哈希链式计算,并存储日志记录与哈希值的对应关系表。一旦出现日志数据被篡改,则导致日志审计过程中哈希值比对结果不一致,便于发现日志被篡改,进而实现日志数据从源头上的真正不可篡改,保证日志的实时防篡改。
进一步的,将日志文件中第一条与最后一条日志记录的哈希值实时上传到区块链上存储,既实现日志数据的防篡改特性,又减少系统运行压力、降低区块链节点的存储消耗,增强系统可实施性。
进一步的,在区块链存储日志哈希的同时,在链下建立索引数据库,同步存储日志哈希所存储区块的高度,便于快速搜索到区块链上数据,提高日志完整性验证的效率。
可见,本方案能够保证日志数据上链前的完整性。对于无法保证日志数据在上传到区块链前未被篡改,即无法保证实时防篡改的问题。在本方案中,在日志数据存储到日志处理服务器时,对日志文件中的日志记录实时进行哈希链式计算,并存储日志记录与哈希值的对应关系表,一旦出现日志记录被篡改,则导致哈希值比对结果不一致,进而实现日志数据从源头上的真正不可篡改,保证日志的实时防篡改。
本方案具有较强的可实施性。无需上传全部日志数据或日志哈希到区块链上,只需将日志文件中的第一条和最后一条日志记录对应的哈希上传,这样可以减少系统的运行压力与区块链的存储消耗。
本方案支持快速的区块链搜索。通过在链下建立索引数据库,同步存储日志哈希所存储区块的高度,便于快速搜索到区块链上数据,提高日志完整性验证的效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (11)
1.一种日志防篡改方法,其特征在于,包括:
获取日志后,生成日志的哈希信息;
将所述哈希信息形成交易信息;
将所述交易信息记录到区块中,并在区块链上存储。
2.如权利要求1所述的方法,其特征在于,进一步包括:
对哈希信息使用私钥签名后形成交易信息;
将私钥对应的公钥在区块链上公开,用以供区块链对交易信息进行验证。
3.如权利要求1所述的方法,其特征在于,进一步包括:
确定存储交易信息的区块的区块高度;
在存储日志的哈希信息时,存储该哈希信息对应的交易信息的区块的区块高度,该区块高度用以供检索该哈希信息。
4.如权利要求1所述的方法,其特征在于,在获取日志后,生成日志的哈希信息时,是生成日志的第一条日志记录与最后一条日志记录的哈希信息。
5.如权利要求1至4任一所述的方法,其特征在于,进一步包括:
若日志的哈希信息,与区块链上存储的哈希信息不一致,则确定日志存在篡改。
6.如权利要求5所述的方法,其特征在于,在确定日志是否存在篡改时,包括:
确定需审计的日志所处的时间段的开始时间T1与结束时间T2;
确定T1时间存储的日志的哈希信息以及区块高度height1,以及T2时间存储的日志的哈希信息以及区块高度height2;
获取height1和height2之间区块的所有交易信息;
确定交易信息对应的哈希信息;
将所述哈希信息与区块链上存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
7.如权利要求6所述的方法,其特征在于,在与区块链上存储的哈希信息进行对比确定日志不存在篡改后,进一步包括:
计算交易信息对应的哈希信息;
将所述哈希信息与本地存储的哈希信息进行对比;
若不一致,则确定日志存在篡改,若一致,则确定日志不存在篡改。
8.如权利要求5所述的方法,其特征在于,进一步包括:
确定日志存在篡改时,发出告警。
9.一种日志防篡改系统,其特征在于,包括:
处理器,用于读取存储器中的程序,执行下列过程:
获取日志后,生成日志的哈希信息;
将所述哈希信息形成交易信息;
将所述交易信息记录到区块中,并在区块链上存储;
收发机,用于在处理器的控制下接收和发送数据。
10.一种日志防篡改系统,其特征在于,包括:
哈希处理模块,用于在获取日志后,生成日志的哈希信息;
信息处理模块,用于将所述哈希信息形成交易信息;
区块上链模块,用于将所述交易信息记录到区块中,并在区块链上存储。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至8任一所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011237554.5A CN114462998A (zh) | 2020-11-09 | 2020-11-09 | 一种日志防篡改方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011237554.5A CN114462998A (zh) | 2020-11-09 | 2020-11-09 | 一种日志防篡改方法、系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114462998A true CN114462998A (zh) | 2022-05-10 |
Family
ID=81403808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011237554.5A Pending CN114462998A (zh) | 2020-11-09 | 2020-11-09 | 一种日志防篡改方法、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114462998A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116028990A (zh) * | 2023-03-30 | 2023-04-28 | 中国科学技术大学 | 一种基于区块链的防篡改隐私保护日志审计方法 |
-
2020
- 2020-11-09 CN CN202011237554.5A patent/CN114462998A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116028990A (zh) * | 2023-03-30 | 2023-04-28 | 中国科学技术大学 | 一种基于区块链的防篡改隐私保护日志审计方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10944548B2 (en) | Method for registration of data in a blockchain database and a method for verifying data | |
CN107295002B (zh) | 一种云端存储数据的方法及服务器 | |
US11849023B2 (en) | Verifiable redactable audit log | |
EP3824403B1 (en) | Method, apparatus, and electronic device for blockchain-based recordkeeping | |
CN109409122B (zh) | 文件存储方法及其电子设备、存储介质 | |
JP6853364B2 (ja) | ブロックチェーンベースのデジタル証明書を実装するためのシステム及び方法 | |
WO2020088108A1 (zh) | 基于区块链的数据存证方法及装置、电子设备 | |
JP6965352B2 (ja) | デジタル・マークを生成するためのシステム及び方法 | |
WO2019233615A1 (en) | A method for registration of data in a blockchain database and a method for verifying data | |
TW202018571A (zh) | 基於區塊鏈的資料存證方法及裝置、電子設備 | |
RU2351978C2 (ru) | Способ обеспечения целостности набора записей данных | |
US11563560B2 (en) | Blockchain-based data evidence storage method and apparatus | |
CN108009445B (zh) | 一种半中心化的可信数据管理系统 | |
CN110958319B (zh) | 一种基于区块链的侵权存证管理方法及装置 | |
KR20180089670A (ko) | 키 관리가 필요없는 블록체인을 기반한 전자서명 또는 메시지 인증 코드를 생성 및 검증 방법 | |
US20220329446A1 (en) | Enhanced asset management using an electronic ledger | |
US20240039731A1 (en) | Authenticated Modification of Blockchain-Based Data | |
US11769146B1 (en) | Blockchain transactional identity verification | |
CN115270193B (zh) | 基于区块链及协同同步下的数据档案安全共享方法及装置 | |
US11570005B2 (en) | Systems and methods for proving immutability of blockchains | |
CN111198862A (zh) | 一种基于区块链的文件存储方法、装置、终端设备和介质 | |
CN114462998A (zh) | 一种日志防篡改方法、系统及存储介质 | |
CN110598374B (zh) | 基于区块链的作品登记方法、装置和计算机可读存储介质 | |
CN114401096B (zh) | 区块链数据的上链控制方法、装置、设备及存储介质 | |
CN116668451B (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 |