APP下载

区块链技术在图片存证中的应用*

2019-12-04周正南陆安江

通信技术 2019年11期
关键词:账本共识分布式

周正南,陆安江

(贵州大学,贵州 贵阳 550025)

0 引 言

将合同、协议、收益证明、版权证书、发票以及资产总额等重要文件电子化后,这些电子数据将具有便于携带、可复制、易存储等优点,而这也会暴露出电子数据的缺点。例如,电子数据易篡改、易伪造以及其他缺点。如何让电子数据可信、可溯源、难篡改,是当前亟需解决的问题。

区块链技术具有分布式、去中心、公开透明、记录不可篡改以及信息安全等特性。基于以上特性,区块链能安全存储各种电子数据。例如,电子合同、协议、收益证明、版权证书、发票、许可证、登记表、执照以及证明等。区块链有时间戳,方便记录其时间点,也方便对数据进行溯源。

2018年10月15日,索尼宣布开发了一个使用区块链技术来存储和处理权力信息的系统[1]。利用区块链难以篡改技术的特点证明音乐和视频等数字内容的创建者、创作日期和时间等。通过区块链手段来保护所有者的合法权益。

区块链应用于数据存证领域,大大减少了文件记录、独立审计以及遵守监管条例的成本和难度,提升了系统的安全性和效率。

1 区块链技术

区块链是由节点参与的去中心化、去信任化、由各个节点共同维护的分布式数据库系统。它采用新型的共识机制,能够快速安全地存储区块链的交易数据或其他数据(电子证书、电子合同、电子发票以及网络交易数据等数字资产),存入区块链的数据具有不可篡改和难伪造等特点,且无需任何第三方或者任何中心化机构的许可[2]。

区块链技术核心组件包括智能合约、共识机制、密码学技术、分布式账本以及时间戳等组件[3]。

共识机制是能够让所有参与节点形成共同认识的一套方法论。形象的说法如投票选出人大代表一样,整个投票选举的过程和方法论的集合就相当于一种共识机制,让所有的参选者对谁来当人大代表这件事达成一个共识。“共识机制”又叫做一种共识算法。现今区块链的共识机制可分为4大类:工作量证明机制(Proof Of Work,PoW)、权益证明机制(Proof of Stake,PoS)、股份授权证明机制(Delegated Proof of Stake,DPoS)和Pool验证池。工作量证明是通过计算来猜测一个数值(Nonce),得以解决规定的哈希问题,保证在一段时间内,系统中只能出现少数合法提案。权益证明机制最早在2012年被Sunny King的网友在Peercoin系统中提出,类似于现实生活中的投票选举机制。拥有选票数较多的人,越容易获得记账权。权益证明机制是试图解决在工作量证明中大量资源被浪费的缺点而提出的。由于权益证明机制本质上仍然需要网络中的节点进行挖矿运算,因此PoS机制并没有从根本上解决PoW机制难以应用于商业领域的问题。股份授权证明机制拥有一个内置的实时股权人投票系统,就像系统随时都在召开一个永不散场的股东大会,所有股东都在这里投票决定公司决策。Pool验证池在一些较为成熟的分布式一致性算法(Pasox、Raft)基础之上,可以在极短时间内达成共识验证,更适合有多方参与的多中心商业模式。共识机制有很多,每一种都对应一种或者一类应用场景。各共识机制都有优缺点,没有一种共识机制是完美无缺的。

密码学是研究如何把消息隐秘可靠传递的学科。密码是通信双方提前按照一定的规则进行信息特殊变换的常见手段。最常见的是莫尔斯电码,常常出现在以前的一些谍战剧里。密码学在计算机领域和信息技术领域的重要地位无可替代。如果没有现代密码学为信息时代保驾护航,那么很多技术都不可能在生活中得到应用,如远程传输文件、刷脸支付以及数据库等。密码学领域涵盖的面非常广,包括Hash算法与摘要、数字签名和证书、加密算法、PKI体系以及Merkle树等。有了这些技术,信息的完整性、可认证性、机密性和不可抵赖性就有了保障[4]。在计算机技术和信息技术等领域,Hash(哈希或散列)算法显得尤为重要。Hash算法最大的特点是能将任意长度的二进制值(明文)映射为较短的固定长度的二进制值(Hash值),且不同的明文不可能映射为相同的Hash值。同时,整个过程还拥有正向快速、输入敏感以及几乎不可逆等特点。

分布式账本是一种在网络成员之间共享、复制和同步的数据库。分布式账本记录网络参与者之间的交易,如资产或数据的交换[5]。分布式账本与传统中心化账本不同。传统账本是高度集中在一个地方,而分布式账本不一样。简单地说,传统的账本就好像只有一个账本,而分布式账本有很多且分布在各地。在英国国民健康保险制度(National Health Service,NHS)里,分布式账本技术通过进一步提高和验证服务的送达以及按照相应的精确标准去安全有条不紊地分享交易记录。对于改善当前的医疗保健系统,区块链技术表现出强大的潜力。分布式账本技术有足够的潜力帮助政府在发放福利、登记土地所有权、征税、保证货物供应以及发行护照上的安全运行,并从总体上全面确保政府记录数据和服务的正确性和准确性[6]。站在消费者的角度,这项技术根据不同的情况,有足够的潜力让消费者按照自己的意愿控制个人记录的访问权,并获得第三方机构对其记录数据的访问情况,从而消除消费者对自己数据安全的顾虑[7]。为了使分布式账本中所有的交易记录变得可审计,账本中的每条交易记录都有一个时间戳和唯一的数字密码签名。

