一种面向非数字货币的区块链通用应用方案论文

一种面向非数字货币的区块链通用应用方案

沈苏彬,毛燕琴,李 莉

(南京邮电大学计算机学院,江苏 南京210023)

摘要: 区块链作为源于比特币的一种去中心化的信任管理方法,为解决长期困扰互联网的信任问题提供了一种实用的方法,已经成为了近几年互联网技术领域的研究和开发热点。由于区块链成功地应用于比特币,使得现有对于区块链的研究无法摆脱数字货币应用的限制,由此也产生了某些较为混乱的区块链概念和提法,这也就制约了区块链在其他非数字货币领域的应用。文中讨论了区块链应用的现状和区块链应用存在的问题,在分析面向比特币的区块链的概念和原理基础上,梳理了区块链的信任控制、公用账本、交易可信等技术特征,提出了一种面向非数字货币的区块链通用应用模型,探讨了基于该应用模型的设计和实现区块链应用的关键技术问题,并且通过一个物联网数据可信管理的应用实例说明了该区块链通用应用方案的可行性和实用性。

关键词: 比特币;区块链;去中心化;信任管理;互联网应用

基于机器学习的“人工智能”与基于比特币的“区块链”已经被国际上认为是对现有技术最具有破坏性的技术,或者称为是“革命性技术”。现在的“人工智能”和“区块链”将从根本上重塑我们的生活、工作和交互方式[1]

邻接条件是指保证两相邻但不啮合的齿轮齿顶互不干涉的太阳轮齿数与行星轮齿数之间的关系.单星行星机构的邻接条件即保证相邻的两个行星轮互不干涉,也就是保证相邻两行星轮的中心距Lg1g2大于行星轮齿顶圆直径.如图4所示的行星轮g1和g2之间不相互干涉,∠g1Og2的角度为2π/nb,∠g1Og2的角分线将等腰三角形g1Og2分成两个直角三角形,在该直角三角形内应用正弦定理可得相邻两个行星轮之间不干涉的条件,对于非变位齿轮有下式成立:

现在的基于机器学习的“人工智能”是由于机器学习在深度学习领域的突破,使得机器可以通过大量数据的训练,多层次自动调整神经网络参数而构成一种对于特定应用场景,例如人脸识别,提供高准确判断能力的智能算法。这种智能算法究竟是如何构成的,人类的专家无法解决。但这个智能算法对于特定应用场景的判断精确度已经高于人类,所以,现在的学术界和工业界认为这是“人工智能”。但这种“人工智能”已经不是传统意义上的人工智能,这是由机器决定的智能,与“人工”已经无关了,应该更加准确地称为“机器智能”。

同样,区块链也不是现在的网络权威或者网络安全权威发明的,而是由自称为“中本聪”的一个人或一个团队,在构建全球去中心化数字货币体系——比特币的过程中设计和实现的一种去中心化的信任管理机制。区块链这种信任管理机制在比特币部署和使用将近十年时间内一直运行正常,使得研究人员对于区块链在其他互联网领域的应用产生了很大的兴趣,开始考虑通过区块链解决长期困扰互联网的信任问题。而为了应用区块链的去中心化信任管理机制,就需要理解和掌握区块链这类完全源于“实践”而产生的“真知”。

文献[2]是我们看到的较早的一篇详细分析比特币以及其他网络数字货币相关概念和机制的综述性论文。

由于区块链较多地涉及到数据存储、查询和处理,并且有些区块链的研发也在区块链应用结点上采用了数据库技术,这样就使得一些研究和开发区块链应用的专业人员将区块链定义为一类数据库。我们认为,这类定义是不准确的,并且容易产生概念的混乱。数据库仅仅是一类数据处理的技术,最多可以扩展为网络数据处理技术,但难以包含区块链在网络、密码、安全等方面的技术特征。虽然可以采用数据库实现区块链,但如果在设计层面就将区块链作为数据库,则会错误地在区块链的“块”中存储并非用于信任管理的数据,这样就会导致区块链应用中可缩放性差、存储容量不够、处理效率低等问题。

2017年,几大互联网期刊出版商都取得了一定的发展。同方知网2017年营业收入13.73亿元,比2016年增长17.1%,其中包库收入为9.27亿元,镜像站版收入为3.63亿元,流量计费收入约为0.83亿元,分别占总销售额的67.52%、26.44%、6.04%。

我们认为,无论是“机器智能”在某些应用领域找到了优于人类智能的判定方法,还是区块链找到了机器进行信任管理机制,这都需要人类研究人员对这些“智能判断方法”和“信任管理机制”进一步分析和研究,努力发现隐藏在其背后的自然规律和规则,并将这些规律或规则用于指导和拓展人类在智能化和信任管理方面的进一步实践活动。

基于这种考虑,本文在将在分析现有区块链应用现状的基础上,详细分析面向比特币的区块链机制,提炼出其技术特征,并且基于区块链的技术特征提出一个通用的区块链应用模型,探讨将区块链应用于非数字货币领域的关键技术问题,在此基础上形成一个面向非数字货币领域的区块链通用应用方案,为区块链应用提供一个较为通用的参考架构。

1 区块链应用研究现状

区块链属于集成网络技术、密码技术、安全技术和数据技术的应用类技术,目前区块链的研究主要侧重于比特币系统的区块链方法的研究,以及区块链在其他非数字货币领域的应用的研究。所以,区块链应用的研究现状基本上反映了区块链的研究现状。

目前区块链的主要应用领域包括数字货币领域的应用、物联网领域的应用、数据管理领域的应用、标识管理领域的应用、以及其他领域的应用。下面主要从这些方面分析区块链应用的研究现状,并且梳理目前区块链应用面临的问题。

(1)数字货币领域的应用

区块链源于数字货币的应用,分析区块链在数字货币领域的应用是研究区块链的起点和基础。文献[2]详细讨论了比特币的区块链的块结构、交易的数据结构、以及将交易形成块链接的区块链的机制,明确了比特币这类互联网数字货币的最大贡献在于:通过引入区块链机制以及解决区块链分叉的共识协议,解决了去中心化的数字货币面临的数字货币“重复使用”和对于交易验证共识机制的“女巫攻击”两大问题,在互联网中首次实现了去中心化的数字货币。

