时间:2023-06-12|浏览:180
用戶喜愛的交易所
已有账号登陆后会弹出下载
Kim HM, Laskowski M. Towards an Ontology-Driven Blockchain Design for Supply Chain Provenance. Social Science Electronic Publishing, 2016.
35.2 摘要:
在大数据时代,一个有趣的研究问题是确定来源。追踪药品成分或证明奢侈品的真伪,对于如今在复杂的、跨组织的、往往跨越国际的供应链中生产和运输的商品,往往是不可能的。最近对物联网和区块链技术的采用,有望改善供应链的源头。我们对区块链特别感兴趣,因为区块链的许多受欢迎的用例都用于源头跟踪。我们还对应用本体感兴趣,因为已经有一些使用本体对知识来源、可跟踪性和食物来源进行了研究。在本文中,我们将说明为什么本体可以为区块链设计做出贡献。为了支持这个案例,我们分析了一个追溯本体论,并将它的一些表示转换为智能合约,这些合约在Ethereum区块链平台上执行源跟踪并强制执行追溯约束。
35.3 技术介绍:
如前所述,像provenance.org和skuchain这样的区块链创业公司正在研究供应链源头。然而,除了我们自己在采用基于本体的方法方面之外,并没有相关的其他工作。已经有一些与区块链无关使用本体的相关工作。可以说,最广泛的是可跟踪本体论(Kimetal.1995),它是用于企业建模的TOVE本体论的关键部分(Fox和Gruninger1998)。有趣的是,这种可追溯性工作引起了食品科学研究人员的兴趣。食品科学吸收了本体论对制造业企业建模的方法,以确保食品供应链上的食品安全。
TOVE追溯本体要点:
下面是开发这个本体时使用的关键非正式假设:
- 必须能够从一个实体跟踪到另一个实体,其中任何实体都不是抽象的实体。 - 跟踪资源单元是必须可跟踪的资源表示,因为tru既不是抽象的实体,也不是聚合的实体。 - 原始活动是必须可跟踪的活动表示形式,因为原始活动既不是抽象的实体,也不是聚合的实体。
下面是本体数据模型的简化版本(Kimetal.1995)。
图35-1简化的TOVE追溯本体数据模型
Ethereum中区块链或分布式分类账的状态表示所有已部署程序或契约的状态,包括输入、内部变量和输出(例如日志)。网络上的所有以太坊客户端都可以通过监听、计算、验证和将交易编码为块。目前,在Ethereum平台上,Solidity是主要的编程语言,它是专门为编写智能契约风格的程序而构建的。Solidity是一种面向对象(ObjectOriented,OO)语言,其中契约是用Solidity封装程序或智能契约的基本类。
如图35-2所示,Trace类提供了惟一的公共接口,因此所有影响区块链上契约状态的用户输入都是通过Trace类提供的。契约中的所有输出通信都是通过使用事件来完成的,这些事件是指向区块链的日志数据变量,然后由Ethereum客户机读取。确保公理所隐含的约束和关系应用于系统类似于在对象系统中维护所谓的类不变量(Meyer1988)。
图35-2以太-固体的方式描述可追溯性数据模型的面向对象的设计的UML图
由于形式化本体表示的新颖性和相应的成熟度较低,从形式化本体表示到形式化本体表示可能存在问题。因此,如图4所示,跟踪对象或类被表示为契约,而PrimitiveActivity和Tru被表示为结构类型,这些结构类型本质上是没有关联方法或绑定到每个对象实例的函数的类。PrimitiveActivity和Tru也可以这样做的语义和含义将使本文的讨论相当复杂,没有任何明显的好处。正如清单和UML图中所指出的,Trace定义了几个函数,这些函数包含封装类型、PrimitiveActivity和Tru上的行为和约束。公共功能包括契约的公共接口。因此,原始跟踪的概念被实现为公共函数或方法,而不是对象或变量,这是实现绑定到对象的计算字段或变量的常见方法(Meyer1988)。
我们将评估出处确定为一个重要且持续的业务问题。随着发现知识来源所需的数据越来越多地记录在Web上,评估知识来源变得越来越可能。评估实物来源或我们所称的供应链来源通常比较困难,许多商品在复杂的国际供应链中处理,无法对实物特征和产品下落进行细粒度跟踪。直到最近,随着物联网和区块链的出现,种源评估变得更加可能。特别是,随着区块链技术的发展,更多利用它的商业模型被构想出来,更多的研究人员利用它探索尚处于萌芽阶段的研究机会,我们相信本体工程社区可以为区块链的增长做出贡献。我们假定一个具体的和两个一般的潜在贡献,并在本
热点:区块链