一种SMM的密钥传输技术的制作方法

文档序号:13666660阅读:568来源:国知局

本发明是一种smm技术领域,特别涉及密钥技术。



背景技术:

目前,计算机已经广泛应用于各行各业,用于保存各种重要的数据资源,其中包括政府、商业以及个人隐私等多种数据;这些数据一旦泄露,将会造成不可估量的后果;基于文件过滤驱动的驱动层加解密技术以其使用便捷、灵活性较高等优点逐渐成为解决数据安全性的一项重要技术。



技术实现要素:

一种smm的密钥传输技术设计:驱动层透明加解密在进行加解密前密钥从外部usb设备传输到驱动层,只要攻击者可感知密钥的传输,通过对usb信道进行攻击即可能获取密钥信息;因此成功保障文件过滤驱动密钥安全的关键点是确保传输通道的安全,而smm模式对操作系统的透明的特性刚好可以满足此条件,因此可利用smm进行密钥的安全传输;整体设计方案主要包含3个部分:外部硬件模块、加解密监控模块、smm模块;外部硬件主要用于密钥安全存储,加解密模块负责监控加解密请求,通过修改硬件配置,触发硬件产生smi,smm模块负责密钥透明传输。

密钥安全存储:首次使用系统时,插人usbkey,提示用户输人pin码进行注册,然后使用内置密钥生成算法生成密钥;假设最终生成的对称密钥为key作为加密密钥,非对称密钥对为pubkey和prikey;加密密钥key使用私钥prikey加密后保存在usbkey中,记为enckey;注册成功后将公钥通过驱动层提供的接口传人驱动中保存,此后公钥不再出现在us-bkey中;当系统正常使用时,需要插人usbkey进行用户身份认证通过后才可以将enckey导出,以密文的方式经过smm传人驱动层;这个过程中,只有同时获取usbkey硬件、用户口令和公钥才有可能对enckey进行解密,同时enckey的传输以smm为媒介进行传输,操作系统不可感知,因此enckey很难被非法获取。

smi触发:smi是不可屏蔽中断,其优先级高于所有调试中断、可屏蔽中断和软中断;而能够触发smi的事件依赖于所使用的芯片组及其设置;在主板系统芯片上有一个重要的32位寄存器smi_en,smi_en寄存器控制着那些设备被允许发出smi中断;通过修改apmcregister(高级电源管理控制寄存器)的值为1即可触发smi,而smi_en的第6位即表示是否允许apmcregister触发smi;因此,设置smi_en的第6位和最低有效位为1,并通过读写端口号oxb2,设置apmcregister为1即可触发smi;其产生过程说明如下:

(1)访问pct控制寄存器,向其地址端口oxcf8写人地址,然后从数据端口oxcfc读出pmbase的值;

(2)根据pmbase的值可找到smm_en寄存器的值,其地址为pmbase+0x30,设置smm_en的第6位和最后一位为1;

(3)向apmcregister写人数据,即向oxb2端口写人数据;这里写人ox0000000f作为keysmi中断标识。

基于smm的密钥透明传输:当收到smi中断信号后,cpu将进人smm模式,执行smram中的smmhandler程序;这里涉及smram的访问;smram位于物理内存中,默认大小为64k,地址范围从smbase到smbase+0x1ffff;经过以上分析,给出基于smm的密钥透明传输流程如下:

(1)初始化硬件配置,允许设备发出smi中断;

(2)smi模块监控到文件加解密请求;

(3)修改ampc寄存器的值,用于出发smi;

(4)修改smram寄存器值,完成smram地址映射;

(5)cpu进人smm模式;

(6)根据中断号找到预先注册的密钥传输处理程序,将密钥从外部设备经由smm传输到驱动层;

(7)驱动层接收到加密密钥后进行加解密处理;

(8)加解密结束。

安全性分析:利用smm作为媒介可保证密钥传输的安全主要基于以下两点:密钥传输通道安全以及密钥在smram中的安全;

(1)密钥传输通道安全:众所周知,恶意软件一般采用常驻系统内存的方式实时监控系统行为,实现恶意目的;例如,通过监控键盘操作获取用户密钥信息、通过监控网卡接口获取用户网络数据包,从中提取有效信息等;攻击者可通过实时监控usb信道数据,然后分析出其中的密钥信息;而smm为密钥传输提供了安全的透明环境,进人smm模式后,操作系统将暂停执行,而操作系统是系统所有上层应用以及木马病毒等所有恶意软件的基础,一旦操作系统暂停运行,基于操作系统的恶意软件也将进人假死状态而无法进行恶意攻击行为,从而无法截获usb信道传输的密钥信息;因此smm可保证密钥从外部usb设备到驱动层的传输通道的安全;

(2)密钥在smram中的安全:smram是smm模式下的内存,用于存放smram处理程序并为其提供运行空间,密钥信息会出现在其中;因此smram必须足够安全,cpu处于非smm模式下时,所有对地址smbase的访问都是对显卡数据的访问,无法访问到smram中的数据;由此可以保证非smm模式下smram的安全,当进人smm模式后,操作系统暂停执行并将大部分寄存器状态保存在smram的statesavearea,其它任何程序甚至是操作系统都无法访问smram中的内容,smm的这种特性为密钥安全传输提供了一个高安全的隔离内存,可以保证密钥在其中不被恶意程序获取。



技术特征:

技术总结
本发明针对密钥从外部设备经由操作系统传输到驱动层存在的传输通道不安全容易导致密钥泄露的问题,基于系统管理模式SMM,利用SMM对操作系统的不可感知特性,设计出一种高安全的密钥传输技术;以SMM作为媒介,将密钥不经过操作系统层透明地传输到驱动层,能够抵抗USB信道攻击,可有效保证密钥传输过程的安全,显著增强了驱动层加解密密钥的安全性。

技术研发人员:余漫游
受保护的技术使用者:长沙有干货网络技术有限公司
技术研发日:2016.08.01
技术公布日:2018.02.09
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1