基于MCU、MPU或FPGA的嵌入式M2M系统安全解决方案
|
针对基于MCU、MPU或FPGA的嵌入式无线或有线M2M系统,特别是在当今普遍联网但易受攻击的世界中,良好的安全性要求采取以下这些全部使用了标准加密算法的措施: 使用TLS的网络通信安全 使用IPSec的虚拟专用网安全(VPN) 使用SSH的安全登录和系统交互 使用SFTP的安全文件传送 安全的电子邮件——加密的电子邮件和安全的邮件服务器链路 安全的网站服务器——https 安全的管理——SNMP v3 使用加密和检查过的映像进行安全启动 本文简要讨论了上述各项安全措施应用到M2M的情况以及总的系统级考虑因素。M2M系统要求高度的安全性来保护信息和系统。没有这种无缝的集成和测试,就会存在安全漏洞,系统很容易受到攻击,并可能发生可怕的后果。 使用TLS进行网络通信 在M2M系统中,不管是哪种无线类型,所有无线链路都会使用某种加密技术来保护无线传输的数据。在一个节点内或两个有线节点之间,负荷数据以明码的方式存在于有线/无线混合系统中。一种方法是使用传输层安全(TLS)协议。TLS作为网络中两个节点之间的端到端加密技术,可确保数据不管走哪条路径总是安全的。 如图1所示,TLS很容易配置和使用,正是这个原因,TLS是人们非常青睐的一种通信安全方法。TLS的典型实现遵照的是针对应用程序可移植性开发的事实上的openSSL接口标准。这种应用程序编程接口(API)是套接字(socket)接口中的表示层,可为应用程序提供安全性。
图1:TLS可保证端到端通信的安全。 在套接字通信之上提供TLS层可以为安全应用提供安全的套接字通信,而直接使用套接字的通信是不安全的,因为所有数据都是明码传输。 使用IPSec协议的虚拟专用网(VPN) 许多时候,网络中两个节点之间的所有通信都要求是安全的。在这种情况下,可以建立虚拟专用网(VPN)(图2)。这种协议深入TCP/IP实现内部,对两个节点间传输的所有数据包进行加密。因为IPSec是作为网络层的一部分,因此节点之间的所有套接字调用都会自动加密。
图2:在两个节点之间使用VPN和IPSec可以确保节点之间所有通信业务的安全。 有人可能会问,既然如此,为什么我们还要使用其它方法,用这一种方法不就可以了吗?原因有两个。第一个原因很好理解:VPN的建立相当麻烦,会遇到很多问题。正是这个原因使得它的使用面不如想像的那么广。 第二个原因是最好的安全性需要建立在各层中。通过提供各个安全层,被攻破的难度就要大得多。这与打开多重锁着的门才能进入金库是一个道理——每个层都增加了入侵难度。基于这个理由,最好采用更多的安全措施,而不仅是VPN. 安全壳 为了登录并在远程系统上工作,小型系统上经常使用telnet.现在通过增加额外的闪存空间,你可以运行安全壳(SSH)(图3)。SSH就像是一种安全的telnet,但并不是运行在TLS之上的telnet.SSH有它自己的协议。它通过在MCU上运行的SSH服务器提供安全壳访问。
|









