首页 > 专栏

【专栏】IoT场景中的区块链和智能合约

王欢 · 零壹财经 2020-07-29 16:10:55 阅读:19457

关键词:IoT区块链智能合约物联网生态

区块链最近吸引了各行各业的利益相关者的兴趣:从金融和医疗保健,到公用事业,房地产和政府部门。引发这种兴趣的原因:有了区块链,以前只能通过受信任的中介程序运行的应用现在可以以分散的方式运行,而无需中央授权,并且可以以相同的数量实现相同的功能,以前根本不可能做到这一点。 区...

区块链最近吸引了各行各业的利益相关者的兴趣:从金融和医疗保健,到公用事业,房地产和政府部门。引发这种兴趣的原因:有了区块链,以前只能通过受信任的中介程序运行的应用现在可以以分散的方式运行,而无需中央授权,并且可以以相同的数量实现相同的功能,以前根本不可能做到这一点。

区块链支持不信任的网络,因为当事双方即使彼此不信任也可以进行交易。加密技术的大量使用是区块链网络的关键特征,它使网络中所有交互都具有权威性。智能合约——在区块链上的自执行脚本,集成了这些概念,并允许建立适当的,分布式的,高度自动化的工作流程。这使得区块链吸引在物联网(IoT)域中工作的研究人员和开发人员。 

当然过渡到分散式网络可能并不总是有意义,应用程序的要求也可能使得基于区块链的网络无法满足它们。区块链和智能合约带来了很多优势,但是同样它们也会带来一些弊端。

本文研究讨论如何将IoT和区块链一起使用,并重点介绍了现有的IoT区块链应用。IoT开发为其项目部署基于区块链的解决方案时需要牢记的问题。 

区块链是一种分布式数据结构,可在网络成员之间复制和共享。它与比特币一起引入,以解决双重支付问题。由于比特币网络上的节点(所谓的矿工)向其追加经过验证的,相互商定的交易,因此比特币区块链容纳了权威交易账本,该交易账本确定谁拥有什么资产。
 
图1.链中的每个块都包含一个事务列表和到前一个块的哈希。

区块链+物联网

物联网向分散式架构转变以使不断扩展的物联网设备生态系统具有可持续性。从制造商的角度来看,当前的集中式模型维护成本很高,考虑将软件更新分发到数百万个已长期停产的设备中已有数年之久。从消费者的角度来看,对在后台使用的设备缺乏信任,并且需要通过透明的安全性方法来防止个人隐私被监控。这些问题可以通过可扩展的、不受信任的对等模型来解决,该模型可以透明地操作并安全地分发数据。区块链为该问题提供了一种优雅的解决方案。

制造商的所有物联网设备都在同一区块链网络上运行,制造商部署了一个智能合约,使他们可以在网络上存储最新固件更新的哈希值,这些设备要么将智能合约的地址发送到其区块链客户端中,要么通过发现服务对其进行查找。然后他们可以查询合同,找到新固件,然后通过分布式对等文件系统例如IPFS通过其哈希请求它。对该文件的首次请求将由制造商自己的节点(也参与网络)处理。

                                  图2.使用智能合约和物联网的资产跟踪示例

在图2a(左)中,一个集装箱离开制造厂(A),通过铁路到达相邻的港口(B),被运输到目的港(C),然后再到达分.销商的设施(D),直到到达零售商的网站(E)。在图2b(右)中, 集装箱的承运人与码头在目的地端口(C)进行握手,以确认集装箱已交付到预期的位置。握手完成后,它将发布到智能合约上以签署交付。目的端口跟随确认接收。如果C节点未在可接受的时间范围内过帐合同,则货运公司将知道并可以当场发起调查。但是在二进制文件传播到足够多的节点之后,制造商的节点可以停止为其提供服务。假设设备配置为共享它们获得的二进制文件,则在制造商停止参与网络之后很长时间才加入网络的设备,仍可以检索到受追捧的固件更新,并确保它是正确的文件。这一切都是自动发生的,无需任何用户交互。

与集中式方案进行比较和对比,在集中式方案中设备轮询制造商的服务器以获取更新,并得到404错误。

