买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】具有测试执行环境的装置_华为技术有限公司_201580079609.5 

申请/专利权人:华为技术有限公司

申请日:2015-04-30

公开(公告)日:2020-06-26

公开(公告)号:CN107567627B

主分类号:G06F21/56(20130101)

分类号:G06F21/56(20130101);G06F21/53(20130101);G06F11/36(20060101)

优先权:

专利状态码:有效-授权

法律状态:2020.06.26#授权;2018.02.02#实质审查的生效;2018.01.09#公开

摘要:一种具有标准区域101和测试区域111的装置1。所述标准区域101包括标准执行环境,所述标准执行环境提供对所述装置1的真实资源的访问;所述测试区域111包括测试执行环境,所述测试执行环境提供对模拟资源的访问,模拟资源是对所述装置1的真实资源的建模。当所述应用程序112在所述标准区域101中执行时,所述应用程序112能够访问所述真实资源。当所述应用程序112在所述测试区域111中执行时,所述应用程序112能够访问所述模拟资源,且当所述应用程序112在所述测试区域111中执行时,所述应用程序112无法访问所述真实资源。

主权项:1.一种执行应用程序(112)的装置(1),所述装置(1)用于提供标准区域(101)和提供测试区域(111);所述标准区域(101)包括标准执行环境,所述标准执行环境提供对所述装置(1)的真实资源的访问;所述测试区域(111)包括测试执行环境,所述测试执行环境提供对模拟资源的访问,模拟资源是对所述装置(1)的真实资源的建模;其中,当所述应用程序(112)在所述标准区域(101)中执行时,所述应用程序(112)能够访问所述真实资源;其中,当所述应用程序(112)在所述测试区域(111)中执行时,所述应用程序(112)能够访问所述模拟资源,且当所述应用程序(112)在所述测试区域(111)中执行时,所述应用程序(112)无法访问所述真实资源;其中,当所述应用程序(112)在所述标准区域(101)中执行时,所述装置用于为用户提供选择允许所述应用程序(112)访问的与已访问的模拟资源相对应的真实资源的选项;其中,所述装置用于当应用程序(112)从所述测试区域(111)移动到所述标准区域(101)时,自动向用户呈现所述应用程序(112)在所述测试区域(111)已访问的模拟资源。