通过频率方程可以发现,换能器的结构与谐振频率联系紧密,并且影响换能器谐振频率的因素较多,因此采用共振设计法单独设计超声换能器、变幅杆,使其各自的工作频率等于系统的整体设计频率,然后采用有限元方法对整体设计进行优化。

文献[3]分析了比特币和区块链的未来发展前景,认为仅仅是因为目前参与比特币交易的有效性验证(本文将这个过程称为“淘金”)的收益较高而引人关注,今后应用面广并且具有发展潜力的还是区块链。因为区块链是一个准确跟踪网络环境下任何形式交易的工具,在物联网、数字标识、知识产权等领域可能具有很好的应用前景。

文献[4]认为面向比特币的区块链所采用的技术都是已有的技术,比特币的主要创新是形成区块链的工作量证明的机制,这种机制使得对等结点可以无需可信的中央权威而进行可信的操作。

(2)物联网领域的应用

基于互联网发展起来的物联网,已经不同于互联网仅仅提供透明数据传递的能力,而成为提供自主数据采集、存储、处理等服务的新一代的信息基础设施。为了确保物联网服务的可信,首先需要确保物联网采集、存储和处理的数据可信。而物联网连接庞大数量的数据采集装置,现有的基于云的物联网应用模式面临多方面的挑战。

文献[5]较为系统和全面地探讨了采用基于区块链的标识管理解决大量物联网装置的标识管理问题,使得物联网在装置接入能力方面具有可缩放能力,同时也具有防范对于物联网装置恶意攻击以及篡改物联网装置采集数据的能力;利用区块链提供物联网装置的可信本地数据存储和管理能力,可以帮助物联网装置摆脱不必要的云连接。

文献[12]将区块链与关系数据库进行对比,罗列了是否需要采用区块链的判定条件,对于正确使用区块链进行数据管理提供了评判依据。

文献[7]分析了区块链的控制脚本——智能合约在物联网应用场景下自动化工作流的作用。由于物联网是连接物品的互联网,这样无需人工干预的自动运行的工作模式可以满足物联网的应用需求。

应用模型中的区块链提供方和区块链监管方是考虑将区块链应用作为互联网中的一类服务而设定的两个实体,其作用是满足互联网服务提供的技术规范和相关法律法规,使得互联网上的区块链应用可以灵活配置和控制,基于互联网的区块链应用可以被监管以确保不会违反互联网安全以及隐私保护的法律法规。

(3)数据管理领域的应用

目前,石油沥青涂膜防水涂料在市场上主要有溶剂型和乳液型两种防水涂料。溶剂型沥青涂料主要是将有机溶剂溶入汽油等有机材料中而制得的一种有机溶剂。沥青溶液调和而成的新型涂料在涂抹建筑基层后形成的膜很薄,它的作用原理主要是由于石油沥青分散在水中而形成的一种稳定的水性分散体。常用的沥青防水涂料主要包括水乳性无机沥青涂料、石灰乳化沥青等[1]。这类涂料属于中低档防水涂料,具有沥青类防水卷材的基本性质,价格低廉,施工简单。

文献[9]讨论了在云存储的电子医疗记录、电子健康记录和个人健康记录中引入区块链实现安全管理的技术方案,采用了时间顺序化的数据链,可以确保数据在采集、存储、访问、处理过程中不会被假冒和误用;采用了专有链,只有与自己相关的家属和亲友可以看到这些电子健康记录和个人健康记录。这样,既可以满足实时共享医疗记录和健康记录,有可以保证医疗记录和健康记录的安全性和隐私性。

文献[10]给出了一个完整而详细的、在云存储环境下基于区块链实现数据完整性管理的技术方案。文献[11]给出了一个完整而详细的、在云存储环境下基于区块链实现具有隐私保护的数据溯源的技术方案。这两个技术方案说明了区块链的应用可以独立于数据的存储,这是因为区块链本质上仅仅是一个去中心化信任管理的机制。

IBM公司投入较多的资源研究区块链在物联网中的应用,文献[6]描述了该公司在供应链、具有自动驾驶能力的自治车辆、以及工厂设备管理等方面的应用案例,有助于了解区块链在物联网领域的应用思路。

文献[13]认为区块链可能改变现有数据库的应用现状,实现基于区块链的快捷而无需人工参与的数据管理。区块链的交易不可更改性和透明性可以减少人工错误,以及减少由于数据冲突而需要的人工干预。

(4)云服务领域的应用

现在的云服务都是通过建立庞大的数据中心提供,这与网络计算的理念并不吻合,不仅造成了很大的资源浪费和生态环境的破坏,也存在较多的安全和隐私方面的隐患。其可持续发展性值得怀疑。而基于区块链的云服务,则是采用可以利用的网络闲散资源提供可信云服务的技术理念,是一个具有难以估量的应用前景和商业价值的技术发展方向。

位于第一梯队的凯迪和国能的投产项目数量和装机规模均明显高于其他企业。截止到2016年底,凯迪已投产39个项目,累计装机规模达1170MW,占全国总投产项目规模的22%左右,居全国第一位。凯迪目前在建项目28个,装机容量890MW,储备项目50个,装机容量1500MW。凯迪秸秆电厂主要分布在中部和南部地区,以安徽省、湖北省、湖南省为核心,面向贵州、江西、广西等省市。

虽然文献[14]提出了采用区块链再造云的想法,由于并没有提供明确的模型,无法判断这种想法是否实用。文献[15]认为云服务现在的主要问题是信任管理,如何对云服务的每一步都提供跟踪审计?这是现有云服务无法解决的问题。引入区块链有可能提高云服务的信任度。

而文献[16]分析了目前三种基于区块链的、去中心化的云服务项目,也就是基于传统的对等网络(P2P网络)中的每个网络结点既可以是提供服务的服务器,又可以是使用服务的客户端的理念,应用区块链对网络结点进行去中心化的信任管理。这种应用区块链提供的云服务是一个去中心化的可信虚拟云服务,属于一类不需要建立庞大的、耗费能源的数据中心的云服务,也是真正利用闲散网络资源提供云服务的技术方案,具有很大的发展潜力。这篇文献认为这三种基于区块链的可信虚拟云服务项目还是基于现有约定成俗的区块链机制(例如都是基于以太坊的平台),缺少系统研究的支撑。这从另一个角度反映了目前对于区块链机制研究方面的缺失,以及实际的区块链应用面临的、需要系统性研究才能解决的技术难题。

