您好,欢迎来到意榕旅游网。
搜索
您的当前位置:首页应用分发系统、应用分发方法、终端和程序[发明专利]

应用分发系统、应用分发方法、终端和程序[发明专利]

来源:意榕旅游网
(19)中华人民共和国国家知识产权局

*CN103052958A*

(10)申请公布号 CN 103052958 A(43)申请公布日 2013.04.17

(12)发明专利申请

(21)申请号 201180039477.5(22)申请日 2011.07.01(30)优先权数据

2010-179404 2010.08.10 JP(85)PCT申请进入国家阶段日 2013.02.07

(86)PCT申请的申请数据

PCT/JP2011/065198 2011.07.01(87)PCT申请的公布数据

WO2012/020612 JA 2012.02.16(71)申请人NEC比葛露株式会社

地址日本东京都

(72)发明人榎本敦之 芳贺康平 田冈洋平

广嶋隆宪(74)专利代理机构北京市金杜律师事务所

11256

代理人王茂华 陈姗姗

(51)Int.Cl.

G06F 21/33(2013.01)H04L 29/08(2006.01)

权利要求书 3 页 说明书 10 页 附图 6 页权利要求书3页 说明书10页 附图6页

()发明名称

应用分发系统、应用分发方法、终端和程序(57)摘要

在本发明中,执行文件中的证书数据被作为证书文件存储在访问受限的保护数据存储区(14)中。此后,如果证书数据未嵌入其中的执行文件被作为用于更新的执行文件而从应用分发服务器(40)分发,则当通过执行该用于更新的执行文件来使用应用时,使用存储在该保护数据存储区(14)中的证书文件。CN 103052958 ACN 103052958 A

权 利 要 求 书

1/3页

1.一种应用分发系统,包括:终端,其执行应用的已安装执行文件并且继而使用所述应用;以及应用分发服务器,其向所述终端分发所述应用的更新执行文件,

其中安装在所述终端中的所述执行文件被更新为从所述应用分发服务器向所述终端分发的所述更新执行文件,

其中安装在所述终端中的所述执行文件包含使用所述应用所需的证书数据,以及

其中所述终端将包含在所述执行文件中的所述证书数据作为证书文件存储在已被访问的第一存储区中,并且当不包含所述证书数据的执行文件作为所述更新执行文件而从所述应用分发服务器被分发时,所述终端基于存储在所述第一存储区中的所述证书文件来执行所述更新执行文件,以便使用所述应用。

2.根据权利要求1所述的应用分发系统,其中所述终端包括:第二存储区,其中存储有被提供的所述执行文件;第一处理装置,当存储在所述第二存储区中的所述执行文件被安装时,所述第一处理装置向第三存储区传输存储在所述第二存储区中的所述执行文件;以及

第二处理装置,其在所述执行文件被安装之后、所述应用被初次激活时,将包含在存储于所述第三存储区中的所述执行文件中的所述证书数据作为所述证书文件传输至所述第一存储区,并且继而基于存储在所述第一存储区中的所述证书文件来使用所述应用,

其中当所述更新执行文件从所述应用分发服务器被分发时,所述第一处理装置用所述更新执行文件替换存储在所述第三存储区中的所述执行文件,以及

其中所述第二处理装置基于存储在所述第一存储区中的所述证书文件来执行存储在所述第三存储区中的所述更新执行文件,以便使用所述应用。

3.根据权利要求2所述的应用分发系统,

其中所述执行文件的所述应用能够访问所述第一存储区,以便将所述证书文件存储在所述第一存储区中以及从所述第一存储区读取所述证书文件,以及

其中只有预先指定的用户能够访问所述第二存储区和所述第三存储区,以便将所述执行文件存储在所述第二存储区和所述第三存储区中以及从所述第二存储区和所述第三存储区读取所述执行文件。

4.一种用于应用分发系统的应用分发方法,所述应用分发系统包括终端,其执行应用的已安装执行文件并且继而使用所述应用;以及应用分发服务器,其向所述终端分发所述应用的更新执行文件,安装在所述终端中的所述执行文件被更新为从所述应用分发服务器向所述终端分发的所述更新执行文件,被安装到所述终端的所述执行文件包含使用所述应用所需的证书数据,所述应用分发方法包括过程:

使所述终端将包含在所述执行文件中的所述证书数据作为证书文件存储在已被访问的第一存储区中;

使所述应用分发服务器向所述终端分发不包含所述证书数据的执行文件以作为所述更新执行文件;以及

使所述终端基于存储在所述第一存储区中的所述证书文件来执行从所述应用分发服务器分发的所述更新执行文件,以便使用所述应用。

2

CN 103052958 A

权 利 要 求 书

2/3页

5.根据权利要求4所述的应用分发方法,进一步包括过程:使所述终端将被提供的执行文件存储在第二存储区中;