全文数据:具有测试执行环境的装置技术领域[0001]本发明一般来说涉及计算设备上的执行环境访问权限,更具体地,涉及允许在执行环境中安装新应用程序的装置。背景技术[0002]移动操作系统(如Android的设备基数越来越大,恶意应用程序和间谍软件也随之增多。此外,应用程序总体来说收集着大量的用户数据,但用户对此却无能为力。在日常生活中,通过移动设备共享个人设备和服务时,消费者日益重视其隐私。地方立法无法以全球环境所需的方式提供足够的控制和保护方法。终端用户需要根据其决定和需求,获取额外的隐私保护手段。[0003]服务提供商当前将“隐私免责声明”作为“脱狱卡”,以获得使用位置、联系人、年龄、性别和其他使用的服务等个人信息的权限。实际上,终端用户别无选择,只能接受这一条件和相关的隐私损失。[0004]因而,利用目前可用的技术,新安装的app应用程序可以自由地扫遍存储在装置上的个人信息,而装置的所有者用户对此一无所知。[0005]因此,需要一种克服或至少减少上述问题的装置。发明内容[0006]本发明的目的在于提供一种能够克服或至少减少上述问题的装置。[0007]上述及其它目的通过独立权利要求的特征来实现。具体实现方式参见从属权利要求、说明书和附图。[0008]第一方面,提供一种执行应用程序的装置,所述装置用于提供标准区域和提供测试区域。所述标准区域包括标准执行环境,所述标准执行环境提供对所述装置的真实资源的访问。所述测试区域包括测试执行环境,所述测试执行环境提供对模拟资源的访问,模拟资源例如,所述模拟资源中的每一资源是对所述装置的真实资源的建模。当所述应用程序在所述标准区域中执行时,所述应用程序能够访问所述真实资源;当所述应用程序在所述测试区域中执行时,所述应用程序能够访问所述模拟资源,且当所述应用程序在所述测试区域中执行时,所述应用程序无法访问或禁止访问所述真实资源。[0009]通过提供测试区域,使所述应用程序可以访问模拟资源而不是真实资源,无需所述应用程序访问真实信息就可以测试所述应用程序尝试访问哪些资源。而且,用户可以测试所述应用程序,不会造成任何风险。[0010]根据第一方面的一种实现方式,每个所述模拟资源均模拟所述装置的真实资源。因此,从所述应用程序的角度来看,所述模拟资源似乎是真实资源。因而,所述用户可以测试所述应用程序的所有功能。[0011]根据第一方面的又一种实现方式,所述装置为移动通信设备。[0012]根据第一方面的又一种实现方式,所述装置用于从应用服务器下载所述应用程序。[0013]根据第一方面的又一种实现方式,所述装置用于将所述应用程序存储在可执行由所述装置的操作系统执行版本中。例如,该应用程序可能在一个编译中。因此,该应用程序可以直接由所述操作系统执行,无需进一步编译。示例性地,该应用程序可以由所述装置从可执行例如已经编译的版本的上述应用服务器下载。[0014]根据第一方面的又一种实现方式,所述测试区域是隔离的执行环境,允许所述应用程序在所述测试区域中测试对资源的访问。因此,当处于测试区域时,所述应用程序可以与系统服务隔离。确保了所述应用程序不会访问不应该访问的信息。[0015]根据第一方面的又一种实现方式,所述装置用于监测所述应用程序在所述测试区域中访问了哪些模拟资源。因此,创建了所述应用程序的信息收集活动的概述。[0016]根据第一方面的又一种实现方式,所述装置具有显示屏,用于对测试区域中的应用程序访问的模拟资源进行可视化。[0017]根据第一方面的又一种实现方式,所述装置用于允许用户将所述应用程序从所述测试区域移动到所述标准区域,并且在所述标准区域中为所述应用程序提供对真实资源的访问。上述应用程序的移动应理解为停止在测试区域中执行该应用程序,并开始在标准区域中执行该应用程序。因此,提供了一种选择在哪个区域安装和或执行该应用程序的机制。因此,提供了简单和直观的用户体验,不需要执行广泛的系统配置。[0018]根据第一方面的又一种实现方式,所述装置用于向用户呈现所述应用程序在所述测试区域中已访问的模拟资源。因此,用户清楚地了解到应用程序在测试区域中的活动。[0019]根据第一方面的又一种实现方式,所述装置用于当应用程序从所述测试区域移动到所述标准区域时,自动向用户呈现所述应用程序在所述测试区域中已访问的模拟资源。因此,与应用程序从测试区域移动到标准区域相关的任何可能的风险将自动提醒给用户。[0020]根据第一方面的又一种实现方式,所述装置用于为用户提供选择,g卩,当所述应用程序在所述标准区域中执行时选择允许所述应用程序访问的与已访问的模拟资源相对应的真实资源。因此,可以选择性地允许应用程序访问不同类型的真实私人信息。[0021]根据第一方面的又一种实现方式,所述装置用于请求用户决定应用程序应安装在所述测试区域中还是所述标准区域中。因此,提供了一种避免应用程序自动安装在标准区域中的机制,并且提供了一种提醒用户选择标准区域或测试区域安装新应用程序的机制。[0022]根据第一方面的又一种实现方式,所述模拟资源包括模拟用户数据后端,优选地,所述真实资源包括真实用户数据后端。提供模拟资源可以测试应用程序在访问用户数据时的活动,无需应用程序访问真实用户数据。[0023]根据第一方面的又一种实现方式,所述模拟用户数据后端包含正确格式化但虚假的用户数据,优选地,真实用户数据后端包含正确格式化且真实的用户数据。在测试区域中提供正确格式化的数据使得创建一个可以检测出自身被放置在测试环境中并因此与放置在标准环境中的行为不同的应用程序更加困难。换句话说,应用程序无法弄清它们当前是在标准区域还是在测试区域中执行。[0024]根据第一方面的又一种实现方式,所述测试区域将所述应用程序与所述装置的操作系统和所述装置上的其他应用程序隔离。因此,提供了一种机制,用于防止新安装的应用程序在测试区域中访问装置上的真实数据和其他应用程序。[0025]根据第一方面的又一种实现方式,所述装置用于隔离所述测试区域。因此,防止测试区域中的应用程序访问测试区域外的资源。[0026]根据第一方面的又一种实现方式,所述装置用于启动应用程序包。[0027]根据第一方面的又一种实现方式,通过认证系统使测试区域变得安全。[0028]根据第一方面的又一种实现方式,该装置用于在执行应用程序之前加载和验证与所述应用程序相关的应用证书,优选地,如果证书无法通过验证,该装置用于阻止执行该应用程序。[0029]根据第一方面的又一种实现方式,该装置用于加载并验证与应用程序相关的应用程序清单。[0030]根据第一方面的又一种实现方式,该装置还包括显示屏和图形用户界面。[0031]根据第一方面的又一种实现方式,该真实资源可以包括联系人、短信、电子邮件、照片、媒体、文件、相机数据、麦克风记录、蓝牙连接信息、设备ID、位置、呼叫信息和或日历信息。[0032]根据第一方面的又一种实现方式,该真实资源分为多种类型的个人信息。[0033]根据第一方面的又一种实现方式,信息类型可以包括联系人、短信、电子邮件、照片、媒体、文件、相机数据、麦克风记录、蓝牙连接信息、设备ID、位置、呼叫信息和或日历信息。[0034]上述目的也是根据第二方面实现的。[0035]第二方面,提供一种用于在装置上测试应用程序的方法,其中,该装置例如为执行应用程序的计算设备或对执行应用程序的计算设备建模的节点。所述方法包括:在不允许访问所述装置上的真实资源的测试区域中执行应用程序;允许所述应用程序在所述测试区域中访问模拟资源,模拟资源例如,所述模拟资源中的每一资源是对所述装置的真实资源的建模。[0036]根据第二方面的一种实现方式,该方法还包括:阻止所述测试区域中执行的应用程序访问所述装置上的真实资源。[0037]根据第二方面的又一种实现方式,该方法还包括:当所述应用程序在所述测试区域中执行时,监测所述应用程序访问了哪些模拟资源。[0038]根据第二方面的又一种实现方式,该方法还包括:向用户呈现所述应用程序在测试区域中执行时访问的模拟资源的列表。[0039]以下示例实施例中将清楚地描述这些和其他方面。附图说明[0040]在本公开内容的以下详述部分中,将参看附图中所展示的示例性实施例来更详细地解释本发明,其中:[0041]图1示出了示例性实施例提供的操作系统中两个执行区域。[0042]图2是阐明安装应用程序的过程的截屏图。[0043]图3是阐明示例性实施例提供的在区域中安装和运行应用程序的过程的方法的流程图。[0044]图4是表明安装在装置上的多个应用程序包括安装在测试区域中的一个应用程序的截屏图。[0045]图5是测试区域中运行的应用程序的截屏图。[0046]图6是表示将应用程序从测试区域移动到标准区域的对话框的截屏图。[0047]图7是显示活动日志的截屏图。[0048]图8是示例性实施例提供的装置的正视图。[0049]图9是阐明图8中所述装置的一般架构的框图。具体实施方式[0050]图1示出了装置1的操作系统中的两个分层堆栈,并且示出了两个堆栈之间的差异。左侧展示的是执行可信应用程序1〇2的标准执行环境101。右侧展示的是测试执行环境111,执行不可信应用程序112以测试应用程序112尝试访问或实际访问测试执行环境111中的哪些资源和或应用程序。[0051]从应用程序方面来看,两个堆栈101和111看起来相似并且优选地,是不可区分的。两个堆栈101和111都在自身的隔离环境中,具有相似的执行环境103和II3以及界面104和114。[0052]在通过使用Linux命名空间的进程隔离实现的示例性实施例中描述了与操作系统实际系统服务)的隔离。在标准区域101内,进程隔离(由操作系统实现的)是足够的,即测试区域112的隔离是由容器使用命名空间实现的。[0053]堆栈之间的区别在于:在测试区域111中,应用程序以模拟后端115的形式访问模拟数据,模拟后端115包含虚假数据或虚拟数据,而真实后端105包含真实用户数据。模拟后端115包含具有虚假数据或虚拟数据的数据后端和硬件接口,该接口仅具有虚拟或存根实现来保护用户数据和其他应用程序数据,为系统提供安全性。每个模拟资源都对装置1的真实资源进行了建模,即从应用程序的角度来看,模拟资源和真实资源是无法区分的。[0054]后端模拟数据的非详尽列表包括以下数据类型:联系人、短信和彩信、电子邮件、照片媒体文件、相机、麦克风、蓝牙连接信息、设备ID、位置、呼叫信息和或日历。[0055]模拟数据模拟真实资源或对真实资源进行建模,对于有关的个人数据类型,模拟数据格式正确,但正确格式化的个人数据的内容是假的,即是伪造或虚假的。[0056]在示例性实施例中,应用程序112是在装置1上从可执行例如,(预编译版本中的应用服务器下载的,因此,应用程序112可由装置1的操作系统执行,无需进一步编译。[0057]图2示出了用户在装置1上安装新应用程序112的过程的截屏图。区域管理系统提示用户选择1〇1和111中的哪个区域安装应用程序112。在该示例性实施例中,是在标准区域101和测试区域111之间进行选择。用户选择相关区域来进行安装,并通过按下安装按钮209来确认安装。操作系统中的区域数量取决于装置1的使用和功能,可以是两个或更多。[0058]图3示出了计算设备1中的后端访问过程的实施例。对于标准区域1〇1中的可信应用程序1〇2和测试区域111中的不可信应用程序112,该过程是完全相同的。两个过程之间的区别在于:测试区域111中的不可信应用程序112访问包含虚拟用户数据的模拟后端115,而可信应用程序102使用或访问包含真实用户数据的真实后端1〇5。[0059]图3描述了不可信应用程序II2访问测试区域111中的模拟后端115的过程。首先,在步骤200中请求应用程序包)112在系统的测试执行环境111中启动。执行环境可以理解为诸如计算设备硬件或其他通过软件或其他方式对计算设备硬件进行建模的节点。接下来,系统在步骤201中加载应用程序的证书。应用程序的证书在本发明的上下文中被认为是可以验证应用程序作者的任何信息,即应该在应用程序包中的确切数据。如果证书签名与应用程序包的数据匹配,则系统认为该包是完整的。如果包数据与证书不匹配,则系统知道包已更改,因此认为该包已损坏,且系统不予以运行。在验证包完整后,系统在步骤2〇2中加载应用程序清单。_[0060]清单中包含了应用程序112需要访问的权限。步骤203:此时,系统开始在测试执行环境111中运行应用程序。步骤204:应用程序112在运行时将访问界面。步骤205:为此,系统检查应用程序是否有权访问界面后端。为了测试测试区域111中的不可信应用程序112,所有权限都被启用,从而使不可信应用程序112能够自由地使用所有模拟后端115。步骤2〇6:由于应用程序112可以成功访问界面,所以不可信应用程序112将访问模拟后端115。步骤207:系统监测不可信应用程序112访问的资源,并将这些活动记录到日志中。[0061]测试区域111向用户提供安全的环境,使用户可以尝试新的(不可信的)应用程序112。测试区域111形成的容器确保在没有用户授权的情况下不使用真实的)系统资源。如图4中的截屏图所示,应用程序112以与所有其他应用程序211相同的方式显示在应用程序网格210上,并且在测试区域容器111中添加关于应用程序放置的图形指示212。[0062]图5示出了在测试区域111中运行的具有示例功能:功能1、功能和功能3的应用程序112的截屏图213。然而,应当理解,这些功能仅仅是说明性的,并不代表具体应用程序112的功能。这些功能会变化且依赖于所涉及的应用程序112,但不一定在显示屏上显示为虚拟按钮。[0063]如图5中的截屏图所示,应用程序112周围设置有边界214,以指示用户应用程序112在测试区域111中运行。应用程序112可以访问诸如用户名、地址、电话号码、位置(固定坐标等虚拟或虚假资源来自模拟后端)。[0064]可以在测试区域中使用应用程序112,以了解其功能。一旦用户决定想拥有完整的功能,可移动应用程序112至标准区域101中,例如,使用图形用户界面。在这一过程中,有关应用程序112自动显示在测试区域中执行时在模拟后端中访问的资源的列表或日志。[0065]图7示出了用户将应用程序从测试区域111移动或想要移动到标准区域1〇1时显示的日志对话框217。当应用程序从测试区域111移动到标准区域112时,将要求用户授予所需的访问权限。应用程序112所需的所有资源都显示在图形列表217中,供用户参考和选择用户决定允许应用程序112在标准区域101中执行时访问的资源。[0066]软件开发人员可以使用通过本发明中讨论的方法启用的简单的开发工具来定义应用程序112所使用的资源。那些且只有那些资源在安装应用程序的容器中可用。例如,银行应用程序不需要访问用户联系人数据,因此该资源不可用于该应用程序。这就确保了应用程序不能利用超出该容器范围的任何资源。[0067]图8示出了能够运行应用程序的装置1。装置1可以是计算设备硬件或者通过软件或其他方式对计算设备进行建模的节点。[0068]在该示例实施例中,装置1是移动电话。然而,应当理解,该装置可以是可以运行应用程序的任何其他设备,例如,平板电脑、笔记本电脑或台式电脑。该装置丨具有壳体2、显示屏3和若干按钮4和5。作为一个实施例,该装置1适用于通过4G网络等蜂窝网络进行的通信,但也可以适用于使用不同的无线网络或基于TCPIP的网络,以覆盖可能的VoIP网络(例如通过WLAN、WIMAX、或类似的网络)。[0069]装置1设置有可以通过液晶显示器或有源矩阵有机发光二极管实现的显示屏3。显示屏3可以与触摸面板组合形成单个模块。作为一个实施例,该装置1设置有若干按键4和5用于用户输入。除了触摸屏之外,装置1可以设置有或连接到小键盘或键盘。[0070]装置1中的电池组为装置1的电子部件提供电力。还提供了一种用于为电池组充电的端子。在另一实施例中,该装置由市电供电且没有设置电池。[0071]图9以框图的形式示出了装置1的一般架构。处理器18通过发射机接收机电路19和天线20控制与蜂窝网络的通信。麦克风6将声音变换为模拟信号,由此形成的模拟信号在AD转换器未示出)中进行AD转换,然后语音在数字信号处理单元14digitalsignalprocessor,简称DSP中进行编码。编码的语音信号被传送到支持例如4G终端软件的处理器1S。总线7形成到处理器18和该装置的外围单元的接口,包括例如RAM存储器17a、快闪ROM存储器l7b、SIM卡16、显示屏3、蓝牙控制器25、通信端口36、触摸面板控制器29、外部RAM27和按键4和5以及数据、电源等)。数字信号处理单元14解码通过DA转换器未示出)从处理器18传送到扬声器5的信号。[0072]本发明实施例的一个优点是可以具有一个能够以安全的方式使用的不损害用户隐私、设备完整性和设备及用户数据的机密性的系统。从用户角度来看,该机制简单,不需要大量的系统配置技能。[0073]本发明实施例的另一优点是为用户提供了一种用于使用和测试不可信的或新的应用程序的隔离机制。[0074]本发明实施例的又一优点是为用户提供了一种用于使用和测试不可信的或新的应用程序而不损害用户数据隐私、设备完整性和数据机密性的隔离机制。[0075]本发明实施例的又一优点是提供了一种用于测试区域的模拟数据后端,以使实际或真实用户数据不会暴露于不可信应用程序。不可信应用程序只能访问所谓的默认虚假或伪造值即虚假电话簿中的默认名、默认位置等)。[0076]本发明实施例的又一优点是提供了一种在测试区域和标准区域之间传送应用程序的机制。[0077]在此结合各种实施例描述了本发明。但本领域技术人员通过实践本发明,研宄附图、本发明以及所附的权利要求,能够理解并获得公开实施例的其他变体。在权利要求书中,词语“包括”不排除其它元素或步骤,不定冠词“一”不排除多个。单个处理器或其他单元可以完成权利要求中描述的几个器件的功能。在仅凭某些措施被记载在相互不同的从属权利要求书中这个单纯的事实并不意味着这些措施的结合不能被有效地使用。计算机程序可存储或分发到合适的介质上,例如与其它硬件一起或者作为其它硬件的部分提供的光存储介质或者固态介质,还可以以其它形式例如通过因特网或者其它有线或无线电信系统分发。[0078]权利要求书中所用的参考符号不应解释为限制了范围。

