没有合适的资源?快使用搜索试试~ 我知道了~
国防部区块链:实现透明部件跟踪的供应链连接
区块链:研究与应用2(2021)100017连接供应商和DoD区块链以实现透明的部件跟踪☆Francis Asunciona,Adam Brinckmanb,c,Dwayne Colea,Jeffrey Curtisb,MattDavisd,Timothy Dunlevye,Calvin Farmera,Andrew Harrisonb,Daniel P.约翰逊d,乔舒亚乔伊斯a,克里斯克鲁伯坦兹f,乔纳森莱恩f,约翰马丁a,贾瑞克纳布日斯基b,c,乔尔内迪格b,Deysi Olivaresa,Gregory Robinsone,Gabriel Rodriguezb,Chris Rootb,KarenRowanda,Al Saloure,Jeff Scoref,David Scottf,Ian Taylorb,c,*,ChandlerThompsonf,Huy Truonga,王喜群b,戴尔沃伦faNAVAIR,美国bSIMBA Chain,Plymouth,IN,46563,USAcCenter for Research Computing,University of Notre Dame,Notre Dame,IN,46556,USAdIndiana Technology and Manufacturing Companies(ITAMCO),Plymouth,IN,46563,USA美国波音公司f海军系统公司,美国A R T I C L E I N F O关键词:区块链智能合约供应链国防部(DoD)GraphQL企业区块链系统A B S T R A C T区块链已经存在了十多年,自2015年以来,已经推出了大量的系统来针对更灵活的用例。最近,几个企业区块链系统,如Hypersys Quorum和Hyperledger Fabric,已经推出,使区块链更容易应用于复杂的组织配置。在本文中,我们确定了一个特定的国防部用例,推断了需求,并对区块链堆栈的不同层进行了彻底的评估,以确定现有的最先进技术,并对该技术进行了差距分析我们描述了一个能够满足其中许多挑战的平台,并展示了我们如何为NAVAIR的该解决方案通过使用基于图的方法连接来自两个独立区块链系统(Ransys Quorum和Hyperledger Fabric)的交易,该方法在保护隐私的同时实现整个军事和供应商网络的完全透明。1. 介绍从根本上说,区块链实现了一种去中心化的机制,用于记录不可否认的交易,这样就没有单一实体可以控制数据。这是使用分布式共识算法实现的,该算法产生不可变(不可改变)的数据,使得数据一旦写入就不可能被篡改以太坊[1]就是这样一个区块链网络的例子,它有一个连接的节点网络,形成一个以太坊虚拟机(EVM)。在EVM上,交易是通过使用智能合约来指定的,智能合约是用Solidity编写的,它定义了底层账本的数据和逻辑接口公共以太坊网络自推出已被证明具有可扩展性和弹性,在撰写本文时对于企业部署,公司通常使用许可的区块链,而企业以太坊联盟[3]等拥有250多个成员的组织有助于开发新的商业机会并推动行业采用。作为更先进的平台之一,Ethereum Quorum [4]通过一系列增强功能扩展了以太坊代码库,以支持企业需求。 其他企业系统,如Hyperledger Fabric[5,6],旨在提供一个模块化和可扩展的开源系统,用于部署和操作许可的区块链。显然,对生产企业区块链应用程序的支持正在增加,但由于多种原因,其应用程序集成仍然很复杂,包括组织复杂性,数据集成,持续弹性和吞吐量,版本管理,身份验证和交易授权。在本文中,我们提供了一个☆NAVAIR公开发布2020-910。 发行声明:“批准公开发行;发行不受限制”。* 通讯作者。SIMBA Chain,Plymouth,IN,46563,USA电子邮件地址:ian.j. nd.edu(I. Taylor)。https://doi.org/10.1016/j.bcra.2021.100017接收日期:2020年12月1日;接收日期:2021年4月29日;接受日期:2021年6月3日2096-7209/©2021作者。出版社:Elsevier B.V.代表浙江大学出版社。这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。可在ScienceDirect上获得目录列表区块链:研究与应用杂志主页:www.journals.elsevier.com/blockchain-research-and-applicationsF.亚松森等区块链:研究与应用2(2021)1000172真实世界应用用例,来自海军航空系统司令部(NAVAIR)目前正在进行的可验证性、可识别性物理资产实时跟踪(VIPART)SBIR第2阶段项目。 VIPART项目旨在使用SIMBA Chain企业平台[7]跟踪尾钩组件的维护、修理和大修(MRO)操作,这对整个MRO过程中的舰载机操作至关重要。这一特定用例显著降低了如何跟踪NAVAIR处理的每个部件的复杂性,但同时,作为概念验证,它说明了实现这一小部分整体图片的复杂性。仅对这一部分的跟踪就可能涉及数百个操作、数十个数据系统、数百个数据模式和多个数据仓库,所有这些都需要集成。在设置此用例的上下文之后,我们通过将区块链应用程序划分为层来考虑需求,依次考虑每个层,以提供对现有系统的分析以及此用例中选择的理由。我们希望这一贡献可以作为一本实验室书籍,用于深入了解企业区块链应用程序的架构,并帮助定义未来可能需要解决的研究领域。然后,我们提供了SIMBA链平台如何在NAVAIR架构,设计和实施此用例的基本原理该解决方案非常复杂,因为需要满足NAVAIR数据的隐私问题,同时为原始设备制造商(OEM)的部件跟踪提供NAVAIR完全透明。换句话说,OEM数据需要与NAVAIR共享,NAVAIR数据需要保持私有,但NAVAIR希望查询其私有数据和OEM共享数据,以获得端到端流程的完整视图。为了实现这种分离,我们使用了两个独立的区块链:用 于 OEM 网 络 的 Hyper- ledger Fabric 和 用 于 NAVAIR 网 络 的Hypersys Quorum。Fabric被波音公司选中,因为它是他们在撰写本文时唯一支持的生产区块链系统 我们本可以使用Fabric通道来实现分离,但在与NAVAIR讨论后,我们决定在NAVAIR内部使用单独的区块链。选择Quorum是出于可伸缩性的原因,这将在第4节中详细讨论。为了连接区块链,我们利用该平台的能力创建了一个图表,定义了两个区块链上交易之间的关系,从而有效地连接了Quorum和Fabric区块链上部署的智能合约。这使得数据完全分离,以满足隐私问题,同时使NAVAIR能够在自己的数据以及供应商网络中实现完全透明。这种新颖的方法本质上是在两个区块链上创建一个可搜索的图,可以对其进行查询,以便提取一个完整的图片来跟踪外部供应商交付的组件及其零件虽然这是一个商业项目,但我们相信这个例子为使用图技术解决实际的现实世界区块链应用问题提供了有益的见解,并深入了解了当前需要更多研究的差距,因此有助于一般学术文献和关于这个主题的最新技术下一节将讨论国防部(DoD)的区块链相关工作。第3节描述了国防部跟踪Tailhook的维护、维修和大修过程的使用,以及对区块链架构有影响的技术要求。 基于此背景,第4节提供了一个典型的区块链分层堆栈的演练,并解决了当前的状态。第5节描述了我们为这个用例采用的架构第6节讨论了由此产生的系统的设计。第七节讨论了系统的实现。第8节提供了回顾性讨论,并提出了有利于企业部署的增强建议最后,我们在第9节中总结了本文。2. DoD相关工作Barnas [8]撰写了一份题为《国防中的区块链:不可信世界中值得信赖的系统》的开创性报告美国使用区块链技术的可能性空军在这项工作中,应用程序的供应链进行了概述,并指出,它可以提供一个解决方案,以建立从“摇篮到驾驶舱”的每一个电路板,处理器和软件组件的出处。2018年,《国防授权法》(NDAA)[9]命令国防部在6个月内“向国会的适当委员会提供关于区块链技术网络应用的简要说明该报告包括对区块链技术的潜在攻击性和防御性网络应用的描述;对外国势力、极端主义组织和犯罪网络利用此类技术的努力的评估;对联邦政府在关键基础设施网络中使用或计划使用此类技术的评估;以及对这些网络遭受网络攻击的脆弱性的评估在最近的DoD区块链研究中,作者使用了一个制药行业供应链用例来确定该方法的可行性及其对使用区块链检测假冒产品的网络安全影响的影响。 这项工作的结论是,将当前的区块链技术应用到国防部供应链中在经济上尚不可行,主要原因是能源效率问题、数据隐私问题以及所有参与者之间缺乏标准化的区块链接口。建议包括在以太坊或超级账本中使用权益证明(PoS)来解决能源问题,以及开发以治理为中心的区块链网络,使国防部能够充当监管机构,确保区块链内的所有行动都受到监控和保护。这将解决数据隐私问题,因为国防部将决定谁可以参与,并将标准化参与者之间的所有接口。2020年,一份由众议员支持的白皮书发布Darren Soto [11]强调了区块链或分布式账本技术(DLT)的用例,国防部可以从中受益 报告认为,下一代新兴区块链技术,包括人工智能、智能无人机、机器人和增材制造,将使国防部更加依赖数字技术,并严重依赖安全、及时、准确和可信的数据。然而,随着数据的重要性越来越大,网络战已经出现,对美国构成挑战。 在数字空间。今天,美国主要从通信系统到供应链的国防资产,都可能被试图削弱美国国防实力的不良行为者所能力的3. Tailhook用例维护、修理、大修(MRO)是指将部件保持或恢复到可用状态所需的更换、测试、测量和修理它包括所有的行动,以及采购物资和劳动力这样做MRO类别很广泛,包括大多数工厂和设施进行的三种常见维护类型:预防性维护是定期安排的任务,旨在保持机器,部件和其他设备正常运行。纠正性维护是在故障发生后执行的任务,涉及修理或检修设备、机器或部件,以及更换损坏的部件。预测性维护是使用监控和分析来预测未来故障事件并提供补救措施的任务这里,我们考虑尾钩组件的MRO操作尾钩是具有爪状钩的坚固金属杆,其安装在飞机龙骨上的旋转件上,并且通常机械地和液压地保持在收起/向上位置。在飞行员致动时,液压或气动压力将钩降低到向下位置,并且在与航空母舰上的拦阻装置接合时,其实现飞机的快速减速图图1显示了起飞前正在检查的尾钩。●●●F.亚松森等区块链:研究与应用2(2021)1000173该用例旨在跟踪整个MRO过程中F/A-18飞机的尾钩,以便利用这些数据进行更好的决策。使用面向社区的区块链,预计这种跟踪不仅可以为跟踪这种MRO过程提供共同的真相来源,而且还可以扩展到跟踪可能外包给OEM制造商或其他合格的MRO工厂或供应商的MRO过程这种透明度目前尚不存在,并将在协调时间表以实现既定目标方面带来显著的效率提升另一个关键方面是能够附加到DLT维护事件和使用信息,这些信息决定了这些关键安全部件的最终使用寿命。3.1. MROMrsow为了提供上下文,需要对维修水平分析(LORA)的复杂性有一定的了解。LORA是一种分析方法,用于根据成本考虑和作战准备要求确定何时更换、修理或丢弃某个项目。对于具有数千个组件、子组件和部件的复杂工程系统,每个组件、子组件和部件都具有许多可能的维修决策,LORA寻求确定维修和维护设施的最佳供应,以最小化整个系统生命周期成本。LORA过程首先确定可以执行维护的选项,并为系统中的每个项目生成决策,指示将在何处执行项目的每个维护操作。主要有三个层次:组织级或O级维护发生在组织单元级,例如,作为飞机联队的一部分,由一个单一的维修中队负责,并为快速周转进行了优化,以提高作战可用性。O级也负责零件的拆卸中级或I级维护发生在位于公共操作位置的专业后台。因为它更专业,I级维护允许更彻底和耗时的诊断测试和维修程序。仓库或D级维护发生在高度专业化的场外维修站或OEM设施。 他们携带广泛的诊断设备,甚至可能具有广泛的设备大修和改造的制造能力。简化的高层次代表性尾钩MRO流程,如图所示。 2,从航空母舰的O级操作运行到仓库进行维修和返回。该过程运行如下。O级移除零件,如果本地I级团队无法修复,则将其运送到D级仓库进行维修。在航空母舰上,I/O级交互都记录在O级和I级专用数据系统上。一旦发货,部件将在途中被跟踪,直到它到达仓库,Fig. 1. F/A-18尾钩在发射前的维护检查。在那里它最终被拆卸并被送到修理厂。 维修车间与数十个数据系统进行交互,以定义工作;管理工作订单,员工的时间和工作量管理;并提供进一步的工程支持。 维修完成后,零件将运回承运商,并由当地O级运营单位安装。3.2. OEM零件跟踪此用例旨在将跟踪信息整合到通用分类账中,以在整个MRO过程中跟踪Tailhook然而,通常在维修过程中从OEM订购零件,例如, 对于尾钩,这可能是一个销,柄,臂,或枢轴。目前,当从OEM订购零件时,没有自动化机制来跟踪其进度。 有些零件是在原始设备制造商自己制造的,而其他零件则是从次级供应商订购的,次级供应商可以从供应链中的其他供应商订购。 仅当部件交付到仓库时,才会进行进度更新。在这项工作中,我们希望评估使用DLT连接来自选择加入的OEM供应商的信息的可能性,以便可以实时跟踪某些部件的进度更新。然而,为了实现这一点,MRO数据不能离开NAVAIR或以任何方式与OEM共享,而OEM数据应提供给NAVAIR。NAVAIR希望查询MRO和OEM跟踪数据,以获得整个系统的全局视图,这需要两个逻辑上分离的区块链,以便分离数据跟踪,同时提供跨平台的整合3.3. 用例需求正如引言中所讨论的,用例的目标是向NAVAIR提供OEM(波音)零件跟踪数据。 信任是这个场景的关键,因为涉及到两个不相连的组织。 目前还没有从OEM到NAVAIR共享数据的方法,因为NAVAIR系统和OEM都是完全私有的。 为了连接这些实体,系统必须是安全和私有的,数据是可信的,这样任何一方(或任何其他敌对行为者)都不能修改被跟踪部分的数据。例如,如果敌对行为者可以操纵数据,那么他们可能会破坏整个NAVAIR供应链。此外,NAVAIR希望能够在其内部(私有)系统和OEM区块链部件跟踪数据中查询数据,以监控其整个端到端MRO流程,因为所提供的OEM部件是该流程的组成部分。因此,NAVAIR希望跨两个区块链进行查询,而OEM只能访问他们共享的数据。OEM装配过程中的某些阶段需要操作员或检查员生成报告。这些文件的主题取决于该阶段所做的工作。例如,在质量保证工作站,报告可能包含检查员的评论,测量,任何自动测试的结果,以及关键的安全测试。因此,OEM确定的一项要求是提供共享此类文档的能力,并将其与正在跟踪的每个部件相关联。由于这些文档可能很大,因此需要能够将这些文档离线因此,这导致以下要求:集成多个内部NAVAIR数据库,用于MRO部件跟踪。多个组织,例如,NAVAIR、OEM 1参与一个共同的区块链网络,每个网络都有自己的治理和安全规则,这些规则指定了它们共享的内容以及与谁共享。具体而言,波音希望以可信赖的方式与NAVAIR共享数据,而NAVAIR希望访问整个MRO流程,包括OEM数据。Tailhook流程的有效可追溯性将需要能够表示流程不同阶段之间关系的结构化数据,包括跟踪子流程的各个部分●●●●●●F.亚松森等区块链:研究与应用2(2021)1000174图二. 用于检修尾钩组件的高级MRO(维护、修理和大修)流程。需要对结果数据进行有效查询,以便在整个MRO流程和OEM部件跟踪中查询与特定部件相关的此外,需要与其他部分的互相关,以便识别异常或向前搜索,以识别其他有风险的部分添加链外数据文件并将其与部分跟踪区块链交易相关联的能力通用访问卡(CAC)是一种智能卡,用作国防部员工和合格承包商的标准身份识别,并提供对计算机网络和系统的访问。因此,访问国防部的任何数据或系统都必须使用CAC卡身份验证。在未来,这个用例将扩展到支持多个部分的跟踪;因此,智能合约将需要更新。 因此,平台需要管理智能合约版本,以便可以更新应用程序,而不会导致重大的代码重写或失去对数据的访问。4. 企业应用需求区块链企业应用程序的架构可以包含多个级别和组件[12]。 在本节中,我们将系统的需求组织成五个部分,如图所示。 3. 图的下半部分侧重于底层区块链系统层,而上半部分侧重于平台和应用程序。 在本节中,我们将考虑每一层,提供与我们的用例相关的核心组件的描述,并确定底层区块链和工具的选择。4.1. DLT和区块链系统在本节中,我们将介绍三个层次,即区块链、拓扑和接口,并使用这些考虑因素对各种区块链系统进行比较分析。区块链的概念已经以某种形式出现,世纪90年代Stornetta与Haber合作[13]开发了一种加密安全的档案,可以在不泄露内容的情况下验证记录这种机制使数字分布式分类账的协作创建成为可能,其功能远远超过纸质分类账。这一早期工作产生了DLT的概念,可以将其描述为在地理上分布在多个站点、国家或机构的复制、共享和同步数字数据的共识。没有中央管理员或集中的数据存储,顾名思义,每个词都有助于整体定义:分布式反映了分散而不是集中的性质。Ledger代表记录的数据库。技术将同步数据的协议定义为一个分散的数据库,没有中央权威机构对其进行监管因此,DLT使用密码学以安全和准确的方式促进信息的存储,并且一旦存储,它就变得不可变。通常,DLT和区块链被用作同义词,但事实上,区块链是一种特殊类型的DLT,它包含自己的一套规则和功能,包括将交易组织为区块链。 区块链更加固执己见,定义了实现DLT的具体方式。 这种混淆代表了一种常见的现象,即一种类型的实现(区块链)的成功超过了它所属的更广泛的集合,并且比它的同名(DLT)更受欢迎。4.1.1. 区块链层区块链同时存在于多个计算节点上,只有在其成员达成共识的情况下才能写入数据;所有条目都经过数字签名,因此是可识别的;数据永远不会被删除,即,数据是不可变的。随着新的交易集合(称为区块)使用共识算法添加到区块链中,区块链不断增长每个区块都包含一个时间戳和一个到前一个区块的链接,所以它们形成了一个链。数据库不受任何特定机构的管理;相反,网络中的每个人都得到一个精确的副本。老图三. 我们为企业区块链应用程序分析的不同层。●●●●●●F.亚松森等区块链:研究与应用2(2021)1000175区块被永久保存,新区块被不可逆地添加到分类账中,使其数据无法操纵。区块链网络有三大类型:公共区块链没有访问限制;任何人都可以发送交易或参与共识算法。私有区块链是许可的,这意味着除非网络管理员邀请,混合区块链结合了公共和私有区块链,例如,应用程序可以私下运行,并使用公共区块链进行结算。公共区块链的一些例子是比特币[14],以太坊[15],Stellar [16],RSK [17]和Hedera Hashgraph [18]。在加密货币的吸收方面,并提供规模的指示在撰写本文时报告了2728种加密货币[19私有区块链的例子有Hypersys Quorum [4] , Hyperledger Fabric [20] , HyperledgerBurrow [21],Ripple [22]和R3 Corda [23]。如前所述,NAVAIR需要一个私有区块链网络,而拥有和运营区块链节点的组织构成了整体安全模型的一部分报告显示,大约有15个企业区块链系统,但在Gartner臭名昭著的幻灭低谷之后重新校准期望之后,当今技术的核心有三个完全独立的以企业为中心的区块链网络:R3Corda,Hyperledger Fabric和企业以太坊。此外,参考文献[25]和[26]等几个来源一直将Fabric,Corda和Quorum列为撰写本文时的三大企业私有区块链。因此,对于这个用例,我们考虑了这三个系统。企业应用程序需要管理控制来授予用户或公司参与;因此,通常使用许可区块链。对于数据保密,Corda、Hyperledger Fabric和Quorum都解决了交易安全问题,但处理方式不同。Corda不要求网络中的所有节点都运行所有事务。因此,整个区块链状态只能通过其中所有节点的联合来确定事务可见性基于需要知道的基础,这意味着所有事务都需要只对参与其中的人这本质上提供了可见性范围。此外,它还提高了吞吐量,因为不是网络上的每个节点都需要计算所有事务。Quorum提供了一种加密交易数据的机制,并仅将交易信息的哈希存储在区块链上。这意味着交易对整个区块链都是可见的,但只能以加密的形式进行。以太坊协议的扩展允许节点与网络上的节点子集共享未加密的交易数据,提供基于用例的简单和动态定义的可见性Fabric使用“通道”的概念,通过这些通道,商定的参与者交换数据。 通道本质上是整个区块链网络中的一部分。受信任的合作伙伴共享通道,并且数据仅对那些有权访问通道的合作伙伴 信道是在同意的各方之间静态保密的。 如果有许多合作伙伴涉及重叠的安全和授权要求,则通道的配置和维护会增加部署的复杂性。 Swift Bank的Nostro验证(概念验证)[27]使用Fabric表示,“例如,虽然Nostro中需要528个通道以确保Nostro账户仅存储在其账户服务商和所有者的节点上,但要将解决方案产品化,需要定义超过100,000个通道,涵盖所有现有的Nostro关系,这带来了重大的运营挑战。正如介绍中所述,Fabric被选为OEM网络,因为它是波音公司使用的生产区块链系统但是,对于内部DoD网络,我们没有选择Fabric,因为在MRO管道的多个DoD利益相关者之间扩展Fabric时存在上述可扩展性问题Corda和Quorum之间的选择的执行。SIMBA Chain支持任何基于以太坊的区块链,也支持Fabric。然而,Corda使用Kotlin或Java作为他们的智能合约语言;这将导致进一步的集成,这超出了本项目的范围。4.1.2. 拓扑公共区块链和私有区块链之间的拓扑结构差异很大。公共区块链更加分散,有更多不信任的参与者,并使用计算密集型共识算法。例如,比特币有大约9000个计算机节点参与其“工作量证明”共识算法,需要至少51%的协议,这是昂贵和缓慢的私有区块链的成员更值得信赖,并具有多种面向企业的优势,包括:更简单的共识算法,性能更优越;低延迟率;用户或公司被授予访问权限和角色,通常集中管理,对谁可以参与以及如何参与提供必要的控制;以及用于数据链上安全的灵活模型“共识”的概念企业区块链需求的增加导致了更有效的共识出租,不同的方法在这一领域竞争Corda共识是在事务级别上的,支持两种类型。有效性共识检查交易是否被每个输入和输出状态的合约接受,并具有所有必需的签名。一致性共识是要求一个提议的交易的输入没有在另一个交易中被消耗。Fabric使用排序器节点来建立所有交易的顺序,然后将批量交易排列成块,然后将其添加到区块链中。排序器节点将块广播到连接的对等体,这些对等体通过流言协议中继到其他对等体。然后,对等节点验证来自排序节点的广播块,然后将它们提交到分类账。在Hyper ledger中有三种可互换的共识协议-Fabric Solo,Raft和Kafka-可以使用。Quorum使用基于权威证明(PoA)声誉的共识算法,该算法利用了块验证器的身份和声誉的价值PoA网络指定某些受信任的节点,即,有权验证交易。所使用的拜占庭容错(Byzantine Fault Tolerance,BFT)共识算法(例如,ProbabilityBFT和Istanbul BFT)提供交易的最终性,而不是PoW中的概率完成。BFT与PoA相结合意味着可以确保链不会分叉这反过来又等同于finality,并且因为finality是有保证的,所以不需要等待块确认达到参与者满意的完成概率水平。因此,再次增加了吞吐量4.1.3. 接口在这一层中,我们讨论了两个项目:智能合约,它提供了区块链的接口,钱包,它充当了用户的接口这两个要素将区块链与大多数其他存储系统区分开来。 智能合约提供了在区块链上写什么的数据接口,以及需要满足什么规则才能进行这种“写”操作的业务逻辑。 智能合约是一段自动执行的代码,它定义了交换协议的条款,或资产的状态变化。智能合约通常被写入区块链,使其不可否认,以提供确定性行为,并且是可信的,可跟踪的和不可逆的。与其他数据存储系统不同,每个区块链交易都使用加密签名进行数字签名,存储在钱包中。钱包一词起源于公共网络,在公共网络中,特殊的私钥提供了对加密货币的访问。然而,实际上,钱包是一种加密凭证,可以在网络上识别用户。它是一种非对称加密系统(公钥/私钥对),用于对交易进行●●●F.亚松森等区块链:研究与应用2(2021)1000176是保密的,公钥可以被公开,并且钱包地址提供网络上的地址,通常通过获取公钥的散列来生成。4.2. 技术和集成本节提供了来自不同平台和应用程序,以及一些需要管理的问题4.2.1. 平台企业不应该使用低级区块链API直接与区块链交互。相反,他们需要一个位于区块链之上的应用程序集成层,抽象区块链特定的细节,并允许集成其他企业系统。除了区块链网络可以提供的功能之外,企业区块链平台(EBP)还应该提供一些功能,以允许企业以可扩展,安全和强大的方式无缝执行其业务流程我们将在下文阐明这样一个平台应提供的内容4.2.1.1. 可扩展和健壮的事务执行。除了易于集成之外,事务执行还应该是可伸缩的和健壮的。这意味着提交应该使用支持重试和幂等性、重复性和水平缩放的技术。如果吞吐量有压倒区块链网络的危险,异步性允许交易在应用程序端排队。水平扩展意味着利用区块链的去中心化特性将交易推送到区块链上的不同节点,这意味着提交到网络不会成为吞吐量的瓶颈4.2.1.2. 企业身份验证映射。 企业拥有复杂且高度集成的安全系统,通常使用基于角色的集中式后端(如LDAP或Active Directory)定义身份验证和授权规则。EBP应该提供将身份验证和授权规则映射到平台提供访问的区块链上的身份的机制。这意味着将用户和/或角色映射到交易签名身份,并将链上智能合约执行控制集成到企业内定义的角色4.2.1.3. 事件驱动模型。许多企业系统是事件驱动的,许多企业区块链用例与事件发生和记录的概念有着内在的因此,EBP必须提供机制,允许系统订阅并通知区块链事件,以触发系统中更高级别的操作、反应和工作流程通知应该可以同时通知人类用户和其他企业子系统以及外部联盟合作伙伴。例如,NAVAIR希望在特定部件的状态发生变化时立即通知其区块链更新。 这将使他们能够进行需求感知并重新规划其物流。4.2.1.4. 外部数据集成。不推荐在区块链上存储大数据,因为它昂贵且无法扩展,因此经常使用数据的脱链脱链允许数据存储在外部数据存储中,但通过将其指纹或散列码存储在链上而绑定在区块链上。散列码是一种加密机制,可以为任何大小的文件生成一个小的、固定大小的指纹,这样就可以保证两个文件永远不会生成相同的指纹。 这意味着哈希码唯一地表示文件的内容。因此,如果我们将一个文件的散列码存储在区块链上,而将该文件存储在另一个存储中,我们保证:文件的内容自存储以来没有被更改,因为散列码对于该内容是唯一的;存储外部文件的用户被识别,因为每个交易都是由用户使用他们的钱包签名的脱链是跟踪区块链上的外部文件或数据集的一个很好的策略,因为它最大限度地减少了链上的存储,同时为外部生成的数据提供了不可否认的审计跟踪。 这意味着可以将区块链与现有数据和系统无缝结合使用,大大改善数据跟踪、数据完整性,并在不同的数据系统和应用程序中聚合多个数据副本。对于我们的用例要求,预计大多数OEM文档都包含敏感信息。文档的散列可以记录在链上,以及将文档与部件、装配阶段和与跟踪文档相关的其他数据相关联的信息。 记录在链上的散列提供了一种不可变和不可否认的方式来证明文档在工作状态写入分类账后从未被更改。这是可能的,因为区块链共识算法确保所有对等点都有一个未被破坏的账本副本。因此,脱链是最终系统的必要组成部分。4.2.1.5. 区块链搜索和查询。为了执行复杂的搜索,需要识别事务之间的关系,以便提取查询。对于加密货币,相互交易的钱包之间的关系可能是有见地的。例如,Cachin et al.[28]描述了区块链交易的语义如何通过有向非循环图来捕获,表示状态和状态之间的交易,以及交易的一致性和有效性Akcora等人[29]解释图挖掘如何成为区块链分析的主要部分,并概述了这种图技术。然而,对于更一般的企业智能合约,方法和数据是针对特定应用程序自定义的对于我们的用例,我们想要查询一个特定的部件和与该部件相关的其他事务在Web3社区中,诸如“The Graph”[ 30 ]之类的倡议 它使管理员能够创建“子图”来查询难以直接查询的数据成为可能,子图定义了“TheGraph”将索引的数据。换句话说,管理员需要花时间来理解事务以及它们如何相互关联,以便创建其他人可以使用的GraphQL模式和映射。由于它现在支持多个区块链,因此在技术上可以形成一种机制来创建区块链数据的全局图,以表示本文用例中的两个区块链Anyblock[31]是另一个使用Elasticsearch和PostgreSQL来支持多个基于以太坊的区块链的搜索、过滤和聚合的工具。然而,数据需要被管理和捆绑在一起才能发挥作用,因此需要领域知识。4.2.2. 应用生态系统成功实施基于区块链的解决方案需要与合作伙伴和竞争对手组织合作,使区块链成为一项在历史上一直严格的企业边界之间进行数据共享,只有在对所有人都有明显好处的情况下才能改变。 协商这些边界和规则,确定哪些数据可以跨越边界以及在哪些条件下可以跨越边界,是解决方案的重要组成部分。事实上,对于我们的用例,共享规则是特定的,对于OEM和DoD来说,这种数据共享是一个陌生的概念。大多数企业使用企业资源规划(ERP)软件来整合组织的关键业务功能,并提供查询组件,这些组件可以提供对数据的可定制访问,包括列表、通道和报告。ERP系统与区块链的接口是复杂的,但如果要消除循环中的人为因素并自动反思多级供应链,则是必不可少的。在应用层面,EBP还应该为企业提供将区块链真正集成到其业务流程中的方法虽然上述功能使区块链的利用成为可能,但它们只是F.亚松森等区块链:研究与应用2(2021)1000177这是通过智能合约交易执行来推动业务流程的第一步。要做到这一点,企业应该能够做到两件事:1. 将业务流程规则编码到智能合约中。实现这一点的一种简单方法是将智能合约视为有限状态机(FSM),其状态和保护是业务流程需求的表达通过将这些规则编码到合约中,当调用合约方法时,执行失败或转换状态可能会触发下游业务流程事件。2. EBP应该提供对业务级交易进行建模的机制,这些交易可能由不同方执行的多个区块链交易组成。对于这个问题有各种不同的方法。虽然回滚在区块链上是不可能的,但这种业务级事务可以使用工作单元(UOW)模式进行建模[32]。数据可以在业务流程交易期间聚合,并最终写入区块链,或者交易可以单独写入,并引用捕获每个事件以及可能失败的UOW标识符5. 架构使用第3.3节中的用例需求和上一节中进行的分析,我们在这里确定了满足此用例需求所需的组件以及它们如何交互。图4显示了NAVAIROEM用例的最终架构。在此图中,信息从上到下依次显示 为了简化,我们将平台组件与系统中的其他组件分开。 来自NAVAIR和OEM的信息来自其数据库和ERP系统,其中包含用于内部跟踪目的的原始数据。 OEM和NAVAIR使用不同的机制收集这些信息,详细信息超出了本文的范围,但结果是数据被聚合成一种形式供消费。在这种情况下,我们需要尾钩组件和任何在MRO过程中订购的相应部件对于OEM网络,目前有两个OEM,波音和ITAMCO,他们都有自己的区块链节点。目前,NAVAIR节点位于一个管理域中,但未来的想法是,MRO管道的每个部分都将有节点,并由不同的NAVAIR单位拥有。为了方便起见,来自任何一方的输入数据都使用软件开发工具包(SDK)输入到区块链平台中。 SDK填补了原始数据和平台智能合约接口所期望的数据格式之间的差距。SDK还通过提供用于集成的样板代码简化了身份SDK将与平台API进行通信,该API从应用程序中抽象出区块链基础设施的细节,使其具有可移植性,如前一节所述 该平台提供了托管NAVAIR和OEM所需的企业认证基础设施。 在NAVAIR,身份验证方案需要使用CAC卡,对于OEM,应提供对典型OEM身份验证的支持。在平台层面,应支持第4.2.1节中确定的功能,以提供有效跟踪所需的核心弹性区块链的复杂性应该使用支持必要数据模式的API进行抽象,然后在后端,应该支持强大的监控和异步交付事务,以帮助减轻峰值数据负载并为事务吞吐量提供弹性。交易应该与特定的区块链连接,并且应该提供数据的链外化,以支持伴随链上交易的任何较大的文件或数据段。然后,为了与用户进行交互,应提供两个子系统:如果某些交易符合某些标准,则为它们提供通知;以及可以快速有效地搜索区块链数据的搜索设施,以支持最终用户跟踪特定部分并帮助识别问题。最后,每个网络想要使用的智能合约语言和区块链系统也应该被集成,以满足用例需求。图四、 解决用例需求的体系结构。ERP:企业资源规划; OEM:原始设备制造商; SDK:软件开发工具包。F.亚松森等区块链:研究与应用2(2021)10001786. 设计此用例的目标是向NAVAIR提供OEM部件跟踪数据,NAVAIR希望能够将此跟踪数据添加到其内部数据中,以便他们可以查询和监控整个端到端MRO流程。为了实现这一愿景,我们需要构建两个区块链许可网络,以实现跨两个断开连接的组织的数据跟踪然后,我们需要一个可以将这些区块链系统连接在一起以进行查询的系统。 区块链系统必须是安全的,私有的,并且数据是可信的,这样任何一方或任何其他敌对行为者都不能修改有关被跟踪部件的数据。对于NAVAIR安装,系统还需要提供CAC卡访问。系统还需要能够随着事务吞吐量的增加而扩展,它需要支持事件,有效搜索,并满足第4节中概述的其他技术要求。开发人员使用许多工具包来开发区块链应用程序。Truf Bit [33]是一个开发环境,测试框架和资产管道,用于使用EVM的区块链,使开发更简单。Truf Bronze是为区块链开发人员而设计的,而不是为企业开发人员设计的,但它是一个内置智能合约编译,链接,部署,二进制管理和自动化合约测试的令人难以置信的它具有可扩展的部署和迁移框架。Truf是与EVM接口的事实上的工具包,几乎所有更高级别的工具都使用它。Remi XIDE是一个开源的,基于浏览器的编译器,用户可以在其中编写Solidity智能合约。开发人员可以在浏览器和本地使用Remi x,它支持测试,调试和部署智能合约。Kaleido [35]简化了建立安全、许可的区块链网络的过程,而不会牺牲自定义环境的能力这些网络提供了底层区块链技术的所有好处,同时仍然保持了必要的健壮性,安全性和性能水平。 该平台加入成员组织,并根据定义和商定的管理政策在成员组织之间分配所有权和控制权。Chainlink [36]使智能合约能够通过使用分散的Oracle网络访问任何外部数据源,例如,体育比赛结果、最新天气或任何其他公开可用的数据。MultiBaas[37]是一个平台,可以使用熟悉的REST API开发以太坊区块链应用程序。MultiBaas支持基于角色的访问控制、双因素身份验证和审计日志,以确保安全。Settlemint [38]使开发人员能够使用VisualStudio Code IDE在浏览器中构建区块链应用程序,但为各种用例提供了各种智能合约模板,以引导开发。它还生成一个REST API来与智能合约进行交互,并提供管理工具来添加用户和连接到基础设施。然而,上述这些平台不支持trans-action弹性或多链场景。最接近满足要求的两个系统是代码格式[39]和SIMBA链[7]。代码架构为
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功