一种数据安全存储和快速调用的方法及移动终端与流程

文档序号:17791394发布日期:2019-05-31 20:18阅读:226来源:国知局
一种数据安全存储和快速调用的方法及移动终端与流程

本发明属于数据处理技术领域,具体地说,是涉及一种数据的存储和调用技术。



背景技术:

随着通信技术的快速发展,公众在享受通信网络带来的各种方便快捷服务的同时,也面临着日益严重的信息安全问题,个人数据如通讯录、短信等私有信息的安全问题尤为值得关注。

目前,基于android平台开发的手机,其通讯录、短信等私有信息都是存储在一个默认的地址,这个默认地址是一个开放的公共路径,可以从互联网上直接查询到。并且,存储在这个默认地址下的数据都是明数据(即,没有加密的数据),一旦手机落入到第三方手里,很容易将这些私有信息拷贝出去,造成手机用户私有信息的泄漏。

为了增加用户私有数据的安全性,目前普遍采用的保护方式主要有软加密(即,基于软件加密算法进行加密处理)和硬加密(即,基于密码卡等加密模块进行加密处理)两种。这两种加密方法虽然能够较好的保护数据,但对于数据的查看、编辑等使用操作比较卡顿(因为数据需要先经过解密后才能使用),特别是当用户的数据量日益增多时,该问题尤为突出,甚者会造成系统崩溃,手机等移动终端无响应等情况的出现,这也是目前android手机没有对部分个人数据(例如通讯录、短信等)进行加密存储的原因。

因此,针对系统响应速度要求较高的手机等移动终端,如何在提高数据安全性的同时,保持数据的调用速度,避免系统因频繁使用加密数据而导致应用出现卡顿问题,是目前手机等移动终端开发商面临的一项主要课题。



技术实现要素:

本发明的目的在于提供一种数据安全存储和快速调用技术,旨在解决数据存储安全性问题与数据调用快速性问题之间的矛盾。

为解决上述技术问题,本发明采用以下技术方案予以实现:

在一个方面,本发明提出了一种数据安全存储和快速调用的方法,包括:对系统需要存储在开放的公共路径下的数据进行加密;将加密后的数据存储在所述开放的公共路径下;对所述开放的公共路径下的数据进行解密,并将解密后的数据存放至虚拟内存中,并根据存放地址形成映射后路径;对访问路径默认为所述开放的公共路径的系统调用接口进行修改,将所述系统调用接口的访问路径修改为所述的映射后路径;在满足设定的数据更新条件时,对所述映射后路径下存放的数据进行加密,并将加密后的数据写入所述开放的公共路径下,对所述开放的公共路径下的数据进行更新。

优选的,将所述虚拟内存的一部分挂载成虚拟磁盘,所述虚拟磁盘的地址即为所述的映射后路径。

为了确保数据的完整性,本发明的数据安全存储和快速调用方法还包括:在系统中设置定时更新时间;在系统的连续运行时间每次达到所述定时更新时间时,认为满足了所述数据更新条件;此时,系统将所述映射后路径下的数据进行加密后,替换所述开放的公共路径下的加密数据。

进一步的,所述数据安全存储和快速调用方法还包括:在控制系统关机或者重启时,认为满足了所述数据更新条件;此时,系统首先将所述映射后路径下的数据进行加密后,替换所述开放的公共路径下的加密数据;然后,再进入常规的关机或重启流程。

在系统中,除了保存在所述开放的公共路径下的加密数据以外,还会存在其他加密数据,系统在调用这些加密数据时,需要首先对这些加密数据进行解密后才能使用,导致数据调用时间长,易造成系统卡顿等问题。为了解决这一问题,本发明在所述数据安全存储和快速调用方法中还设置了以下过程:对系统中非所述开放的公共路径下的加密数据进行解密,并存放在所述映射后路径下;对访问路径默认为所述加密数据所对应的存储路径的系统调用接口进行修改,将所述系统调用接口的访问路径修改为所述的映射后路径,进而使系统可以从所述虚拟内存中调取出解密后的数据直接使用。由于系统无需在每次数据调用过程中执行解密运算,因此数据调用速度快,不易出现系统卡顿等问题。