一声枪响使打架的知青都停止了。杨秉奎冲到打架的知青中间,扯开嗓子喊:“谁再打我崩了他!都到仓库避雨去!”

(5)标识管理领域的应用

目前互联网的应用主要采用基于注册服务器的集中式标识管理,这种集中式的标识管理容易造成个人数据泄露、个人标识(例如银行卡账户、手机号码等)被假冒或盗用,造成个人隐私泄露或个人财产的损失。

文献[17]讨论从命名的角度对于基于区块链的标识管理的分类:其一是自管理标识,用户自己拥有和控制自己的标识以及绑定的个人信息,无需依赖任何外部管理机构,也不存在任何该标识被收回的可能。其二是去中心化的可信标识,这是由某个专用服务基于已有可信证书(例如护照)提供的用户标识证明的服务,并且标识的真实性证明数据被保留在区块链中,可用于后续第三方的验证。

文献[17]认为虽然基于区块链的标识管理试图提供去中心化的标识管理,并且防范中间人攻击,但现有的基于区块链的标识管理方案还是依赖于标识管理中心,也并不能控制标识管理的所有环节而真正防范中间人攻击。所以,目前基于区块链的标识管理方案并没有真正提供去中心化的标识管理能力。

文献[18]认为基于区块链的标识管理可以允许对等共享个人标识以及相关的信息,这样可以提供对个人数据更大的控制力度,减少个人信息泄露的风险。而结合标识验证和数字标识符可以提供数字水印,实现对于电子版的论文和著作等知识产权的保护。

标识管理在互联网中的最主要服务是域名服务,文献[18]讨论了提供基于区块链的去中心化域名服务和用于安全访问网页的证书服务的动因、原理、实现方案、以及存在的问题,认为目前互联网的域名服务存在受到拒绝服务攻击、域名服务欺骗、域名服务缓存记录篡改,以及攻破域名服务器或攻破证书服务器之后发布假域名对应的网络地址,或发布假证书等攻击,而采用基于区块链的去中心化域名服务和证书服务,可以提供更加安全可信的域名服务和证书服务;并在此基础上,讨论了去中心化的互联网服务的相关技术方案,认为虽然现在已经提供的互联网去中心化服务很振奋人,但这方面的技术并不成熟,还存在可缩放性较低和能耗过高等技术问题。

(6)其他领域的应用

由于去中心化的信任管理是互联网一直缺失的能力,所以,互联网其他应用也都在探索有关区块链的可能应用,例如在电子选举、网上拍卖、供应链等领域的应用。

文献[19]讨论了基于区块链的电子投票应用,这类应用虽然与大部分的区块链应用一样都没有达到标准化程度,但在全球各地已经有了几个成功运行的系统,其中包括城市居民参与城市管理、公司股东参与公司管理、以及辅助国家选举等方面的投票应用。该文献认为:传统的投票强调投票状态的权威性,而基于区块链的电子投票强调投票者的透明性,这个过程是透明、去中心化、自下而上的。而采用基于区块链的电子投票带来的益处是:可以消除投票的舞弊,鼓励更多的选民参与投票,提供严格的身份验证功能,提供严格的投票人的隐私保护,加快计票的速度,杜绝不确定的选票,提供更加透明和清晰的、经得起后续审计的选票过程。而目前基于区块链的电子投票存在的问题是:公众对于基于区块链的电子投票的信任和信心;区块链技术的成熟度,以及基于区块链的电子投票软件系统的成熟度。

文献[20]罗列和分析了区块链在个人数据管理、知识产权保护、金融交易拍卖、软件和互联网的安全和隐私保护、社会治理、商业和供应链、物联网、以及健康卫生等方面的应用,并且以保险业为例,讨论了可能的区块链应用以及基于区块链的技术方案,分析了适用于保险业的区块链应用评价指标。

(7)区块链应用存在的问题

从以上区块链在不同领域的应用现状可以看出,区块链应用研究和开发十分活跃,其结果也令人对于未来的区块链应用发展前景充满信心。但也反映出了目前存在的问题:除比特币之外的应用都不成熟,没有完全把握这类技术本质,无法驾驭这类技术的复杂度,缺少公认的区块链应用技术体系等。

文献[21]认为区块链是一类尚未成熟的技术,但却受到了大量的、言过其实的报道。该文献通过对23个区块链应用项目的分析,得出结论:大部分区块链应用项目从无法从区块链应用的获益。在此基础上,该文献提出了10条评价是否适合应用区块链的指标:不可更改,透明,信任,标识,分布,工作流,交易,历史记录,生态系统,低效率。并且给出了“信任”16%的权重,“生态系统”15%的权重,“不可更改”、“透明”、“交易”分别为12%的权重,“分布”10%权重,这六项评价指标就占了77%的权重,属于核心评价指标。

区块链属于应用类技术,涉及到密码学、数据安全、网络空间安全、互联网、数字货币、网络可信管理等诸多信息和通信技术领域的理论和技术,需要具有较为系统和深入的信息和通信技术应用研究基础,才能进行深入研究和提炼区块链的概念和原理。虽然国际上对于区块链具有一定程度的研究,但尚没有到达深入和完善的程度。这样也就很难开展高效和实用的区块链应用研究和开发。

我们认为目前影响区块链应用的主要技术问题包括:如何明确定义区块链?如何准确描述区块链的技术特征?如何构建面向非数字货币领域的通用区块链应用技术体系?

目前区块链的应用都是基于现有的区块链开源平台展开的,例如以太坊[22]平台和超级账本[23]平台。这些开源平台提供了较为方便的区块链应用开发环境,对于区块链应用原型的开发起到了促进作用。这些开源平台并不能解决区块链应用技术基础面临的问题。

由于区块链是比特币系统的核心,目前最为成功的、实际运行时间最长的区块链应用就是比特币系统。所以,研究区块链可以依据的较为准确的参考文献是比特币的在线开发文档[24],以及比特币的在线维基百科[25]

2 面向比特币的区块链分析

