新闻中心

EEPW首页>手机与无线通信>设计应用> 基于智能卡的嵌入式网络加密安全系统设计

基于智能卡的嵌入式网络加密安全系统设计

作者: 时间:2010-09-29 来源:网络 收藏

  2 设计原则

  要设计一个安全加密系统,应该考虑以下几个方面:

  (1)标准化、模块化设计原则。在产品软件和硬件的设计过程中,遵循模块化设计原则,各个功能模块相对独立,各模块之间界定清晰的接口界面。遵循标准化设计路线,遵循人民银行PBOC*规范(算法除外),采用标准的接口,提供标准化的安全服务;

  (2)适应性、可扩展性原则。总体设计紧密结合实际应用,能够适应复杂应用环境及其通信线路、多种操作系统平台、Web服务平台、浏览器平台,支持各种流行的开发环境。另外,具有可扩展性,能够适应未来需求变化,能够应对安全威胁变化带来的新的安全风险,保障本系统在其整个生命周期的安全;

  (3)合理的密钥管理。密钥的安全控制和管理是系统设计的关键,在保证系统安全的基础上,密钥管理体系的设计尽量简洁、实用;

  (4)要在系统合适的地方对传输报文中的关键敏感字段进行加密保护。如果在低级的地方进行加密,就会因为过于相信底层的系统元素,而这些离用户层太远,即使被替换也不会引起用户的注意,这就引入了脆弱性;如果加密模块离用户太近,用户的频繁干预会很容易引入错误,不适合平常的使用。基于以上考虑,一个安全加密系统在保证安全的同时,还要保证系统的运行效率和易用性。所以本文设计的加密系统体现出以下原则 :

  (1)易用性。无论客户端还是服务器端,用户都不用关心加密和解密操作,所有的加解密操作和用户身份认证操作都由安全模块来自动完成;

  (2)安全性。采用多方面的安全机制,加密芯片自身具有身份认证和很强物理防分析机制,并且密钥的使用受用户口令保护。设置3级密钥管理体制,建立密钥管理中心,制定统一的安全管理策略,对全网密码设备的使用进行统一的安全监测和管理;

  (3)系统的高效率。加密系统不占用太多的内存,尽量使用系统中的各种缓存,以保证系统的整体效率不受太大影响;

  (4)对操作系统的其它部分影响尽量小。加密系统不干扰操作系统其它部分的执行,安全模块独立。

  3 实现方式

  传统用户层实现方式中(如图2所示),安全模块放在用户层,在应用程序要写文件的时候,数据要从用户层的应用程序经过系统调用进入系统核心层,核心层需要将数据交给应用层的安全模块处理,安全模块将数据处理完毕后再经过系统调用进入系统核一tl,层,最后核心层将数据送到远程服务器。数据在用户层和核心层多次交换,应用程序也需要在核心空问和用户空问多次切换,在用户空问和核心空问均需要对数据进行缓存,这样必然使系统的效率降低,而且,运行在应用层的安全模块很容易受到威胁。比如运行在核心空间的进程可以没有任何限制地访问应用层的内存,从而也就可以访问安全模块的内存空问,导致机密信息泄漏。但是这样实现具有系统兼容性好,实现简单,对系统改动小的优点,可以非常容易地在不同的操作系统上移植。

  我们所采用的核心层实现方式(如图3所示)将安全模块放到核心层实现,这样数据只需从应用程序所在的用户空间通过系统调用进入核心层,通过核心层的安全模块进行处理,也就没有了多个空问层次的切换,系统的效率得到很大的提高。同时,将系统代码固化在Flash中,不支持对系统存储区域的写操作,因此一般的*或木马无法植于系统的可执行代码存储区中,这种固化特性使得通过客户端来攻击Web服务器变得非常困难。另外,在生成操作系统运行代码时只开放了8080浏览端口,禁用了其它不必要的网络服务端口,通过网络手段登陆客户端再进而以合法身份对Web服务器进行攻击也是不易做到的。线路上的中问攻击因为加密而难以实施,并且如果Web服务器没有受到攻击,则浏览安全的Web服务器~ 般不会受到攻击。所以,核心层实现方式所采用的系统固化、禁用服务、关键配置设定等安全增强措施极大的提高了系统的安全性和可靠性。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)


关键词:智能嵌入式网络

评论


相关推荐

技术专区

关闭