应用程序认证方法

文档序号:7609183阅读:231来源:国知局
专利名称:应用程序认证方法
技术领域
本发明涉及也被称为蜂窝网络的移动网络领域。尤其是涉及对具有和移动电话的移动设备相关的安全模块功能的应用程序的安全性进行管理。
移动电话或便携式电话的安全模块的已知被称为构成这些电话的中央安全元件的“SIM卡”(用户识别模块)。在制造和/或个性化阶段,电话操作者引入一个被称为IMSI(国际移动用户身份识别)的号码,该号码用来以安全、唯一的方式识别希望连接到移动网络的每个用户。下面被称为移动设备的每个移动电话由一个存储在移动设备的非易失性存储器中的号码在物理上识别。这个号码被称为IMEI(国际移动设备识别码),它包含对移动设备类型的识别以及在GSM(全球移动通信系统)、GPRS(通用分组无线系统)或UMTS(通用移动电信系统)类型的网络中用于以唯一方式识别一个给定移动设备的序列号。此外,移动设备的特性由表明安装在移动设备上的基本软件的更新状态的软件版本SVN(软件版本号)来描述。具有软件版本(SVN)的移动设备的类型识别和序列号的组合给出了一个新的识别,被称为IMEISV(国际移动设备识别码和软件版本序列号)。同样的识别概念也适用于WLAN(无线局域网)或者双向有线电视。物理识别符可以是对应于唯一地址的MAC(媒体访问控制)地址,该地址识别了在一个IP(互联网协议)网络上一个用户设备的硬件配置,并且软件版本可以基于IP通过上层协议传输。
ETSI(“欧洲电信标准协会”)标准定义了一种移动台(MS,移动台),它由一个移动设备(ME,移动设备)和一个用户模块(SIM,用户识别模块)组成。这个用户模块通常是可拆卸的,也就是说它可以被抽回或者从一个移动设备转移至另一设备。
在启用一个移动设备期间,特别是在其连接至一个操作员网络的过程中,在授权或禁止其使用的操作员的移动设备和管理中心之间交换包含识别数据的信息。目前,移动设备除了通过访问移动网络向用户提供建立电话通信的一般功能外,还提供许多其他的补充增值服务,如不同数据的咨询、远程银行交易、电子商务、访问多媒体内容等。这些改进服务需要不断提升的安全性,以保护用户避免由于第三方试图利用可能出现在移动设备中的安全隐患而可能导致的欺诈。
因此,有必要执行至少两个层次的验证一方面是移动设备本身的层次,另一方面是允许操作员或第三方所建议的不同业务功能的软件应用的层次。这些应用程序通常可以从应用程序提供商的服务器下载,该服务器必须对这一下载进行验证。这是个保证问题,即一旦该模块已经被控制服务器识别为可以与该模块所插入的移动设备一起工作,则用户模块只向经过授权的应用程序提供数据。
该已订用的模块可包含机密信息,如银行帐号或密码。在移动设备上工作的应用程序负责使用这些个人数据,以提供给所期待的服务。然而,一个应用程序可以将个人数据转用作其他用途,而不仅仅是与相关应用程序提供商进行对话。这可能导致对用户模块所有者严重地侵权。
在移动设备中执行的这些应用程序利用用户模块中的可用资源。资源被理解为不同功能和对一个应用程序的正确功能所必需的数据。某些资源可能对于多个应用程序来说是共用的,尤其是涉及安全性的功能。用户模块因此可能被封锁或者改变某些应用程序的功能,对于这些应用程序,在有问题的移动设备中并不重视由操作员和/或应用程序提供商所建立的安全条件,或者移动设备的用户权限不足。
文件FR2831362描述了在提供有SIM卡的移动电话和应用程序服务器之间进行安全交易的过程。该过程的目的是为了保护涉及使用从服务器通过SIM卡下载的应用程序的权限。
根据该过程,首先通过公共密钥的安全交换,在服务器和SIM卡之间建立信任连接,然后通过移动设备向服务器传输所请求的文件,购买一个应用程序。后者部分地或全部地对该应用程序进行加密,并向移动设备发送一个由加密密钥和命令组成的密文,全部都是由SIM卡所知的公共密钥来进行加密的。在移动设备接收时,该密文被解密,密钥被存储在SIM卡中。执行命令,从而在移动设备中下载由服务器部分或全部加密的应用程序。一旦下载完成,该应用程序由存储在SIM卡中的密钥进行解密,然后安装在移动设备中。
根据该过程,由于最初在设备和服务器之间建立了信任连接并进行交易,移动设备中的该应用程序的使用权限得到了保护。服务器所起的作用主要在于移动设备中的应用程序的用户权限管理或DRM(数字权限管理)。下文中提出的解决方案基于由操作员、应用程序提供商或者与该应用程序相关的用户所考虑的风险的管理(风险管理)。
本发明的目的是提出一种在下载和执行期间对移动设备中的应用程序进行认证的方法。其限制了用户模块被不正当使用、或者通过不符合特定的预定安全标准的应用程序而被使用的风险。
另一个目的在于,保护移动设备的用户和相关应用程序提供商避免由于未经授权使用应用程序而导致的滥用。
这些目的通过一种对工作在与经由网络连接至控制服务器的设备中的至少一个应用程序的认证方法来实现,所述设备局部地连接至一个安全模块,所述应用程序通过该设备的应用程序执行环境被加载和/或执行,并使用存储在安全模块的资源,包括以下主要步骤-由控制服务器经由网络接收至少包含设备的标识符和安全模块的标识符的数据,-由控制服务器对所述数据进行分析和验证,-生成包含该应用程序的摘要、识别设备和安全模块的数据、以及供所述模块使用的指令的密文,-通过网络和设备将所述密文传输至安全模块,-通过将从接收到的密文中提取的摘要与由安全模块所确定的摘要进行比较来验证该应用程序。
所述方法的特征在于,在应用程序初始化和/或激活期间,安全模块执行从密文中提取的指令,根据对先前所执行的该应用程序的验证结果分别释放或封锁对所述安全模块的特定资源的访问。
以所希望的方式对该安全模块的资源进行封锁或释放,其目的是使特定应用程序可用或不可用。该移动设备的应用程序不直接被封锁或释放而是间接作用于应用程序,也就是说封锁或释放效果只有当移动设备试图执行这些应用程序时才显现出来。
这个方法最好应用于移动网络,因此,例如该设备是移动电话设备,安全模块是用户模块或SIM卡。这一组件连接至GSM(全球移动通信系统)、GPRS(通用分组无线业务)或UMTS(通用移动远程通信系统)等类型的移动网络,由操作员的控制服务器来管理。软件应用程序安装在移动设备中,并被配置为可以使用用户模块中的资源(数据或功能)。因此,只有当安全条件满足操作员和/或应用程序提供商所确定的标准时,资源才能被全部使用。对该标准的验证负责控制服务器,在控制服务器发出指令后,应用程序最后由安全模块来负责,安全模块可以释放或封锁安装在移动设备中的应用程序的正常工作所需的资源访问。
这些资源数据可包含如帐号、程序(以代码形式安装在移动设备中)、加密/解密密匙、对内容的访问权限等信息。
这些资源的功能可包括密文算法、验证过程、数字签名产生过程、加密过程、认证过程、数据确认过程、访问控制过程、数据保存过程、支付过程等。
与文件FR2831362所描述的过程不同,在下载到移动设备中之前,应用程序的部分或全部加密并不是必需的。实际上,根据本发明的方法,服务器与安全模块(或用户模块)之间的连接以最佳方式控制其资源,决定是否开始与在移动设备中执行的应用程序相关的应用。在所引用的文件所述的方法中,由服务器所接收的命令允许控制安装在移动设备中的应用程序的使用,而在本发明所述的方法中,它允许激活或不激活安全模块资源。
例如,当资源未被激活时,应用程序以“最小”的方式运作,留给用户较少的可能性。在一个实施例中,这种减少可能同授权购买服务的最高额有关,另外,这些服务只能在特定的地方(购物中心,体育馆,火车站,机场等)才能得到。
在第一个实施例中,在下载应用程序期间,密文被传输至用户模块。在第二个实施例中,该应用程序在其首次使用时请求在控制服务器上的密文。
根据本发明的认证方法也可以在移动设备执行应用程序期间采用,借助于用户模块,确保了该应用程序被授权访问包含在所述用户模块中的特定资源(数据或功能)。特别地,该用户模块在所述应用程序执行的过程中,有规律地验证应用程序所附的密文。
例如,将一个用户的用户模块插入到另一个移动设备中将影响特定应用程序的功能,但不阻止标准电话通信的建立。这一障碍作为过滤器,其目的是消除未经授权的移动设备或仿真设备、或者甚至是由未经过操作员或合作方应用程序提供商所批准的来源所得到的应用程序。
由第三方对应用程序的更改也通过用户模块被检测出来,用户模块将拒绝执行所接收的特定指令,从而阻碍或限制应用程序的执行。
在管理与移动设备/用户模块组件相关的信任或安全元件时,控制服务器起着重要的作用。它解释由移动设备传送给它的数据,以根据存储在用户模块中的资源(数据或功能)来控制或限制使用应用程序。
从移动设备和它的用户模块接收包含识别码IMEISV和IMSI的识别信息的服务器根据特定标准确定是否需要向用户模块发送一个新指令,用于重新定义一个限定了能够由移动设备中所执行的应用程序所使用的用户模块资源的新的保护框架。该标准例如可以参考安装在移动设备中的软件版本的更新,向移动设备中下载新的应用程序,保护框架的更新周期,网络的连接数目,访问网络所使用的技术,以及所使用的访问网络的身份。这些标准还涉及与所使用的硬件或软件相关的、操作员和/或应用程序提供商和/或用户所考虑的不同风险。
对密文的验证可以在首次初始化期间或首次使用应用程序时,或者在应用程序的每次初始化期间进行。根据一个变化方案,这种验证可以根据由控制服务器所发送的指令,以给定的频率周期性地执行。
在向移动设备中加载应用程序期间,伴随应用程序的所附密文通常包含应用程序本身的摘要,即借助于数学上的单向散列函数从应用程序代码中计算出的数据块。
当用户模块验证密文的有效性时,它也间接识别移动设备,并确保数据有效地来自控制服务器。换句话说,通过这种密文,控制服务器隐含地确保了用户模块已经考虑了移动设备的类型和软件版本,应用程序的加载已经得到控制,应用程序是可信的。根据事先接收到的指令,用户模块将确定是接受还是拒绝来自应用程序的请求或命令。
在这个验证步骤中,通过在用户模块和控制服务器之间建立一个近似直接的对话,移动设备起到中继作用。因此,从始至终确保了在控制服务器和用户模块之间经由移动设备的应用程序执行环境来交换信息的安全性。因此后者不能“欺骗”或改变与用户模块相关的数据。
本发明还涉及一种安全模块,其包含希望通过至少一个安装在连接至网络的设备中的应用程序进行本地访问的资源,所述设备包含用于读取和传输至少包含设备的标识符和安全模块的标识符的数据的装置,所述模块的特征在于它包括用于对除了其他数据外还包含所述应用程序的摘要和指令的密文进行接收、存储和分析的装置,还包括用于验证所述应用程序的装置,以及用于提取和执行包含在密文中、根据应用程序的验证结果释放或封锁特定资源的指令的装置。
这个安全模块例如用作用户模块或连接至移动设备的SIM卡。
借助于参考附图作为非限制性示例给出的详细说明将更好地理解本发明,即-