面向比特币的区块链分析是研究区块链的基础。目前最为成功的区块链应用就是比特币系统[2],这个去中心化的互联网数字货币系统已经正常运行将近十年。目前比特币的价值虽然与顶峰时期相比有大幅度降低,但是依然维持在一个较为稳定的、普遍认可的价值水平,这就说明这个去中心化的数字货币系统是可信并且实用的。比特币在线开发文档[24]为详细分析面向比特币的区块链技术特征提供了可靠依据。

面向比特币的区块链包括“块”和“链”结构,以及构成“块”和“链”的方法。在分析这些面向比特币的区块链的结构和构造方法之前,必须首先讨论比特币的系统、网络、结点、钱包、块、交易这些基本概念。

(1)比特币的网络和对等结点

比特币系统是基于互联网之上的对等网络、采用去中心化方式构造的、用于数字货币交易的网络数字货币应用系统。每个互联网的结点通过比特币的联网软件发现并且连接比特币系统的结点,接入到比特币的对等网络。随后可以通过在对等网络上广播比特币的交易,提请比特币系统其他结点验证完成的交易;通过在对等网络上广播已经验证成功的块,通告一次成功的“淘金”。比特币系统如图1所示。

图1 比特币系统结构示意图

(2)比特币的钱包

“钱包”是在比特币系统中定义的概念,在比特币的用户参与交易之前,用户首先要在比特币的系统中创建自己的“钱包”,这个虚拟钱包由一对公钥和私钥构成。

每个比特币系统的用户可以在比特币结点上运行钱包程序,生成自己钱包的私钥,并且基于私钥推导出对应的公钥;将自己钱包的公钥的哈希值作为自己钱包的地址,用于接收在交易过程中付给自己的比特币;在后续的交易中,可以采用自己钱包的私钥产生的数字签名,花费自己钱包里的比特币。

亦如中国的改革开放,已走过万水千山,但仍需不断跋山涉水;已呈“大潮奔涌逐浪高”的壮阔,也进入“中流击水非奋楫不能进”的关口——

不直接采用钱包的公钥作为地址,而是通过密码哈希算法生成该钱包公钥的哈希值作为的钱包地址,这样既可以缩短钱包地址的长度,又可以隐藏钱包地址与钱包私钥的对应关系,提高比特币交易的安全和隐私保护能力。但根据文献[26]的论述,这种隐私保护能力已经被网络安全专业人员攻破。由此可知,缺少理论验证的安全和隐私保护能力并不可靠。

图2给出了在比特币结点上运行钱包程序,产生钱包B的私钥,然后导出B的公钥,基于B的公钥生产B的公钥哈希值,这样,B的公钥哈希值可以发送给钱包A,作为钱包A支付的目的地址,并且拷贝到交易输出的相关脚本内。

图2 支付给公钥哈希值(P2PKH)交易(A付给B)的示意图

(3)比特币的交易

比特币的交易就是将一定数额的比特币从一个钱包转移到另一个或多个钱包的过程。每个交易通过交易输入和交易输出,记录整个交易过程。每个交易可以有多个输入,也可以有多个输出。每个交易输入必须通过数字签名验证这个交易输入有权使用已经完成的某个交易输出中的比特币,每个交易输出必须明确指示接收比特币的目的钱包(例如通过公钥脚本指示)以及具体的金额。

图3表示了“交易1”在“交易输入0”中使用“交易0”中的“交易输出0”的金额,分别支付给“交易1”中的“交易输出0”中的钱包B和“交易输出1”中的钱包C。支付金额的单位是亿分之一个比特币,在比特币中称为撒投士或聪。

慢慢地,青瓷就真的觉得挺委屈的,她站在镜子前看到自己光滑如玉的肌肤,看到自己清秀美丽的脸庞,她就是不施脂粉都不比那些电影明星逊色,可她过的是什么生活?

图3 比特币的交易结构示意图

(4)淘金与工作量证明

所有比特币系统中的交易必须经过验证才能生效。对比特币交易的验证过程也称为淘金过程。淘金(mining),通常在国内翻译为“挖矿”,但这个英文单词的原意是“挖掘、探宝”等。由于“mining”在比特币系统中意味着探寻比特金币,所以,我们认为翻译为“淘金”更加准确,也容易被国内区块链新入门者理解。淘金是指一个创建有效的比特币块并且解开比特币块首的谜底的操作。解开比特币块首的谜底表示通过选择块首不同的一次性数找到了低于某个目标值的比特币块首的哈希值。比特币系统将执行这个操作的装置或装置的所有者称为淘金者。

淘金过程中的比特币块是淘金者在网络上收集到的、已经完成但没有被验证的、在比特币网络上广播传递的多个交易,并且将每两个交易生成一个密码哈希值,两个密码哈希值再进一步生成一个密码哈希值,这样不断通过密码哈希算法构成的一棵默克尔树,然后综合了区块链当前最后一个块首的密码哈希值等参数,构成的一个数据块,它是链接在区块链中的基本数据单元,包括块头和被验证过的交易。链接在区块链中的“块”受到工作量证明的保护。图4表示了一个区块链的示意图,其中可以看到比特币块的组成结构。

图4 比特币系统的区块链示意图

解开比特币块首谜底的操作称为“工作量证明(Proof of Work)”,表示淘金者通过耗费一定的计算工作量,通过选择块首不同的一次性数找到了低于比特币系统设置的某个目标数值的比特币块首的密码哈希值。这种通过计算找到低于某个目标值的比特币块首的哈希值过程称为解开比特币块首的谜底。比特币系统通过每两周平均调整一次目标值的设置,可以控制大约每十分钟解开一个比特币块首的谜底。如果根据以往的统计结果,解开一个比特币块首的谜底少于十分钟,则可以降低目标值,增加解开谜底的计算复杂度;反之,则可以提升目标值,减少解开谜底的计算复杂度。比特币系统这种通过目标值设定控制比特币块验证速率的机制,是为了减少比特币系统的对等网络广播的延迟而造成区块链的分叉,同时保持比特币系统稳定的处理性能。

一旦淘金者解开比特币块首的谜底,将会收到比特币系统的比特币奖励,同时也可以收获比特币块中第一次被验证的有效交易的交易费。这样的收益确实表明淘到了比特金币。

(5)比特币交易的验证

交易表示比特币值的一次传递,每个交易需要在比特币网络上广播给每个对等结点,每个对等结点在进一步广播该交易之前将验证这个交易的有效性,交易被淘金者汇集到一个块之前也需要进行有效性验证。每个交易最终分别被不同的淘金者收集到不同的块中,包含这个交易的块一旦完成工作量证明,则该块被连接到区块链,说明这个交易通过区块链的验证。