使所述终端在存储在所述第二存储区中的所述执行文件被安装时,向第三存储区传输存储在所述第二存储区中的所述执行文件;

使所述终端在所述执行文件被安装之后、所述应用被初次激活时,将包含在存储于所述第三存储区中的所述执行文件中的证书数据作为所述证书文件传输至所述第一存储区;

使所述终端在所述更新执行文件从所述应用分发服务器被分发时,用所述更新执行文件替换存储在所述第三存储区中的所述执行文件;以及

使所述终端基于存储在所述第一存储区中的所述证书文件来执行存储在所述第三存储区中的所述更新执行文件,以便使用所述应用。

6.一种终端,其执行应用的已安装执行文件并且继而使用所述应用,并且将所述已安装执行文件更新为从应用分发服务器分发的更新执行文件,

其中安装在所述终端中的所述执行文件包含使用所述应用所需的证书数据,以及

其中包含在所述执行文件中的证书数据作为证书文件被存储在已被访问的第一存储区中,并且在不包含所述证书数据的执行文件作为所述更新执行文件而从所述应用分发服务器被分发时,所述更新执行文件基于存储在所述第一存储区中的所述证书文件而被执行以便使用所述应用。

7.根据权利要求6所述的终端,进一步包括:第二存储区,其中存储有被提供的所述执行文件;第一处理装置,当存储在所述第二存储区中的所述执行文件被安装时,所述第一处理装置向第三存储区传输存储在所述第二存储区中的所述执行文件;以及

第二处理装置,其在所述执行文件被安装之后、所述应用被初次激活时,将包含在存储于所述第三存储区中的所述执行文件中的所述证书数据作为所述证书文件传输至所述第一存储区,并且继而基于存储在所述第一存储区中的所述证书文件来使用所述应用,

其中当所述更新执行文件从所述应用分发服务器被分发时,所述第一处理装置用所述更新执行文件替换存储在所述第三存储区中的所述执行文件,以及

其中所述第二处理装置基于存储在所述第一存储区中的所述证书文件来执行存储在所述第三存储区中的所述更新执行文件,以便使用所述应用。

8.根据权利要求7所述的终端,

其中所述执行文件的所述应用能够访问所述第一存储区,以便将所述证书文件存储在所述第一存储区中以及从所述第一存储区读取所述证书文件,以及

其中只有预先指定的用户能够访问所述第二存储区和所述第三存储区,以便将所述执行文件存储在所述第二存储区和所述第三存储区中以及从所述第二存储区和所述第三存储区读取所述执行文件。

9.一种程序,其使终端执行步骤,所述终端执行应用的已安装执行文件并且继而使用所述应用,并且将所述已安装执行文件更新为从应用分发服务器被分发的更新执行文件,所述步骤包括:

将包含在被提供的执行文件中并且是使用所述应用所需的证书数据作为证书文件存

3

CN 103052958 A

权 利 要 求 书

3/3页

储在已被访问的第一存储区中;以及

当不包含所述证书数据的执行文件作为所述更新执行文件而从所述应用分发服务器被分发时,基于存储在所述第一存储区中的所述证书文件来执行所述更新执行文件,以便使用所述应用。

10.根据权利要求9所述的程序,进一步包括:

使所述终端将被提供的执行文件存储在第二存储区中;

使所述终端在存储于所述第二存储区中的所述执行文件被安装时,向第三存储区传输存储在所述第二存储区中的执行文件;以及

使所述终端在所述执行文件被安装之后、所述应用被初次激活时,将包含在存储于所述第三存储区中的所述执行文件中的所述证书数据作为所述证书文件传输至所述第一存储区;

使所述终端在所述更新执行程序从所述应用分发服务器被分发时,用所述更新执行文件来替换存储在所述第三存储区中的所述执行文件,以及

使所述终端基于存储在所述第一存储区中的所述证书文件来执行存储在所述第三存储区中的所述更新执行文件,以便使用所述应用。

4

CN 103052958 A

说 明 书

应用分发系统、应用分发方法、终端和程序

1/10页

技术领域

本发明涉及分发用于与服务器通信的应用的应用分发系统、应用分发方法、终端

和程序,以及具体地涉及针对在使用应用时所需的证书的保护技术。

[0001]

背景技术

近年来,已针对智能电话、因特网终端、板式终端等发布了基于包含开源操作系统、中间件和主要应用的软件栈包的平台(例如,参考非专利文献1)。[0003] 前述平台提供有这样的机制,即,不向终端的用户授予根权限,而是向已安装在终端上的每个包指派唯一的Linux用户ID,每个应用基于该Linux用户ID来执行,并且由应用的执行所创建的文件存储在保护数据存储区中,使得终端的用户和其他应用不能对该保护数据存储区进行读取和写入(例如,参考非专利文献2)。[0004] 前述平台还提供有这样的机制,其保护应用以免被拷贝。已经指定为处于保护状态的应用被安装在保护应用存储区中,未授权的用户不能向其写入和从其读取数据(例如,参考非专利文献3)。

