一种实现多发行方的多应用Java卡的方法与流程

文档序号:15689198发布日期:2018-10-16 21:41阅读:613来源:国知局
本发明涉及智能卡
技术领域
:,尤其涉及一种实现多发行方的多应用java卡的方法。
背景技术
::在globalplatform组织发布的卡片规范中,有且只有一个发行方,该发行方是卡片的拥有者并最终对卡片的行为负责,该发行方在卡片内对应于一个特殊的安全域,被称为发行方安全域,也叫做主安全域,它代表发行方在卡上为卡片内容管理、安全和通信等需求提供支持。在卡片进入opready生命周期时,必须已经具备了这样一个主安全域,通过这个主安全域,卡外实体可以获取卡片的相关信息,同时,也可以通过该主安全域完成应用包下载、应用实例创建、包删除、应用实例删除等操作,也可以通过该主安全域创建其他的安全域,但是其他的安全域都是补充安全域。主安全域与补充安全域的区别在于,主安全域具有以下的特性:1.它是卡上第一个安装的应用;2.它的生命周期时继承的卡片的生命周期,而不是与其他补充安全域一样使用安全域的生命周期状态。主安全域与补充安全域在生命周期管理上有明显不同,主安全域的生命周期状态继承卡片的生命周期状态,也就是说,可以通过锁定或者终止主安全域的生命周期状态来达到锁卡或者终止卡的目的,在卡片锁定以后,对其他所有补充安全域和卡上所有应用的操作都会被禁止,除非卡片被解锁,在卡片终止以后,对卡片的除getdata命令外的任何操作将被禁止,也就是说,如果将isd的生命周期修改为锁定或者终止了,这种修改是对全卡片生效的。另外,根据globalplatform组织发布的卡片规范,主安全域默认具有全局锁定、全局删除的权限,而且还是卡片锁定和终止时的最终可以选择的final应用,是基本逻辑通道上的默选应用,这些权限在主安全域被创建时就已经默认拥有了的,除非通过更新注册表的方式对其进行修改,否则它可以任意的去锁定其他组织发布的应用,任意的去删除卡片上的任何包和应用,哪怕这些包和应用并不是属于主安全域的,这些权限显然会使这些包和应用的提供者处于非常弱势和被动的地位。但是在国内,由于存在着很多不同行业的卡片发行方,即使在联合发卡时他们也想独立管理自己的安全域和应用,不想受主安全域的控制,不想由单一的发行方操控卡片的生命周期,更不想自己的包和应用被其他组织给删除,所以如果有一种卡片可以支持多个发行方,并且它们可以独立的控制自己的安全域和应用,就可以满足上述行业需求,本发明就提供了这样一种实现多发行方的多应用java卡的方法,在一张卡片上,可以存在多个发行方安全域,也就是多个主安全域,它们各自管理自己的包和应用,一个主安全域只能管理它自己的包和应用,不能管理其他主安全域下的包和应用,也不能去删除其他主安全域下的包和应用,每个主安全域都有自己的生命周期状态,只能管理自己的生命周期状态,不能去修改其他主安全域的生命周期状态,通过这些限制,使每个主安全域及其下关联的包和应用与其他主安全域及其下的包和应用都处于相互独立的状态,互不影响,互不干涉,而且本发明使用的是一种纯软件的方式,不需要芯片层面做任何改动,减少了芯片改版带来的成本增加。技术实现要素:本发明实施例提供了一种实现多发行方的多应用java卡的方法,在不安装其他主安全域的情况下,这就是一张符合globalplatform标准的卡片,但是如果安装了其他的主安全域,这就成为了一张可以支持多发行方的多应用java卡。为实现本发明的目的,需要按照以下步骤操作,包括:步骤一:卡片初始化过程中创建卡上第一个主安全域,在不创建其他主安全域的情况下,该卡片为符合globalplatform规范的标准java卡,卡上具有唯一的一个主安全域isd1;步骤二:根据应用提供者的需要,可以创建其他的主安全域isdxx(xx代表isd的编号,用于区别isd1),这些安全域是通过install[forinstallandmakeselectable]命令来创建的,在该命令的安装参数中有一个标签用于标识这些安全域是isd,生命周期状态与isd1创建完成后的初始生命周期一致,由于没有任何的密钥,它是无法对外提供安全域相关的服务的,此时卡片仍是仅有一个可用isd的符合globalplatform规范的卡片;步骤三:当isdxx具备了安全通道密钥以及与其权限相关的所有密钥且已经关联到自身时,该isd即为可用状态,此时它可以对外提供安全域相关的服务,但此时该isd的生命周期状态仍为opready状态;步骤四:当卡上有一个isdxx已经进入可用状态时,卡片会自动切换为支持多发行方的多应用java卡,这种切换是无需外界干预的,卡片自动完成的,且此操作不可逆;步骤五:在卡片个人化以后,为保证卡片安全性,不允许再创建isd,isdxx与isd1是相互独立的,它们作为各自独立的树状结构的root存在,不能跨越树状结构去管理对方的相关联应用。本发明实施例提供的实现多发行方的多应用java卡的方法,可以通过自适应的方式从符合globalplatform规范的卡片切换到支持多发行方的多应用java卡,而不需要使用配置开关,可以节省代码空间,而且如果配置太多,很容易由于配置错误而导致卡片发行失败,另外,这种卡片完全可以满足多发行方的需求,使它们都可以独立的管理自己的安全域和应用,且不能操作其他安全域管理的应用,保证它们相互独立。附图说明图1为本发明实施例的实施方案流程图;具体实施方式下面结合附图和实施例对本发明提供的实现多发行方的多应用java卡的方法进行更详细地说明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例中提供的实现多发行方的多应用java卡的方法,需要执行的步骤包括:s101、卡片初始化时,卡上仅具备唯一的isd1;s102、通过install[forinstallandmakeselectable]命令创建isdxx;s103、通过给isdxx装载所需的密钥,并完成迁移到自身来使isdxx进入可用状态;s104、isdxx进入可用状态,卡片自动切换为支持多发行方的多应用java卡;s105、卡片个人化完成,禁止创建isdxx,isdxx与isd1是相互独立的,它们作为各自独立的树状结构的root存在,不能跨越树状结构去管理对方的相关联应用;具体地说,在步骤s101中,在卡片初始化时,卡上仅具备唯一的isd1,isd1是卡上的第一个应用,此时卡片是一张符合标准globalplatform规范的卡片,isd1的生命周期状态为opready状态;在步骤s102中,选择isd1,并且通过install[forinstallandmakeselectable]命令创建isdxx,在install[forinstallandmakeselectable]命令的安装参数中,通过一个特定的参数来标识这个要创建的应用是isd,这个isdxx在创建完成后,生命周期状态与isd1相同,都是opready状态,该isdxx的相关联安全域为isd1;在步骤s103中,选择isdxx,建立安全通道,此时因为它还没有自己的安全通道密钥,所以需要使用isd1的安全通道密钥来建立安全通道,安全通道建立完成后,为isdxx装载它自己的密钥,包括安全通道密钥和其他与其权限相关的密钥,随后将isdxx迁移到自身,使其与isd1完全独立,在isdxx完成迁移到自身及装载所有所需密钥的动作后,isdxx将进入可用状态,但是它的生命周期状态仍为opready状态;在步骤s104中,当卡上有一个isdxx将进入可用状态后,卡片自动切换成一张支持多发行方的多应用java卡,这种切换是无需外界干预的,卡片自动完成的,因为每个isd,无论isd1还是isdxx都是不允许被删除的,所以切换到多发行方的多应用java卡的操作不可逆;在步骤s105中,在卡片个人化结束后,不允许再创建isdxx,再发送install[forinstallandmakeselectable]命令企图创建isdxx,将返回异常信息,isdxx与isd1是相互独立的,它们作为各自独立的树状结构的root存在,不能跨越树状结构去管理对方的相关联应用,它们各自代表某一个发行方,这种结构可以充分满足各实体联名发卡的需求。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
:的技术人员在本发明涉及的技术范围内,可以轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1