第二,中小型企业融资渠道狭窄。目前,金融市场存在一定的问题,金融市场的对外开放空间存在局限性,债券、保险、股票、基金及其他金融附属不对中小企业开放,中小企业规模日益扩大。但是,却缺少足够的银行贷款支撑。目前,中小企业的银行贷款主要为商业银行贷款,商业银行贷款中心却对中小企业的重视程度较低,反而更注重大企业的发展金融市场,对中小型企业的忽视导致中小型企业融资渠道狭窄。

狗蛋被唬着了,打个愣神儿。突然扔了手中的火铲,一屁股坐在地上哇哇地嚎哭起来。花坛里,几只受到惊吓的老鼠噗噜噜地钻进地洞里。

3 区块链的定义和特征

基于面向比特币的区块链分析,以下给出可以适用于不同应用领域的、较为通用的区块链定义、分类、以及技术特征。

具体选择哪一种接班模式,家族企业需要充分考虑内、外部因素及其对能力和忠诚两个维度的影响。企业外部因素短期是无法去改变的,企业只能去适应。决定家族企业接班模式选择的主要是内部因素。[7]企业在不同的发展阶段,企业内部影响因素有很大的变化,从而出现不同阶段选择不同的接班模式,[8]见表2。

(1)区块链定义

根据上节对于面向比特币的区块链的特征分析,可以给出以下的定义:区块链是一个去中心化的网络公用账本,可以用于网络应用中的去中心化的信任管理。

将区块链应用于数据管理的主要出发点是:如何通过引入区块链机制,消除目前基于云计算的网络应用中信任缺失的问题。这里有两种不同的思路:其一是利用区块链机制改造现有的云数据管理的模式,使得云存储的数据安全可信;其二是利用区块链机制实现敏感数据的本地存储,避免使用云数据存储而造成数据泄露或访问的失控。

国内外不少专业人员将区块链定义为一个分布式账本,这种定义的准确性有待商榷。因为区块链并没有在网络上分布式地存放,而只是同一个账本重复保存在网络的多个结点;并且所有对该账本的更新都广播到所有重复保存账本的网络结点。所以,区块链的相关内容并没有分布地散落保存在多个网络结点,而仅仅是重复保存在多个网络结点。这只是一类没有存放在网络服务器(中心)的、而是在所有区块链结点重复保存的公用账本,并不是在网络结点上分布存放的不同的区块链。

将区块链作为一类公用账本,这样就可以明确区块链是用于公开管理账目的,而不仅仅是公开保存账目的,这样只需要考虑如何在区块链的“块”中保存用于信任管理的有限数据,例如交易的密码哈希值,而不是完整的交易数据,减少区块链存储的数据量,提高区块链处理效率。

(2)区块链分类

根据区块链应用结点连接区块链网络的方式不同,可以将区块链分成公有链和专有链。如果面向某个应用领域的区块链应用只是基于一个开放的网络,也就是任何一个区块链应用结点都可以自由加入或退出的区块链网络,则称为公共或公众拥有的区块链,简称为公有链;如果区块链的应用必须基于一个专用的网络,也就是任何一个区块链应用结点必须经过申请和身份真实性验证才能加入或退出的区块链网络,则称为专属群体拥有的区块链,简称为专有链或私有链。当然,对于涉及到多个不同的、但又需要关联应用领域,可以在区块链应用中采用公有链和专有链混用的方式。

(3)区块链技术特征

基于对面向比特币的区块链的分析和梳理,我们认为区块链具有其特定的网络技术、密码技术、安全技术、以及数据技术,这四个方面的特征。

区块链的网络技术特征体现在:具有对等网络构建和维护能力以及数据广播能力。区块链应用结点的组网技术体现了互联网的覆盖网络以及对等网络的技术特征,这样可以构成一个不受具体网络技术限制的去中心化的区块链网络。区块链应用结点之间的数据广播能力可以确保每个区块链应用结点都能参与信任操作(例如比特币中的交易)的有效验证工作,保证信任操作的可信度。

在比特币系统中,一个交易至少需要通过两次区块链的验证才被认为是可信的交易,最好是通过六次区块链的验证,这样可以确保交易中设定的比特币值的传递不会有误。

区块链的密码技术特征体现在:具有公钥加密算法的密钥对生成和管理能力,以及具有数字签名计算和验证能力。每个区块链应用结点具有公钥加密算法的密钥对生成和更新能力,同时具有数字签名计算能力,以及对于数字签名真实性的验证能力。这样,就可以采用公钥的哈希值唯一标识信任实体(例如比特币中的钱包),并且可以通过数字签名验证信任操作(例如比特币中的交易)的真实性。

区块链的安全技术特征体现在:在区块链网络环境下,具有对信任实体(例如比特币中的钱包)的真实性验证能力,以及具有对信任操作的真实性验证能力。区块链应用实体(例如比特币的对等结点)具有对于信任实体的真实性验证能力,以及区块链应用实体具有对于信任操作的真实性验证能力,例如比特币的对等结点能够通过“工作量证明”,将通过验证的交易封装成比特币块,并且连接到区块链上的能力。这样就可以防范通过网络假冒信任实体或者假冒信任操作的攻击。

区块链的数据技术特征体现在:在区块链网络环境下,具有对于交易数据收集和封装成块的数据处理能力,以及具有对于区块链的存储和管理的数据处理能力。区块链应用实体(例如比特币的对等结点)必须具有对交易数据的网络收集、验证和封装成块的数据处理能力;同时,区块链应用实体必须具有在网络环境下对区块链的存储、恢复、查找、更新的数据处理能力。区块链本质上是一类数据结构,所以,区块链的数据处理的技术特征是它的核心技术特征,在区块链的数据处理中融合了对等网络的数据收集和转发能力,以及密码哈希算法的数据完整性保护能力。

(4)区块链技术特征分析

文献[3]认为区块链可以准确地跟踪互联网中任何形式的交易,可以在物联网、数字标识、知识产权保护、网络安全等方面得到更加广泛的应用。