图1a示出了根据第一个实施例,应用程序安装过程的方框图,其中密文通过应用程序执行环境来传递。
-图1b示出了根据图1a所示方法的密文验证过程。
-图1c示出了根据图1a所示的方法,使用用户模块资源的应用程序执行过程。
-图2a示出了根据第二个实施例,应用程序安装过程的方框图,其中只有该应用程序被下载。
-图2b示出了验证过程,其中应用程序根据图2a所示的方法从控制服务器请求密文。
-图2c示出了根据图2a的方法,使用用户模块资源的应用程序的执行过程。
-图3a示出了根据第三个实施例,应用程序安装过程的方框图,其中只有该应用程序被下载。
-图3b示出了验证过程,其中应用程序根据图3a的方法从控制服务器请求密文和应用程序摘要。
-图3c示出了根据图3a的方法,使用用户模块资源的应用程序的执行过程。
-图4示出了一个密文例子的结构。
图1a,1b,1c,2a,2b,2c,3a,3b,3c中的方框图示出了移动设备组件CB用户模块SIM,其包含了经由移动网络NET连接至由操作员所管理的控制服务器CSE的资源RES。这个服务器与一个或多个应用程序提供商FA相连。
移动设备CB包含一个或多个在执行环境AEE下工作的软件应用程序APP。这些应用程序或者来自与操作员的控制服务器CSE相连的应用程序提供商FA,或者它们可以由移动设备制造商初始编程。在后一种情况下,有时需要下载更新,这些更新也需要由用户模块SIM进行验证。
根据图1a,1b,1c所示的第一个实施例,应用程序APP的密文CRY在应用程序APP的安装过程中通过应用程序执行环境AEE传输至用户模块SIM。
图1a示出了安装过程,其中移动设备CB首先发送用作用户模块SIM的标识ID的数据,它由控制服务器CSE来验证。这个标识ID由用户模块SIM的识别码IMSI和移动设备CB的唯一识别码IMEISV来实现。然后从服务器CSE伴随一个密文CRY下载应用程序APP,该密文将通过执行环境AEE传输给用户模块SIM进行验证,如图1b所示。
需要注意的是,提供商FA被操作员认为是可靠的,也就是说,应用程序APP得到批准,并以不侵害用户和/或操作员的方式工作。
根据本发明的方法应用于多种在不同执行环境类型AEE下执行的应用程序APP。例如许多移动电话拥有Jave应用程序的功能,其由用作处理器和运行环境的Jave虚拟机VM来执行。下面的描述基于Jave应用程序的例子。当然,其他环境或操作系统,如Symbian OS、Windows、Palm OS、Linux等,也可以作为应用程序支持。
参见图1c,在执行期间,Jave应用程序请求用户模块SIM,并通过发送该请求或命令CMD告知执行环境AEE。执行环境AEE计算应用程序的摘要FIN2,将其发送至用户模块SIM。已经由控制服务器CSE生成、然后与应用程序APP一道(或单独)加载到移动设备CB中的密文CRY被存储在用户模块SIM中。后者首先确认它有效地含有决定是否需要响应应用程序APP的请求或控制CMD所必需的数据。该数据作为权限,在加载应用程序APP期间从控制服务器CSE下载,其允许控制应用程序APP的操作。在缺少这些权限的情况下,应用程序APP不能使用用户模块SIM的资源RES(数据或功能)。
在拥有这些权限的情况下,用户模块SIM通过将所存储的密文CRY产生的摘要FIN1与和应用程序APP相关并由应用程序环境AEE所提供的摘要FIN2进行比较,来验证由所存储的密文CRY产生的摘要FIN1。该密文CRY可以通过用RSA类型(Rivest,Shamir,Adelman)的私有密匙加密过的数据块的方式生成。这类如图4所示的数据块除了其他数据外例如还包含用户模块的识别码IMSI(ID SIM)、移动设备的识别码IMEISV(ID CB)、应用程序的标识符(ID APP)、应用程序的摘要FIN1、SIM资源标识符(RES ID)和用于封锁/释放SIM资源的指令(INS RES)。这个私有密匙只由控制服务器CSE所知,而所述密匙的公共部分对于用户模块SIM是已知的。使用不对称密匙的优点在于产生密文的密匙不在控制服务器CSE的外部。
当然,其他不对称密匙算法,如DSA(数字算法签名)、ECC(椭圆曲线密文),也可以代替RSA。
使用不对称密匙算法可以是优选的,其原因是可以简单、快捷地进行验证,降低制造和实施成本。在这种情况下,密匙对于服务器CSE和用户模块SIM都是已知的,例如算法IDEA(国际数据加密算法)可用于给数据块(IMSI,IMEISV,应用程序识别码,应用程序摘要,SIM资源识别码,封锁/释放SIM资源的指令)进行签名。作为IDEA算法的替代,也可以采用如TDES(三数据加密标准)和AES(高级加密标准)等算法。
在这两种非对称和对称的密匙方法中,用户模块SIM验证出现在密文CRY的不同位置处的一致性,特别是它控制应用程序标识符ID_APP和被授权或禁止使用其资源RES(数据或功能)的应用程序摘要FIN1。
在一种变体中,密文CRY可包含一个计数器,用于避免重复使用提供给用户模块SIM所用的同一密文(重复攻击)。实际上,两个同一类型的应用程序可携带相同的标识符和相同的摘要FIN1。在这种情况下,用户模块SIM还通过与已存储并规律更新的参考计数器的值进行比较来控制上述计算器的值。
计数器的一个变体是使用由用户模块SIM生成的随机变量(随机数)。这个随机变量与发送至控制服务器CSE的数据一起传输。后者在响应信息中发回这个随机变量,用户模块可证实它与新的信息有关。更为普遍地,为了避免使用旧密文CRY所带来的所有风险,后者包含一个可由用户模块SIM预知的变量,不影响计数器或随机变量。
在另一个变体中,借助于RSA或IDEA类型的密匙产生的密文CRY可以由利用共享密匙HMAC(用于信息认证密钥散列)由以下集合(IMSI、IMEISV、应用程序识别码、应用程序摘要、SIM资源识别码、用于封锁/释放SIM资源的指令)所生成的数据块来代替。HMAC是一种信息认证机制,使用密文散列函数,如MD5(信息摘要)或SHA-1(安全散列算法),与一个公共密匙相结合。
该密匙出现在控制服务器CSE和用户模块SIM中,可以在用户模块SIM进行个性化时或者在将特定资源RES安装到用户模块SIM中时被加载。根据上述选项,用户模块SIM的每个资源RES或资源组可与一个不同的密匙相结合,或者该密匙对于所有资源RES是全局性的,而对给定的用户模块SIM是唯一的。
因此,密文CRY允许用户模块SIM了解在用户模块SIM中对于相应的移动设备CB可释放或封锁的资源RES。
所使用的两个摘要(分别为FIN1、FIN2)来确定元件,因为它们通过移动设备CB和用户模块SIM构成了应用程序APP的密文控制装置。这类控制对于阻止第三方应用程序通过给定密文CRY执行认证是必要的。实际上,如果密文A证明来自移动设备A中的用户模块A的应用程序A是可靠的,则需要避免另一个应用程序B通过来自移动设备A中的用户模块A的同一个密文A被不正当验证的情况。
根据一个变体,包含在密文CRY中的应用程序摘要FIN1在控制服务器CSE和用户模块SIM之间从始至终保持其机密性。为此,摘要FIN1通过控制服务器CSE来加密,并通过用户模块SIM来解密。此外,应用程序APP可以通过以下方式为给定的加载进行个性化,即包含在密文CRY中的摘要FIN1和由执行环境AEE计算出的应用程序APP的摘要FIN2保持相同,但取决于移动设备CB的标识。当需要避免利用在其与用户模块SIM的接口可能受到危害的另一应用程序的执行环境中给出的摘要来验证第三方应用程序的情况时,这类措施是必需的。实际上,如果摘要A验证来自移动设备A中的用户模块A的应用程序A,则需要避免另一应用程序B利用来自移动设备B中的用户模块B的同一摘要A被不正当地验证。
根据另一个变体,每个应用程序(Jave类型)伴有两个密文用于虚拟机VM的Jave密文和用于用户模块SIM的密文CRY。除此之外,这两个密文包含相同的应用程序摘要(这里称为FIN2),它是Java应用程序代码的摘要。因此,当用户模块SIM必须验证应用程序的密文CRY时,它从虚拟机VM等待与先前有必要计算出来的有问题的应用程序APP相关的摘要FIN2。应用程序摘要由移动设备CB传输至用户模块SIM。这个摘要并非来自控制服务器,它是在下载应用程序APP之后由移动设备CB的应用程序执行环境AEE计算出来的。另一方面,移动设备CB将先前加载的密文CRY和来自控制服务器的应用程序一起传输至用户模块。因此,后者可以验证通过比较所接收到的摘要。移动设备CB不能作弊,因为它不知道由用户模块SIM接收到的摘要;如果是这样,则必须使摘要计算的功能(通常是散列函数)可逆,或者必须找到另一个给出相同密文CRY的摘要,这几乎是不可能的。
图1b示出了密文CRY的验证过程,其例如可以在每次请求相关应用程序APP之前有规律地执行,或者最好在其安装或首次使用之前执行一次。如果密文CRY是有效的,则用户模块SIM将一个接受信息OK传输至执行环境AEE。应用程序APP然后可通过执行环境AEE将它的请求或命令CMD寻址到用户模块SIM,并使用用户模块SIM的资源RES。后者通过经由执行环境AEE发送对于应用程序来说足够的响应RSP来接收这些命令CMD,参见图1c。
在无效密文CRY的情况下,用户模块SIM将一个拒绝信息NOK发送到执行环境AEE。在这种情况下,执行环境AEE可取消应用程序安装过程APP,或者安装应用程序APP,其经由执行环境AEE寻址到用户模块SIM的请求或命令CMD没有响应RSP,用户模块SIM的资源RES将不可用。
在接受和拒绝(OK和NOK)这两种情况下,应用程序执行环境AEE可以将响应中继传输至控制服务器CSE。用户模块可以向控制服务器CSE间接发回接收密文CRY的确认CF,并允许从始至终控制操作,参见图1b。所述确认CF包含至少一个操作成功或操作错误的代码,以及用于防止重复攻击的计数器。这个信息允许控制服务器CSE维持已被更新的、与用户模块SIM相关的计数器。
根据图2a,2b,2c所示的第二个实施例,应用程序APP只能在没有密文CRY的情况下移动设备CB的识别ID之后被下载,参见图2a。
图2b,在验证期间,在由用户对其初始化时,应用程序APP请求包含所述应用程序的资源使用权限RES的密文。这个密文CRY是由应用程序APP从控制服务器CSE直接下载的,应用程序将其经由执行环境AEE传输至用户模块SIM。用户模块SIM通过应用程序APP而不是像第一个实施例那样通过执行环境AEE将密文CRY的接收确认CF传输到服务器CSE。这样,执行环境AEE在应用程序APP和用户模块SIM之间只起到中继的作用。
在密文CRY被验证之后,应用程序的执行过程以上面所述图1c所示的第一种方法的同样方式发生,参见图2c。
图3a,3b,3c示出了第三个变体,其中应用程序APP只是在移动设备CB的识别ID之后从控制服务器CSE或者从中间应用程序下载服务器APP下载,参见图3a。在验证过程中(图3b),应用程序直接从服务器CSE或者从中间应用程序下载服务器APP加载密文CRY和摘要FIN2。在这种情况下,不像前两个变体,应用程序环境AEE不再计算摘要FIN2,而是由一个外部单元,由控制服务器CSE或中间应用程序下载服务器APP来进行计算。
在密文CRY验证之后,应用程序执行过程APP以与图1c和2c所示的两种先前描述的方法相同的方式发生。
这个第三实施例可以是优选的,其优点在于它不需要对执行环境AEE进行任何更改,因为它目前是为安装在移动电话的Java应用程序所定义的,也就是说不必对现有的标准进行修改。
此外,假定密文CRY的验证过程和应用程序安装的验证过程是完全独立的,则对请求使用相同摘要的两个密文的第一变体的限制不再出现。
为了对在应用程序上计算的摘要进行个性化,可以在加载到移动设备中之前将移动设备每个项目的不同数据添加到应用程序代码中。因此,当摘要由移动设备的应用程序环境计算时,该摘要是唯一的,不能用于其他移动设备。当然,密文将由控制服务器基于应用程序的最初数据和这个唯一的数据来计算。
在本发明的一个变体中,移动设备可由固定设备,如付费电视解码器或计算机来代替。应用程序可以通过电信网络从一个服务器下载到设备中。与应用程序相关的密文被存储在安全模块中,并在执行或每次应用程序初始化时被验证。这一验证结果通过释放或封锁安全模块中的资源来控制应用程序的功能。
权利要求
1.对工作在通过网络(NET)连接至控制服务器(CSE)的设备(CB)中的至少一个应用程序(APP)进行认证的方法,所述设备(CB)局部地连接至一个安全模块(SIM),所述应用程序(APP)通过设备(CB)的应用程序执行环境(AEE)被装载和/或执行,并使用存储在安全模块(SIM)中的资源(RES),包括以下主要步骤-由控制服务器(CSE)经由网络(NET)接收至少包含设备(CB)的识别码(IMEISV)和安全模块(SIM)的识别码(IMSI)数据,-由控制服务器(CSE)对所述数据进行分析和验证,-生成包含应用程序(APP)的摘要(FIN1)、识别设备(CB)和安全模块(SIM)的数据、以及提供给所述模块使用的指令(INSRES)的密文(CRY),-通过网络(NET)和设备(CB)将所述密文(CRY)传输到安全模块(SIM),-通过将从接收到的密文(CRY)中提取的摘要(FIN1)与由安全模块(SIM)所确定的摘要(FIN2)进行比较来验证应用程序(APP),所述方法的特征在于,在应用程序(APP)初始化和/或激活期间,安全模块(SIM)执行从密文(CRY)中提取的指令(INS_RES),并根据先前针对该应用程序(APP)进行验证的结果分别释放或封锁对所述安全模块(SIM)的特定资源(RES)的访问。
2.根据权利要求1所述的方法,其特征在于,所述设备是一个移动电话的移动设备(CB)。
3.根据权利要求1所述的方法,其特征在于,所述网络(NET)是一种GSM、GPRS或UMTS类型的网络。
4.根据权利要求1或2所述的方法,其特征在于,所述安全模块(SIM)是插入到SIM卡类型的移动电话的移动设备(CB)中的用户模块。
5.根据权利要求1或4所述的方法,其特征在于,由移动设备(CB)的识别码(IMEISV)以及由适用于网络(NET)的用户的用户模块(SIM)的识别码来实现对所设定的移动设备(CB)/用户模块(SIM)的识别(ID)。
6.根据权利要求1所述的方法,其特征在于,所述包含在由安全模块(SIM)接收到的密文(CRY)中的指令根据由操作员和/或应用程序提供商(FA)和/或设备的用户事先所确立的标准来控制应用程序(APP)的使用。
7.根据权利要求6所述的方法,其特征在于,所述的标准根据操作员所希望考虑的与所述应用程序(APP)的软件或者与所述设备(CB)的硬件相关的风险定义了应用程序(APP)的使用限制。
8.根据权利要求1所述的方法,其特征在于,在第一次初始化或第一次使用所述应用程序(APP)时,验证带有所述密文(CRY)的应用程序(APP)。
9.根据权利要求1所述的方法,其特征在于,根据由所述控制服务器(CSE)产生的指令,以给定的频率周期性地验证带有所述密文(CRY)的应用程序(APP)。
10.根据权利要求1所述的方法,其特征在于,在每次初始化设备(CB)上的所述应用程序(APP)时,验证带有所述密文(CRY)的应用程序(APP)。
11.根据权利要求1所述的方法,其特征在于,密文(CRY)借助于来自一个数据集的非对称或对称的加密密钥来生成,所述数据集除了其他数据外还包含设备(CB)的识别码(IMEISV)、安全模块(SIM)的识别码(IMSI)、应用程序(APP)的识别码、用单向散列函数计算出的应用程序(APP)的摘要(FIN1)、安全模块(SIM)资源的识别码(RES_ID)、以及用于锁住/释放安全模块(SIM)的资源的指令(INS_RES)。
12.根据权利要求11所述的方法,其特征在于,密文(CRY)包含一个由安全模块(SIM)预知的变量,以避免重复使用同一密文(CRY),由安全模块(SIM)通过与存储在所述模块中并规则更新的参考值进行比较来控制所述变量的值。
13.根据权利要求1所述的方法,其特征在于,当所述安全模块(SIM)接收或拒绝应用程序(APP)的密文(CRY)时,安全模块(SIM)通过所述设备(CB)和网络(NET)将一个确认信息(CF)传输给所述控制服务器(CSE)。
14.根据权利要求1所述的方法,其特征在于,在所述应用程序(APP)通过应用程序执行环境(AEE)被加载到所述设备(CB)中的同时,所述密文(CRY)被传输至安全模块(SIM)。
15.根据权利要求1所述的方法,其特征在于,一旦所述应用程序(APP)经由所述网络(NET)从所述控制服务器(CSE)被加载到所述设备(CB)中,则所述应用程序(APP)在其初始化时从所述服务器(CSE)请求一个密文(CRY),并将所述密文(CRY)传输至所述安全模块(SIM),密文(CRY)被接受或拒绝的确认信息(CF)由安全模块(SIM)通过应用程序(APP)被传输至服务器。
16.根据权利要求1所述的方法,其特征在于,所述设备是与安全模块相连接的付费电视解码器或计算机。
17.一种安全模块,其包含希望由安装在连接至网络(NET)的设备(CB)中的至少一个应用程序(APP)进行本地访问的资源(RES),所述设备(CB)包括用于读取和传输至少包含设备(CB)的识别码(IMEISV)和安全模块(SIM)的识别码(IMSI)的数据的装置,所述模块的特征在于,它包括用于对一个除了其他数据外还包含所述应用程序(APP)的摘要(FIN1)和指令(INS_RES)的密文(CRY)进行接收、存储和分析的装置,还包括用于验证所述应用程序(APP)的装置,以及用于提取和执行包含在所述密文(CRY)中的、根据应用程序(APP)的验证结果释放或封锁特定资源(RES)的指令(INS_RES)的装置。
18.根据权利要求17所述的安全模块,其特征在于,它是希望连接到一个移动设备的“用户模块”或“SIM卡”类型。
全文摘要
本发明涉及一种借助于和移动设备相关的安全模块所执行的、对应用程序的安全性进行管理的方法。本发明的方法对工作在经由网络(NET)连接到控制服务器(CSE)的设备(CB)中的至少一个应用程序(APP)进行认证,所述设备(CB)局部地连接至安全模块(SIM),所述应用程序(APP)通过设备(CB)的应用程序执行环境(AEE)被装载和/或执行,使用存储在安全模块的资源(RES),包括以下主要步骤由控制服务器(CSE)经由网络(NET)接收至少包含设备(CB)的识别码(IMEISV)和安全模块(SIM)的识别码(IMSI)的数据;由控制服务器(CSE)对所述数据进行分析和验证;生成包含应用程序(APP)摘要(FIN1)、识别设备(CB)和安全模块(SIM)的数据、以及用于所述模块的指令(INS RES)的密文(CRY);经由网络(NET)和设备(CB)将所述密文(CRY)传输至安全模块(SIM);通过将从接收到的密文(CRY)中提取的摘要(FIN1)与由安全模块(SIM)所确定的摘要(FIN2)进行比较来验证应用程序(APP)。所述方法的特征在于,在应用程序(APP)初始化和/或激活期间,安全模块(SIM)执行从密文(CRY)中提取的指令(INS RES),并根据先前针对所述应用程序(APP)的运行验证结果分别释放或封锁对所述安全模块(SIM)的特定资源(RES)的访问。
文档编号H04L29/06GK1886963SQ200480034606
公开日2006年12月27日 申请日期2004年11月26日 优先权日2003年11月27日
发明者雷查德·克桑迪尼, 雷纳托·坎迪尼 申请人:纳格拉卡德股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1