GPV211.docx
- 文档编号:9325953
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:48
- 大小:329.11KB
GPV211.docx
《GPV211.docx》由会员分享,可在线阅读,更多相关《GPV211.docx(48页珍藏版)》请在冰豆网上搜索。
GPV211
Globalplatform
全球平台
——————————
卡规范
版本2.1.1
2003.3
收到这份文件的人如果认为该文档上的实施规范侵犯了自己的专利权或知识产权请提交疑问和相关有力的证明文件。
目录
1介绍..............................................................................................13
1.1概述............................................................................................14
1.2参考文献....................................................................................14
1.3术语及定义.................................................................................15
1.4缩写和符号.................................................................................17
1.5修订历史.....................................................................................17
1.51.开放平台卡规范V2.0到开放平台卡V2.0.1...........................................17
1.5.2全球平台卡规范V2.1中的主要调整....................................................18
1.5.3全球平台卡规范V2.1中的修订..............................................................19
2系统架构.......................................................................................20
3卡架构.........................................................................................21
3.1运行环境....................................................................................22
3.2卡管理机制................................................................................22
3.2.1全球平台环境(open)......................................................................22
3.2.2发卡方安全域....................................................................................22
3.2.3持卡人验证管理.............................................................................22
3.3安全域.......................................................................................22
3.4全球平台API............................................................................23
3.5卡内容.......................................................................................23
4安全架构..................................................................................24
4.1目标...........................................................................................24
4.2安全责任
4.2.1发卡方的安全责任
4.2.2应用提供者的安全责任
4.2.3控制机构的安全责任
4.2.4卡上组件的安全责任
4.2.5后台系统的安全责任
4.3加密支持
4.3.1对卡内容的完整性和身份认证的管理
4.3.2安全会话
5生命周期模块
5.1卡的生命周期
5.1.1卡的生命周期状态
5.1.2卡的生命周期转换
5.2可执行加载文件/可执行模块的生命周期
5.2.1可执行加载文件的生命周期
5.2.2可执行模块的生命周期
5.3应用和安全域的生命周期
5.3.1应用的生命周期状态
5.3.2安全域的生命周期状态
5.4生命周期示例图
6卡片的管理模块
6.1卡管理模块总览
6.1.1OPEN模块
6.1.2发卡方安全域模块
6.1.3持卡人验证管理句柄模块
6.2卡管理模块提供的服务
6.2.1应用访问OPEN的服务
6.2.2应用访问持卡人验证管理的服务
6.2.3应用访问发卡方安全域的服务
6.2.4发卡方安全域访问应用
6.3命令调度
6.3.1基本的逻辑信道
6.3.2补充的逻辑信道
6.4卡内容管理
6.4.1卡内容的下载和安装
6.4.2内容移除
6.4.3内容引渡
6.5委托管理权
6.6全球平台的注册
6.6.1发卡方安全域的数据元素描述
6.6.2应用/可执行加载文件/可执行模块的数据元素
6.7对安全的管理机制
6.7.1应用锁定
6.7.2卡锁定
6.7.3卡的销毁
6.7.4运行速度检测
6.7.5跟踪和事件日志
6.7.6安全内容的下载和安装
6.8发卡方安全域
6.8.1发卡方标识编号
6.8.2卡的描述编号
6.8.3卡的识别数据
6.8.4实卡的密钥信息
6.9CVM管理机制
6.9.1CVM状态
6.9.2CVM格式
7安全域
7.1概述
7.2安全域服务
7.2.1应用访问安全域服务
7.2.2安全域访问应用
7.3对个人化的支持
7.4对运行时间管理的支持
7.5DAP验证
7.6委托管理权
7.6.1下放下载功能
7.6.2下放安装功能
7.6.3下放引渡功能
7.6.4下放删除功能
7.7委托管理权的令牌,回执和DAP验证
7.7.1下载令牌
7.7.2下载回执
7.7.3安装和引渡令牌
7.7.4安装回执
7.7.5引渡回执
7.7.6删除回执
7.7.7下载文件数据块的hash
7.7.8下载文件数据块签名(DAP验证)
8安全通信
8.1安全信道
8.2显式/隐式的安全信道
8.2.1显式安全信道的启动
8.2.2隐式安全信道的启动
8.2.3安全信道的关闭
8.3直接/间接的交出安全信道协议
8.4实体认证
8.5报文发送的安全
8.6信道协议标识的安全
9APDU命令的参考
9.1基本编写规则
9.1.1生命周期状态的设定
9.1.2应用权限设定
9.1.3一般错误状态
9.1.4类字节设定
9.1.5APDU命令和响应数据
9.1.6Key类型设定
9.1.7在委托管理响应消息中的可选回执
9.2删除命令
9.3获得数据命令
9.4获得状态命令
9.5安装命令
9.6下载命令
9.7管理信道命令
9.8输入密钥命令
9.9选择命令
9.10设置状态命令
9.11存储数据命令
A全球平台的API
A.1非开放平台java卡的API
A.2java卡上的全球平台
A.3Windows支持的智能卡上的全球平台
B算法(密码的和hash的)
B.1数据加密标准(DES)
B.1.1加密/解密
B,1,2MACing
B.2hashing算法
B.2.1安全hash算法(SHA-1)
B.3公共密钥加密方案1(PKCS#1)
B.4DES填充
C安全内容管理
C.1密钥
C.1.1发卡方安全域密钥
C.1.2安全域密钥
C.2加载文件数据块hash
C.3令牌
C.3.1加载令牌
C.3.2安装令牌
C.3.3引渡令牌
C.4回执
C.4.1加载回执
C.4.2安装回执
C.4.3删除回执
C.4.4引渡回执
C.5DAP验证
C.5.1PKC策略
C.5.2DES策略
D安全通道协议01
D.1安全通信
D.1.1SCP01的安全信道
D.1.2相互认证
D,1,3消息的完整性
D.1.4消息数据的保密性
D.1.5ICV加密
D.1.6安全等级
D.2加密密钥
D.3加密的用法
D.3.1DES会话密钥
D.3.2认证密码
D,3,3APDU命令MAC的生成和验证
D.3.4APDU数据域的加密和解密
D.3.5密钥敏感数据的加密和解密
D.4安全信道的APDU命令
D.4.1初始化更新命令
D.4.2外部认证命令
E安全信道协议02
E.1安全通信
E.1.1SCP02的安全信道
E.1.2实体认证
E.1.3消息的完整性
E.1.4消息数据的保密性
E.1.5安全等级
E.2加密密钥
E.3加密算法
E.3.1密码块链(CBC)
E.3.2使用显式信道初始化的ICV消息的完整性
E.3.3使用隐式信道初始化的ICV消息的完整性
E.3.4ICV加密
E.4加密方法
E.4.1DES会话密钥
E.4.2显式信道初始化中的认证密码
E.4.3隐式信道初始化中的认证密码
E.4.4APDU命令C-MAC的生成和验证
E.4.5APDU响应R-MAC的生成和验证
E,4,6APDU命令数据域的加密和解密
E.4.7敏感数据的加密和解密
E.5安全信道APDU命令
E.5.1初始化更新命令
E.5.2外部认证命令
E,5,3开始R-MAC会话命令
E.5.4结束R-MAC会话命令
F全球平台数据的值和卡识别数据
F.1数据的值
F.2卡识别数据结构
F.3安全域管理数据
Copyright2003GlobalPlatformInc.AllRightsReserved.
Thetechnologyprovidedordescribedhereinissubjecttoupdates,revisions,andextensionsbyGlobalPlatform.Useofthis
informationisgovernedbytheGlobalPlatformlicenseagreementandanyuseinconsistentwiththatagreementisstrictly
prohibited.
表格索引目录略
Part1
介绍
1介绍
全球平台是一个由通信支付行业领头的公司,政府和供应商联合成立的组织,是第一个去为智能卡在多行业之间的应用促进形成一个全球化的基础架构的组织。
它的目的就是去减少多应用智能卡在跨行业间发展的障碍。
智能卡的发卡商仍然能自由去选择想要的卡,终端和后台系统。
为了让智能卡发挥其真正的潜力,消费者需要去使用其各种各样的功能,例如,消费者能使用带有这种卡的手机去实现网上购物就如同在电脑上一样安全。
当然智能卡的成本应当合理并且能很容易的实现多应用。
从20实际90年代中期开始,应用程序开发引入开放系统规范,使得智能卡行业出现了大量的重要突破,其中3个领军技术是:
JavaCardTM,WindowsPoweredSmartCard,和MULTOSTM。
这些技术规范为解决多应用芯片卡设想做出了了重要的贡献,比方说规定项目需要遵守支持其应用程序在不同的卡片上的可移植性这个准则。
通过OpenPlatform的倡议,首先VisaInternational和现在的GlobalPlatform已经在芯片卡行业间传递一个遗失的非常重要的的芯片卡规范-一个保持硬件独立,厂商独立,应用独立的卡片管理规范,这份新的规范提供了一个基本的安全和卡管理架构以保证芯片卡系统最重要的方面-基本结构(也就是说这本规范为项目制定一个大致的开发框架,这样写出的程序在以后卡片技术先进了需要移植时,这个框架依然有效,只需要在框架内做具体改动就可以了)
全球平台(GlobalPlatform)为发卡商去实现符合其客户需求发展的多应用芯片卡系统定义了一个灵活的,强大的规范。
这本规范允许他们去选择符合其实际情况的卡的技术,同时也确保他们以后能够移植(如果需要)到其他采用不同技术的卡上而不需要对其(项目)架构有重大影响。
这本规范描述了应用在GlobalPlatform智能卡上的GlobalPlatform规范。
ThefollowingmeaningsapplytoSHALL,SHOULD,andMAYinthisdocument:
•SHALLindicatesthatthestatementcontainingtheSHALLmustbeimplementedasdefinedinthis
Specification.Itdoesnotmandatetheimplementationofthestatement.
•SHOULDindicatesarecommendation.Itisstronglyrecommendedtoimplementthestatementas
definedinthisSpecification.
•MAYindicatesanoption.
1.1致读者
这本规范主要面向卡制造商和开发GlobalPlatform智能卡
应用开发者开发GlobalPlatform智能卡,尽管这本规范定义了卡的组成,命令接口,交易序列和接口,这些使得卡能在许多不同的行业间通用,然而它没有详细说明底层安全的实现(用于实现各行业间的区别)。
这本规范也适合普通读者,因为它介绍了通用的安全概念和包含在多应用卡管理系统中的各种策略。
1.2引用的规范
Table1-1
1.3术语和定义
Table1-2
1.4缩写和标记
Table1-3
1.5修订历史
1.5.1OpenPlatformCard规范V2.0到OpenPlatformCard规范V2.0.1
这节给出将OpenPlatformCard规范V2.0转向OpenPlatformCard规范V2.0.1的简短介绍。
这本规范对比之前在的措辞和格式上有所改进,任何与OpenPlatform具体执行相关的内容都从规范的正文移到了规范的附录部分。
任何与OpenPlatform或应用的具体的个人化部分从规范中被移除。
OpenPlatform中特别是关于JavaCardtm的改变部分在附录A-GlobalPlatformAPI中被列出。
所有的在1999年4-6月FAQ文档和1999年10-11月FAQ文档和OpenPlatform中的所有确定了的问题都被包含在了本规范中。
对于这个规范的一个警告发布在1999年10-11月FAQ文档的3.1.20(注:
3.1.20个人认为是3章1小节20行那个文档没看过所以不是很清楚,不过无伤大雅)也就是其要求应用相关的安全域应当与该应用执行委托管理方法时的安全域相同。
第5部分描述了安全管理和密钥管理的使用细节而这部分在OpenPlatform2.0中未提到。
1.5.2在GlobalPlatformCardSpecificationV2.1中的主要的调整
以下重要的修改是由GlobalPlatform议员决定的。
所有的这些修改都是为了让GlobalPlatfom在保持向后兼容性的基础上能够在更多的实体上更加便于使用。
1.5.2.1加强DAP验证机制
在执行支持委托管理和DAP验证的GlobalPlatform卡的进程中,经确定,定义在之前版本的方法有必要进行多个签名的认证在大的数据块上(加载文件和加载文件数据块)以区分其细微差别。
当多个DAP验证和可能的委托管理被同时执行时,多个hash生成器就会被同时运行,这对于load进程的执行有不利的影响。
在大数据块签名上采用了一个新的方法来取代之前的,只有决定性的大数据块(加载文件数据块)的hash会被生成并标识。
在这个方法中大量的小块信息要求被签名,只有一个hash的生成和检查要求在加载文件数据块上执行(见section6.7.6.1-加载文件数据块hash)。
1.5.2.2来自安全域数据的应用的接收
之前OpenPlatform提供的安全信道机制只允许一个应用再其安全域上请求服务。
现在提供一个可以由安全域来启动的新服务,它允许数据被与应用相关联的安全域传递到进程将来的应用上,这个服务的主要目的是通过应用相关的安全域使得应用的个人化变得简便。
新的INSTALL命令被定义去标识需要被个人化的应用程序。
(见section9.5-INSTALL命令)。
1.5.2.3安全域的联合和引渡
在之前的OpenPlatform卡规范中,一个可执行加载文件关联一个安全域并且当来自于一个卡执行加载文件的所有应用实例(在安装时)也需要关联到相同的安全域。
这个方法是有局限性的。
新的机制提供应用引渡,应用引渡允许一个已经关联到一个安全域的应用去被引渡并关联到另外一个安全域上(见section7.6.3-委托引渡)
这样做的另外一个好处就是在可执行加载文件中的应用程序在可执行加载文件注册是就在GlobalPlatform注册表中可见(见section9.5-INSTALL命令)。
为了避免将可选定应用和可执行加载文件中的应用混淆,这有个新的术语:
可执行模块,可执行模块是用来表示在可执行加载文件中的一个或多个应用的。
(见section5.2.2-可执行模块的生命周期)。
1.5.2.4可执行模块
在之前的OpenPlarform卡规范中,外卡实体(终端机一类)只能检索关联到可执行加载文件的信息和选择卡上的应用。
为了加强GETSTATUS命令的返回信息,GlobalPlatform注册表会存储另外一组信息,并且在GETSTATUS命令的响应中返回。
这个信息关联到可执行模块,并且现在有可能也检查可供安装的可执行加载文件中的应用的代码信息。
1.5.2.5卡的识别数据
为了卡的协调,需要一个统一的方法来决定一张卡的基本信息,“卡识别数据”和获取这个数据(卡识别数据)的方法被收录在这个版本的GlobalPlatform卡规范中。
例如这样的信息:
这是一张GlobalPlatform卡,在特定的方式下执行,和有一个特定的版本号对现在有效(见section6.8.3-CardRecognitionData)
1.5.2.6新安全信道协议的支持
为了能适应更多的状况,为了包含额外安全信道协议的方法已经正式提出。
虽然这个在之前版本的OpenPlatform卡规范中被允许,然而当时只有一个安全信道被定义。
而GlobalPlatform的部分贡献就是定义了一个正式的进程用来包含安全信道协议。
为了表述清晰,GP卡规范做了一些轻微的重组。
OpenPlatform2.0.1规范的第5部分被移除,这段内容的一部分被并入第三部分并且剩下的部分被移到了附录(见附录D-安全信道协议01和E-安全信道协议02)
1.5.2.7持卡人验证方法服务
添加的服务和相关可选的CVM功能已被录入本规范(见section6.9-CVM管理)。
在之前版本的OpenPlarform卡规范中,CVM为单个PIN在多个应用中通用提供了可能。
当PIN被一个应用修改时,这个操作对其他的应用可见。
但是一个应用无法检查该PIN是否已经被正确的提交给其他的应用在相同的卡会话中。
新的卡验证方法(CVM)服务提供去做这项检查的能力。
1.5.2.8卡管理者的分离
以前每个卡的管理者都被认为和定义成无差别的主要的on-card(就是指卡)的组成部分或者在涵盖在除没有明确定义的运行环境结尾和卡管理者开始的之外的多种责任之间的区别。
现在决定将卡片管理者分成3个独立实体并且明确标识每个实体必须有其运行环境功能。
(见section3.2-卡的管理者)虽然术语“卡管理者”仍旧表示(现在包含OPEN)发卡人安全域和卡持有人验证方法服务提供商。
这个新的结构阐明了卡片管理者的责任并且同时考虑到了JavaCard和WindowsPoweredSmartCard
1.5.2.9WindowsPoweredSmartCardAPI
GP为WindowsPoweredSmartCard提供的API介绍包含在附录A.3-GlobalPlatformonWindowsPoweredSmartCard。
1.5.2.10JavaCardAPI
考虑到GP的多种新特征,一个新的对新特征提供支持的API(见附录A.2-GlobalPlatformonJavaCard)和所有相关功能,特征都已被JavaCard定义出来,JavaCard在版本2.0.1中定义的OpenPlatformAPI被摒弃并保留在该版本中为了以后的向后兼容。
1.5.2.11附录
GP卡规范的这块部分只包含普通的GP描述,所有的信息具体到一个特定的实现被放在一组附录中
1.5.3在GP卡规范V2.1.1中的修订
下面的修改纠正了之前版本中的发卡方并且在保留向后兼容特性前提下与最近运行环境规范发展保持同步,未成熟的修改和为了增加可读性的修改未列出
1.5.3.1勘误
所有中级出版勘误已经被包含在该版本中,在出版该版本规范时仍有点小错误,这些也被包含在该版本内。
1.5.3.2删除的内容
一个新的可选的卡内容移除功能被添加,它允许一个可执行加载文件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- GPV211