如何通过抽象思维解决物联网面临的挑战?

猿团 | 2016-04-08 10:31:08

物联网(IoT)是高新技术产业增长最快的行业之一,其发展方式正引发严重关切︰在发展物联网解决方案时,有太多掺杂复杂性、移动性、多样性和竞争性的趋势和技术必须进行管理。然而,当厂家为了将新产品推向市场时,这些问题往往被忽视,并且,太多的专用代码被用于物联网产品。

这样操作导致的结果是,卖给消费者的产品中含有严重的安全漏洞,从而不能适应和克服在未来的几个月或几年由环境和生态系统带来的变化。

现在有一个切实可行的办法可以帮助解决这些问题,较复杂的物联网通过使用"关注点分离"和“抽象”的概念,创建可以处理安全问题、关注不同层次的多样性,同时也能适用不断变化的灵活解决方案。 

抽象如何帮助处理复杂性

在重要著作《面向对象分析和设计的应用程序》一书中,软件工程先驱Grady Booch解释了如何在软件开发中通过使用技术,如分解(将复杂问题分解成小块)和抽象(忽略事情无关紧要的细节,处理通用接口模型)处理问题的复杂性,这些概念已经成功在核心编程中应用很多年。这个概念也可以成为创建成功的、可扩展的物联网解决方案的基础。

通过隔离物联网功能和基础设施,我们可以帮助开发人员避免重新发明每一件产品的轮子,而是专注于开发主要功能。同时确保正确处理关键领域,如安全方面,这里有一些实际的例子讲述这个概念如何工作。

6ca2bdb483d79b7cafd91288e24303fd.png

软件结构层抽象

面向对象编程(OOP)最小化“代表性的差距”,允许程序员创建软件组件实现实际对象与问题域中概念的映射。这个想法很容易在软件领域实现,但当你处理物联网系统中分布不同的网络设备硬件和软件时将变得更加棘手。

开放分布式对象框架(OpenDOF)是一种适应面向对象的分布式系统。程序员重点开发物联网在抽象层面上代表设备的解决方案,而该框架处理通信机制和安全。从逻辑和功能上分离网络连接和物联网安全,OpenDOF允许以上两个方面发展和变化的同时不干涉到对方。

“应用程序的程序员应该不需要知道或关心实际提供功能的地方。”OpenDOF项目的主席Bryant Eastham说。"良好的抽象层,安全地分离关注点,是任何物联网API的关键"

作为核心,OpenDOF是一组库,它允许开发人员创建接口和对象模块代表实际设备,允许这些设备的注册实例通过使用身份验证服务器进行访问控制和发现。对象可以独立存在和相互作用,随着时间的推移发生变化而不影响实现细节。

抽象还通过限制有限的一组公共联系人进行设备通信,防止设备接触彼此的私有部分,从而解决安全问题。

OpenDOF的灵活性使得它可以广泛的部署在物联网设备、编程语言和网络传输上。Eastham解释说,最小的安全框架“没有操作系统、没有内存管理、并只有不到64 kb的代码。”它还可以动态地适应不同的网络设置,包括“点对点部署、本地网关部署、云部署及无缝的应用集成”Eastham补充道。

科技巨头松下已经在多个项目采用OpenDOF,并发布了云服务工具包,该工具包是是一套适配OpenDOF的大规模云解决方案。

设备标识层抽象

随着物联网生态系统潜在连接数千人和数以百万计的设备,在防止恶意的中间人攻击、密钥泄露和身份欺骗攻击方面,设备标识和身份验证变得非常关键。然而,目前的物联网世界包括的设备功能差异巨大,在执行不同的密钥交换和公钥基础结构(PKI)标准时面对一些挑战。

GlobalSign公司提供可信的身份验证和安全解决方案,通过提供设备标识和认证作为一个基于云的服务解决以上问题。这使物联网开发人员专注于自己的核心竞争力,并将安全功能集成到他们的物联网系统而不用在意设备的底层功能。

"身份是任何互联网环境下,在建立信任的关键。在物联网发展开始腾飞,并开始一些实际的部署阶段,身份验证只会变得更为重要。"GlobalSign的物联网标识解决方案副总裁Lancen LaChance说。