比特币中的“工作量证明”这类区块链共识协议,并没有直接作为区块链的技术特征。这是因为区块链共识协议仅仅是为了验证信任操作真实性的一种实现机制。我们认为,“工作量证明”仅仅是数字货币的区块链应用中,确保数字货币价值而与现实世界计算资源绑定的一种技术手段。这种面向数字货币应用的区块链共识协议并不一定适用于其他应用领域。其他应用领域完全可以采用更有有效的、满足其应用需求的信任操作真实性验证方法。

变频工况下,起重机带载启动,保持U1/f1不变进行调速,研究变频条件下的系统动载特性,以频率为15Hz、20Hz、25Hz 3种情况分析,如图7所示。

比特币中的支付脚本以及以太坊的智能合约也没有作为区块链的技术特征,这是因为这类与比特币交付相关的脚本或者与以太坊信任操作相关的智能合约都是区块链相关操作的编程。不同的应用领域定义的信任操作不同,要求的编程能力也不同,既可以采用比特币系统中较为简单的支付脚本,也可以采用以太坊系统中较为复杂的智能合约脚本,这在本质上没有影响区块链的去中心化的信任管理技术特征。

电话里,魏昌龙声音仍是大嗓门:“矿山复采、尾砂开发的所有资料,我都要孙主任给你备齐了,你来我这住几天,快写好快撒出去。”

国际上有些区块链的研究人员,根据区块链分类或区块链是否采用智能合约,而将区块链分成多个不同的版本。我们认为:这样缺少对于区块链的技术进行系统分析和研究的结果支撑而对区块链进行分类,缺少必要的理论或技术原理的支撑,这样的分类可能会产生区块链应用研究和开发的误导,不利于区块链应用的有效设计和开发,更不利于区块链应用领域的技术创新。建议慎用!

4 区块链的通用应用模型

为了研究和探讨非数字货币的应用领域的区块链应用,我们需要将比特币系统中与区块链应用相关的术语更改为不具有数字货币应用领域特征的术语,并且在此基础上,从互联网的服务提供角度,构建一个区块链的通用应用模型。这个区块链的通用应用模型如图5所示。

图5 区块链的通用应用模型示意图

应用模型中的部件分成两类,一类是采用椭圆形表示的实体部件,这些实体部件包括区块链的应用实体,信任实体,区块链提供方,区块链监管方。另一类是采用矩形表示的功能部件,这些功能部件包括:区块链网络的创建和维护功能,区块链的块和链构造和更新功能,信任操作的记录和验证功能,区块链及应用控制功能,区块链及应用监管功能。

(1)应用模型的实体部件

应用模型中的应用实体对应了比特币系统中的对等结点,表示参与区块链应用的网络结点或者该网络结点的拥有者。应用实体可以通过应用模型中定义的“区块链网络的创建和维护”功能,发现区块链网络结点,并且连接到区块链网络,成为区块链网络中的一个应用结点。

应用模型中的信任实体对应于比特币系统的钱包,表示区块链应用需要进行信任管理的信任操作的承载实体。信任实体可以参照钱包的标识方式,采用公钥哈希值表示其地址。信任实体所有的信任操作需要通过应用模型中定义的“信任操作的记录和验证”功能,确保其操作的可信度。

文献[8]探讨了采用区块链的机制和方法改变目前以云为中心的物联网应用模式,提出了基于区块链的物联网的概念。该文献引用了其他区块链研究者在2015年提出的、有关区块链可应用性演进的三个版本的思路:从面向比特币的区块链(区块链1.0),然后演进到智能合约(区块链2.0),然后再进入正义、有效和协同的应用(区块链3.0),说明对于区块链不断阶段的应用。我们并不认为这种区块链应用演进的不同版本提法,在技术层面具有合理和可信的理由。

(2)应用模型的功能部件

应用模型中的“区块链网络的创建和维护”功能部件向应用实体提供发现区块链网络结点、连接区块链网络、在区块链网络上获取待验证的信任操作记录、通过区块链网络广播已经验证成功的块、以及调用区块链应用相关服务等功能。该功能部件提供了类似于比特币系统中对等结点提供的建立对等网络、淘金等功能。

应用模型中的“信任操作的记录和验证”功能部件向信任实体提供记录信任操作的数据结构、通过相应的脚本执行信任操作约定的信任管理流程、验证信任操作的有效性等功能。该功能部件提供了比特币系统中钱包提供的交易功能。

应用模型中的“区块链及应用控制”功能部件和“区块链及应用监管”功能部件分别提供对应于应用模型中定义的区块链供应方和区块链监管方必须提供的区块链应用控制和监管的功能。这是将区块链应用作为互联网服务的两类必须的功能。这是将比特币应用作为一类互联网服务而设置的功能部件,这与独立于互联网运行的比特币系统不同,在比特币系统也没有对应等功能部件。

应用模型中的“区块链的块和链构造和更新”功能部件提供了区块链应用中的“块”和“链”的构成和验证功能,所有的可信操作的记录必须通过该功能验证有效之后组成块,然后完成对块的有效性验证之后,连接到区块链上。这里涉及到区块链最为核心的、为了达成所有区块链结点共识并且防范网络攻击的、类似于比特币系统“工作量证明”的“共识”机制。

应用实体通过“区块链网络的创建和维护”功能部件调用“区块链的块和链构造和更新”功能部件的“块”和“链”的构成和验证功能,进行类似于比特币系统“淘金”的验证工作,提供区块链应用的服务。

有关区块链的通用应用模型的有效性和实用性还需要进一步通过互联网环境下实际的区块链应用项目的开发和实验,才能得到验证。

5 区块链应用的技术问题探讨

在研究了面向物联网的区块链应用模型之后,需要进一步探讨面向非数字货币的应用领域的区块链应用相关的技术问题,这样才能与区块链的应用模型结合,构成一个面向非数字货币领域的区块链应用方案。这里涉及到面向比特币的区块链应用中的钱包、交易、对等结点,比特币块等概念在其他应用领域的对应概念的定义,以及面向比特币的区块链应用中的区块链的“块”和“链”结构以及构造机制在其他应用领域的对应的数据结构和构造机制的设计和分析。

(1)信任操作的定义

