【技术实现步骤摘要】
一种跨平台使用硬件隔离环境对文件进行加密校验的方法
本专利技术涉及一种跨平台使用硬件隔离环境对文件进行加密校验的方法,具体是一种在文件的跨平台转移过程中保护其机密性和完整性的方法,属于系统安全
技术介绍
在如今的大数据时代,数据创造出的价值越来越多,如何保护系统中的数据成为一个至关重要的问题。传统数据通常储存在用户的个人PC上,而现在随着移动设备的使用越来越广泛,更多的用户数据流向了移动端。然而,无论是PC端还是移动端,有价值的数据都会引来一些攻击者的窥探,然而这是用户所不希望看到的。在PC端,攻击者可能通过传统的远程木马窃取用户的隐私数据,或是直接从物理上拷贝走用户的数据,在一些文件共享的应用中,用户可能在不知不觉中就被攻击者分享走了自己的隐私数据。在移动端,除了上述的攻击方式,攻击者还有可能在无处不在的第三方应用app中种下恶意代码,待用户下载后就开始攻击或偷窃行为,泄露用户隐私。针对这些威胁到用户隐私的攻击行为,目前的解决方案有文件加密(PC端或移动端),加密锁(PC端),生物特征加密如指纹解锁(移动端)等方式。对于加密保护隐私数据的方法,如今的密码学发展已经使得攻击者无法在可计算时间内破解密码得到隐私数据,也就是说攻击者为了破解隐私数据,必须花费比数据本身价值更大的代价才可能破解密码算法,这样在一定程序上保护了数据的安全,但是如果攻击者攻陷了操作系统权限或是检测了加解密过程,就有可能拿到密钥,在这种情况下,密码算法不攻自破。对于加密锁的方案,它采用了硬件的方式保护软件和数据,但是其缺陷在于:首先加密锁的成本很高,阻碍了它的广泛使用,其次加 ...
【技术保护点】
1.一种跨平台使用硬件隔离环境对文件进行加密校验的方法,其特征在于,在SGX技术和TrustZone技术的支持下部署用于处理文件加解密和验证的安全应用程序;包括四个部分:PC端安全应用程序,PC端不可信部分,移动端可信程序,移动端不可信部分;PC端安全应用程序用于完成的是加解密的安全操作,该部分位于SGX的Encalve中,是被硬件隔离保护起来的区域;PC端不可信部分用于完成的是与PC端用户交互的功能,用户通过该部分向安全应用程序的加解密程序发起请求,调用位于Encalve中的安全应用程序完成加密或解密的操作;PC端安全应用程序和PC端不可信程序之间的交互由Intel SGX的通信机制完成,通过预定义在Enclave中的可信接口和不可信接口完成双向调用;移动端可信程序位于TrsutZone的Secure World中,也是被硬件隔离保护起来的区域,这部分完成的是加解密和用户验证的安全操作;移动端不可信部分是运行在移动端app,完成与用户的交互,给用户提供功能界面;用户可以通过它向Secure World发起安全请求,调用可信程序完成数据加解密或是用户验证;移动端可信程序和不可信部分之间 ...
【技术特征摘要】
1.一种跨平台使用硬件隔离环境对文件进行加密校验的方法,其特征在于,在SGX技术和TrustZone技术的支持下部署用于处理文件加解密和验证的安全应用程序;包括四个部分:PC端安全应用程序,PC端不可信部分,移动端可信程序,移动端不可信部分;PC端安全应用程序用于完成的是加解密的安全操作,该部分位于SGX的Encalve中,是被硬件隔离保护起来的区域;PC端不可信部分用于完成的是与PC端用户交互的功能,用户通过该部分向安全应用程序的加解密程序发起请求,调用位于Encalve中的安全应用程序完成加密或解密的操作;PC端安全应用程序和PC端不可信程序之间的交互由IntelSGX的通信机制完成,通过预定义在Enclave中的可信接口和不可信接口完成双向调用;移动端可信程序位于TrsutZone的SecureWorld中,也是被硬件隔离保护起来的区域,这部分完成的是加解密和用户验证的安全操作;移动端不可信部分是运行在移动端app,完成与用户的交互,给用户提供功能界面;用户可以通过它向SecureWorld发起安全请求,调用可信程序完成数据加解密或是用户验证;移动端可信程序和不可信部分之间的交互由TrustZone机制提供,通过可信程序提供的安全程序入口和函数编号找到对应需要调用的函数,并在调用完成后返回到正常操作系统的普通app中。2.如权利要求1所述的跨平台使用硬件隔离环境对文件进行加密校验的方法,其特征在于,若文件需要由PC端转移到移动端,需要完成如下步骤:(1)在PC端,运行不可信部分的程序对安全应用程序发起调用;(2)安全应用程序完成加密和计算MAC码,调用返回;(3)将加密并附上了消息验证码的数据转移到移动端;(4)在移动端App发起对可信程序的调用;(5)移动端的可信程序对数据进行解密和校验消息验证码,返回结果给App;(6)App对结果进行判断并向用户展示结果,转移完成。3.如权利要求1所述的跨平台使用硬件隔离环境对文件进行加密校验的方法,其特征在于,若文件需要由移动端转移到PC端,则需要完成如下步骤:(1)在移动端,App发起对可信程序的调用;(2)可信程序完成数据的加密和计算MAC码,调用返回;(3)将加密并附上了消息验证码的数据转移到PC端;(4)PC端的不可信部分发起对安全程序的调用;(5)安全程序对数据进行解密并校验消息验证码,返回结果给不可信部分;(6)不可信部分对结果进行判断并向用户展示结果,转移完成。4.如权利要求1所述的跨平台使用硬件隔离环境对文件进行加密校验的方法,其特征在于,PC端安全应用程序的实现:在PC端提供了对IntelSGX技术的支持的情况下,平台具备了开发SGX可信应用程序的能力,SGX支持的操作系统有Windows和Linux;SGX可信应用程序由App和Enclave两部分代码组成,前者是应用程序的不可信部分,用来为客户提供调用Enclave中可信程序的接口,后者是位于Enclave中的可信程序,是被隔离起来的,完成安全操作,前者通过后者向外提供的接口调用后者的安全函数功能;App文件夹下包含不可信程序的源码头文件;Enclave文件夹下包含应用程序的可信代码部分和可信与不可信代码接口文件;Enclave中接口函数的定义:Encalve中的接口函数定义了外界可以从Encalve中调用到的函数,包括分别完成加密计算MAC码和解密验证MAC码的两个函数:publicvoidMyencrypt();该函数为加密函数接口的定义,位于Enclave外的SGX安全应用程序的不可信部分可以通过此接口调用Myencrypt函数;publicvoidMydecrypt();该函数为解密函数接口的定义,位于Enclave外的程序可以通过此接口调用Mydecrypt函数;Enclave中功能的实现:位于Enclave内的文件完成的功能为:提供AES-GCM函数;主要包含AES-GCM的加密模式和解密模式,利用的是IntelSGX提供的可信函数库sgx_tcrypto.a;在Makefile中加上该函数库的编译即可添加对该函数库的引用;不可信部分功能的实现:不可信部分完成的功能为取出指定文件的内容调用Myencrypt函数进行加密和调用Mydecrypt函数进行解密并验证,具体选择哪个功能由用户决定,取决于PC端作为...
【专利技术属性】
技术研发人员:许封元,熊雅媛,田育龙,仲盛,张星,
申请(专利权)人:南京大学,北京神州绿盟信息安全科技股份有限公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。