如何用区块链技术来实现电子档案四性检测功能
1. 固化信息有效性检测
2. 元数据相关检测项
这种存储元数据的方式存在以下几点问题:
l 单节点故障易导致数据丢失。元数据仅保存在分布式系统中的中心节点上,一旦该节点发生故障,便会导致元数据丢失,尽管备份节点能在一定程度上避免发生该问题,但不能排除中心节点与备份节点同时故障的可能。
(1) 基于区块链技术的元数据存储模型
该层为系统提供底层的存储服务,相当于传统的分布式存储架构,主要负责存储业务数据等,并在存储的过程中产生元数据,包括数据位置信息、副本位置信息、副本数等。
该层主要由若干个验证节点(Node for Verification,NV)组成。在实现上 NV 可以是实际的物理节点,也可以是多线程服务。每个验证节点 NV都在本地存储中保存一份全局区块链,同时维护本地存储的块链状态(Local State)。该层业务主要包含两个阶段:元数据存储和元数据验证。在元数据存储阶段,验证节点 NV 首先对用户的签名信息和元数据信息进行收,其次验证用户签名信息,接着构造元数据区块,最后形成新的区块记录信息;在元数据验证阶段,验证节点 NV 首先接受用户的验证请求,检查本地区块链副本状态,对本地区块链副本状态进行同步,最后检索给定签名的元数据并返回结果。
该层保存元数据区块链的全局状态(Global State),所有验证节点 NV 都要与元数据区块链的全局状态保持同步。当某一验证节点存储层中发生单点故障或宕机等问题时,分布式存储系统可以通过读取区块链层的元数据区块链来对关键数据进行恢复。同时,该层区块链中保存的元数据信息为只读状态,即只允许用户对该层的区块链进行添加操作,构造新的元数据区块,记录到原有元数据区块链中,不允许用户修改甚至删除该层所保存的区块链元数据。
当需要对新数据进行存储时,首先发起者对数据进行签名后保存到存储节点;然后,将用户签名集合和原始信息发送给所有验证节点;接下来,每个验证节点对发起者的签名信息进行验证,如果签名信息全部验证通过,那么首先完成签名验证的节点获得下一个元数据区块的构建权利,并向其他节点广播,其他节点收到广播后停止当前验证工作;获得权限的节点则使用用户签名和对应的用户数据位置信息构造元数据,并构造元数据区块;最后,更新元数据区块链。
首先,用户将签名信息发送到验证节点;验证节点在接收到用户发送的签名信息后检查本地元数据区块链是否和全局保持状态一致,若状态一致则不做修改,若状态不一致,该验证点需要下载全局元数据区块链来同步本地区块链的状态;最后,验证节点完成元数据的同步验证。
当用户把移交信息包进行数据上链,就可以自动证明它的真实性。因为每个信息包数据都只能对应着一个地址,而该地址可以生成一个独一无二的哈希值。当其他人在想对文件进行修改、删除等操作时,原始信息会被保留,而修改或删除的记录会被记录在区块链中。
4. 电子档案封装包电子签名有效性检测
发送方把需要发送的封装信息包进行双重处理。首先是通过接收方公钥来进行加密,然后对封装包还要通过哈希值得到摘要,接要再经过发送方私匙进行签名,签名后得出的原文密文和发送方签名一起发给接受方。接收方用自己的私匙解开密文,得到封装包,然后通过哈希值得到摘要。另外则是通过发送方的公钥解开发送方签名,得到摘要,并且通过解密原文密文的摘要和解密发送方签名的摘要进行对比,最后的摘要一致,则认为摘要是对的。通过这样的方式,接受方完成了对发送方签名过的封装包的认证。
从前文我们已经可以清楚的看到,利用区块链技术完成电子档案的四性检测功能,其根本上是完成从真实性、完整性、可用性及安全性这四性中涉及的元数据及移交信息包检测,而这“四性”中几乎每“一性”均涉及到元数据及移交信息包,因此,利用区块链技术可以对所有的四性进行检测。
事实上,在利用区块链的技术实现电子档案的四性检测功能过程中发现,其最适合、最有优势的功能实现是:真实性,对于真实性的检测,时至今日,仍未发现比区块链更有优势的技术。
既然区块链技术并不适合标准中所规定电子档案所有45项检测项的检测工作,那么哪些检测项是适合使用,哪些检测项不太适合使用呢,请参见下表:


上一篇 
