用于提供代码签名服务的系统和方法中的账户管理技术方案

技术编号:3504466 阅读:192 留言:0更新日期:2012-04-11 18:40
一种向软件应用程序开发者或希望应用程序被数字地签名的其他个体或实体提供代码签名服务的系统和方法。可以要求签名应用程序,以便当在计算设备上执行应用程序时,使应用程序能够访问计算设备的敏感API以及相关资源。在一个实施例中,提供代码签名服务的方法包括至少一些步骤,所述步骤涉及注册要求访问由代码签名中心控制的API的实体,以及管理注册实体的账户。

【技术实现步骤摘要】

这里描述的系统和方法的实施例大体上涉及针对软件应用程序的安全协议领域,更具体地,涉及一种系统和方法,用于向希望使软件应用程序被数字地签名以便可以在计算设备上(例如移动设备)执行该应用程序的个人或实体提供代码签名服务。
技术介绍
含有软件代码签名方案的安全协议典型地被用于确保从因特网或其他来源下载以用于在计算设备上执行的软件应用程序的可靠性。例如,计算设备可以是移动设备。可以在计算设备上实施代码签名系统,以便控制软件应用程序访问计算设备上的某些资源。在一个示例系统中,在计算设备中提供了应用平台、一个或多个应用程序编程接口(API)、以及虚拟机。配置API以使软件应用程序与应用平台相链接,以及更具体地,允许软件应用程序对资源做出功能调用,或者与计算设备上的软件应用程序通常可访问的资源进行交互。然而,可以由希望限制对API的访问或对与这些API有关的特定资源的访问的实体,将一些API分类为“敏感的”。在示例系统中,在准予访问敏感API之前,虚拟机适于验证附加到要求访问敏感API的应用程序上的数字签名的真实性。因此,为了准许应用程序访问敏感API,适当的签名中心(signing authority)必须首先数字地签名应用程序。
技术实现思路
在一个主要方面,优选地提出了一种用于提供代码签名服务的方法,所述方法包括步骤创建至少一个公钥以及至少一个对应的私钥;配置每个公钥以保护至少一个敏感API,以及存储每个对应的私钥;针对代码签名服务来注册至少一个实体,其中认证了每个实体的身份,以及创建了每个已注册实体的账户记录;从请求者接收代码签名请求,所述请求者是在注册步骤中已注册的实体,其中代码签名请求包括请求者请求利用已创建的所述至少一个私钥中的选定私钥来签名的对象;数字地签名对象,其中使用所述选定的私钥来产生数字签名;以及向所述请求者发送所述数字签名,其中,所述方法还包括提供用户界面的步骤,其中所述用户界面适于从用户接收输入,所述输入被用于填充一个或多个注册实体的账户记录。在另一个方面,优选地,输入包括通知设置,使得已注册的实体能够监测其账户以便追踪是否没有授权就使用了其账户。在另一个主要方面,优选地,输入包括有效期限,使得仅仅如果有效期限没有到期,才能签名对象。在另一个主要方面,优选地,输入包括多个容许签名请求,使得仅当仍然有容许签名请求时,才能签名对象。所述数目可以由可更新的计数器来实现。附图说明为了更好地理解这里描述的系统和方法的实施例,以及为了更加清楚地示出如何使他们产生效果,现在将参考附图为例,其中图1是在一个示例实施方式中的移动设备的方框图;图2是图1的移动设备的通信子系统组件的方框图;图3是无线网络节点的方框图;图4是示出了示例代码签名协议的示意图,在该协议中,代码签名中心向软件应用程序开发者提供代码签名服务;图5是示出了在移动设备中的示例代码签名系统的组件的示意图;图6是示出了处理在图5中图示的移动设备上执行的已签名软件应用程序的示例方法的步骤的流程图;图7A是示出了在一个实施例中提供代码签名服务的方法的步骤的流程图;图7B是示出了在示例网络配置中的用于提供代码签名服务的系统的原理图;图8A是示出了在一个实施例中创建用于代码签名的密钥对的方法的步骤的流程图;图8B和图8C是由代码签名中心应用程序提供的用户界面中的示例对话框;图9是示出了在一个实施例中用于针对代码签名服务来注册实体的方法的步骤的流程图;以及图10是示出了账户记录的详情的示例表格。具体实施例方式创建要求访问计算设备上敏感API的应用程序的软件应用程序开发者可能需要使他们的应用程序由适当签名中心数字地签名,使得应用程序在计算设备上正确地执行。期望限制访问某些敏感API(以及相关资源)(例如实体自己写出的专有API)的实体可能希望充当关于这些API的签名中心,并且向要求访问这些API的软件应用程序开发者提供代码签名服务。例如,通过代码签名服务的提供,实体能够控制谁应该或谁不应该被准许访问其写出和/或被分类为敏感的特定API、跟踪谁请求了此种访问、以及如果需要对提供此类访问收费。这里描述的实施例大体上涉及一种用于向软件应用程序开发者或希望应用程序被数字地签名的其他个人或实体提供代码签名服务的系统和方法。当在计算设备上执行应用程序时,也许要求签名应用程序以使应用程序能够访问计算设备的敏感API以及相关资源。向软件应用程序开发者或其他个人或实体提供代码签名服务的代码签名中心可以要求这些参与方针对代码签名服务来注册。根据这里描述的多个实施例,提出了多个账户管理特征,以便管理和追踪已注册用户的活动。在一个主要方面,优选地提出了一种用于提供代码签名服务的方法,所述方法包括步骤创建至少一个公钥以及至少一个对应的私钥;配置每个公钥以保护至少一个敏感API,以及存储每个对应的私钥;针对代码签名服务来注册至少一个实体,其中认证了每个实体的身份,以及创建了每个已注册实体的账户记录;从请求者接收代码签名请求,所述请求者是在注册步骤中已注册的实体,其中代码签名请求包括请求者请求利用已创建的所述至少一个私钥中的选定私钥来签名的对象;数字地签名对象,其中使用所述选定的私钥来产生数字签名;以及向所述请求者发送所述数字签名,其中,所述方法还包括提供用户界面的步骤,其中所述用户界面适于从用户接收输入,所述输入被用于填充一个或多个注册实体的账户记录。在另一个方面,输入包括通知设置,使得已注册的实体能够监测其账户以便追踪是否没有授权就使用了其账户。在另一个主要方面,输入包括有效期限,使得仅仅如果有效期限没有到期,才能签名对象。在另一个主要方面,输入包括多个容许签名请求,使得仅当仍然有容许签名请求时,才能签名对象。所述数目可以由可更新的计数器来实现。例如,已签名的应用程序所执行在的计算设备可以是移动站。然而,本领域普通技术人员应该理解,这里描述的至少一些实施例可以关于要在除移动站之外的计算设备上执行的应用程序来实现。移动站是一种带有先进数据通信能力的双向通信设备,具有与其他计算机系统通信的能力,并且这里提到的一般指移动设备。移动设备也可以包括用于语音通信的能力。取决于由移动设备提供的功能,可以称其为数据消息设备、双向寻呼机、带有数据消息能力的蜂窝电话、无线因特网装置、或数据通信设备(带有或不带有电话能力)。移动设备通过收发站的网络与其他设备通信。为有助于读者理解移动设备的结构以及其如何与其他设备通信,首先参考图1至图3。参考图1,在一个示例实施方式中的移动设备的方框图大致如100所示。移动设备100包括多个组件,其中控制组件是微处理器102。微处理器102控制移动设备100的所有操作。通过通信子系统104来执行包括数据和语音通信的通信功能。通信子系统104从无线通信网络200接收消息并向其发送消息。在移动设备100的该示例实施方式中,根据全球移动通信系统(GSM)和通用分组无线业务(GPRS)标准来配置通信子系统104。GSM/GPRS无线网络在世界范围内广泛使用,并且可以预料的是这些标准最终将由增强数据GSM环境(EDGE)和通用移动通信服务(UMTS)所取代。新的标准正在制定中,但是可以相信的是他们具有与这里描述的网络行为相类似的网络行为,本领域的技术人员也应该理解本文档来自技高网...

【技术保护点】
一种用于提供代码签名服务的方法,所述方法包括步骤:创建(414)至少一个公钥以及至少一个对应的私钥;配置(415)每个公钥以保护至少一个敏感API,以及存储(415)每个对应的私钥;针对代码签名服务来注册(420)至少一个实体,其中认证了每个实体的身份,以及创建了每个已注册实体的账户记录;从请求者接收(430)代码签名请求,所述请求者是在注册步骤中已注册的实体,其中代码签名请求包括请求者请求利用已创建的所述至少一个私钥的选定私钥来签名的对象;数字地签名(470)对象,其中使用所述选定的私钥来产生数字签名;以及向请求者发送(470)所述数字签名,其中,所述方法还包括提供用户界面的步骤,其中所述用户界面适于从用户接收输入,所述输入被用于填充(450)一个或多个注册实体的账户记录。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:尼尔P亚当斯麦克尔G柯卡普赫伯特A利特尔麦克尔罗巴克戴维F塔普什科
申请(专利权)人:捷讯研究有限公司
类型:发明
国别省市:CA[加拿大]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1