CN201510016313.0
2015.01.13
CN104778382A
2015.07.15
实审
审中
实质审查的生效IPC(主分类):G06F 21/12申请日:20150113|||公开
G06F21/12(2013.01)I
G06F21/12
三星电子株式会社
郑成权; 赵炳勖
韩国京畿道
10-2014-0004021 2014.01.13 KR
北京市柳沈律师事务所11105
邵亚丽; 刘虹
提供了用于对应用包重新签名的设备。该设备包括:通信单元,其被配置为接收包括签名密钥的应用包;以及控制单元,其被配置为利用与签名密钥相对应的转换密钥来对应用包重新签名。
1. 一种对应用包重新签名的设备,该设备包括: 通信单元,其被配置为接收包括签名密钥的应用包;以及 控制单元,其被配置为从应用包提取签名密钥,创建与所提取的签名密 钥相对应的转换密钥,并且利用转换密钥对应用包重新签名。 2. 如权利要求1所述的设备,其中,所述控制单元还被配置为: 将转换密钥映射到签名密钥;以及 存储转换密钥和签名密钥。 3. 如权利要求1所述的设备,还包括密钥存储单元,其被配置为存储映 射到签名密钥的转换密钥。 4. 如权利要求3所述的设备,其中,所述控制单元还被配置为: 确定转换密钥是否被映射到签名密钥;或者 确定映射到签名密钥的转换密钥是否被存储在密钥存储单元中。 5. 如权利要求1所述的设备,其中,所述控制单元还被配置为转换应用 包,经转换的应用包是在安装有所述经转换的应用包的终端设备上可执行的。 6. 如权利要求5所述的设备,其中,所述控制单元还被配置为利用转换 密钥对所述经转换的应用包重新签名。 7. 如权利要求5所述的设备,其中,所述设备被配置为执行安全平台, 所述经转换的应用包在该安全平台中执行。 8. 如权利要求1所述的设备,还包括输入单元,其被配置为接收用于创 建转换密钥的信号。 9. 一种对应用包重新签名的方法,该方法包括: 由通信单元接收包括签名密钥的应用包;以及 由控制单元利用与签名密钥相对应的转换密钥对应用包重新签名。 10. 如权利要求9所述的方法,其中,对应用包重新签名包括: 从应用包提取签名密钥;以及 确定映射到签名密钥的转换密钥是否被存储。 11. 如权利要求10所述的方法,其中,对应用包重新签名还包括: 当确定没有存储映射到签名密钥的转换密钥时,创建映射到签名密钥的 转换密钥;以及 利用转换密钥对应用包重新签名。 12. 如权利要求10所述的方法,其中,对应用包重新签名还包括: 当确定存储了映射到签名密钥的转换密钥时,提取转换密钥;以及 利用提取的转换密钥对应用包重新签名。 13. 如权利要求11所述的方法,还包括: 将转换密钥映射到签名密钥;以及 存储转换密钥和签名密钥。 14. 如权利要求10所述的方法,还包括转换应用包。 15. 如权利要求14所述的方法,其中,对应用包重新签名还包括利用转 换密钥对经转换的应用包签名。
对应用包重新签名的设备和方法和运行应用包的终端设备 相关申请的交叉引用 本申请要求2014年1月13日向韩国知识产权局提交的第 10-2014-0004021号韩国专利申请的权益,其全部公开通过引用并入本文。 技术领域 本公开涉及用于对应用包(application package)重新签名(re-sign)的 设备和方法,以及用于运行应用包的终端设备。 背景技术 最近,各种应用,诸如游戏应用、财务相关的应用、地图相关的应用、 以及其他类似的应用,根据用户需要被安装在正在被许多人使用的便携式终 端中。安装在便携式终端中的应用可以通过下载在应用市场,例如,Google Play Store(谷歌娱乐商店)或App Store(应用商店),注册的应用包来安装。 应用包可以被安装在便携式终端的特定文件夹中,并且响应于用户请求来执 行。在所述市场注册的应用和/或应用包可以由开发者签名和注册。 应用包可以利用由应用开发者所拥有的私有密钥来签名。当应用包被签 名时,与私有密钥相对应的签名(signature)和/或签名密钥被生成。在这种 情况下,当应用市场系统转换应用包时,现有的签名密钥可能失效。因此, 存在一些情况,即使应用包的开发者利用与通过转换形成的应用包的签名密 钥一样的私有密钥来对应用包签名也很难察觉开发者信息,因为难以识别通 过转换形成的应用包的签名密钥。在这种情况下,存在这样的限制:在诸如 更新情况的许多情况下不容易共享数据。 以上信息被作为背景信息来提供,仅仅是为了帮助对本公开的理解。关 于以上任何信息是否可以作为关于本公开的现有技术来应用,尚未作出确定, 并且不作出声明。 发明内容 本公开的各方面旨在解决上述问题和/或缺点并且提供至少下述优点。因 此,本公开的一方面提供了用于对应用包重新签名的设备和方法,以及用于 运行应用包的设备,其提供了这样的技术,在该技术中可以创建与从已创建 的应用的私有密钥形成的签名密钥相对应的转换密钥,并且利用该转换密钥 来对应用包重新签名。 根据本公开的一方面,提供了用于对应用包重新签名的设备。该设备包 括:通信单元,其被配置为接收包括签名密钥的应用包;以及控制单元,其 被配置为利用与签名密钥相对应的转换密钥来对应用包重新签名。 根据本公开的另一方面,提供了用于对应用包重新签名的方法。该方法 包括:由通信单元接收包括签名密钥的应用包;以及由控制单元利用与签名 密钥相对应的转换密钥来对应用包重新签名。 根据本公开的另一实施例,提供了用于执行应用包的终端设备。该终端 设备包括:终端通信单元,其被配置为接收利用转换密钥签名的应用包,所 述转换密钥是基于签名密钥创建的;存储单元,其被配置为将应用包存储在 存储单元的安全区域中;以及终端控制单元,其被配置为安装和执行存储在 存储单元的安全区域中的应用包。 根据本公开的另一方面,提供了电子设备。该电子设备包括:存储器, 其被配置为存储第一应用包;转换器,其被配置为将第一应用包转换为第二 应用包;以及处理器,其被配置为:从第一应用包提取签名密钥;基于签名 密钥生成私有密钥;以及利用生成的私有密钥对第二应用包签名。 通过以下结合附图、公开了本公开的各种实施例的详细描述,本公开的 其它方面、优点和显著的特征对于本领域技术人员将变得明显。 附图说明 通过下面结合附图的描述,本公开的特定实施例的以上和其他方面、特 征和优点将更加明显,其中: 图1是根据本公开的实施例的用于对应用包重新签名的设备的框图; 图2是根据本公开的实施例的对应用包重新签名的方法的流程图; 图3是根据本公开的实施例的用于对应用包重新签名的系统的框图; 图4表示根据本公开的实施例的密钥存储单元的密钥表的结构; 图5是根据本公开的实施例的终端设备的框图;以及 图6是根据本公开的实施例的对应用包重新签名的方法的流程图。 贯穿附图,应该理解的是,使用相同的参考标号来描绘相同或相似的元 件、特征和结构。 具体实施方式 提供下列参考附图的描述以有助于对通过权利要求及其等效物定义的本 公开的各种实施例的全面理解。本描述包括各种具体细节以有助于理解但是 仅应当被认为是示例性的。因此,本领域普通技术人员将认识到,能够对这 里描述的各种实施例进行各种改变和修改而不脱离本公开的范围与精神。此 外,为了清楚和简明起见,可以略去对公知功能与结构的描述。 在下面说明书和权利要求书中使用的术语和措词不局限于它们的词典意 义,而是仅仅由发明人用于使得能够对于本公开清楚和一致的理解。因此, 对本领域技术人员来说应当明显的是,提供以下对本公开的各种实施例的描 述仅用于图示的目的而非限制如所附权利要求及其等效物所定义的本公开的 目的。 应当理解,单数形式的“一”、“一个”和“该”包括复数所指物,除非 上下文清楚地指示不是如此。因此,例如,对“部件表面”的指代包括指代 一个或多个这样的表面。 基于可以在Android(安卓)操作系统(OS)中安装的应用来描述本公 开的各种实施例中使用的应用。应用包可以是用于在Android应用市场注册 应用的安装包,并且具有扩展名“.apk”。 应用包可以通过编译应用的源代码来创建,并且包括用于将应用安装在 便携式设备中的诸如.dex文件的可执行文件、资源、图像数据、以及从应用 开发者的私有密钥形成的签名密钥。虽然本公开的各种实施例是基于Android OS描述的,但是本公开不限于此,并且可以应用于诸如Windows OS和MAC OS的各种OS以及可以在这些OS上安装的应用。 图1是根据本公开的实施例的用于对应用包重新签名的设备的框图。 参照图1,根据本公开的实施例的重新签名设备10可以包括通信单元11、 输入单元13、控制单元15和存储单元17。重新签名设备10可以是可以接收 应用包以便转换应用的签名密钥的设备,诸如计算机、笔记本计算机和/或便 携式设备。 通信单元11接收应用包。应用包可以是从由应用开发者开发的应用创建 的。为此,通信单元11可以与提供应用包的外部电子设备(未示出)执行短 距离射频(RF)通信,包括蓝牙、近场通信(NFC)和/或其它短距离RF通 信。通信单元11可以使用通用串行总线(USB)连接器执行有线通信以接收 应用包。另外,通信单元11可以通过诸如WiFi和/或蜂窝网络的无线网络、 和/或使用局域网(LAN)的有线网络来访问网络硬盘和/或应用市场,以接收 应用包。此外,通信单元11可以将已转换的应用包上传到网络硬盘和/或应 用市场。 输入单元13根据外部输入生成用于操作重新签名设备10的操作信号, 以便向控制单元15提供生成的信号。例如,输入单元13根据外部输入生成 用于要转换的应用的选择信号,并生成用于转换签名密钥以生成转换密钥的 信号。另外,输入单元13生成用于请求利用已创建的转换密钥来重新签名已 转换的应用包的信号、以及请求将重新签名的应用包上传到网络硬盘和/或应 用市场的信号,并且将所述信号发送到控制单元15。为此,输入单元13可 以包括输入设备,诸如键盘、小键盘、触摸垫和/或触摸屏。 控制单元15接收应用包,以提取包括在应用包中的签名密钥。控制单元 15创建与提取的签名密钥相对应的转换密钥,并且利用生成的转换密钥对已 转换的应用包重新签名。此外,控制单元15将重新签名的应用包上传到网络 硬盘和/或应用市场。为此,控制单元15可以包括签名密钥提取单元15a、转 换密钥创建单元15b和应用包(APK)签名单元15c,其中,APK也可以被 称为Android应用包。 签名密钥提取单元15a提取包括在应用包中的签名密钥。当应用开发者 利用他或她的私有密钥对应用签名时,可以形成签名密钥。像配置应用包的 可执行文件、资源或图像数据一样,签名密钥可以被形成并存储在单独文件 夹中。 转换密钥创建单元15b生成与由签名密钥提取单元15a提取的签名密钥 相对应的转换密钥,或者转换密钥创建单元15b提取被映射到签名密钥的已 存储的转换密钥。更具体地,转换密钥创建单元15b搜索存储在存储单元17 中的密钥表17a,并且检查和/或确定在密钥表17a中是否存在被映射到提取 的签名密钥的已存储的转换密钥。 当在密钥表17a中存在被映射到提取的签名密钥的已存储的转换密钥 时,转换密钥创建单元15b提取转换密钥以便将转换密钥提供给APK签名单 元15c。另一方面,当在密钥表17a中没有被映射到提取的签名密钥的已存储 的转换密钥时,转换密钥创建单元15b激活用于创建与签名密钥相对应的转 换密钥的算法,以创建转换密钥。转换密钥创建单元15b将创建的转换密钥 发送到存储单元17,以使得所创建的转换密钥被映射和存储到签名密钥,并 且将所创建的转换密钥提供给APK签名单元15c。 APK签名单元15c使用从转换密钥创建单元15b接收到的转换密钥来对 应用包重新签名。在这种情况下,转换密钥由转换密钥创建单元15b创建, 或者通过转换密钥创建单元15b从存储单元17提取。当由APK签名单元15c 完成应用包的重新签名时,应用包可以包括由转换密钥创建的新的签名密钥。 存储单元17包括用于操作重新签名设备10的程序和/或应用。此外,存 储单元17将由控制单元15创建的转换密钥映射到包括在应用包中的签名密 钥,并且将转换密钥和签名密钥存储在密钥表17a中。 图2是根据本公开的实施例的对应用包重新签名的方法的流程图。 参照图1和图2,在操作211中,控制单元15允许,或者换句话说,控 制,通信单元11从用户设备(未示出)接收已经被开发和签名的应用包,所 述用户设备可以被称为外部电子设备,所述应用在其中被开发和/或存储。控 制单元15可以与外部电子设备执行短距离RF通信和/或有线通信,以便直接 从外部电子设备接收应用包。此外,控制单元15可以接收由外部电子设备通 过无线互联网和/或有线互联网上传到网络硬盘和/或应用市场的应用包。 在操作213中,控制单元15提取包括在接收到的应用包中的签名密钥。 接收到的应用包可以包括用于安装应用的诸如.dex文件的可执行文件、资源、 图像数据、以及从应用开发者的私有密钥形成的签名密钥。控制单元15可以 从应用包检查用于存储签名密钥的区域,并且提取与所检查的区域匹配的签 名密钥。 在操作215中,控制单元15检查和/或确定在存储单元17中是否存在映 射到提取的签名密钥的转换密钥。当确定在存储单元17中存在映射到签名密 钥的转换密钥时,控制单元15进行到操作221,并且当不存在转换密钥,则 控制单元15进行到操作217。 在操作217中,当通过输入单元13接收到用于创建转换密钥的信号时, 控制单元15激活用于创建转换密钥的算法以创建与所提取的签名密钥相对 应的转换密钥。在操作219中,控制单元15通过将所创建的转换密钥映射到 所提取的签名密钥来存储所创建的转换密钥,并且将所创建的转换密钥和所 提取的签名密钥存储在存储单元17的密钥表17a中。 接着,当存在请求对应用包重新签名的信号和/或应用包的重新签名被默 认设置时,在操作221中,控制单元15使用存储在存储单元17中并从其中 提取的转换密钥、或者所创建的转换密钥,以利用转换密钥对应用包重新签 名。在操作223中,控制单元15完成应用包的创建。在这种情况下,由于控 制单元15可以将转换密钥识别为一种私有密钥,并因此对应用包重新签名, 所以重新签名的应用包可以包括利用转换密钥新创建的签名密钥 图3是根据本公开的实施例的用于对应用包重新签名的系统的框图。 参照图3,根据本公开的实施例的重新签名系统50可以包括重新签名设 备100和终端设备200。重新签名设备100可以是可以接收应用并转换应用 的签名密钥的设备,诸如计算机、笔记本计算机、便携式设备、或者任何其 他类似的和/或合适的电子设备,并且终端设备200可以是可以接收应用包并 且安装和使用应用的设备,诸如便携式终端和/或智能电话。在这种情况下, 终端设备200可以包括特定安全平台以便为用户提供安全目的服务,并且可 以使用Android OS。重新签名设备100将第一应用包转换成第二应用包并且 执行签名操作,以便能够在特定安全平台上使用应用,或者换句话说,以使 得通过重新签名设备100,第二应用包可用在特定安全平台上。为此,重新 签名设备100可以包括通信单元110、输入单元130、控制单元150和存储单 元170。 通信单元110接收第一应用包。第一应用包可以从由应用开发者开发的 应用创建。通信单元110可以执行由图1的通信单元11所执行的操作和/或相 应操作,以获得第一应用包。例如,通信单元110可以与提供第一应用包的 外部电子设备(未示出)执行短距离RF通信,包括蓝牙。通信单元110可以 通过使用USB连接器执行有线通信以接收第一应用包。另外,通信单元110 可以通过诸如WiFi和/或蜂窝网络的无线网络、和/或使用LAN的有线网络来 访问网络硬盘和/或应用市场,以接收第一应用包。此外,通信单元110可以 将通过转换第一应用包获得的第二应用包发送到终端设备200,并且可以将 第二应用包上传到网络硬盘和/或应用市场。 输入单元130根据外部输入生成用于操作重新签名设备100的操作信号, 以便向控制单元150提供生成的信号。具体地,输入单元130根据外部输入 生成用于要转换的应用的选择信号,并生成用于转换签名密钥以生成转换密 钥的信号。另外,输入单元130生成用于请求利用已创建的转换密钥重新签 名已转换的应用包的信号、以及请求将重新签名的应用包上传到网络硬盘和/ 或应用市场的信号,并且将所述信号发送到控制单元150。为此,输入单元 130可以包括输入设备(未示出),诸如键盘、小键盘、触摸垫或触摸屏。 控制单元150接收应用包,并且从包括有基于私有密钥形成的签名密钥 的第一应用包提取签名密钥。控制单元150生成与提取的签名密钥相对应的 转换密钥,并且将第一应用包转换为第二应用包。此外,控制单元150通过 利用提取的转换密钥对通过转换获得的第二应用包签名,来完成第二应用包 的转换。控制单元150可以将第二应用包发送到终端设备200,和/或将第二 应用包上传到网络硬盘和/或应用市场。为此,控制单元150可以包括签名密 钥提取单元150a、转换密钥创建单元150b、转换器单元150c和APK签名单 元150d。 签名密钥提取单元150a提取包括在第一应用包中的签名密钥。当应用开 发者利用他或她的私有密钥以电子方式对应用签名时,可以形成签名密钥。 像配置第一应用包的可执行文件、资源或图像数据一样,签名密钥可以被形 成并存储在单独文件夹中。 转换密钥创建单元150b生成与由签名密钥提取单元150a提取的签名密 钥相对应的转换密钥,或者提取被映射到签名密钥的已存储的转换密钥。更 具体地,转换密钥创建单元150b搜索存储在存储单元170中的密钥表170a, 并且检查和/或确定在密钥表170a中是否存在被映射到提取的签名密钥的已 存储的转换密钥。 当已存储的转换密钥被映射到密钥表170a中的提取的签名密钥时,转换 密钥创建单元150b提取转换密钥以便将转换密钥提供给APK签名单元150d。 另一方面,当在密钥表170a中没有被映射到提取的签名密钥的已存储的转换 密钥时,转换密钥创建单元150b激活用于创建与签名密钥相对应的转换密钥 的算法,以创建转换密钥。转换密钥创建单元150b将创建的转换密钥发送到 存储单元170,以使得所创建的转换密钥被映射和存储到签名密钥,并且将 所创建的转换密钥提供给APK签名单元150d。 转换器单元150c可以转换包括在第一应用包中的信息。例如,转换器单 元150c检查包括在第一应用包中的诸如.dex文件的可执行文件,并且通过转 换可执行文件来创建第二应用包,以便在安装在终端设备200中的安全平台 上使用。例如,转换器单元150c可以在终端设备200的安全区域240a(参见 图5)中安装和转换特定应用,以使得该应用可以被使用。为此目的,转换 器单元150c可以转换第一应用包的可执行文件、资源和数据,以便适合于安 全区域240a的平台,或者换句话说,可由安全区域240a的平台使用。 APK签名单元150d使用从转换密钥创建单元150b接收到的转换密钥来 对第二应用包重新签名。在这种情况下,转换密钥由转换密钥创建单元150b 创建,和/或通过转换密钥创建单元150b从存储单元170提取。当由APK签 名单元150d完成第二应用包的重新签名时,第二应用包可以包括由转换密钥 创建的新的签名密钥。 存储单元170存储用于操作重新签名设备100的程序和/或应用。此外, 存储单元170将由控制单元150创建的转换密钥映射和存储到包括在第一应 用包中的签名密钥。 图4表示根据本公开的实施例的密钥存储单元的密钥表的结构。 参照图4,当控制单元150转换第一应用包A_APK以创建第二应用包 A1_APK和用于对第二应用包A1_APK签名的第一转换密钥时,第一签名密 钥被映射到第一转换密钥并且被存储在存储单元170的密钥表170a中。然后, 当控制单元150转换第一应用包A_APK以创建第三应用包A2_APK时,可 以使用被映射到第一应用包A_APK的第一签名密钥的第一转换密钥来对第 三应用包A2_APK重新签名。此外,控制单元150可以将第一转换密钥作为 用于对第三应用包A2_APK重新签名的密钥存储在密钥表170a中。因此,本 公开具有这样的效果:容易在包括基于第一应用包通过转换获得的第二应用 包和第三应用包之间保持兼容性并且共享数据。 此外,当控制单元150转换第一应用包B_APK以创建第二应用包 B1_APK和用于对第二应用包B1_APK签名的第二转换密钥时,第二签名密 钥被映射到第二转换密钥并且被存储在存储单元170的密钥表170a中。然后, 当控制单元150再次转换第二应用包B1_APK以创建第三应用包B2_APK时, 控制单元150使用第二应用包B1_APK的第二转换密钥来创建新的2-1转换 密钥,它也可以被称为第二-一(second-one)转换密钥。此外,控制单元150 利用2-1转换密钥对第三应用包B2_APK重新签名。由于2-1转换密钥被映 射并被存储到第二签名密钥和第二转换密钥,因此可以觉察和/或考虑到,第 三应用包的母(mother)应用包,其也被称为父(parent)应用包和/或源/原 始应用包,是第一应用包B_APK。因此,本公开具有这样的效果:即使通过 转换第一应用包获得的第二应用包被再次转换,也可以有效地管理应用的更 新,因为第二应用包基于第一应用包。 终端设备200可以执行从重新签名设备100接收到的应用包。参照图5 描述终端设备200的配置。 图5是根据本公开的实施例的终端设备200的框图。 参照图5,终端设备200可以包括终端通信单元210、终端输入单元220、 终端控制单元230和终端存储单元240,以便执行从重新签名设备100接收 到的应用包。终端设备200可以使用各种OS,包括Android、Mac和Windows OS。终端设备200可以提供在Android OS上运行的安全平台,例如,三星 KNOX。三星KNOX是用于阻止外部访问安装在三星KNOX上的应用和数据 的安全平台。 终端通信单元210接收第二应用包。为此,终端通信单元210可以与提 供第二应用包的重新签名设备100执行短距离RF通信,包括蓝牙。终端通 信单元210可以通过使用USB连接器(未示出)执行有线通信以接收第二应 用包。另外,终端通信单元210可以通过诸如WiFi和/或蜂窝通信网络的无 线网络来访问网络硬盘和/或应用市场,以接收第二应用包。 终端输入单元220根据外部输入生成用于操作终端设备200的操作信号, 以便向终端控制单元230提供生成的信号。具体地,终端输入单元220根据 外部输入生成使能到网络硬盘和/或应用市场的访问的信号。另外,终端输入 单元200生成使能到安装在终端设备中的安全平台的访问的信号,并且向终 端控制单元230提供用于请求安全平台下载第二应用包的信号。 终端控制单元230控制构成终端设备200的组件的操作,以用于安装和/ 或操作终端设备200中的第二应用包。为此,终端控制单元230可以包括APK 检查单元230a和APK执行单元230b。 APK检查单元230a检查和/或确定通过终端通信单元210从网络硬盘和/ 或应用市场下载的第二应用包是否可以在安全区域240a中操作。根据检查第 二应用包的结果,APK检查单元230a将第二应用包存储在安全区域240a的 第二APK 241中。例如,APK检查单元230a检查和/或确定用于对第二应用 包签名的密钥是否是基于第一应用包的签名密钥创建的转换密钥。因此,APK 检查单元230a可以检查和/或确定第二应用包是否是通过转换第一应用包而 获得的应用包,以便在安全区域240a中运行。 当从终端输入单元220接收到用于执行第二应用包的信号时,APK执行 单元230a执行与存储在安全区域240a中的第二应用包相对应的应用。 终端存储单元240存储用于操作终端设备200的程序和/或应用。此外, 终端存储单元240可以包括安全区域240a和正常区域240b。安全区域240a 包括第二APK 241,并且将第二应用包存储在第二APK 241中。在这种情况 下,第二应用包可以是已经被改变为能够在安装在终端设备200的安全区域 240a中的安全平台上运行的应用包。例如,上述三星KNOX可以基于终端设 备200的安全区域240a运行。 一般应用包,而不是被改变为安装在安全区域240a中的应用包,被安装 在正常区域240b中。另外,在安全区域240a中运行的应用不在正常区域240b 中运行和/或操作,而且在正常区域240b中运行的应用不在安全区域240a中 运行和/或操作。 从重新签名设备100接收到的第二应用包可以被安装在安全区域240a 的第二APK 241中。 图6是根据本公开的实施例的对应用包重新签名的方法的流程图。 参照图3至图6,在操作611中,控制单元150允许和/或控制通信单元 110接收由外部电子设备(未示出)开发和签名的第一应用包。控制单元150 可以与外部电子设备执行短距离RF通信和/或有线通信,以便直接从外部电 子设备接收第一应用包。此外,控制单元150可以接收由外部电子设备通过 无线互联网或有线互联网上传到网络硬盘或应用市场的应用包。 在操作613中,控制单元150提取包括在接收到的第一应用包中的签名 密钥。第一应用包可以包括用于在重新签名设备100中安装应用的诸如.dex 文件的可执行文件、资源、图像数据、以及从应用开发者的私有密钥形成的 签名密钥。 在操作615中,控制单元150检查和/或确定在存储单元170中是否存储 了被映射到提取的签名密钥的已存储的转换密钥。作为检查已存储的转换密 钥存在/不存在的结果,当确定在存储单元170中存在被映射到签名密钥的已 存储的转换密钥时,控制单元150进行到操作621,并且当不存在转换密钥 时,控制单元150进行到操作617。 在操作617中,当通过输入单元130接收到用于创建转换密钥的信号时, 控制单元150激活用于创建转换密钥的算法以创建与所提取的签名密钥相对 应的转换密钥,并且控制单元150转换第一应用包。控制单元150检查包括 在第一应用包中的可执行文件,并且转换可执行文件以便在被安装在终端设 备200中的安全平台中使用。在操作619中,控制单元150将创建的转换密 钥映射到提取的签名密钥,将创建的转换密钥和提取的签名密钥存储在存储 单元170的密钥表170a中,并执行操作623。 在操作615之后,控制单元150在操作621中转换第一应用包。更详细 地,控制单元150检查和/或确定包括在第一应用包中的可执行文件,并且转 换可执行文件以便在被安装在终端设备200中的安全平台中使用。在操作623 中,控制单元150确定第一应用包的转换是否完成,并且如果转换完成,则 执行操作625。 在操作625中,当在操作623中确定第一应用包的转换完成时,控制单 元150基于第一应用包来创建第二应用包,或者换句话说,转换第二应用包。 在操作627,控制单元150使用从存储单元170提取的转换密钥和/或创建的 转换密钥,来对第二应用包签名。在操作629中,控制单元150将已签名的 第二应用包提供给终端设备200,以便将该应用包安装在终端设备200的安 全区域240a中。 在本公开的各种实施例中,重新签名设备10、重新签名系统50和/或终 端设备200可以被理解为包括处理器和存储器的电子设备。包括在该电子设 备中的处理器可以对应于控制单元15、控制单元150和/或终端控制单元230。 例如,该设备包括处理器、被配置为存储第一应用包的存储器、和被配置为 将第一应用包转换成第二应用包的转换器。根据本公开的各种实施例,该处 理器从第一应用包提取签名并基于该签名生成私有密钥,并且利用生成的私 有密钥来对第二应用包签名。 如上所述,由于本公开创建与从已创建的应用的私有密钥所形成的签名 密钥相对应的转换密钥并且利用该转换密钥对应用包重新签名,因此可以简 单地在转换的前后保持应用开发者的身份并且升级应用。 另外,本公开具有这样的效果:容易在从应用包导出的、具有相同签名 密钥的一个或多个应用之间共享数据。 虽然已经参照本公开的各种实施例示出和描述了本公开,但是本领域术 人员应当理解,可以在形式和细节上对其做出各种改变而不脱离由所附权利 要求及其等同物定义的本公开的精神和范围。
《对应用包重新签名的设备和方法和运行应用包的终端设备.pdf》由会员分享,可在线阅读,更多相关《对应用包重新签名的设备和方法和运行应用包的终端设备.pdf(14页珍藏版)》请在专利查询网上搜索。
提供了用于对应用包重新签名的设备。该设备包括:通信单元,其被配置为接收包括签名密钥的应用包;以及控制单元,其被配置为利用与签名密钥相对应的转换密钥来对应用包重新签名。。
copyright@ 2017-2020 zhuanlichaxun.net网站版权所有经营许可证编号:粤ICP备2021068784号-1