权利要求:I.一种执行应用程序(112的装置(1,所述装置1用于提供标准区域(101和提供测试区域111;所述标准区域101包括标准执行环境,所述标准执行环境提供对所述装置(1的真实资源的访问;所述测试区域(111包括测试执行环境,所述测试执行环境提供对模拟资源的访问,模拟资源是对所述装置1的真实资源的建模;其中,当所述应用程序(112在所述标准区域(101中执行时,所述应用程序(112能够访问所述真实资源;其中,当所述应用程序(112在所述测试区域(111中执行时,所述应用程序(112能够访问所述模拟资源,且当所述应用程序(112在所述测试区域(111中执行时,所述应用程序112无法访问所述真实资源。2.根据权利要求1所述的装置(1,其特征在于,每个所述模拟资源均模拟所述装置的真实资源。3.根据权利要求1或2所述的装置1,其特征在于,所述装置为移动通信设备。4.根据权利要求1至3任意一项所述的装置,其特征在于,所述装置(1用于从应用服务器下载所述应用程序(112。5.根据权利要求1至4任意一项所述的装置,其特征在于,所述装置(1用于将所述应用程序112存储在可执行版本中。6.根据权利要求1至5任意一项所述的装置,其特征在于,所述测试区域(111是隔离的执行环境,允许所述应用程序112在所述测试区(111中执行时测试对资源的访问。7.根据权利要求6所述的装置⑴,其特征在于,所述装置用于当所述应用程序112在所述测试区域111中执行时,监测所述应用程序访问了哪些模拟资源。8.根据权利要求1至7任意一项所述的装置1,其特征在于,所述装置用于允许用户将所述应用程序(112从所述测试区域111移动到所述标准区域(101,并且当所述应用程序112在所述标准区域101中执行时为所述应用程序提供对真实资源的访问。9.根据权利要求1至8任意一项所述的装置1,其特征在于,所述装置用于当应用程序从所述测试区域111移动到所述标准区域101时,自动向用户呈现所述应用程序(112在所述测试区域111己访问的模拟资源。10.根据权利要求1至9任意一项所述的装置1,所述装置用于为用户提供选择,S卩,当所述应用程序在所述标准区域(101中执行时选择允许所述应用程序(112访问的与己访问的模拟资源相对应的真实资源。II.根据权利要求1至10任意一项所述的装置(1,所述装置用于请求用户决定应用程序(112应安装在所述测试区域111中还是所述标准区域101中。12.根据权利要求1至11任意一项所述的装置(1,其特征在于,所述模拟资源包括模拟用户数据后端115,优选地,所述真实资源包括真实用户数据后端105。13.根据权利要求12所述的装置1,其特征在于,所述模拟用户数据后端(115包含正确格式化但虚假的用户数据,真实用户数据后端105包含正确格式化且真实的用户数据。14.根据权利要求1至13任意一项所述的装置(1,其特征在于,所述测试区域(111将所述应用程序112与所述装置的操作系统和所述装置1上的其他应用程序102、112隔尚。15.—种用于在执行应用程序的装置⑴上测试应用程序的方法,所述方法包括:在不允许访问所述装置⑴上的真实资源的测试区域111中执行应用程序112;允许所述应用程序(112在所述测试区域111中访问模拟资源,模拟资源是对所述装置1的真实资源的建模。16.根据权利要求15所述的方法,还包括:阻止所述测试区域(111中执行的应用程序访问所述装置上的真实资源。17.根据权利要求15或16所述的方法,还包括:当所述应用程序(112在所述测试区域111中执行时,监测所述应用程序访问了哪些模拟资源。18.根据权利要求17所述的方法,还包括:向用户呈现所述应用程序(112在测试区域112中执行时访问的模拟资源的列表217。19.一种计算机程序,具有当所述计算机程序在处理器上运行时用于执行根据权利要求15至18中任一项所述的方法的程序代码。

百度查询: 华为技术有限公司 具有测试执行环境的装置

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。