GlobalSign PKI解决方案满足制造商的各种需要,这些需求基于处理速度、设备种类和物联网平台的容量,并且可以管理数以百万计的设备身份。GlobalSign与硬件制造商英飞凌生产兼容它云服务的hsm(硬件安全模块),提供安全密钥的安全存储,在设备端实现安全部署和验证。

有经验的网络和设备安全的高科技公司可以很容易地提供可附加安全模块并进行安全服务交付,这为物联网开发人员提供并行提高生产与安全的机会。

LaChance表示,当涉及到物联网的安全领域,它的实现应站在“巨人的肩膀上”,并尽可能多地利用经验证、部署最广泛的方案。固然设备小型化影响解决方案的设计,LaChance强调即便在许多采用选择算法和关键尺寸的约束环境中也可以部署PKI

设备通信层抽象

物联网是通信密集型系统。每秒钟成千上百万信息在设备间进行交换,这些信息还被送到服务器进行存储、分析,并生成报告。这些信息在到达目的地之前通过多种协议进行传输,而这些协议并没有真正的标准,这使得开发环境更具挑战性。

此外,物联网开发人员通常来自于嵌入式系统编程领域,很少或没有处理连接系统和大型数据库的经验,因此他们必须创建临时解决方案,这些方案很难发展,无法适应变化。这将导致严重的安全问题。

“许多的这类挑战可以通过抽象的云服务解决,”Kandy的云计算副总裁兼移动策略和生态系统主管Natasha Tamaskar解释说,通信平台作为服务(CPaaS)的解决方案提供安全的传输,存储、实现设备和云之间的数据共享。该平台可以通过API调用和SDK扩展为应用范围广泛的产品。一个易于使用的、安全的设备通信API可以为物联网开发人员减少大量的麻烦,并帮助他们专注于实现产品的功能。

从安全的角度来看,依靠专业的云平台也很重要。Tamaskar解释道。"专用API架构也加强自身的安全“。她说。她还详细说明了Kandy通过应用程序隔离加强物联网通信安全,简化纯API访问数据、使用设备与云之间端到端加密防止中间人攻击的解决方案。其潜在角色和身份验证机制也控制用户访问API调用。

Kandy已经发现许多在物联网的用例,包括可穿戴设备、医疗产品、病人诊断和控制系统领域。

平台层抽象

这是实现物联网发展挑战的最全面方法,将通信、安全和存储抽象成灵活的组件,可以发展和改变现有业务而不影响正在运行软件的核心逻辑。将物联网整体放入一个可靠、统一的平台,将允许开发人员更好关注逻辑和功能的实现。

Joe Britt是科技创业公司Afero的联合创始人兼首席执行官,他解释他公司的旗舰平台实现了这一目标。“在物联网领域,设备的能力有巨大的动态范围,”Britt说。"在低端,我们拥有具有非常小的微控制器和有限存储能力的设备;在高端,我们拥有大量的计算资源和复杂软件。

Afero结合了硬件、软件、开发工具和云服务,提供端到端的物联网设备平台。该平台已经被精心设计和制作,以透明地处理包含许多多样性的物联网信息。"通过这套平台,有望实现可靠和安全的连接。Afero旨在帮助新产品开发,无论该开发是以前的遗留设计或预留设计。“Britt说。

Afero的创建也关注安全领域,这也是物联网最关注的问题之一。使用直接连接是攻击者未经授权访问设备的内存空间和数据一个主要渠道。而Afero设备间通过Afero抽象的云服务进行通讯。

Afero概要文件编辑器(APE)提供了一个直观的用户界面,使开发者可以注册设备,定义属性,并将这些属性开发给外部客户。

“开发人员仅专注于展示云API和用户界面,”Britt解释说。“剩下的工作由Afero平台完成。”这些工作通过寻找云路径、建立安全的通信、通过加密协议的组合来实现。Afero还配备预防模式识别和重放攻击的功能。这两种类型的攻击不需要解密密钥,并且在物联网系统长期运行的会话中非常普遍。

Afero已经被医疗IT供应商Infocom与玩具制造商巨头BANDAI NAMCO工作室采用。

终极构想

抽象和关注点分离已经一次又一次地证明了自己在处理和分解复杂性、矛盾非常大的分布式系统方面的价值。这些概念在不断变化的物联网产业都是非常明显和重要的,他们的应用可以帮助物联网顺利通过其日益增长的阶段。

  • 城市合伙人