[0005] 如果安装了已被指定为处于保护状态的应用,则除了包含在包(.apk)中的应用执行文件(.dex)之外的文件不会安装至未授权用户不能从其读取数据以及向其写入数据的保护区,而是安装至未授权用户可以从其读取数据以及向其写入数据的非保护区。由此,如果安装了包含应用执行文件和客户端证书文件的包文件,则客户端证书文件不会安装在保护区中。结果,用户可能从该包文件移除应用使用的客户端证书(例如,参考非专利文献4)。

[0006] 已经设想了可以解决这种问题的技术。即,应用程序的执行文件包含证书,以便容易地安装执行文件和证书(例如,参考专利文献1)。利用此技术,由于证书与执行文件一起安装在保护区中,可以防止用户从包中移除应用使用的客户端证书。[0007] 在前述平台中,优选的是已经安装的应用被更新。为此,提供了一种分发新安装应用及更新该应用所需的包的机制,作为称作因特网上市场的服务器。在更新应用时,包含应用执行文件、客户端证书文件和证书数据的包文件被上载至称为市场的服务器,以便更新应用(例如,参考非专利文献5)。[0008] 相关现有技术文献[0009] 专利文献

[0010] 专利文献1:JP2007-272610A,公开[0011] 非专利文献[0012] 非专利文献1:Android-Wikipediahttp://ja.wikipedia.org/wiki/Android[0013] 非专利文献2:Android Developers Security and Permissions(Android开发者安全和权限)http://developer.android.com/guide/topics/security/security.html#userid[0014] 非专利文献3:Forward-Locked Applications(前向锁定应用)http://[0002]

5

CN 103052958 A

说 明 书

2/10页

developer.android.com/guide/appendix/market-filters.html#other-f ilters[0015] 非专利文献4:App Install Location(应用安装位置)http://developer.android.com/guide/appendix/install-location.html[0016] 非专利文献5:Publishing Your Applications(公布你的应用)http://developer.android.com/guide/publishing/publishing.html发明内容

本发明要解决的问题

[0018] 然而,当应用以前述方式进行更新时,由于包含应用执行文件、客户端证书文件和证书数据的包文件被上载至服务器,如果分发该应用的服务器的管理员是恶意的,他或她可能从包文件移除客户端证书文件和证书数据。由于分发应用的服务器可能不是由向其分发应用的终端制造方安装的,所以恶意的管理员可以掌控服务器。[0019] 本发明是从前述技术中存在的问题角度出发的。本发明的目的在于提供应用分发系统、应用分发方法、终端和程序,其允许在这样的状态中更新应用,即,分发更新应用的服务器的管理员不能访问客户端证书。[0020] 解决问题的手段[0021] 为了实现上述目的,本发明是一种应用分发系统,包括:[0022] 终端,其执行应用的已安装执行文件以及继而使用该应用;以及[0023] 应用分发服务器,其向所述终端分发所述应用的更新执行文件,

[0024] 其中安装在该终端中的所述执行文件被更新为从所述应用分发服务器向所述终端分发的所述更新执行文件,

[0025] 其中安装在该终端中的所述执行文件包含使用所述应用所需的证书数据,以及[0026] 其中所述终端将包含在所述执行文件中的所述证书数据作为证书文件存储在已被访问的第一存储区中,并且在不包含所述证书数据的执行文件被作为所述更新执行文件而从所述应用分发服务器分发时,所述终端基于存储在所述第一存储区中的所述证书文件来执行所述更新执行文件,以便使用所述应用。[0027] 另外,本发明是一种用于应用分发系统的应用分发方法,该应用分发系统包括终端,其执行应用的已安装执行文件以及继而使用该应用;以及应用分发服务器,其向所述终端分发所述应用的更新执行文件,安装在所述终端中的所述执行文件被更新为从所述应用分发服务器向所述终端分发的所述更新执行文件,安装在所述终端中的所述执行文件包含使用所述应用所需的证书数据,所述应用分发方法包括下述过程:

[0017]

使所述终端将包含在所述执行文件中的所述证书数据作为证书文件存储在已被访问的第一存储区中;

[0029] 使所述应用分发服务器向所述终端分发不包含所述证书数据的执行文件以作为所述更新执行文件;以及

[0030] 使所述终端基于存储在所述第一存储区中的所述证书文件来执行从所述应用分发服务器分发的所述更新执行文件,以便使用所述应用。[0031] 另外,本发明是一种终端,其执行应用的已安装执行文件以及继而使用该应用,以及将所述已安装执行文件更新为从所述应用分发服务器分发的更新执行文件,

[0028]

6

CN 103052958 A[0032]

说 明 书

3/10页

其中安装在所述终端中的所述执行文件包含使用所述应用所需的证书数据,以及

