【技术实现步骤摘要】
基于TrustZone的数据库文件口令加解密方法、装置及终端设备
本专利技术涉及移动终端设备安全
,具体而言,涉及一种基于TrustZone的数据库文件口令加解密方法、装置及终端设备。
技术介绍
数据库文件是一种很常见的文件类型,很多应用程序或系统应用依赖于数据库文件的使用。尤其是关系数据库在很多应用程序中,用于保存大量的需要检索的数据,例如用户账号、联系人信息、邮件地址等。目前适用于移动终端设备使用的常见数据库技术有SQLite、mSQL、eXtremeDB等。应用最为广泛的是SQLite,尤其在安卓与iOS操作系统中。SQLite原生支持加密接口,但是需要扩充其加密接口的实现,才能真正的支持加密操作。开源项目SQLCipher是一个典型的基于SQLite实现的加密数据项目。该项目实现了SQLite的加密接口,从而支持了加密数据库操作。但目前该项目仅支持用户按照文件口令加密的方式进行数据库文件的加密。这就要求用户必须要“记住”这个口令,由于该口令是每数据库文件独立的,为了“记住”各数据库文件的口令,用户可能需要将其保存在一个介质中,如电子文档中,但是对于黑盒加密机制而言,安全的保存一个口令本身是很困难的。而如果对所有数据库文件使用同样的口令,则会降低应用程序的安全性。因此,需要一种新的数据库文件加密方法,使得数据库文件的口令对用户是透明的,也即无需用户来“记住”该口令。在所述
技术介绍
部分公开的上述信息仅用于加强对本专利技术的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
本专利技术提供一种基于TrustZone ...
【技术保护点】
一种基于TrustZone的数据库文件口令加密方法,其特征在于,包括:接收口令创建请求,所述口令创建请求中包括:数据库文件的第一元数据及类密钥标识;为所述数据库文件创建用于加密所述数据库文件的口令,并将所述第一元数据与所述口令合并为第二元数据;查找存储的所述类密钥标识对应的类密钥;通过普通执行环境与可信执行环境之间的客户接口,向所述可信执行环境中的可信应用程序发送数据加密请求,所述数据加密请求包括:所述类密钥及所述第二元数据;所述可信应用程序根据预先存储于所述可信执行环境中的主密钥,对所述类密钥进行解密;所述可信应用程序根据解密后的所述类密钥,对所述第二元数据进行加密;以及所述可信应用程序通过所述客户接口,将加密后的所述第二元数据返回至所述普通执行环境中存储。
【技术特征摘要】
1.一种基于TrustZone的数据库文件口令加密方法,其特征在于,包括:接收口令创建请求,所述口令创建请求中包括:数据库文件的第一元数据及类密钥标识;为所述数据库文件创建用于加密所述数据库文件的口令,并将所述第一元数据与所述口令合并为第二元数据;查找存储的所述类密钥标识对应的类密钥;通过普通执行环境与可信执行环境之间的客户接口,向所述可信执行环境中的可信应用程序发送数据加密请求,所述数据加密请求包括:所述类密钥及所述第二元数据;所述可信应用程序根据预先存储于所述可信执行环境中的主密钥,对所述类密钥进行解密;所述可信应用程序根据解密后的所述类密钥,对所述第二元数据进行加密;以及所述可信应用程序通过所述客户接口,将加密后的所述第二元数据返回至所述普通执行环境中存储。2.根据权利要求1所述的方法,其特征在于,所述类密钥标识与应用场景相对应;所述应用场景包括:终端设备启动成功后可以访问、终端设备启动成功后且合法登录后可以访问、终端设备启动成功且合法登录且用户界面解除锁定后可以访问、终端设备启动成功且合法登录且用户界面锁定时仅可以写入。3.根据权利要求2所述的方法,其特征在于,还包括:接收加密后的所述第二元数据;以及将加密后的所述第二元数据与加密后的所述数据库文件合并为一个文件进行存储;其中,所述数据库文件根据所述口令在所述可信执行环境中被加密。4.根据权利要求2所述的方法,其特征在于,还包括:通过所述客户接口,向所述可信应用程序发送各所述应用场景对应的类密钥;所述可信应用程序根据所述主密钥对各所述应用场景对应的类密钥进行加密;以及所述可信应用程序通过所述客户接口,将加密后的各所述应用场景对应的类密钥返回至所述普通执行环境中存储。5.根据权利要求1-4任一项所述的方法,其特征在于,所述客户接口采用强制访问控制权限管理机制。6.一种适用于如权利要求1-5任一项所述的加密方法的数据库文件口令解密方法,其特征在于,包括:接收数据库文件的元数据解密请求,所述元数据解密请求包括:所述数据库文件的待解密的元数据及类密钥标识,所述元数据包括:用于加密所述数据库文件的口令;查找存储的所述类密钥标识对应的类密钥;通过普通执行环境与可信执行环境之间的客户接口,向所述可信执行环境中的可信应用程序发送数据解密请求,所述数据解密请求包括:所述类密钥及所述待解密的元数据;所述可信应用程序根据预先存储于所述可信执行环境中的主密钥,对所述类密钥进行解密;所述可信应用程序根据解密后的所述类密钥,对所述元数据进行解密;以及所述可信应用程序通过所述客户接口,将解密后的所述元数据返回至所述普通执行环境中。7.根据权利要求6所述的方法,其特征在于,还包括:...
【专利技术属性】
技术研发人员:孙国峰,
申请(专利权)人:北京元心科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。