当前位置: 首页 > 专利查询>泰雷兹公司专利>正文

用于动态创建应用程序执行环境以保护所述应用程序的方法以及相关的计算机程序产品和计算装置制造方法及图纸

技术编号:10313560 阅读:116 留言:0更新日期:2014-08-13 15:57
本发明专利技术涉及一种用于动态创建用来对操作系统(20)中待保护的应用程序(34)进行保护的执行环境的方法,所述操作系统(20)包括包含一个或更多个不安全函数(39)的库集(26),所述待保护的应用程序(34)在执行期间原本打算调用属于包含一个或更多个不安全函数(39)的库的函数。该方法由计算装置(10)执行,所述计算装置(10)包括安全库(24),所述安全库(24)包括至少一个保护函数,并且该方法保护以下步骤:加载所述安全库(24);将与所述待保护的应用程序(34)相关的函数调用中的至少一个对不安全函数的调用替换为对来自所述安全库(24)中对应函数的调用;以及在替换步骤之后启动所述待保护的应用程序(34)。

【技术实现步骤摘要】
【国外来华专利技术】用于动态创建应用程序执行环境以保护所述应用程序的方法以及相关的计算机程序产品和计算装置
技术实现思路
本申请涉及一种用于动态创建用来执行待保护的应用程序的环境以保护所述应用程序的方法,所述方法由计算装置实现,所述计算装置包括信息处理单元和存储器,所述存储器与所述信息处理单元相关并且包括操作系统、所述待保护的应用程序以及至少包括一个安全函数的安全库,所述操作系统包括函数库集,所述函数库集包括不安全函数库,所述待保护的应用程序在执行期间用来调用所述不安全函数库的函数。本专利技术还涉及一种计算机程序产品,所述计算机程序产品包括软件指令,当所述软件指令由集成到计算装置中的信息处理单元实施时,所述软件指令实现这种方法。本专利技术还涉及一种计算装置,包括:-信息处理单元;-存储器,所述存储器包括操作系统、至少一个待保护的应用程序,以及包括至少一个安全函数的安全库,所述存储器与所述信息处理单元相关;所述操作系统包括函数库集,所述函数库集包括不安全函数库,所述待保护的应用程序被设计为调用来自所述不安全函数库的函数。计算装置是已知的,例如上述类型的移动终端。该移动终端由安卓平台承载的应用程序进行管理。该安卓平台包括Linux内核,C或C++语言的函数库集,以及能够执行由安卓平台承载的应用程序的Dalvik虚拟机。必须保护敏感性应用程序的操作,以保护由那些应用程序处理的数据且防止由移动终端丢失或被窃或移动终端与另一计算设备之间通信的拦截而引起的信息恢复的风险。于是一种数据保护方案包括修改每个待保护的应用程序的源代码或二进制代码,以使其调用包括适当安全函数的特定库。然而,这种对应用程序的保护需要修改每个应用程序的源代码或二进制代码,这是相当受限的,而且当代码的修改是由第三方进行时,这样并不总是受到该应用程序提供商的允许。因此,本专利技术的一个目的是提供一种用于针对待保护的应用程序动态创建执行环境的方法以及相关的计算装置,其能够保护应用程序,同时限制对操作系统代码、应用程序的环境或待保护的应用程序的修改。为此,本专利技术涉及一种动态创建上述类型的执行环境的方法,其特征在于,该方法包括以下步骤,所述步骤由存储在存储器中用于动态创建执行环境的应用程序实现:-加载所述安全库;-将与所述待保护的应用程序相关的函数调用中的至少一个对不安全函数的调用替换为对所述安全库中的对应函数的调用;-在替换步骤之后启动所述待保护的应用程序。根据本专利技术的其他有利方面,该方法包括一个或更多个以下特征,这些特征可以单独考虑或进行任一技术可能的结合:-所述替换步骤包括消除所述待保护的应用程序与所述不安全函数之间的动态链接,并在所述待保护的应用程序与所述安全库中的对应函数之间创建动态替换链接。-在与所述待保护的应用程序相关的函数调用中,所有对数据存储函数的调用被替换为对所述数据存储的安全函数的调用。-在与所述待保护的应用程序相关的函数调用中,所有对与另一计算装置交换数据的函数的调用被替换为对保护与所述另一计算装置数据交换的函数的调用。-在与所述待保护的应用程序相关的函数调用中,所有对增加调试事件的函数的调用被替换为对删除调试事件的函数的调用。-所述方法进一步包括:在启动所述应用程序的步骤之前,锁定在所述加载步骤期间加载的所述安全库以及在所述替换步骤期间进行的函数调用替换的步骤。-所述方法进一步包括:在启动所述应用程序的步骤之前,对所述计算装置的用户进行认证并恢复用来解锁所述安全库的密钥的步骤。-所述方法进一步包括:在启动所述应用程序的步骤之前,拦截在所述操作系统与所述待保护的应用程序之间交换的消息,并利用所述安全库的对应函数对所述消息进行处理的步骤。-所述用于创建执行环境的应用程序是专用于所述待保护应用程序的应用程序,并且不同于所述操作系统。-所述操作系统包括虚拟机,所述虚拟机用于执行所述应用程序。-所述操作系统为安卓系统,并且所述虚拟机为Dalvik虚拟机。本专利技术还涉及一种计算机程序产品,所述计算机程序产品包括软件指令,当所述软件指令由集成到计算装置中的信息处理单元实施时,所述软件指令实现上述方法。本专利技术还涉及一种上述类型的计算装置,其特征在于,所述存储器进一步包括用于动态创建待保护的应用程序的执行环境的应用程序,所述用于创建执行环境的应用包括:用于加载所述安全库的组件,用于将与所述待保护的应用程序相关的函数调用中的至少一个对不安全函数的调用替换为对所述安全库中的对应函数的调用的组件,以及用于在将对不安全函数的调用替换为对所述安全函数的调用之后,启动所述待保护的应用程序的组件。【附图说明】在阅读以下仅作为示例提供且参照附图进行说明的说明书之后,本申请的这些特征和优点将显而易见,其中附图为:-图1为根据本专利技术的计算装置的示意图;-图2为图1的所述计算装置的存储器的示意图;-图3为根据本专利技术的针对待保护的应用程序动态创建执行环境的方法的流程图;以及-图4为针对所述待保护的应用程序动态创建执行环境和执行所述应用程序的图/Jn ο【具体实施方式】在图1中,诸如移动终端之类的计算装置10包括信息处理单元12、与所述信息处理单元相关的存储器14,以及屏幕15。在图1的示例性实施例中,计算装置10为移动电话,并且进一步包括无线天线16和无线收发器18,所述无线收发器被连接到所述信息处理单元。信息处理单元12例如包括数据处理器。存储器14包括操作系统20以及多个第一包文件21和第二包文件22。此外,存储器14包括第三包文件23。存储器14还包括安全库24,所述安全库例如能够保护数据存储和/或与另一计算装置的数据交换。无线收发器18包括通过无线天线16发送和接收无线信号的模块。无线收发器18根据通用分组无线业务(GPRS)通信标准或者通用移动通信系统(UMTS)标准。无线天线16和无线收发器18能够允许在计算装置10与另一根据同一通信标准包括无线天线和收发器的计算装置之间建立无线链接。操作系统20包括内核25、函数库集26、虚拟机28以及应用程序框架30。每个第一包文件21包括第一配置文件33和采用第一二进制文件形式的非敏感性应用程序31,所述非敏感性应用程序31不需要被保护。每个第二包文件22包括采用第二二进制文件形式的待保护应用程序34、第二配置文件35以及用于为所述待保护应用程序动态创建执行环境的应用程序36,所述用于创建执行环境的应用程序36采用第三二进制文件的形式。此外,第三包文件23包括用于对用户进行认证并恢复用来解锁所述安全库的密钥的应用程序(未示出)。第三包文件23包括与所述用于对用户进行认证并恢复解锁密钥的应用程序相关的第三配置文件(未示出)。用户的认证例如利用包含在装置10中的芯片卡或位于装置外的近距离通信卡(也称为NFC卡)来完成。所述应用程序还适于验证与第三方应用程序相关的许可,以控制用户对所述第三方应用程序的访问。如图2所示,安全库24包括用于保护数据存储的函数37A、用于保护与另一计算装置的数据交换的函数37B,以及用于消除调试事件的函数37C。在图1和图2的示例性实施例中,安全库24是与包含在操作系统20中的本地库分离的特定库。可替换地,如图2中的点划线所示,安全库24是包含在由操作系统的提供商交付的所述操作系统的库集26中的本地库。内核25在一方本文档来自技高网...