[0033] 其中包含在所述执行文件中的所述证书数据被作为证书文件存储在已被访问的第一存储区中,并且在不包含所述证书数据的执行文件被作为所述更新执行文件而从所述应用分发服务器分发时,基于存储在所述第一存储区中的所述证书文件来执行所述更新执行文件,以便使用所述应用。[0034] 此外,本发明是一种程序,其使终端执行步骤,其中终端执行应用的已安装执行文件以及继而使用该应用,以及将所述已安装执行文件更新为从所述应用分发服务器分发的更新执行文件,所述步骤包括:

[0035] 将包含在提供的执行文件中的并且是使用所述应用所需的证书数据作为证书文件存储在已被访问的第一存储区中;以及

[0036] 在不包含所述证书数据的执行文件被作为所述更新执行文件从而所述应用分发服务器分发时,基于存储在所述第一存储区中的所述证书文件执行所述更新执行文件,以便使用所述应用。[0037] 本发明的效果[0038] 根据本发明,包含在执行文件中的证书数据被作为证书文件存储在已被访问的第一存储区中。此后,如果将不包含证书数据的执行文件作为更新执行文件进行分发,则基于存储在第一存储区中的证书文件来执行更新执行文件,以便使用该应用。由此,可以在这样的状态中更新应用,即,分发更新应用的服务器的管理员不能访问该客户端证书。附图说明

图1是示出根据本发明一个实施方式的应用分发系统的框图。[0040] 图2是描述用于图1所示应用的基本操作的流程图。

[0041] 图3是示出存储在图1所示的保护应用存储区中的安装包文件的结构的示意图。[0042] 图4是描述在图1所示应用分发系统中、用于图3所示安装包文件的预安装操作的时序图。

[0043] 图5是描述在图1所示应用分发系统中、用于应用的常规激活操作的时序图。[0044] 图6是描述在图1所示应用分发系统中、用户针对用户终端执行的完全重置操作的时序图。

[0045] 图7是描述在图1所示应用分发系统中、用于应用的更新操作的时序图。

[0046] 图8是示出了在图1所示开发者终端的递送产品存储区中所存储的更新版本安装包文件的结构的示意图。

[0039]

具体实施方式[0047] 接着,将参考附图来描述本发明的实施方式。

[0048] 图1是示出根据本发明一个实施方式的应用分发系统的框图。[0049] 如图1所示,根据此实施方式的应用分发系统包括用户终端10、开发者终端20、服务器30和应用分发服务器40。

[0050] 当用户终端10使用应用时,用户终端10执行已安装的执行文件并访问服务器30。用户终端10包括临时保护存储区11、应用存储区12、保护应用存储区13、保护数据存储区

7

CN 103052958 A

说 明 书

4/10页

14、调试桥(debug bridge)15、安装器16、应用17和下载器18。用户终端10例如可以是便携式信息终端(PDA:便携式数据助理)或者便携式电话终端,每个提供有诸如Android的OS(操作系统)。用户终端10的根权限未被授予其用户。安装在用户终端10中的每个包被指派以唯一的Linux用户ID。每个应用基于该Linux用户ID来执行。根权限仅授予用户终端10的制造方的授权人员。

[0051] 开发者终端20是诸如个人计算机的终端,在该终端上开发安装至用户终端10的应用。用户终端10的制造方的工程师使用开发者终端20。开发者终端20包括数据写入工具21、递送产品存储区22和浏览器23。

[0052] 服务器30是需要基于SSL的双向认证的WEB服务器。

[0053] 应用分发服务器40是位于因特网上向用户终端10分发应用的服务器。应用分发服务器40包括内容存储区41和WEB服务器42。应用分发服务器40是通常称为市场的服务器。

[00] 首先,将描述用户终端10的组成元件。

[0055] 临时保护存储区11对应于本发明的第二存储区。临时保护存储器11存储通过调试桥15从开发者终端20接收的文件。当安装器16按照调试桥15的命令或用户终端11的启动脚本的命令进行操作时,存储在临时保护存储区11中的文件被传递至在用户终端10的存储器(未示出)上操作的安装器16。仅作为预先指定用户的根权限用户可以在临时保护存储区11中存储文件以及从其读取文件。换言之,仅用户终端10的制造方的授权人员可以在临时保护存储区11中存储文件以及从其读取文件。由此,包括购买者在内的用户终端10的用户不能从临时保护存储区11读取文件。临时保护存储区11中存储的文件不会被清除,即使用户终端10被完全重置(恢复至工厂默认状态)也是如此。[0056] 应用存储区12存储从安装器16接收的应用执行文件和辅助文件。在执行应用17时或者在由应用17请求时,存储在用户终端10的存储器中的文件被传递至应用17。即使未经根授权的用户也可以在应用存储区12中存储文件以及从其读取文件。当用户终端10被完全重置时,存储在应用存储区12中的文件被清除。应用存储区12对应于Android的“/data/app”。

