基于重构技术实现敏感数据云端锁定的方法

文档序号:9547504阅读:411来源:国知局
基于重构技术实现敏感数据云端锁定的方法
【技术领域】
[0001]本发明是一种利用程序分析与重构技术实现在现有应用中融合多个设备中的文件,从而实现敏感数据云端锁定的方法,属于软件技术领域,适用于软件维护。
【背景技术】
[0002]随着智能手机的发展,用户越来越多地利用移动办公、移动商务来提高生活、工作效率。与此同时,越来越多的用户敏感数据被保存在手机。然而,这些敏感数据仍然存在各种威胁:如手机丢失、损坏造成数据丢失,恶意应用、手机病毒造成敏感数据泄露等问题。针对数据丢失和数据泄露,出现了以网盘为代表的云存储数据隔离保护技术。然而,对于现在的各种网盘,当用户需要读写这些数据时,数据需先从云端下载至终端,即用户的数据既保存在终端(手机),也保存在云端。云端与终端数据的同步是由用户来操作维护。这类技术仅仅是解决了手机丢失、损坏导致的数据丢失的问题,而没有解决数据保存在终端引起的数据泄露的问题。即使是利用现有的数据隔离进行保护,由于数据仍然保存在手机上,再好的数据加密和隔离机制,也不能完全避免恶意应用的各种攻击。
[0003]综上所述,需要一种支持数据云端一终端融合的方法。它可以在不需要应用开发人员进行二次开发的情况下,使现有应用透明地读写云端数据。用户通过将需要保护的敏感数据存放在云端,解决手机丢失、损坏导致的敏感数据丢失问题;用户通过直接读写云端数据,使数据不保存于终端,解决用户敏感数据泄露的问题。

【发明内容】

[0004]本发明的目的是保护用户敏感数据。其核心思想是由用户指定终端中的部分应用为可信应用,并将敏感数据存储在云端。通过对这些可信应用的程序分析和重构,使这些应用具备访问云端敏感文件的能力。本方法通过将用户的敏感数据存放在云端,实现用户的敏感数据的不丢失;通过只重构用户可信应用,保证敏感数据不泄露。
[0005]本发明采用的技术方案如下:
[0006]一种基于重构技术实现敏感数据云端锁定的方法,其步骤包括:
[0007]1)由用户指定终端中的部分应用为可信应用,并将敏感数据存储在云端;
[0008]2)对指定的可信应用进行重构,将原应用中调用文件相关的API替换为融合了云端和终端的文件相关API ;
[0009]3)通过调用重构后的API,使应用访问云端的敏感数据。
[0010]进一步地,步骤2)所述重构的方法是:
[0011]a)利用关键字匹配,找出所有和文件相关的类;
[0012]b)重构产生文件相关对象的API,把所有生成文件相关对象重构为生成具备操作云端数据能力的对象,同时保证重构后的对象和原对象的继承链的一致性以及操作和属性的一致性;
[0013]c)重构调用文件相关对象的API,调用文件操作的对象包括应用层对象和框架层对象。
[0014]进一步地,上述步骤a)首先构建一个现有框架层文件相关操作的关键字库,再根据该关键字库找出在应用中所有用到了文件相关API的类。
[0015]进一步地,上述步骤c)中,对于框架层对象,在其调用文件相关对象时,利用插装函数获取原始文件相关对象,并让框架层对象直接操作原始对象。
[0016]进一步地,步骤2)的重构过程使运行时的文件相关对象被替换具备云端数据操作能力的对象,这些对象配合运行在云端的云端数据代理,利用文件系统融合机制实现融合云端一终端数据。
[0017]进一步地,所述文件系统融合机制包括基于文件映射的文件系统融合:首先由用户指定一个云端的子文件操作系统,即一组文件和目录组成的集合,再由用户指定云端文件到终端文件的映射规则,最后运行在终端的和运行在云端的云端数据代理一起完成文件的映射,实现两个文件系统的融合。
[0018]进一步地,所述文件系统融合机制还包括基于时间戳的文件元数据缓存与同步,即通过时间戳与云端元数据进行增量式同步,以提高整体系统的性能和可用性。
[0019]本发明提出了一种支持敏感数据云端锁定的方法,能够令用户可信的移动应用直接访问存储于云端的敏感数据,而不将敏感数据持久化存储于终端;可以在不需要移动应用开发人员进行二次开发的情况下,通过程序自动重构现有移动应用,使其具备透明地读写云端敏感数据的能力。本发明结合了现有技术的优点,通过将需要保护的敏感数据存放在云端,解决了由于手机丢失、损坏导致的数据丢失问题;同时又创新性地通过直接读写云端数据,使数据不保存于终端,解决了用户敏感数据泄露的问题。
【附图说明】
[0020]图1是重构前后应用的运行时体系架构变化示意图。
[0021]图2是文件系统融合示意图,其中(a)为融合之前的两个文件系统,(b)为融合之后的结果。
[0022]图3是重构前后的代码示意图,其中(a)为重构前的代码,(b)为重构后的代码。
【具体实施方式】
[0023]为使本发明的上述目的、特征和优点能够更加明显易懂,下面通过具体实施例和附图,对本发明做进一步说明。
[0024]本发明提供一种利用程序分析与重构技术实现敏感数据云端锁定的方法。该方法包含两部分内容:1、实现敏感数据云端锁定的应用重构方法;2、文件系统融合机制。其核心思想是在修改并重构移动应用的二进制字节码,替换其使用的文件操作相关的应用编程接口(API),从而将云端指定的子文件系统与终端文件系统融合,使重构后的应用能透明地读、写云端数据,达到敏感数据云端锁定的目的。本方法首先对现有移动应用进行程序化分析,找出与文件操作相关的计算逻辑,并进行相应的重构,最后重新生成具备直接读、写云端数据能力的应用。本发明有助于提高手机敏感数据的安全性,尤其对于需要保护敏感数据,不希望敏感数据保存在终端上的用户具有十分重要的意义。
[0025]本发明的具体技术方案如下:
[0026](1)实现敏感数据云端锁定的应用重构方法
[0027]现有的移动应用往往利用框架层提供的应用编程接口(Applicat1n ProgramInterface, API)对文件进行相关操作。本方法利用程序分析和重构,将原应用中调用文件相关的API替换为融合了云端一终端的文件相关API。当应用调用了新的API时,该应用就能访问到云端的敏感数据,并对其进行读写操作。
[0028]重构前后,应用的运行时体系架构变化如图1所示。为了实现应用运行时文件相关对象均替换为具备操作云端文件能力的对象,具体的重构过程包含三个步骤:
[0029](a)利用关键字匹配,找出所有和文件相关的类
[0030]应用利用现有的框架层提供的文件相关API对用户数据进行相关操作。为使应用具备操作云端数据的能力,本方法首先构建一个现有框架层文件相关操作的关键字库,再根据这个关键字库找出在应用中所有用到了文件相关API的类。最后对这些类进以下两种重构操作。
[0031](b)重构产生文件相关对象的API
[0032]如图1所示,为保证所有文件相关对象均被替换为具备操作云端数据能力的对象,本方法把所有生成文件相关对象重构为生成具备操作云端数据能力的对象,同时保证重构后的对象和原对象的继承链(Inheritance Chain)的一致性以及操作(Method)和属性(Field)的一致性。例如:在实现例中,我们针对安卓应用中一个常用的文件相关类File类,实现了一个具备操作云端数据能力的类FlowFile,该类的所有操作(Method)和属性(Field)与File类一致,但是某些特别的操作,则会表现出具备云端融合的属性:如listFile操作会返回云端和终端的子文件
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1