嵌入式系统的安全与实现
参考文献: [1]瓦 伊 德 著 .嵌 入 式 系 统 设 计 .北 航 大 学 出 版 社 ,2004.9. [2]DALLAS 著.DALLAS MAXIM Engineering Journal.NO.59.2007.3. [3]DALLAS 著.DS5250 High- Speed Secure Microcontroller.2007.3.
217
文献标识码: A
文章编号: 1672- 7894( 2007) 09- 217- 01
在嵌入式系统的开发过程中, 安全性问题一般最后才被考虑。 嵌入系统的设计人员在设计时往往以产品的快速上市为目标, 而将 安全性问题留待最后或将来的版本升级时解决。这也不无道理, 因 为高级别的安全性会增加产品的成本, 并延迟上市时间。
2007.9 ( 中旬刊)
嵌入式红辉
(湖北交通职业技术学院(西区) 湖北·武汉 430050)
摘 要 本文讨论了容易被人们忽视的嵌入式系统的安全问题, 并给出了一种简单的实现方法, 可提高嵌入式系统的安 全等级。
关键词 嵌入式系统 密钥 封装 安全
中图分类号: G201
储 器)密 封 在 某 种 足 够 牢 靠 的 材 料 内 , 可 能 需 要 将 印 制 板 上 的 一 块 区 域 用 塑 料 填 充 或 用 金 属 罩 覆 盖 。感 应 线 装 置 可 以 用 来 感 测 高 温 或 外壳的移动。
二 、嵌 入 式 系 统 的 实 现 由于目前很多文章对加密算法和密钥管理程序设计讨论颇多, 在此就不再讨论它的实现问题, 而将重点放在后两个问题上。 要解决密钥及 IC 引线和塑料封装的安全, 最 好 的 方 法 是 在 IC 制 造 时 就 予 以 考 虑 和 实 现 。 这 有 利 于 降 低 设 计 人 员 的 设 计 强 度 、提 高安全性和降低制造难度和成本。如: Dallas 公司生产的 DS5250 芯 片。它可以协助设计者实现高度安全的系统。 DS5250 芯片介绍: 1.使用 NV SR AM 存储敏感信息和密钥 它利用一个很小的廉价电池供电, 就可以使关键数据保持长达 数年时间。一旦芯片的入侵侦测电路被触发, 关键数据也极易被瞬 间擦除。 2. 电 池 供 电 的 入 侵 侦 测 DS5250 有多个电池供电的入侵传感器。无需微控制器处于活 动状态即可对入侵事件作出反应。利用其片上温度和电压传感器, DS5250 可以侦测故障注入攻击手段。当工作电压或温度超出微控 制器工作范围, DS5250 立即清除其内部 NV SRAM。这种机制消除 了攻击者获取任何密钥数据的机会。 3. 塑 料 封 装 入 侵 侦 测 为 阻 止 对 NV SRAM 单 元 的 微 探 针 探 测 , DS5250 的 硅 片 顶 层 设置了一层超细网格。如果网格线被短路, DS5250 即触发自毁, 清 除密钥数据。DS5250 还提供了允许外电路触发自毁的输入。这样系 统可以实现多层保护。 4. 加 密 的 代 码 空 间 最 初 装 载 系 统 时 , DS5250 使 用 一 个 随 机 生 成 的 3DES 密 钥 将 指令代码加密后再存储到外部存储器中。这可避免攻击者向 DS5250 加入恶意代码并运行之, 也可阻止对应用进行逆向工程及 设备非法仿制。代码中可加入完整性检查, 以侦测攻击者改变程序 代码的企图。 从上面的叙述中我们已经看到, 想获取 DS5250 中密钥并非易事。 三 、结 束 语 安 全 系 统 设 计 是 一 富 有 挑 战 性 的 工 作 。而 要 强 化 已 有 设 计 的 安 全 性 更 难 。密 钥 保 护 是 安 全 系 统 设 计 中 最 关 键 的 部 分 。通 过 专 门 有 密钥保护设计的芯片, 可为敏感数据提供最高安全等级的保护。
有些情况下, 嵌入式系统一开始就需要高级别的安全性。例如: 金 融 部 门 的 销 售 终 端 对 嵌 入 式 系 统 安 全 性 提 出 了 严 格 的 要 求 。在 其 他情况下, 安全性设计被用来保护嵌入系统开发公司本身利益。安 全应用则能有效的阻止逆向工程设计, 防止产品被仿制。
一 、嵌 入 式 系 统 的 安 全 1. 数 据 的 安 全 嵌入式系统内部的数据信息安全, 可通过各种成熟的加密算法 和密钥管理程序来实现, 所以加密算法和密钥管理程序的选择很关 键, 它直接决定着数据的安全。加密环节的强度, 可通过密钥的长度 来实现。这些是设计人员考虑得最多的问题, 因而数据安全常常并 不是安全应用中的薄弱环节。 2. 密 钥 安 全 安全性不仅仅取决于加密环节。设想这样一种场景, 张三和李 四各有一部只能彼此通信的安全电话。电话的加密措施牢不可破, 即使使用当今世界所有的计算能力, 也需要一个世纪才能破解。那 么, 薄弱环节在哪儿呢? 电话! 如果攻击者控制了其中的一个电话, 他或她就可以佯装张三或李四, 立刻得到他们的秘密信息。攻击者 甚至用不着偷电话, 只要趁张三或李四不觉, 简单地安装一个窃听 装置就可以了。 在此场景中, 加密措施并未被攻破, 而是执行加密的设备, 或者 “密钥”, 安全性被轻而易举地攻破了。在嵌入式系统中, 密钥通常 是一个很大的密码, 被加密程序用来加密信息或认证数据。所以, 一 个 安 全 嵌 入 式 系 统 最 为 重 要 的 工 作 就 是 保 护 该 密 钥 。如 果 系 统 遭 到 攻击, 必须清除该密钥, 防止其落入攻击者之手。密钥的破坏使设备 无法工作, 避免攻击者获取敏感信息, 例如银行帐号和密码。 为保证密钥的安全性, 密钥应永不离开嵌入式系统的边界, 否 则 就 为 攻 击 者 攻 破 设 备 的 安 全 屏 障 提 供 了 捷 径 。设 计 专 门 的 存 储 器 保存密钥的做法不可取, 因为微控制器和存储器之间的通信是可见 的。最安全的做法是使密钥停留在处理器内部, 并用它实现数据的 加密和认证。这就是说, 系统微控制器需要有内部的非易失存储器。 3.IC 引线和塑料封装的安全 即使密钥数据只保存在微控制器中, 攻击者还是有可能发现安 全信息。例如, 如果攻击者可以访问微控制器地址和数据总线, 他就 可以通过插入指令的办法使密钥数据暴露于外部 I/O 口。 更高级的攻击者还可以移除微控制器的塑料封装, 使用微探针 读取内部存储器的内容。所以, 安全系统需要采取措施阻止这种访 问, 甚至在必要时令微控制器擦除其存储器内容。应对这一安全挑 战 的 一 个 简 单 方 法 是 将 整 个“ 敏 感 区 域 ”(例 如 微 控 制 器 、时 钟 和 存