此外,交换加密货币的区块链网络提供了便利的计费层,为设备之间的服务市场铺平了道路。在上面的示例中,存储二进制文件副本的设备可能会收取服务费用,以维持其基础结构成本(或简单地赚钱)。其他示例包括:Filecoin 允许设备“租用磁盘空间”,以及EtherAPI ,这使得可以通过API调用货币化–调用者需要在请求它们之前提供必要的小额付款(分别在比特币或以太坊中)。在互联网上拥有自己的银行帐户;然后,它可以将其资源公开给其他设备(或用户),并通过微交易对其使用进行补偿。

一般而言,这也促进了服务和财产的共享。Slock.it 适用于智能电子锁(“锁”),可以使用带有适当令牌的设备将其解锁。这些通证是在以太坊区块链上购买的,一个针对使用其自己的加密货币的智能合约而优化的公共区块链网络。 

用来存储房屋或房屋的房主的锁设定了定时访问该电子门锁的价格。感兴趣的一方可以使用移动应用来识别该锁,用以太币支付请求的金额,然后通过正确签名的消息(使用Whisper对等通信协议)与该锁进行通信以对其进行解锁。通过使所有Slock在同一区块链上运行,简化了账单。

在能源领域,物联网与区块链的集成允许点对点市场,其中机器可以根据用户定义的标准自动买卖能源。 例如TransActive Grid 正在尝试在纽约布鲁克林附近的可再生能源对等市场的概念。太阳能电池板将其多余的产出记录在区块链上,然后通过智能合约将其出售给邻近的各方。

区块链在物联网环境中的作用不止于此。考虑用于突出区块链价值的典型供应链示例:一个容器,该容器离开制造商的站点(A点),通过铁路运输到邻近的港口(B点),然后被运送到目的港(C点)再次运输到分.销商的设施(D点),直到最终到达零售商的网站(E点)。这个过程涉及多个利益相关者并进行检查,所有这些利益相关者如图2a所示。每个利益相关者通常都维护自己的数据库来跟踪资产,并根据链中其他方的输入对其进行更新。尽管建立了一个区块链网络来跟踪该资产,这意味着现在将存在一个共享数据库来跟踪,其中更新与加密可验证性一起被传播并创建可审核的信息线索。例如图2b,当货运公司到达目的地港口时,他们将签名的消息发送到预先确定并达成协议的智能合约,以允许链上的每个人都知道集装箱现在位于C点。签署后,它将作为运输公司关于集装箱已到达目的地港口的索赔的可加密验证的收据。 港口的收货人过帐相同的智能合约,以确认它是否在容器中。

另外,如果该链遵循比特币交易模型,则可以通过原子对等交换软件完成整个过程。创建区块链时,允许制造商发行“我有容器”令牌;所有其他利益相关者都可以发出“我已收到容器”令牌。当制造商将集装箱交由货运公司将其从A点移至B点时,它将创建具有两个输入和两个输出的交易。输入#1指向制造商自己的UTXO(“我有容器”令牌),输出#1创建一个新的UTXO,该UTXO将该令牌锁定在运输商的公钥上,从而有效地将所有权传递给了它。输入#2指向运输商自己的UTXO(“我已收到集装箱”令牌),输出#2创建一个新的UTXO,将令牌传递给制造商。制造商签署自己的零件,然后将此不完整的交易(因此,不可赎回的交易发送给签署自己的零件的运输商,然后将其推入区块链。当此交易添加到区块链中时,制造商收到了“我有从运输商处收到容器令牌,运输者现在持有“我有容器令牌”。在运输商与运输公司之间的B点将进行类似的原子交换,直到零售商最终收到在E点,“我有容器令牌”。这时,有一条完整的,可加密验证的,带有时间戳记的跟踪,该跟踪可以跟踪资产,并且在利益相关者之间就发生的事情几乎没有争议的余地。
 