如何定义面向不同应用领域的信任管理的操作?这是应用区块链必须首先明确和解决的问题。例如在比特币的区块链应用中,“交易”就是面向比特币的区块链应用必须处理的信任操作,由此设计了与交易相关的数据结构、操作流程、有效验证流程、以及可信管理规则等。所以,信任操作的定义包括明确定义区块链应用需求中需要进行信任管理的操作,定义用于这类操作信任管理的数据结构,这类操作具有信任管理的处理流程。

在物联网数据可信管理的区块链应用中,物联网数据采集、存储、传送、处理都是需要进行信任管理的操作,需要分别定义面向这些不同操作的信任管理的数据结构,以及相应的处理流程。

(2)信任实体的定义

为了设计和实现面向不同应用领域的可信操作,就必须进一步定义承载可信操作的信任实体,信任实体类似于面向比特币的区块链应用中的钱包。由于信任实体是信任操作依赖的数据模型,在非数字货币领域的区块链应用中,信任实体的功能除了包括信任实体的可信的、具有隐私保护的标识体系之外,还可能包括信任实体对于信任操作的其它支撑功能。

在物联网数据可信管理的区块链应用中,信任实体不仅包括数据源(采集物联网数据的装置、输入数据的客户端等),还包括了数据宿(缓存数据的网关、存储数据的服务器等)。

(3)应用实体的定义

应用实体承载信任实体,并且提供面向不同应用领域的区块链网络创建以及维护的实体,类似于面向比特币的区块链应用中的对等结点。应用实体的定义包括了应用实体的功能界定以及联网方式的定义。面向不同应用领域的区块链应用联网方式的定义,可以进一步分析和明确在某个特定应用领域的区块链应用的必要性,也可以明确需要应用的区块链分类。如果应用实体不需要采用对等网络组网,即应用实体可以采用客户机-服务器的方式组网,则就没有必要采用去中心化的区块链。如果面向特定应用领域的应用实体需要利用专用网络的组网,则就需要采用专有链或私有链的区块链。

在物联网数据可信管理的区块链应用中,应用实体对应于数据用户,需要定义这些数据用户构成对等网络的方式,以及构成的区块链类型。

(4)块结构及其构造机制

如何定义面向不同应用领域的区块链的“块”结构以及设计这些“块”构造机制,这是应用区块链实现去中心化信任管理的核心技术问题之一,这里涉及到信任实体真实性验证、信任操作数据完整性保护等技术。这种块结构及其构造机制可以参照比特币中的块结构及其构造机制,但需要根据不同的应用需求,进行相应的修改。

在物联网数据可信管理的区块链应用中,块结构中需要包括信任操作涉及的数据源和数据宿的物理标识、采集和存储数据的时间戳,与采集或存储数据的单元形成的密码哈希值,这样才能提供信任实体对信任操作的信任管理。

(5)链结构及其构造机制

如何定义面向不同应用领域的区块链“链”结构以及形成机制。区块链的“链”结构可以参照比特币的区块链的“链”结构,但不同应用领域的区块链形成机制并不一定需要采用比特币中的“工作量证明”机制。“工作量证明”只是一个适用于全球互联网的数字货币管理的信任管理机制,需要考虑全球互联网最大可能的传输延迟,才设置了十分钟左右完成一个比特币块验证的“工作量证明”机制。而非数字货币领域的区块链应用不一定采用这种机制。特别是在专有链中,并没有必要采用“工作量证明”这类强共识机制。即使在公有链中采用“工作量证明”,也可以调整比特币系统中的“工作量证明”设置,在确保应用对信任管理需求的前提下,提供共识机制的实现效率。

在物联网数据可信管理的区块链应用中,采用不同的类型的区块链,可以决定不同的共识机制。基于专有链的物联网数据可信管理,可以不再设置块首的密码哈希值的目标值,直接生成块首的密码哈希值就可以完成对块的验证,这样既可以保证数据管理的一定可信度,也可以提供物联网数据可信管理的区块链应用效率。

6 结束语

本文试图系统地分析面向比特币的区块链,提炼面向非数字货币的其他应用领域的区块链定义、分类和特征;基于以上的分析和提炼结果,提出目前区块链应用中某些似是而非的定义、机制和分类方法,并且重点讨论“区块链是一种分布式账本”以及“区块链是一类数据库”这类不准确的区块链定义;其目的是提出了面向非数字货币应用领域的区块链通用应用模型,并且在探讨面向非数据货币应用领域的区块链应用的技术问题的基础上,形成一个通用的区块链应用方案。

现代的信息通信技术已经进入了崇尚机器的时代,区块链就是基于联网的机器对于现有的网络、密码、安全、数据等领域技术的实用性集成而产生的行之有效的去中心化网络信任管理方法,现在意义的人工智能已经演变成为机器通过对于大量数据的学习而自动调整神经网络的参数而能够大幅度提高机器对于声音、语言、图像、人脸识别准确度的技术,现代的信息通信技术似乎已经进入“机器具有唯一技术权威”的时代。但我们认为,人与机器的关系是相互依存的,我们如果仅仅依赖于机器,无论区块链领域,还是人工智能领域都难以获得最终突破性的技术进展,更不可能取得任何理论上的突破。所以,对于现代崇尚机器的热门技术还是值得进行系统、深入和细致的理论分析和探索,并且最终带来这些领域的技术和理论的双重突破。

我们期望从以上系统地分析和梳理区块链的概念和方法,以及有关面向非数字货币应用领域的区块链应用模型和技术方面的探索,可以有效地指导区块链的应用设计和实现,并且促进区块链在多个不同应用领域的应用普及,最终能够解决长期困扰互联网的信任管理和隐私保护等方面的技术难题。

区块链涉及到网络、密码、安全、数据等多个较为复杂的理论和技术领域,并且区块链又是一类实用的集成技术和方法,所以,区块链的研究和应用在理论层面和技术层面都具有较高的复杂度。本文对于区块链的分析和梳理以及对于区块链应用的通用方案的探索难免会有错误和不当之处。如有谬误,敬请赐教。

本文有关区块链的研究和探索是在国际电信联盟的电信标准化部(ITU-T)物联网研究组(SG20)和中国通信标准化协会(CCSA)的物联网技术委员会(TC10)多个标准化项目的研究和标准制定工作中展开的,感谢ITU-T SG20和CCSA TC10的领导和同事对我们在区块链方面研究和探索工作的帮助和支持,特别感谢中兴通讯公司黄峥同事、中国联通公司贾雪琴同事和加雄伟同事、以及华为公司张亮亮同事的帮助和支持。

