提升物联网安全的私有区块链配置
在物联网(IoT)的快速发展中,安全问题愈发凸显。本文将介绍一种基于区块链的智能终端设备策略,以提升物联网的安全性。
区块链赋能的智能终端设备策略
该策略通过将物联网设备配置为完整的区块链节点来实现。这些节点能够下载并验证所有传入的交易块,并执行对存储在区块链上的智能合约的调用。这种区块链部署方式可以仅由物联网设备组成,无需额外的网关或后端云服务。不过,添加网关和云后端可以扩展网络并增强安全性。
优势
- 容错性 :通过在更多提交区块链交易的设备上部署区块链框架,区块链得到更频繁的复制,从而具有更高的容错性。此外,由于物联网设备的更多数据和行为存储并实现在区块链本身,处理物联网设备故障变得更加容易,只需在设备上启动区块链客户端即可。
- 可信的物联网设备行为 :该策略最大的改进在于能够利用区块链框架的智能合约机制,在物联网设备上运行可信的代码。这与之前讨论的可信业务逻辑不同,它不一定是高级代码,也无需整个网络进行验证。例如,读取传感器设备、建立网络连接、安装软件更新等操作都可以通过区块链框架验证代码是否被修改,以及行为代码的结果是否可复制。
局限性
- 网络规模受限 :与之前讨论的区块链赋能网关策略一样,所有安全和容错优势在私有区块链中都受到网络规模的限制。
- 资源要求高 :该策略仅适用于具有大量内存和处理能力的物联网设备,因为目前大多数功能齐全的区块链节点客户端都需要大量资源。
- 技术实现困难 :在大多数当前的区块链框架中,实现可信设备行为的技术执行较为困难,因为它需要一个足够灵活的智能合约编程模型来支持物联网设备的低级操作。
- 数据仍不可完全信任 :虽然利用区块链框架控制物联网设备的行为可以提高对提交数据的信心,但这种方法仍然不完全可靠。行为定义的智能合约仍然依赖于底层区块链执行环境、设备操作系统和硬件的正确执行,这些组件可能会被攻击者利用来篡改提交到区块链的数据。
私有超级账本区块链赋能的智能传感器设备
为了说明区块链赋能智能终端设备策略的优缺点,我们将讨论其在供应链温度监测解决方案的区块链原型中的应用。
原型背景
供应链是区块链创新的关键领域,区块链的不可变、多利益相关方数据库为构建从制造商到仓库再到最终用户的产品跟踪系统提供了理想平台。在食品和药品供应链中,物联网设备起着关键作用,它们提供要添加到区块链的数据。然而,在供应链的某些环节,如运输过程中,由于连接限制或对提交到网关的数据有效性的担忧,可能不希望使用区块链赋能的网关。
原型实现
我们研究了一个在运输新鲜食品的卡车中使用的温度传感物联网设备原型网络,这些设备再次实现为树莓派设备。该原型应用了区块链赋能智能终端设备策略,直接在传感器设备之间托管区块链,每个设备都是一个功能齐全的超级账本(Hyperledger Fabric)节点。
超级账本是一个开源的区块链框架,主要用于在多个组织之间部署可信数据库。与以太坊不同,超级账本不采用工作量证明(PoW)作为共识协议,而是支持实用拜占庭容错(PBFT)等不需要资源密集型挖矿计算的共识协议。
我们选择将超级账本移植到轻量级物联网设备上,因为它是唯一经过广泛测试和详细记录的区块链框架,为智能合约提供了灵活且强大的编程模型。
传统的智能合约在计算和功能上受到限制,以确保所有全节点都能执行和验证,同时简化公共区块链上智能合约计算成本的确定。而超级账本的智能合约(称为链码)是隔离的 Docker 容器,支持 Java 和 Golang 等全功能编程语言,允许开发人员使用与非区块链代码相同的库和框架。
我们的原型利用超级账本的成员服务创建了两个组织:Org1 和 Org2。Org1 代表供应链中的权威组织,如接收食品的超市;Org2 代表协助监测供应链温度的低级别组织。
每个组织的设备运行特定于组织的智能合约。我们通过使用超级账本的背书策略来强制执行这种隔离,该策略将智能合约交易的有效性限制为那些得到相应组织批准的交易。
Org2 的设备运行一个名为 DemoContract 的智能合约,提供一个可调用的函数 putSensor。该函数作为连接的温度传感器的区块链集成设备驱动程序,读取传感器数据并将其写入区块链。
为了支持这种硬件集成的智能合约功能,我们扩展了超级账本,创建了具有对树莓派 GPIO 引脚读写访问权限的自定义智能合约容器。这是通过将 Linux sysfs 虚拟文件接口挂载到容器中实现的,并在容器中集成了额外的 Golang 包以实现与 GPIO 引脚的高级交互。
Org1 的设备运行一个名为 TopLevel 的智能合约,调用 Org2 设备上的 putSensor 函数,并将结果与预期值进行比较。第三方(如 Org1 所代表的超市的审计员)可以通过区块链交易调用 Org1 设备上的 TopLevel 智能合约,以审计货物的食品安全。
以下是一个简单的 mermaid 流程图,展示了这个过程:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(第三方发起审计交易):::process --> B(Org1 调用 TopLevel 合约):::process
B --> C(TopLevel 合约调用 Org2 的 putSensor 函数):::process
C --> D(Org2 读取传感器数据):::process
D --> E(将数据写入区块链):::process
E --> F(Org1 比较数据):::process
F --> G(审计完成):::process
评估
这个多组织温度传感原型利用区块链框架获得了所有事件(在这种情况下是温度读数)的安全、可信日志,通过超级账本的成员服务实现了物联网设备的安全注册,并为供应链的某些逻辑提供了可信的业务逻辑。
优势体现
- 容错性 :在这个供应链原型中,传感器数据在 Org1 和 Org2 的所有设备之间复制。即使多个物联网设备丢失,数据也不会丢失,并且设备行为在区块链级别设置,只需将设备连接到私有区块链网络即可进行配置。
- 可信的物联网设备行为 :通过 DemoContract 智能合约,我们确保了从温度传感器读取值的可信方式。由于该代码的精确副本存储在区块链上,任何修改或伪造运行传感器读取代码的容器的尝试都将无法产生区块链系统接受的交易。
存在问题
- 数据仍有风险 :即使在这个原型中,存储在区块链上的温度值也并非完全可信。在 Org2 设备上运行的 DemoContract 智能合约中获取正确的温度传感器值依赖于未被篡改的 Linux 操作系统及其 sysfs 接口,以及 sysfs 虚拟文件与运行智能合约的容器之间的未被篡改的映射。温度传感器和物联网设备仍然容易受到各种基于硬件的篡改。
- 功能不完善 :虽然超级账本提供了支持这种行为的功能,但在我们用于构建这个原型的版本(1.0)中,该功能仍然不可靠且未完成。
- 资源消耗大 :将物联网设备配置为功能齐全的区块链节点需要大量的内存和计算资源。在我们的实验中,在树莓派设备上运行超级账本的容器架构时,每个智能合约的最大内存配置为 100MB,当达到六个容器(一个是超级账本全区块链节点微服务,另外五个是智能合约)时,树莓派的 CPU 性能达到了最大值。不过,在我们的实验中,这个五个同时运行智能合约的限制并没有造成太大影响。
相关工作
目前,大多数关于区块链的研究主要集中在揭示和改善区块链的隐私和安全限制。与我们在物联网部署中研究区块链框架的努力相关的工作包括:
-
IBM 的 ADEPT 项目
:利用区块链作为物联网设备网络,但仅考虑以太坊区块链框架,未探索将物联网终端设备作为完全有能力的区块链对等节点的应用,并且相关出版物缺乏该方案安全优势的具体细节。
-
Zhang 等人的研究
:设计了用于认证碳排放权、保护物理系统、交易电力资源和多能源系统协调等场景的区块链物联网架构,但未实现任何这些场景。
-
Daza 等人的提议
:将区块链作为在物联网网络中发现设备的更好方式。
-
Samaniego 和 Deters 的研究
:探索了从 IBM Bluemix 云平台提供区块链服务与在 Arduino 物联网设备上本地托管区块链的网络延迟相关问题。
-
Huh 等人的工作
:在树莓派设备网络上采用以太坊来管理这些设备使用的加密密钥,提供了智能合约的示例,但未探索其方案的局限性。
-
Dorri 等人的研究
:将区块链作为智能家居设备网络,有一个中央矿工来处理传入和传出的交易,但其实验评估基于模拟结果,而非实际功能原型。
此外,一些初创公司正在探索多组织区块链供应链解决方案,如 VeChain 和 Waltonchain。VeChain 是一个公共区块链,旨在将其标识符集成到众多物联网标签中,以实现更简单的供应链产品跟踪,并正在试验使用权威证明作为共识机制。Waltonchain 也是一个公共区块链,旨在跟踪整个供应链中的产品,其关键区别在于一个直接与区块链集成的自定义 RFID 集成电路。
结论
我们介绍了两种在物联网设备网络上部署私有区块链的不同配置策略。区块链赋能网关策略为物联网设备提供区块链功能,而无需物联网设备本身成为功能齐全的区块链客户端,而是通过引入网关来实现与区块链的交互。这种连接使开发人员能够安全地注册物联网设备、将数据存储在可信日志中,并以透明和网络验证的方式执行高级业务逻辑。
相比之下,区块链赋能智能终端设备策略将物联网设备配置为完全有能力的区块链节点,为区块链网络提供了更高的容错性,并实现了重要的安全特性,如在智能合约中直接进行可信的传感器数据收集。
通过区块链访问控制系统和区块链改进的供应链温度监测系统的原型实现,我们分别展示了这两种策略的应用。在实际应用中,应根据物联网设备的资源情况、网络规模和安全需求等因素选择合适的策略。未来,随着区块链技术的不断发展和物联网设备性能的提升,这些策略有望在更多领域得到应用和优化。
提升物联网安全的私有区块链配置
两种策略对比分析
为了更清晰地理解区块链赋能网关策略和区块链赋能智能终端设备策略,我们可以通过以下表格进行对比:
|策略|区块链赋能网关策略|区块链赋能智能终端设备策略|
| ---- | ---- | ---- |
|设备要求|物联网设备无需成为全功能区块链客户端,依赖网关|物联网设备需具备大量内存和处理能力,作为全功能区块链节点|
|网络结构|需引入网关连接物联网设备与区块链|可仅由物联网设备组成,网关和云后端可选|
|安全优势|可安全注册设备、存储可信日志、执行高级业务逻辑|容错性更高,能实现可信的物联网设备行为|
|局限性|网络规模受限影响安全和容错优势|网络规模受限,资源要求高,技术实现困难,数据仍不完全可信|
从表格中可以看出,两种策略各有优劣。区块链赋能网关策略相对简单,对物联网设备的要求较低,但在容错性和设备行为可信性方面相对较弱。而区块链赋能智能终端设备策略虽然提供了更好的安全特性,但对设备资源和技术实现要求较高。
策略选择建议
在实际应用中,选择合适的策略需要综合考虑多个因素。以下是一个简单的决策流程图:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(物联网设备资源情况):::process -->|资源有限| B(选择区块链赋能网关策略):::process
A -->|资源充足| C(考虑网络规模):::process
C -->|网络规模小| D(评估安全需求):::process
C -->|网络规模大| B
D -->|对设备行为可信性要求低| B
D -->|对设备行为可信性要求高| E(选择区块链赋能智能终端设备策略):::process
具体来说:
-
物联网设备资源情况
:如果物联网设备的内存和处理能力有限,无法运行全功能的区块链节点客户端,那么区块链赋能网关策略是更合适的选择。例如,一些小型的传感器设备,可能没有足够的资源来承担区块链节点的任务。
-
网络规模
:在私有区块链中,网络规模会限制安全和容错优势。如果网络规模较小,区块链赋能智能终端设备策略可能更能发挥其优势;而如果网络规模较大,区块链赋能网关策略可能更易于管理和扩展。
-
安全需求
:如果对物联网设备的行为可信性有较高要求,如需要确保传感器数据的真实性和完整性,那么区块链赋能智能终端设备策略可以提供更好的保障。例如,在食品和药品供应链中,对温度传感器数据的准确性要求较高,采用该策略可以有效防止数据篡改。
未来展望
随着区块链技术的不断发展和物联网设备性能的提升,这两种策略有望在更多领域得到应用和优化。
- 技术改进 :未来的区块链框架可能会更加轻量级和高效,降低对物联网设备资源的要求。例如,开发出专门为物联网设备设计的区块链节点客户端,减少内存和计算资源的消耗。同时,智能合约编程模型也会更加灵活,能够更好地支持物联网设备的低级操作,使得实现可信的物联网设备行为更加容易。
- 应用拓展 :除了供应链管理,区块链赋能的物联网安全策略还可以应用于更多领域,如智能家居、智能交通、工业自动化等。在智能家居中,通过区块链技术可以实现设备之间的可信交互,提高家庭的安全性和智能化程度。在智能交通中,可以利用区块链记录车辆的行驶数据和交易信息,确保交通系统的公平和透明。
- 标准制定 :随着区块链在物联网中的应用越来越广泛,制定相关的标准和规范变得尤为重要。标准的制定可以促进不同区块链平台和物联网设备之间的互操作性,提高整个行业的发展效率。例如,制定统一的智能合约接口标准,使得不同的物联网设备和区块链平台能够更好地协同工作。
总结
本文详细介绍了两种在物联网设备网络上部署私有区块链的配置策略:区块链赋能网关策略和区块链赋能智能终端设备策略。通过对它们的原理、优势、局限性的分析,以及对比和选择建议,我们可以根据实际情况选择合适的策略来提升物联网的安全性。
区块链赋能网关策略适用于资源有限的物联网设备,能够在一定程度上实现安全注册、数据存储和业务逻辑执行。而区块链赋能智能终端设备策略则为物联网设备提供了更高的容错性和可信的设备行为,更适合对安全要求较高的场景。
未来,随着技术的进步和应用的拓展,这两种策略将在物联网领域发挥更大的作用,为构建更加安全、可信的物联网环境提供有力支持。我们期待看到更多创新的应用和解决方案,推动物联网和区块链技术的融合发展。
123



被折叠的 条评论
为什么被折叠?