在另一个方面,本发明还提出了一种移动终端,包括本地存储器、虚拟内存、加密模块、数据处理模块和系统调用接口;其中,所述本地存储器包括若干个存储区,且至少有一个存储区的地址为开放的公共路径;所述虚拟内存划分出一部分区域用于存储解密后的数据,且将所述区域的地址定义为映射后路径;所述加密模块用于对数据进行加密和解密处理;所述数据处理模块在移动终端开机时,控制所述加密模块对所述开放的公共路径下的数据进行解密,并将解密后的数据存放在所述映射后路径下;并且,在满足设定的数据更新条件时,控制所述加密模块对所述映射后路径下存放的数据进行加密,并将加密后的数据写入所述开放的公共路径下,对所述开放的公共路径下的数据进行更新;所述系统调用接口包括默认调用所述开放的公共路径下的数据的第一系统调用接口,将所述第一系统调用接口的访问路径修改为所述的映射后路径;所述数据处理模块通过所述第一系统调用接口从所述虚拟内存中调取解密后的数据使用或者增加、删除、修改所述映射后路径下存放的数据。

优选的,所述虚拟内存将其一部分区域挂载成虚拟磁盘,所述虚拟磁盘的地址即为所述的映射后路径。

为了确保数据的完整性,本发明在所述移动终端中还设置有计时器,用于记录系统连续运行的时间;所述数据处理模块在计时器计时达到预设的定时更新时间时,认为满足了所述数据更新条件;此时,所述数据处理模块控制所述计时器清零重新计时,并在计时器每次计时达到定时更新时间时,控制所述加密模块将所述映射后路径下的数据进行加密后,替换所述开放的公共路径下的加密数据。

进一步的,所述数据处理模块在控制系统关机或者重启时,认为满足了所述数据更新条件;此时,所述数据处理模块首先控制加密模块将所述映射后路径下的数据进行加密后,替换所述开放的公共路径下的加密数据;然后,再控制系统进入常规的关机或重启流程,以进一步确保开放的公共路径下的加密数据的完整性。

针对存储在其他路径(非所述开放的公共路径)下的加密数据,为了提高这类加密数据的调用速度,本发明设计所述数据处理模块控制加密模块对存储器中存放的非所述开放的公共路径下的加密数据进行解密后,存储至所述映射后路径下;所述系统调用接口包括默认调用所述非开放的公共路径下的加密数据的第二系统调用接口,将所述第二系统调用接口的访问路径修改为所述的映射后路径;所述数据处理模块通过所述第二系统调用接口可以从所述虚拟内存中调取出解密后的数据直接使用,以加快数据的调用速度。

与现有技术相比,本发明的优点和积极效果是:本发明基于虚拟内存映射技术,将加密数据存放在系统的默认路径下,将解密数据映射到虚拟内存中,并将系统调用接口的访问路径修改到映射后的虚拟内存,由此不仅可以解决系统默认路径下的数据的安全存储问题,避免私有数据被窃取,而且通过直接调用解密后的数据,可以提高数据的调用速度,避免出现系统卡顿、无响应等现象,很好地解决了数据存储安全性问题与数据调用快速性问题之间的矛盾。将该技术应用在手机等移动终端产品中,可以达到保护用户数据,提高系统响应速度的目的,显著提升了移动终端的安全性能。

结合附图阅读本发明实施方式的详细描述后,本发明的其他特点和优点将变得更加清楚。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明所提出的移动终端的一种实施例的硬件系统架构框图;

图2是本发明所提出的数据安全存储和快速调用方法的一种实施例的工作流程图。

具体实施方式

下面结合附图对本发明的具体实施方式作进一步详细地说明。

本实施例针对手机等移动终端所面临的用户信息安全性问题以及调用加密数据时,由于需要对加密数据进行解密而导致的程序运算时间长,数据调用速度慢的问题,提出了一种加密数据的合理存储与使用技术。该技术采用对用户的私有数据进行加密的方式,来达到提高用户信息安全性的目的;并针对加密后的数据,采用对加密数据进行解密并映射到虚拟内存的方式,通过将用户私有数据的调用路径由对加密数据的调用修改为对映射数据的调用,由此便可以避免用户的私有数据在每次调用时所面临的解密问题,使得系统的响应速度不会因数据加密而变慢,继而在保持产品既有性能的基础上,很好地解决了用户信息的安全性问题。