参考文献:

[1]THANG N D,THAI M T.AI and blockchain:a disruptive integration[J].Computer,2018,51(9):48-53.

[2] FLORIAN T,BJÖRN S.Bitcoin and beyond:a technical survey on decentralized digital currencies[J].IEEE Com-munications Surveys&Tutorials,2016,18(3):2084-2123.

[3]GEORGE H.Might the blockchain outlive bitcoin[J].IT Professional,2016,18(2):12-16.

[4]TOMASO A,PAOLO T,TIZIANA D M.Blockchain technologies:the foreseeable impact on society and industry[J].Computer,2017,50(9):18-28.

[5]NIR K.Can blockchain strengthen the Internet of Things[J].IT Professional,2017,19(4):68-72.

[6]DENNIS M.Blockchain and the Internet of Things in the industrial sector[J].IT Professional,2018,20(3):15-18.

[7]KONSTANTINOS C,MICHAEL D.Blockchains and smart contracts for the Internet of Things[J].IEEE Access,2016,4:2292-2303.

[8]TIAGOM,FERNÁNDEZC,PAULA F.A review on the use of blockchain for the Internet of Things[J].IEEE Access,2018,6:32979-33001.

[9]CHRISTIAN E,ALFREDO D S,GENNY T,et al.Blockchain:a panacea for healthcare cloud-based data security and privacy[J].IEEE Cloud Computing,2018,5(1):31-37.

[10]LIU Bin,YU Xiaoliang,CHEN Shiping,et al.Blockchain based data integrity service framework for IoT data[C]∥IEEE International Conference on Web Services(ICWS).2017:468-475.

[11]LIANG Xueping,SACHIN S,DEEPAK T,et al.ProvChain:a blockchain-based data provenance architecture in cloud environment with enhanced privacy and availability[C]∥17th IEEE/ACM International Symposium on Cluster,Cloud and Grid Computing(CCGRID).2017:468-477.

[12]MORGEN E P.Blockchain world:do you need a blockchain?[J].IEEE Spectrum,2017,54(10):38-60.

[13]TIEN T A D,LIU Rui,ZHANG Meihui,et al.Untangling blockchain:a data processing view of blockchain systems[J].IEEE Transactions on Knowledge and Data Engineering,2018,30(7):1366-1385.

[14]GAI K K,CHOO K K,ZHU L H.Blockchain-enabled reengineering of cloud datacenters[J].IEEE Cloud Computing,2018,5(6):21-25.

[15]CHRISTINE M.Blockchaining the cloud[J].IEEE Cloud Computing,2018,5(4):6-11.

[16]RAFAEL B U,ROCCO D N.Blockchain-based decentralized cloud/fog solutions:challenges,opportunities,and standards[J].IEEE Communications Standards Magazine,2018,2(3):22-28.

[17]PAUL D,FABIEN A PP.A first look at identity management schemes on the blockchain[J].IEEE Security&Privacy,2018,16(4):20-29.

[18]ENISK,EYLUL A.Blockchain based DNSand PKI solutions[J].IEEE Communications Standards Magazine,2018,2(3):52-57.

[19] NIR K,JEFFREY V.Blockchain-enabled e-voting[J].IEEE Software,2018,35(4):95-99.

[20] VALENTINA G,FABRIZIO L,CLAUDIO D,et al.To blockchain or not to blockchain:that is the question[J].IT Professional,2018,20(2):62-74.

[21]BRIAN A S.A framework for determining blockchain applicability[J].IEEE Software,2018,35(4):70-77.

[22]Ethereum blockchain app platform[EB/OL].[2019-01-03].https:∥www.ethereum.org/.

[23] Hyperledger.Blockchain technologies for business[EB/OL].[2019-01-03].https:∥www.hyperledger.org.

[24] Bitcoin Developer Documentation[EB/OL].[2019-01-03].https:∥bitcoin.org/en/developer-documentation.

[25]The Bitcoin Wiki[EB/OL].[2019-01-03].https:∥en.bitcoin.it/wiki.

[26]RYAN H,AMIR H,ANIKET K.Blockchain access privacy:challenges and directions[J].IEEE Security&Privacy,2018,16(4):38-45.

Blockchain based approach beyond digital currency domain

SHEN Subin,MAO Yanqin,LI Li

(School of Computer Science,Nanjing University of Posts and Telecommunications,Nanjing 210023,China)

Abstract: Blockchain made from the Bitcoin is a method for decentralized trust management,providing a practical method for coping with the trust issue that has been worried about in the Internet for a long time.The Blockchain has become a hot topic of the research and the development in the Internet for several years.Due to the successful application of the Blockchain in the Bitcoin,current research on the Blockchain cannot get rid of limitation of the Blockchain in digital currency.There are some vague concepts and ideas related with the Blockchain,thus constraining the application of the Blockchain beyond the digital currency domain.Both the state of the art and the existing issues of the Blockchain applications are discussed.Based on analysis of the concepts and principles of the Blockchain in the Bitcoin,the technical characteristics of the Blockchain,such as trust control,public ledge and trustworthy transaction,are described.A common model for the Blockchain beyond the digital currency domain is proposed.The critical technical issues related to the design and the implementation of Blockchain applications are discussed based on the e model.A case for the trusted data management in the Internet of Things(IoT)shows the availability and the practical usability of the approach for the Blockchain.

Keywords: Bitcoin;Blockchain;decentralization;trust management;Internet applications

中图分类号: TP393.08

文献标志码: A

文章编号: 1673-5439(2019)01-0001-11

doi: 10.14132/j.cnki.1673-5439.2019.01.001

收稿日期: 2019-01-16

本刊网址: http:∥nyzr.njupt.edu.cn

基金项目: 江苏省未来网络前瞻性研究项目(BY2013095-1-08)资助项目

作者简介: 沈苏彬,男,博士,研究员,博士生导师,sbshen@njupt.edu.cn

引用本文: 沈苏彬,毛燕琴,李莉.一种面向非数字货币的区块链通用应用方案[J].南京邮电大学学报(自然科学版),2019,39(1):1-11.

标签:;  ;  ;  ;  ;  ;  

一种面向非数字货币的区块链通用应用方案论文
下载Doc文档

猜你喜欢