智能合约是代码和数据的集合,存在于区块链特定地址,简单说就是传统合约数字化网络化版本。合约参与方首先达成合约,然后合约编写,一旦合约编写好就不会被更改,且任何人不能修改,最后执行智能合约[8]。

时间戳(Time-stamp)是指字符串或编码信息用于辨识记录下来的时间日期,包括3个部分:

(1)需加时间戳的文件的摘要(Digest);

(2)数字时间戳服务(Digital Time-stamp Service,DTS)收到文件的日期和时间;

(3)DTS的数字签名。

一般来说,时间戳产生的过程分为两部分:第一部分是用户将想要加时间戳的文件上传,然后用Hash算法加密得到摘要;第二部分将得到的摘要发送到数字时间戳服务,数字时间戳服务在收到文件摘要的详细信息(含有时间和日期信息)后,再对该文件加密(数字签名),最后将含有时间戳的文件发回用户。

时间戳范例:

①Wed 01-01-2009 6:00

②2005-10-30 T 10:45 UTC

③2007-11-09 T 11:20 UTC

④Sat Jul 23 02:16:57 2005

⑤1256953732 (Unix time)

⑥07:38, 11 December 2012(UTC)

⑦1985-102 T 10:15 UTC(year 1985, day 102 =12 April 1985)

⑧20180203073000(02/03/2018 7:30:00)[9]。

2 区块链图片存证核心流程

图片存证分为应用客户端和区块链网络端。应用客户端主要实现用户账户和图片版权等功能。区块链网络端则实现解析智能合约、验证用户证书和上链等功能。

用户打开应用客户端后,用户在客户端进行注册,客户端需要对用户的身份进行实名认证才可以进行下一步操作。用户在注册时要求详细填写用户信息,包括用户姓名、电话号码、身份证号码、常驻住址以及银行卡号等信息。填写完个人信息后将生成私钥以及证书,然后导出私钥及证书。用户将证书离线提交给区块链节点,节点验证通过后将用户证书加入信任列表中。若通过,则跳转至登录页面;否则,返回重新注册。

在登陆页面内填写账号和密码,登录验证用户的密码和私钥。验证通过,则进入图片存证界面,然后提交图片并且填写相应信息。系统判断图片是否为首次提交,若是,则应用端调用存证智能合约提交交易请求,区块链网络端解析合约,验证用户证书及签名是否正确,并且向应用端返回处理结果。验证正确则交易成功,将图片存入区块链,并向应用返回出块通知,向用户告知存证成功。如图1所示。

3 区块链技术在图片存证中的优势

区块链技术在存证中的优势:

(1)用户注册及身份认证,首次存证颁发图片版权登记证书,确定电子发票、许可证、登记表、执照以及电子合同等票据所有者的身份。

(2)存证便捷即时,用户无需线下签约,无需纸质合同。

(3)应用非对称加密算法和数字签名等技术,确保用户身份无误和用户数据不泄露。

(4)电子发票、许可证、登记表以及执照等内容不可更改,任何修改都能通过哈希值体现。

(5)所有用户存储的文件均分布式存储在各区块链节点安全可靠。

(6)比对两份文件的哈希值,若相同,确认文件一致;否则,文件相异,实现鉴别文件真伪。

如图2和图3所示,用户可以通过应用端注册和登录,查看已经上链的图片等。

如图4和图5所示,用户可以通过应用客户端文件上传界面,上传需要验证的文件。应用端将比对区块链上的已有文件Hash值,确定其文件的是否与已有的一致,不一致则有效。

图1 区块链存证核心流程

图2 用户注册

图3 查看上链图

图4 文件上传

图5 文件查询

通过计算机终端连接节点服务器,可查询注册用户、证据文件哈希值以及区块高度、区块产生时间等信息,如图6所示。

图6 存证区块链浏览

4 基于区块链图片存证的API

区块链网络端通过API接口与应用客户端通信。其中,区块链网络服务端URL地址设置接口,如表1所示。通过提供平台服务URL地址设置接口,可以灵活部署基础区块链平台,并方便应用对接区块链平台。

表1 区块链网络服务端URL地址设置接口

注册用户接口,提供用户注册功能,如表2所示。

表2 注册用户接口

如表3所示,记录Hash接口,将证据文件的Hash值记录写入区块链。

表3 记录Hash接口

5 结 语

区块链技术在图片存证中的应用,将用户账户、证据文件的哈希值等关键信息写入区块链,实现数据存证中重要证据文件的存证。

通过比对待鉴定文件与区块链上存证文件的Hash值是否一致,实现文件一致性及文件真伪的鉴证。

本系统目前主要实现图片上传功能。数据形式多种多样,如音频文件和视频文件等暂不支持。以后希望能完善其他数据形式的存证。

区块链由于具有去中心化、数据可靠、共同维护、去信任以及隐私保护等特性,率先在银行业得到了极大推广,现在各个领域都在积极探索和布局区块链,投入了大量的研发力量进行研究,希望能够扩大与同行的优势,而在电子数据存证领域的应用探索也刚刚开始。

基于区块链的图片存证系统,不仅可以应用到各种版权领域,而且适用于需要为重要证据文件存证的所有业务领域[10]。

猜你喜欢

账本共识分布式
基于RTDS的分布式光伏并网建模研究
共识 共进 共情 共学:让“沟通之花”绽放
论思想共识凝聚的文化向度
商量出共识
数说:重庆70年“账本”展示
丢失的红色账本
大树爷爷的账本
基于预处理MUSIC算法的分布式阵列DOA估计
基于DDS的分布式三维协同仿真研究
“慢养孩子”应成社会普遍共识