[0057] 保护应用存储区13对应于本发明的第三存储区。保护应用存储区13存储从安装器16接收的应用执行文件。在执行应用时,存储在保护应用存储区13中的文件被传递至用户终端10的存储器。仅根权限用户可以在保护应用存储区13中存储文件以及从其读取文件。换言之,仅用户终端10的制造方的授权人员可以在保护应用存储区13中存储文件以及从其读取文件。结果,包括购买者在内的用户终端10的用户不能从保护应用存储区13读取文件。当用户终端10被完全重置时,存储在保护应用存储区13中的文件被清除。保护应用存储区13对应于Android的“/data/app-private”。

[0058] 保护数据存储区14对应于本发明的第一存储区。保护数据存储区14存储从应用17接收的文件。在由应用17请求时,存储在保护数据存储区14中的文件被传递至应用17。仅根权限用户、已创建文件的应用、或者利用与已创建文件的应用相同的码签名证书进行签署的应用访问保护数据存储区14,以便在保护数据存储区14中存储文件以及从其读取文件。由此,当用户终端10是提供有Android OS的终端时,仅应用17或用户终端10的制造方的授权人员可以在保护数据存储区14中存储文件以及从其读取文件。包括购买者

8

CN 103052958 A

说 明 书

5/10页

在内的用户终端10的用户不能从保护数据存储区14读取文件。当用户终端10被完全重置时,存储在保护数据存储区14中的文件被清除。保护数据存储区14对应于Android的“/data/data/application name”(例如,jp.ne.biglobe.applicationname)。[0059] 在由开发者终端20的数据写入工具21命令时,调试桥15执行安装应用、激活应用和操作文件的命令。另外,调试桥15将从数据写入工具23接收的文件传递至临时保护存储区11,使得其存储接收的文件。数据写入工具21和调试桥15利用USB线缆等连接。调试桥15对应于Android的“adb”。

[0060] 安装器16对应于本发明的第一处理装置。在由调试桥15或启动脚本命令时,安装器16从临时保护存储区11读取安装包文件,执行所安装应用的必要设置(例如,将应用注册至菜单),以及继而将安装包文件存储至应用存储区12或保护应用存储区13。另一方面,在由下载器18命令时,安装器16从下载器18读取安装包文件,执行所安装应用的必要设置(将应用注册至菜单),以及将安装包文件存储至应用存储区12或保护应用存储区13。在安装器16安装已被指定处于保护状态(通常称为前向锁定)的应用时,仅执行文件存储在保护应用存储区13中。除了执行文件之外的文件存储在应用存储区12中。如果应用未被指定为处于保护状态,则所有文件存储在应用存储区12中。根据此实施方式,假设所有应用已被指定为处于保护状态。

应用17对应于本发明的第二处理装置。在由调试桥15、启动脚本或者在菜单上命

令时,应用17被激活。在将存储在保护应用存储区13中的安装包文件所包含的应用执行文件加载至用户终端10的存储器中时,应用17被激活。在应用被初次激活时,包含在应用执行文件中的证书数据被解压缩为证书文件,并存储在保护数据存储区14中。应用17与服务器30通信。此刻,如果保护数据存储区14中存在证书文件92,则应用17从保护数据存储区14读取该文件,并且将该文件作为客户端证书呈现给服务器30,以代表该终端可以访问服务器30。

[0062] 下载器18周期性地与应用分发服务器40的WEB服务器42通信,以及查询应用分发服务器40是否具有针对已安装在用户终端10中的应用的更新执行文件。如果应用分发服务器40具有针对应用的更新执行文件,则下载器18通过因特网从应用分发服务器40的WEB服务器42接收包含更新执行文件的安装包文件,以及向安装器16传递接收的更新执行文件。

[0063] 接着,将描述开发者终端20的组成元件。[00] 在由开发者终端20的操作者命令时,数据写入工具21作为根权限用户登录到用户终端10并且通过调试桥15将存储在递送产品存储区22中的文件传送至临时保护存储区11。另外,数据写入工具21通过调试桥15将安装应用,激活该应用,以及操作文件的命令传输至用户终端10。数据写入工具21和调试桥15利用USB线缆等连接。

[0065] 递送产品存储区22是存储通过数据写入工具21而被传递至用户终端10的临时保护存储区11的文件的区域。

[0066] 浏览器23访问应用分发服务器40的WEB服务器42,以及将存储在递送产品存储区22中的文件上载至应用分发服务器40。浏览器23和WEB服务器42通过因特网连接。

[0061]

接着,将详细描述服务器30。

[0068] 当服务器30从应用17接收到连接请求时,服务器30向应用17呈现其自己的应

[0067]

9

CN 103052958 A

说 明 书

6/10页

