由于区块链是一个共享的账本,为了保证电子证照数据的私密性,共享数据不会直接存储在区块链上,而是通过智能合约将其锚定为区块链上的数字资产。当以数据库方式提供时,将政府业务库中共享的数据同步一份到其前置机的ODS中后,再将该部分共享数据在ODS中的访问信息加密后作为数字资产的元数据;当以数据文件方式提供时,是将政府业务库中可共享的数据经过加密后,写到ODS的文件系统中,形成一个共享数据文件,再将该共享数据文件的完整性哈希值作为数字资产的元数据存储在区块链上,而共享数据文件本身依然存储在政府业务库前置机的ODS中。
其中,数字资产包括头信息和数字资产元数据两部分,具体分析如下。
(1)头信息:包括版本号、数据类型、哈希算法。其中,版本号表示数字资产解析标准使用的版本的编号;数据类型表示数字资产是非结构化数据(文件存储方式)还是结构化数据(数据库存储方式);哈希算法表示计算文件完整性所采用的哈希算法,如MD5、SHA1、SHA256、SHA3等,当数据类型为非结构化数据时该字段才生效。
(2)数字资产元数据:如果共享数据为结构化数据,则数字资产元数据表示政府业务系统前置机ODS的访问接口信息的加密字符串;如果共享数据为非结构化数据,则数字资产元数据表示共享数据文件的完整性哈希值。即,结构化数据的数字资产为:版本号+数据类型+数字资产元数据;非结构化数据的数字资产为:版本号+数据类型+哈希算法+数字资产元数据。
数据共享方通过区块链客户端发布数字资产时,数字资产被记录在交易负载中后提交到预置智能合约,实现数字资产的发布。
可信电子证照实际上是采用一种链上链下相结合的存储方式,以此来实现共享数据的存储与接入,并能保障数据在存储上的私密性和区块链的存储效率。这样做的好处是,在区块链的持续记账过程中,可防止区块链的链上数据过度膨胀,保障交易效率。具体而言,对占用空间较小的文本数据直接采用链上存储,对占用空间较大的数据或者文件则将访问这类数据的元数据信息采用链上存储,文件本身采用链下存储。链下存储可以是任意网络文件系统、文件链接、点对点分布式文件系统等,如IPFS等。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。