图3.事务n花了事务b(未显示)创建的第二个UTXO(未显示)(b#2),并生成了两个新输出(n#1和n#2),分别由事务n C 3和n C 9花费 。

上面描述的过程是对过去实践的升级,证明了区块链的有用性,但是由于物联网,它可以更进一步并实现全自动。假设每个利益相关者都带有一个智能跟.踪器,该跟.踪器具有(a)aBLE无线电,(b)GSM或LTE无线电,可以连接到Internet,(c)已安装的区块链客户端。

 类似的跟.踪器也安装在容器上。当两个利益相关者见面并且容器也存在时(例如在A点),利益相关者的设备可以自动将已签名的交易发送到区块链,而无需任何用户输入,并且该过程可以在需要时立即进入下一阶段令牌已交换。需要BLE辐射,以便设备可以在彼此靠近时进行扫描,并且当发生这种情况时,它们可以通过Internet在区块链上进行交易。这只是众多配置中的一种。例如,Filament 为传感器提供了称为“ Taps”的远程无线电。分路器可以形成网状网络,并与之通信通过称为telehash 的协议以分布式和安全的方式彼此交互,并通过公共区块链上的智能合约相互交互。传感器本身不连接到Internet以降低部署成本,但可以连接到提供这种连接的网关节点。

我们确定了当物联网制造商进一步尝试使用区块链并使他们的物联网设备参与区块链网络时可能出现的几个问题。

与正确配置的集中式数据库相比,区块链解决方案通常表现不佳,从而导致较低的事务处理吞吐量和更高的延迟。 在区块链中,每个节点执行相同的任务,不留执行并行任务的空间,即we do not have sharding。并发问题在进行智能合约的区块链中更加明显。

在区块链上维护隐私是一个复杂的问题。回想一下,每个参与设备均通过其公共密钥(或其哈希)进行标识。参与者不需要知道其他人的钥匙;他们只需要交易对手的密钥即可。然而,区块链中的所有交易都是公开进行的。通过分析这些数据,感兴趣的一方可以识别模式并在地址之间建立联系,最后对它们背后的实际身份进行有根据的推断。

如果隐私对于所考虑的应用程序很重要,则有两种缓解(但不能完全消除)此问题的方法:

1)让您的设备对每笔交易使用新密钥,或者对每个交易对手使用不同的密钥来进行模式识别。例如比特币上“分层确定性钱包”上的BIP0032标准,该标准允许以可管理和安全的方式派生无限数量的公钥。“每笔交易的新密钥”方法的问题在于,此新密钥每笔交易都必须传达给感兴趣的交易对手; 一个潜在的麻烦:耗时的过程。

 2)对于私有区块链,如果其他参与者通过跟踪您设备的活动而获得竞争优势,建议不要对所有交易使用相同的区块链。通过仅与需要与之协作的实体建立区块链,并仅将它们用于您要与之协作的流程,从而最大程度地降低设备的曝光率。 与所有区块链相比,这无疑会增加协调成本,但这是增加隐私性的必要折衷方案。

交易隐私(即机密性)也很难获得,因为每个事务的内容都暴露给网络上的每个节点,因此可以对其进行验证。同态加密可能会解决这个问题;ElementsAlpha 实验链允许使用加性同态承诺进行机密交易。零知识证明是一种加密原语,它允许一方在不透露其内容的情况下向另一方证明声明的有效性。但是,这些方法占用大量资源,因此可能会限制它们在资源受限的IoT设备上的适用性。与维护隐私的情况一样,将区块链设置为服务于非常特定的过程并在使用之后将其丢弃可能是可以接受的解决方法。

在区块链网络中部署(或参与)时要考虑的另一个问题是矿机。 回想一下虽然矿工无法伪造交易或重写历史记录,但可以防止将新的有效交易添加到区块链中,从而有效地对其进行审查。针对拜占庭节点的共识机制的容限是有限的;如果密谋的矿工人数超过了该阈值,则交易审查的风险将很严重。需要明智地选择挖掘集的节点,以使它们之间的合谋机会最小化。在私有网络中,应签署法律合同,以便对合谋行为进行适当的惩罚。

智能合约+物联网

智能合约的法律可执行性有限。如果交易实体尽管进行了整个过程的可验证性,但仍对智能合约操作的结果提出异议,会发生什么情况呢?一种增加法律强制执行可能性的方法,包括在智能合约中引用实际的真实世界合约,反之亦然。这是一个称为“双重集成”的过程,其工作方式如下:

(a)部署智能合约查询,将其地址记录在区块链上,并将该地址包括在真实合约中;

(b)哈希相应的真实合约,记录其真实合约哈希摘要,将真实合同存储在安全的空间(可以集中或分散);

(c)将交易发送到在元数据中包含真实合同哈希值的智能合同; 然后,合同将该信息存储在其自己的内部数据库中。发生法律纠纷时,您可以指向智能合约中存储的哈希,然后出示真实世界的合约(由该哈希唯一标识),并证明区块链上的行为与预期结果之间的联系在物理世界中。
与之相应的是通证化资产的期望值问题。 区块链用于交易这些通证,因为它们具有一定的价值。但是,如果您的设备在链上假定拥有令牌的所有权,并且您希望在现实世界中兑换该令牌(例如,收到现金),您如何保证会发生这种情况?

在不支持智能合约的区块链中,双重集成是不可选择的。也许答案是通过类似的方法,该方法哈希真实世界的合同,并将此哈希作为元数据嵌入正在交易的令牌中(即通过哈希进行公证。无论如何,参与者需要事先检查并在交换的资产之后进行评估他们对自己的价值拥有的保证。

完全自治是一把双刃剑:在链上部署智能合约之前,应仔细检查其逻辑;他们可能还希望在代码中包含故障保护机制以防止死胡同。我们可以拥有智能合约(DAO),其总体行为可能会根据用户输入而改变。或者可能有一个功能允许特权用户(可以通过其密钥识别)销毁已部署的合同并将其从区块链的分布式VM中删除。但是,如果没有采取这些规定,那么我们正在处理一个永远不能修改的系统。这本身可能不是一件坏事。但是,如果该合同上的某些功能编写不正确,则无法撤消与该合同的任何交互。作为一个简单的示例,考虑一个智能合约,该合约应该充当链上的一个存放箱。 您可以向其中存入资金(一种加密货币的单位),也可以从中提取资金。将其部署在区块链上的任何人都不会包含任何故障安全措施,例如“自我毁灭”功能,该功能将允许人们撤消合同并收取其资金。如果合同的“提款”功能写得不正确(错误),则存入合同中的任何资金都将被撤消并且无法收回。

最后,区块链网络可能还需要以下机制来补充其分散机制,以免扭曲网络的特征:

•拥有指向资源的指针的DNS服务。例如Blockstack 在比特币网络上提供了这样的服务。用户在比特币区块链上发送经过适当编码的交易,以创建11个具有正确编码功能的智能合约,该功能允许可识别的用户(通过公钥)在合同中存储一些数据或修改Blockstack服务上的记录。区块链的节点会过滤区块链中与有效区块栈交易相对应的数据序列,并使用它们来修改其名称数据库。

•安全的通信和文件交换。每个网络参与者都可以读取区块链中的消息。每当需要专用通信通道时,都应使用诸如telehash 或Whisper 之类的协议。网络的文件共享需求可以通过诸如IPFS等内容寻址的P2P文件系统来解决。

结论

区块链和物联网的结合可能非常强大。区块链为我们提供了弹性,真正分布式的点对点系统,以及以不信任,可审核的方式与对等方进行交互的能力。智能合约使我们能够自动执行复杂的多步骤流程。

物联网生态系统中的设备是与物理世界联系的点。当所有这些结合在一起时,我们将以新颖独特的方式使耗时的工作流程自动化,从而实现密码可验证性,并在此过程中节省大量成本和时间。相信,区块链在物联网领域的持续集成将在多个行业中引起重大变革,带来新的业务模型,并使我们重新考虑如何实施现有系统和流程。
 

零壹智库推出“金融毛细血管系列策划”,通过系列文章、系列视频、系列报告、系列研讨会和专著,系统呈现“金融毛细血管”的新状态、新功能、新价值、新定位。
 

相关文章


用户评论

游客

自律公约

所有评论


资讯排行

  • 48h
  • 7天


专题推荐

more

第四届中国零售金融发展峰会(共15篇)

《陆家嘴》交流会第6期(共14篇)

2022第一届中国数字科技投融资峰会(共43篇)

2019年数字信用与风控年会(共15篇)



耗时 155ms