用证书,并请求应用17向服务器30呈现其自己的客户端证书。仅在应用17向服务器30呈现了正确的客户端证书时,来自应用17的连接请求才被接受。用户终端10的应用17和服务器30通过因特网连接。[0069] 接着,将描述应用分发服务器40的组成元件。

[0070] 内容存储区41存储从WEB服务器42接收的文件。另外,在由WEB服务器42请求时,内容存储区41向WEB服务器42传递文件。

[0071] WEB服务器42通过因特网接受从浏览器23上载的文件,并且将该文件存储在内容存储区41中。另外,在由下载器18请求时,WEB服务器42从内容存储区41读取文件,并通过因特网将其传输至下载器18。[0072] 接着,将描述用于前述应用分发系统的应用分发方法。[0073] 首先,将描述用于图1中示出的应用17的基本操作。[0074] 图2是描述用于图1所示应用17的基本操作的流程图。[0075] 在由调试桥15、启动脚本或者在菜单上命令时,应用17被激活。在将存储在保护应用存储区13中的安装包文件所包含的应用执行文件加载至用户终端10的存储器中时,应用17被激活(在步骤1)。

[0076] 图3是示出存储在图1所示的保护应用存储区13中的安装包文件的结构的示意图。

[0077] 安装器16存储已从如图1所示的临时保护存储区11读取至保护应用存储区13的安装包文件90。安装包文件90是当在用户终端10中预安装应用时使用的安装包。由此,如图3所示,安装包文件90包含应用执行文件91。在安装应用执行文件91时,安装器16在保护应用存储区13中存储安装包文件90。安装包文件90是安装应用所需的文件等的归档。在Android系统中,安装包文件90通常具有扩展名“apk”。应用执行文件91是在用户终端10上操作的应用17的执行文件。应用执行文件91包含作为客户端证书使用的证书数据92。在Android系统中,应用执行文件91通常具有扩展名“dex”。证书数据92是存储在应用执行文件91中的客户端证书数据。

[0078] 当应用17被初次激活并且应用执行文件91包含证书数据92时(即,在加载了应用执行文件91之后,执行应用17时)(在步骤2),应用17将存储在保护应用存储区13中的安装包文件90所包含的证书数据92解压缩为证书文件并且将证书数据92存储在保护数据存储区14中(在步骤3)。证书文件是包括在应用17与服务器30通信时所需客户端证书数据的文件。当在开发者终端20上创建应用执行文件91时,证书文件被作为证书数据92包含在应用执行文件91中。

此后,应用17从保护数据存储区14读取证书文件(在步骤4)。

[0080] 此后,应用17将从保护数据存储区14读取的证书文件用作客户端证书,以便与服务器30执行基于SSL的双向认证和通信(在步骤5)。[0081] 在应用17完成了与服务器30的通信之后,用于应用17的基本操作即完成(在步骤6)。

[0082] 接着,将描述在图1所示应用分发系统中针对图3所示安装包文件90的预安装操作。

[0083] 图4是描述在图1所示应用分发系统中、用于图3所示安装包文件的预安装操作

[0079]

10

CN 103052958 A

说 明 书

7/10页

的时序图。

[0084] 假设用户终端10例如定位在其制造方工厂处并且用户终端10的调试桥15和开发者终端20的数据写入工具21利用USB电缆连接。另外,假设开发者终端20作为根权限用户登录至用户终端10。

[0085] 用户终端10的制造方的工程师将安装包文件90放置在开发者终端20的递送产品存储区22中。如图3所示,安装包文件90包含应用执行文件91,而应用执行文件91包含证书数据92。[0086] 此后,工程师使用数据写入工具21、通过调试桥15将存储在递送产品存储区22中的安装包文件90写入临时保护存储区11。此刻,安装包文件90被建立,使得当用户初次激活用户终端10时,安装器16被激活以安装已被指定为处于保护状态的安装包文件90(在步骤11)。

[0087] 在完成了前述操作后,用户终端10从工厂递送至用户。[0088] 用户从工厂接收用户终端10并激活用户终端10。

[00] 由于已经建立了安装包文件90以使得在初次激活用户终端10时,安装器16被激活以将已被指定为保护状态的安装包文件16安装至用户终端10,因此安装器16被激活以从临时保护存储区11读取安装包文件90,执行所安装应用的必要设置(例如,注册至菜单),从安装包文件90提取应用执行文件91,以及向保护应用存储区13写入应用执行文件91(在步骤12)。应用执行文件91包括证书数据92。

结果,安装包文件90已被安装在用户终端10中。

[0091] 当用户在用户终端10的菜单上命令要激活应用17时,存储在保护应用存储区13中的应用执行文件91与证书数据92一起被加载至用户终端10的存储器中并且继而作为应用17被激活(在步骤13)。

