物联网安全与区块链
即使一个经验丰富的工程师,对于设备的完整性、数据保护和设备管理, DIY安全也不会得到保证,近来物联网设备的应用让这一观点变得痛苦而清晰。2017年底,有超过50亿的蓝牙设备被发现容易受到 BlueBorne 恶意软件的攻击。 打开蓝牙设备, 黑客可以注入恶意代码, 在某些情况下, 可以拦截进出 Windows PC 的网络流量, 并随意修改。
这不是一个孤立的事件, 搜索一下就会发现几十起类似的攻击事件。
由于制造商让物联网设备容易受到默认密码和不必要开放端口的影响, 这些设备可以被用来攻击整个物联网堆栈。 这就是物联网安全攻击如此严重的原因: 犯罪者不仅可以窃取数据和关闭服务, 而且会对设备和用户造成损害。
当然, 设计者可以下载一些开源传输和加密代码, 并将其连接到应用程序中,但这也不可避免地导致了黑客能够找到相关的安全漏洞。
尽管现有的商业安全平台并没有完全消除安全风险, 但它们确实会减少安全风险。 为了实现最佳的安全性, 这些解决方案必须无缝地集成到一个平台中, 而不是在一个设计完工的时候进行加锁。
物联网安全与传统安全
物联网安全和传统的安全措施之间有一些关键的区别。 传统的安全性假定它可以控制对孤立网络的设备和数据的访问, 这两种网络都存在于已定义的物理环境中。
保护这些设备和数据的解决方案在端点上需要相当大的计算能力, 例如防病毒软件、防火墙和入侵检测 / 防御系统(IDS / IPS)。 如果需要安全更新, 那么就很容易下载和安装设备上的最新补丁。
另一方面, 物联网安全更像是荒野。 设备通常生活在相对开放的网络上, 通常是在物理上没有保护的区域。 尤其是对于电池驱动的便携式设备而言,计算能力更加有限,发布软件更新的能力也是如此。 物联网系统的终端可能很少或者根本没有安全软件的空间。
因此, 物联网安全必须在边缘设备进行通信之前进行身份验证, 并保护从终端设备到云端的数据。 这意味着安全必须在设备装载之前被植入, 而不是一旦设备到达工作现场就会启动。
内部的缺点, DIY 安全
为了更好地了解物联网安全的艰巨性, 可以考虑一下典型的系统架构:
设备侧: 由物联网设备、应用程序、数据和连接到网络交换机 / 网关
网络交换机 / 网关: 包括网络交换机 / 网关、路由软件和其他应用程序, 以及与设备端和云的通信
云: 包括服务器基础设施、存储数据、本机应用程序, 也许包括对硬件安全模块(HSMs)的访问, 以及向网络交换机 / 网关或设备的双向通信机制
为了在内部开发物联网安全的解决方案, 解决这些领域的每一个问题, 设计团队必须在应用范围、时间和成本之间进行权衡。 构建此类解决方案的组件通常依赖于内部开发和开源社区, 如 ssl / tls、 OpenSSH、 OpenVAS、 AES、 TrueCrypt 等等。
不幸的是, 在许多情况下, 这些组件是在物联网存在多年前就已经开发出来的。 他们通常不认为物联网超越了防火墙, 而且在许多情况下超越了所有的保护, 因为物联网设备来自野外的电线杆和其他结构等等。 这为黑客攻击创造了许多不可预见的机会(图1)。
图1. SSL的注多漏洞。 来源:Centri Technology
对于由多个设备、服务和软件组成的物联网系统选择一个安全解决方案不是一件容易的事。 首先, 它可能导致一个缺乏集成的庞大安全解决方案组合。 每个点必须单独管理, 这增加了工程支持的负担。
单点的解决方案也难以彼此共享数据, 导致对安全性的看法分散, 威胁检测受到限制。 增加的复杂性还会产生矛盾, 因为新的应用程序和服务必须与一系列专业技术兼容, 每一种都有自己的 API、策略和需求。
错误的安全选择对敏捷性和上市时间的影响可能很大。 创建紧密集成的物联网安全解决方案可能以年为单位,而不是以普通的工作时间来衡量的。
综合安全办法
Centri物联网高级安全平台的目标是设计者从一开始就希望整合安全(图2)。 该平台允许开发者将基于标准的加密和高级密码集成到物联网解决方案堆栈中, 包括从芯片到云的安全通信, 数据处理的保护, 以及数据取证的管理控制台。
安全通信端点: 允许开发人员在物联网应用程序中使用轻量级的安全通信库或设备软件堆栈中的代理客户端在物联网应用程序中加入设备端安全性。 它与安全通信服务一起使用, 以确保数据在云中移动;
数据保护工具: 轻量级的数据保护库可以从物联网应用程序中调用, 使用一个 API 来加密数据, 然后才能进入设备或者是存储
安全通信服务: 这个工具运行在现有的应用服务器上, 为云基础设施提供安全性
图2 Centri IoTAS 提供端到端的保护。 来源:Centri Technology
特别地, CENTRI 安全通信库和安全通信服务有助于促进物联网设备和云基础设施之间的即时加密。 这减少了复杂证书管理方案的复杂性, 并消除了使用第三方证书授权(CA)解决方案的必要性。 该系统还采用一种无保险库密钥管理技术, 在数据中嵌入加密的密钥信息。 因此, 不需要 HSMs 或第三方密钥存储机制。
智能缓存和数据压缩技术有助于将安全开销降低到只使用1% CPU , 使平台能够适合资源有限的物联网设备。 Centri IoTAS 的每个组件允许有经验的开发人员在一天内将这些技术集成到应用程序代码中。
许多第三方商业安全解决方案比 DIY 替代品提供了更大的保护, 在设计的后期阶段, DIY也会增加大量的成本和管理开销。 一个更好的选择是尽早在端和云端安装安全解决方案。 这既降低了设备攻击和数据泄露的风险, 也减少了进入市场的时间。
既然物联网安全是个棘手的问题, 仅保证个人设备的安全是不够的, 还必须保护设备在现场使用嵌入式和 IT 系统的连接。鉴于物联网安全的内嵌性,使得区块链在该领域的应用成为可能,但是这种技术很难在已有系统中实现。 为了解决这个问题, 像 SPARKL 这样的公司已经创建了解决方案, 即便是该网络包含不可信的设备,仍允许新的区块链设备与现有的端到端安全设备进行交互操作。
从比特币到 区块链
了解区块链往往是从比特币开始的, 比特币是一种数字密码货币, 它依赖于块环链来维护以前的交易记录。区块链这个术语在狭义和广义上都被使用。 狭义地说, 它指的是比特币用于创建、维护和保护自己交易记录的具体实现。
更广泛地说, 区块链指的是利用分布式分类账来确保和维护任何利益攸关方或授权个人均可使用的交易分类账。 有时"相互分配的分类账"(MDL)与区块链互换使用, 但这两个术语并不完全相同。 每个区块链都是一个分布的分类账, 也就是说, 每个区块链链都是一个独立的、透明的、永久的数据库, 可以同时存在于多个地点, 但并不是所有的 MDL都是区块链。
在最简单的层面上, 区块链是一个持续的交易分类账。 每组事务(称为块)都是安全加密的, 其与以前事务的链接都被验证。
想象一下一连串的块, 每一个都链接到前一个区块, 这个"区块链"的名字就变得清晰起来: 它是对事务记录如何存储和验证的文字描述, 用时间戳信息和用密码加密的方式将数据记录到每个块中。 因为每个新块的哈希部分是基于其前面所有块的哈希, 所以只有在大多数参与者同意的情况下, 才允许修改或修改区块链, 而且只有在大多数参与者同意的情况下, 才允许修改记录(如果允许的话)。
区块链的早期物联网应用
英特尔在一年前宣布了自己的块环链平台, 已经建立了一些示范, 说明区块链和物联网如何在海鲜通过供应链中用于跟踪的(图1)。
图3 使用区块链技术监测从捕获到最终购买的海鲜
供应商或买方通过其销售网络对产品进行监测, 大大提高了其快速、明确地确定任何受污染食物来源的能力, 或查明在任何特定时间点谁拥有产品的保管权。 如果出现产品召回或污染问题, 以块环链为基础的分类账将使公司能够确定哪些产品是从哪些商店出售的, 并且可以接触到购买这些产品的客户。
区块链技术也被评估为一种确保物联网安全的方法, 通过赋予实体产品一个独特的身份, 以确保每个特定设备的真实性。 目前, 物联网设备是由集中的服务器控制的, 这使得它们容易受到攻击。 区块链技术的分散性可以减轻目前物联网设备存在的风险, 并有助于确保仍在开发中的产品。
物联网区块链的部署问题
块环链技术有可能解决物联网世界中的安全问题, 但只能在正确实施的情况下才能成功。 开发者必须了解客户的需求, 客户之前为满足这些需求而采取了哪些解决方案, 以前的解决方案成功或失败的程度, 以及在任何给定环境中的各种利益相关者。
例如, 当部署一个物联网传感器网络以监测仓库温度时, 谁需要访问该日志以确保环境保持在适当的温度? 如果超过了温度阈值, 谁应该接收警报, 物联网解决方案是否能够调整房间的温度, 或者应该限于发出警告?
区块链技术并不是灵丹妙药,如果这个问题没有得到很好的阐述和限制, 它不能自动地提供一个问题的解决方案。
一些遗留的嵌入式系统需要能够与基于区块链的物联网产品进行交互, 而另一些系统可能需要升级或更换。 开发者将不得不应对从一个集中的服务器基础设施转变为一个分布式模型, 这种模型能够处理来自几十个, 几百个, 甚至上千个设备的接入。 如果要使这些实现能够成功, 就需要灵活且可伸缩的解决方案。
看一下现有的参考实现, SPARKL 以其独特的能力, 将遗留系统与人工智能、区块链支持的策略和复杂的控制系统联系了起来。
什么是 SPARKL?
SPARKL由两个关键组件组成: 测序引擎和 Clear Box 配置系统。 Clear Box 被设计成可以同时与多个系统交互操作, 并提供了一个单一的访问点, 开发人员需要系统工作的所有信息, 即使这些系统通常不相互通信。
Clear Box 具有灵活性, 可以同时支持多个区块链实现, 也可以调用第三方服务或应用程序(图2)。 它还允许对许可设置进行细粒度的设置, 以确保只有被清除的用户才能访问某些数据集。
图4 如何能够与外部系统和区块链节点啮合
这种灵活性解决了在物联网设备和区块链技术在部署时的一个主要问题, 减少物联网与遗留系统结合起来的难度。 试图实现一个全新的控制系统, 其中包含一套统一的硬件和软件解决方案, 这些解决方案能够解决每一个单一用例, Clear Box 和 SPARKL 测序引擎可以通过原有的解决方案进行通信, 从这些多重源收集数据, 并执行终端用户定义的任何指令。 Clear Box 是定义策略或行为的解决方案, SPARKL 排序引擎则在整个系统中驱动这些策略和行为。
Sparkl 已经发布了一个PoV , 展示了区块链链技术及其自身服务如何可以用来为再保险市场建立智能合约。 Sparkl 与多个分布式分类账项目兼容, 包括 BigchainDB、 HyperLedger 和英特尔 Sawtooth Lake, 后者用于再保险编制(图3)。
图5 SPARKL 的智能合约体系建立在 Sawtooth Lake上, 旨在满足所有利益相关者在整个过程中的需求
Sawtooth Lake 也是一个模块化分布式平台, 旨在满足多样性和可伸缩性, 支持广泛的共识模型。 在这方面, 协商一致指的是在相互不信任的制度之间达成协议的进程。目标是通过透明的方式记录交易,制定一套可以解释参与者之间不同的信任关系、遗留系统和非遗留系统之间的接口、支持全面的自动化工作流程以及以所有各方都能看到的方式。 为了有效发挥作用, 必须能够评估复杂的条件, 应用于任何政策限制, 计算和处理溢价支付, 并使交易分类账与上述每一个步骤进行适当的更新。
这个过程的结果不是在基础设施上贴一个创可贴,如果执行得当, SPARKL 可以用来连接遗留系统和前沿系统, 创建新的基于块环链的智能合约和策略, 使合同执行能够自动化, 同时为所有利益相关这提供保存记录和监管所需的文件。
原文参考:
https://www.insight.tech/industrial/iot-security-must-be-baked-in-not-bolted-on
https://www.insight.tech/network/beyond-bitcoin-how-blockchains-secure-the-iot