下面以手机为例,首先对移动终端的硬件组建结构进行具体阐述。

如图1所示,本实施例的手机包括数据处理模块、本地存储器、虚拟内存、加密模块、系统调用接口、计时器等主要组成部分。其中,在本地存储器中存储有系统程序和用户数据,所述用户数据按照系统设置的默认路径存储在本地存储器的不同区域,以供系统程序运行时调用。在这些用户数据中,有一部分数据的存储路径是开放的公共路径,例如android手机中的通讯录信息,其在本地存储器中的存放地址data/data/com.android.provides.contacts是可以从互联网上查询到的,是公开的。而这些存储在开放的公共路径下的用户数据,某些出于系统调用速度的考虑,不适合进行加密存储,这就造成了某些用户数据易被窃取的问题。

本实施例为了提高用户数据的安全性,对存放在开放的公共路径下的数据进行加密保存。同时,为了兼顾用户数据的快速调用需求,将一部分虚拟内存挂载成虚拟磁盘,并将所述虚拟磁盘的地址(例如/mnt/tmp)定义为映射后路径。在系统开机运行时,利用加密模块对存放在开放的公共路径下的加密数据进行解密,并将解密数据按照所述映射后路径存放在虚拟内存中。当系统程序需要调取、增加、删除或修改用户数据时,通过修改系统调用接口(第一系统调用接口)的访问路径从传统的开放的公共路径变更为所述的映射后路径,这样系统增删改查的用户数据便是保存在虚拟内存中的解密后的数据,而不是存放在开放的公共路径下的加密数据,因此无需执行解密运算,可直接调取使用,从而保证了用户数据的调用速度不会因数据加密而产生任何影响,在保持手机既有响应速度的情况下,解决了手机目前面临的用户信息安全性的问题。

为了确保存放在开放的公共路径下的用户数据的完整性,本实施例在手机中设置计时器记录系统连续运行的时间,并预设定时更新时间t。在手机开机运行后,启动计时器计时,当计时器的计时时间达到预设的定时更新时间t时,输出信号触发数据处理模块进入中断。数据处理模块在进入中断后,首先控制计时器清零,并重新开始计时;然后,控制加密模块将存放在虚拟内存中所述映射后路径下的数据进行加密,形成加密数据后,写入本地存储器的所述开放的公共路径下,以替换所述开放的公共路径下原有的加密数据。系统在运行过程中,每隔时间t对开放的公共路径下的加密数据进行一次更新操作,以保证用户数据完整。

此外,在用户操作手机执行关机或重启操作时,为了保证用户数据的完整性,本实施例设置数据处理模块在接收到用户的关机或重启操作指令后,首先控制加密模块对映射后路径下的数据进行加密,并替换所述开放的公共路径下的加密数据后,在进入常规的关机或重启流程。

在本实施例中,所述加密模块可以是手机电路板中内置的加密卡,也可以是tf扩展卡槽中插入的加密卡。当然,也可以采用软加密的方式,基于软件加密算法对用户数据进行加密、解密处理。

在手机的本地存储器中,除了存放在开放的公共路径下的加密数据以外,在其他路径下也可能存储有加密数据。系统在调用这些加密数据时,必须先解密再使用,这会对应用程序的响应速度造成一定程度的影响。为了解决这一问题,本实施例可以利用加密模块对存放在非开放的公共路径下的加密数据进行解密处理;然后,将解密后的数据存放至虚拟内存,例如存放在所述映射后路径下。对于需要调用非开放的公共路径下的加密数据的应用程序,可以修改该应用程序的系统调用接口(第二系统调用接口)的访问路径从传统的存放该类加密数据的路径变更为所述的映射后路径。由此,该应用程序在调用用户数据时,可以从虚拟内存中调取出解密后的用户数据直接使用,无需执行解密运算,从而显著缩短了系统对用户操作的响应时间。

下面结合图2,对本实施例的数据安全存储和快速调用方法进行具体阐述,包括以下步骤:

s201、系统启动运行;

在手机开机后,系统启动运行,加载电路板上的内置加密卡或外置扩展卡槽的tf加密卡。