【技术保护点】
一种用于针对待保护的应用程序(34)动态创建执行环境以保护所述应用程序(34)的方法,该方法由计算装置(10)实现,所述计算装置(10)包括信息处理单元(12)和存储器(14),所述存储器(14)与所述信息处理单元(12)相关,并包括操作系统(20),所述待保护的应用程序(34)和包括至少一个安全函数(37A,37B,37C)的安全库(24),所述操作系统(20)包括函数库集(26),所述函数库集(26)包括不安全函数库(39),所述待保护的应用程序(34)适于在所述待保护的应用程序(34)执行期间调用所述不安全函数库(39)的函数;其特征在于,该方法包括以下由存储在所述存储器(14)中的用于动态创建执行环境的应用程序(36)实现的步骤:‑加载(100)所述安全库(24);‑将与所述待保护的应用程序(34)相关的函数调用中的至少一个对不安全函数的调用替换(110)为对所述安全库(24)中的对应函数(37A,37B,37C)的调用;‑在替换步骤(110)之后启动(140)所述待保护的应用程序(34)。

【技术特征摘要】
【国外来华专利技术】2011.10.06 FR 11/030461.一种用于针对待保护的应用程序(34)动态创建执行环境以保护所述应用程序(34)的方法,该方法由计算装置(10)实现,所述计算装置(10)包括信息处理单元(12)和存储器(14),所述存储器(14)与所述信息处理单元(12)相关,并包括操作系统(20),所述待保护的应用程序(34)和包括至少一个安全函数(37A,37B,37C)的安全库(24),所述操作系统(20)包括函数库集(26),所述函数库集(26)包括不安全函数库(39),所述待保护的应用程序(34)适于在所述待保护的应用程序(34)执行期间调用所述不安全函数库(39)的函数; 其特征在于,该方法包括以下由存储在所述存储器(14)中的用于动态创建执行环境的应用程序(36)实现的步骤: -加载(100)所述安全库(24); -将与所述待保护的应用程序(34)相关的函数调用中的至少一个对不安全函数的调用替换(110)为对所述安全库(24)中的对应函数(37A,37B,37C)的调用; -在替换步骤(110)之后启动(140)所述待保护的应用程序(34)。2.根据权利要求1所述的方法,其中,所述替换步骤(110)包括:消除所述待保护的应用程序(34)与所述不安全函数之间的动态链接,并在所述待保护的应用程序(34)与所述安全库(24)中的对应函数(37A,37B,37C)之间创建动态替换链接。3.根据权利要求1或2所述的方法,其中,在与所述待保护的应用程序相关的函数调用中,所有对数据存储函数的调用被替换为对所述数据存储的安全函数(37A)的调用。4.根据上述权利要求中任一项所述的方法,其中,在与所述待保护的应用程序相关的函数调用中,所有对与另一计算装置交换数据的函数的调用被替换为对保护与所述另一计算装置的数据交换的函数(37B)的调用。5.根据上述权利要求中任一项所述的方法,其中,在与所述待保护的应用程序相关的函数调用中,所有对增加调试事件的函数的调用被替换为对删除调试事件的函数(37C)的调用。6.根据上述权利要求中任一项所述的方法,其中,所述方法进一步包括:在启动所述应用程序的步骤(140)之前,用于锁定在所述加载步骤(100)期间加载的所述安全库(24)和在所述替换步骤(110)期间进行的函数调用替换的步骤...

【专利技术属性】
技术研发人员:劳伦特·弗里博奥阿德里安·拜厄托
申请(专利权)人:泰雷兹公司
类型:发明
国别省市:法国;FR

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1