[0092] 由于应用17初次被激活并且应用执行文件91包含证书数据92,所以它们被解压缩为证书文件并且存储在保护数据存储区14中(在步骤14)。[0093] 此后,应用17从保护数据存储区14读取证书文件(在步骤15)。继而,应用17执行存储在保护应用存储区13中的应用执行文件91,以及将从保护数据存储区14读取的证书文件的数据作为客户端证书呈现给服务器30,以便与服务器30执行基于SSL的双向认证和通信(在步骤16)。

[0094] 在应用17已完成与服务器30的通信后,针对应用17的操作即完成。[0095] 结果,证书文件已被写入保护数据存储区14,并且与服务器30的通信完成。[0096] 接着,将描述用于图1中所示应用分发系统中的应用17的常规激活操作(非初次激活操作)。

[0097] 图5是描述在图1所示应用分发系统中、用于应用17的常规激活操作的时序图。[0098] 当用户在用户终端10的菜单上命令要激活应用17时,存储在保护应用存储区13中的应用执行文件91与证书数据92一起被加载至存储器中,以及继而作为应用17被激活(在步骤21)。

[0090] [0099]

由于应用17不是初次激活,所以应用17从保护数据存储区14读取证书文件(在

步骤22)。此后,应用17执行存储在保护应用存储区13中的应用执行文件91,以及将从保护数据存储区14读取的证书文件数据作为客户端证书呈现给服务器30,以与服务器30执

11

CN 103052958 A

说 明 书

8/10页

行基于SSL的双向认证和通信(在步骤23)。

[0100] 在应用17已完成与服务器30的通信后,针对应用17的操作即完成。[0101] 结果,应用17已与服务器30正常通信。[0102] 接着,将描述在图1所示应用分发系统中、用户针对用户终端10执行的完全重置操作。

[0103] 图6是描述在图1所示应用分发系统中、用户针对用户终端10执行的完全重置操作的时序图。[0104] 假设,用户已经初次激活了用户终端10和应用17。换言之,假设图4的步骤11-16已经完成。

[0105] 在用户针对用户终端10执行完全重置操作时,存储在应用存储区12、保护应用存储区13和保护数据存储区14中的所有文件被清除。尽管存储在保护应用存储区13中的应用执行文件91和存储在保护数据存储区14中的证书文件被清除,但是存储在临时保护存储区11中的安装包文件90未被清除。[0106] 在用户已执行完全重置操作之后,当他或她初次激活用户终端10时,由于用户终端10已被建立使得安装已被指定为处于保护状态的安装包文件90,所以安装器16被激活以从临时保护存储区11读取安装包文件90,执行所安装应用的必要设置(例如,将其注册至菜单),从安装包文件90提取应用执行文件91,以及将其存储至保护应用存储区(在步骤31)。应用执行文件91包含证书数据92。

结果,安装包文件90已被安装在用户终端10中。

[0108] 此后,当用户在用户终端10的菜单上命令要激活应用17时,存储在保护应用存储区13中的应用执行文件91与证书数据92一起被加载至存储器,以及继而作为应用17被激活(在步骤32)。

[0109] 由于应用17是初次被激活并且应用执行文件91包含证书数据92,所以应用17将证书数据92解压缩为证书文件,并将证书文件存储在保护数据存储区14中(在步骤33)。[0110] 此后,应用17从保护数据存储区14读取证书文件(在步骤34)。继而,应用17执行存储在保护应用存储区13中的应用执行文件91,并将从保护数据存储区14读取的证书文件的数据作为客户端证书呈现给服务器30,以与服务器30执行基于SSL的双向认证和通信(在步骤35)。

[0111] 在应用17已完成与服务器30的通信之后,针对应用17的操作即完成。[0112] 结果,证书数据92已被解压缩为证书文件,并且存储在保护数据存储区14中,继而与服务器30的通信完成。[0113] 接着,将描述用于图1所示应用分发系统中的应用17的更新操作。

[0114] 图7是描述用于图1所示应用分发系统中的应用17的更新操作的时序图。[0115] 假设用户已获得用户终端10,他或她已初次激活用户终端10,并且他或她已初次激活应用17。换言之,假设已完成步骤11-16。另外,假设用户终端10的调试桥15和开发者终端20的数据写入工具21未通过USB线缆连接,以及替代地,开发者终端20的浏览器23和应用分发服务器40的WEB服务器42,或应用分发服务器40的WEB服务器42和用户终端10的下载器18通过因特网连接。

[0107] [0116]

用户终端10的制造方的工程师将安装包文件90的更新版本放置在开发者终端20

12

CN 103052958 A

说 明 书

9/10页

的递送产品存储区22中。此刻,工程师建立安装包文件90的更新版本,使得其被指定为处于保护状态并进行安装。

[0117] 图8是示出了图1所示开发者终端20的递送产品存储区22中所放置的安装包文件更新版本的结构的示意图。