s202、虚拟内存映射;

系统自动将指定大小的虚拟内存挂载成虚拟磁盘,并将该虚拟磁盘的路径(如mnt/tmp等)定义为映射后路径。

s203、判断开放的公共路径下是否有本地数据库存在,若有,则执行后续步骤;否则,跳转至步骤s205执行;

该步骤用于对保存在开放的公共路径下的用户数据进行查找,例如查找开放的公共路径下是否有通讯录等信息存在。若有,对于本实施例而言,存储在开放的公共路径下的用户数据是已经加密过的数据(用户数据在写入开放的公共路径时,系统已经对用户数据进行了加密处理);若无,则表示手机刚使用不久,还没有用户数据加密保存在此处,因此,无需执行步骤s204的解密映射步骤。

s204、对开放的公共路径下的本地数据库进行解密,并将解密后的数据存储至虚拟内存,并写入所述映射后路径下;

在本步骤中,若开放的公共路径下有本地数据库存在,即,有加密数据存在,则首先利用加密卡的密钥或软件解密算法对所述加密数据进行解密;然后,将解密后的数据存放至虚拟内存的所述映射后路径下。

s205、将需要增删改查所述本地数据库的系统调用接口的访问路径从原先的开放的公共路径修改成所述的映射后路径;

系统程序通过系统调用接口访问所述本地数据库,对本地数据库中的用户数据进行增删改查。在现有技术中,这些系统调用接口的访问路径是开放的公共路径,即,系统直接从开放的公共路径下调取本地数据库使用或者对本地数据库中的用户数据进行增加、删除或修改操作。由于现有技术中存放在开放的公共路径下的用户数据是未经加密的数据,因此读写使用速度快。而对于本实施例而言,由于存储在开放的公共路径下的用户数据是经过加密后的数据,因此,为了保持系统原有的响应速度,本实施例将所述系统调用接口的访问路径从默认的开放的公共路径修改为所述的映射后路径,由此系统在增删改查用户数据时,直接对虚拟内存中的用户数据进行操作,这些数据都是解密后的数据,因此不会影响系统的响应速度。

s206、系统正常运行,在需要增删改查上述用户数据时,通过系统调用接口直接访问虚拟内存,对所述映射后路径下的解密后的用户数据进行增删改查操作;

采用本步骤的数据操作方式,可以让用户在使用手机时感觉与平时操作无异,而且数据处理速度更快,体验更流畅。

s207、对存放在开放的公共路径下的用户数据进行定时更新;

本实施例预设定时更新时间t,当系统的连续运行时间每次到达所述的定时更新时间t时,系统将自动调取虚拟内存中映射后路径下的用户数据,并利用加密卡或软件加密算法对其加密后,保存至所述开放的公共路径下,对所述开放的公共路径下原有的加密数据进行替换。

s208、当系统接收到关机或重启指令时,加密所述映射后路径下的用户数据并对所述开放的公共路径下的加密数据完成更新后,再进入常规的关机或重启流程;

在用户自主选择关机或重启操作后,系统并不会立即执行关机或重启流程,而是先从虚拟内存的所述映射后路径下提取出用户数据,并利用加密卡或软件加密算法对其进行加密处理后,将生成的加密数据写入所述开放的公共路径下,对所述开放的公共路径下原有的加密数据进行替换。替换完成后,系统再进入常规的关机或重启流程,控制手机关机或重新启动。

s209、系统掉电后,虚拟内存中的所述映射后路径下的用户数据自动清空;

在手机关机或重启时,系统会进入掉电状态。在系统掉电后,虚拟内存中的数据自动清空,由于解密数据的存储路径(即,映射后路径)私有隐蔽,因此可以防止手机丢失后,不法人员暴力破解用户信息,继而解决了手机所面临的用户信息安全性问题。

当然,对于系统中存储在其他路径(非公开的公共路径)下的加密数据,也可以采用上述步骤s204-s209的处理方式,先对加密数据进行解密并映射存储至虚拟内存中;然后,将调用此加密数据的系统调用接口的访问路径修改成映射后路径,使系统可以从虚拟内存中调取出解密后的明数据直接使用,继而加快了系统的数据处理速度,使系统对用户的操作响应更迅速,使用体验更流畅。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1