[0118] 放置在开发者终端20的递送产品存储区22中的更新版本安装包文件90A是在已安装在用户终端10中的应用被更新时使用的安装包。由此,如图8所示,安装包文件90A包含更新应用执行文件91A。安装包文件90A是安装应用所需的文件等的归档。在Android系统中,安装包文件90A通常具有扩展名“apk”。应用执行文件91A是在用户终端10上操作的应用17的执行文件。与图3所示的应用执行文件91不同,应用执行文件91A不包含用作客户端证书的证书数据92。

[0119] 工程师通过浏览器23将存储在递送产品存储区22中的安装包文件90A写入内容存储区41(在步骤41)。

[0120] 下载器18周期性地与应用分发服务器40的WEB服务器42通信,以及查询WEB服务器42其是否包含已经安装在用户终端10中的应用17的更新版本。此刻,下载器18知道作为应用17的更新版本安装包文件的安装包文件90A位于内容存储区41中,通过因特网从WEB服务器42接收更新版本安装包文件90A,以及将已被指定为处于保护状态的该文件传递至安装器16。

在安装器16从下载器18接收安装包文件90A时,安装器16执行所安装应用的必

要设置(例如,将其注册至菜单),从安装包文件90A提取应用执行文件91A,以及将其存储在保护应用存储区13中。此刻,安装器16从保护应用存储区13清除应用执行文件91,以便将存储在保护应用存储区13中的应用执行文件91替换为应用执行文件91A(在步骤42)。

[0122] 结果,存储在保护应用存储区13中的应用执行文件91已被更新至应用执行文件91A。

[0123] 接着,将描述用于已经以前述方式更新的应用17的常规激活操作。[0124] 当用户在用户终端10的菜单上命令要激活应用17时,存储在保护应用存储区13中的应用执行文件91A被加载至存储器并继而作为应用17被激活(在步骤43)。[0125] 由于应用执行文件91A不包含证书数据,所以应用17从保护数据存储区14读取证书文件(在步骤44)。此后,应用17执行存储在保护应用存储区13中的应用执行文件91,以及将从保护数据存储区14读取的证书文件的数据作为客户端证书呈现给服务器30,以与服务器30执行基于SSL的双向认证和通信(在步骤45)。[0126] 在应用17已完成与服务器30的通信后,针对应用17的操作即完成。[0127] 结果,更新应用17已与服务器30进行正常通信。[0128] 接着,将描述本实施方式的效果。[0129] 在此实施方式中,由于开发者终端20向用户终端10提供的安装包文件90的应用执行文件91包含证书数据92,所以应用和客户端证书可以被安装至用户终端10,并且应用可以在用户不能访问应用使用的客户端证书的状态中得以更新。

[0121] [0130]

另外,用户终端10在包含证书数据92的应用执行文件91已被存储在临时保护存

储区11中的状态下进行递送。当用户终端10被初次激活时,应用执行文件91被安装至保

13

CN 103052958 A

说 明 书

10/10页

护应用存储区13。在应用被初次激活时,应用执行文件91中包含的证书数据92被解压缩为证书文件,并且存储在保护数据存储区14中。在分发更新版本安装包文件时,分发已从其移除证书数据的更新应用执行文件91A。在执行应用执行文件91A时,使用存储在保护数据存储区14中的证书文件。由此,可以在应用分发服务器的管理员不能访问应用使用的客户端证书的状态中对更新版本应用进行分发和更新。

根据本发明,用户终端10内部执行的过程不仅通过前述专用硬件完成,还通过以

下述方式完成这种功能的程序实现,即,程序记录在用户终端10可以从其读取程序的记录介质上,并且继而用户终端10从该记录介质读取程序以及执行这些程序。用户终端10可以从其读取程序的记录介质不仅包括可移动记录介质,诸如IC卡、存储卡、软盘(注册商标)、磁光盘、DVD和CD,而且还包括构建在用户终端10中的HDD。记录在记录介质上的程序在控制块的控制下进行读取。前述过程在控制块的控制下执行。

[0132] 尽管已经参考本发明的示例性实施方式显示并描述了本发明,但是本发明并不限于这些实施方式。本领域技术人员将会理解,可以在此处对形式和细节作出各种改变,而不会脱离权利要求定义的本发明精神和范围。

[0133] 本发明可以适用于便携式信息终端(PDA:便携式数据助理)、便携式电话终端(智能电话)和具有可以管理个体用户访问权限的OS的其他终端。

[0134] 本申请要求基于2010年8月10日提交的日本专利申请JP2010-179404的优先权,通过参考将其全部内容在此并入。

[0131]

14

CN 103052958 A

说 明 书 附 图

1/6页

图1

15

CN 103052958 A

说 明 书 附 图

图2

图3

16

2/6页

CN 103052958 A

说 明 书 附 图

3/6页

图4

17

CN 103052958 A

说 明 书 附 图

4/6页

图5

18

CN 103052958 A

说 明 书 附 图

5/6页

图6

19

CN 103052958 A

说 明 书 附 图

6/6页

图7

图8

20

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务