ISO智能卡中OpenPGP应用的功能规范.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《ISO智能卡中OpenPGP应用的功能规范.docx》由会员分享,可在线阅读,更多相关《ISO智能卡中OpenPGP应用的功能规范.docx(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、ISO智能卡中OpenPGP应用的功能规范版本1.1作者:Achim Pietig作者:Achim PietigPPC Card Systems GmbHSenefelderstr. 1033100 PaderbornGermanyEmail: a.pietigppc-card.deachimThis document and translations of it may be copied and furnished to others, andderivative works that comment on or otherwise explain it or assist in its
2、implementationmay be prepared, copied, published and distributed, in whole or in part, withoutrestriction of any kind, provided that the copyright notice and this paragraph areincluded on all such copies and derivative works. However, this document itself maynot be modified in any way, such as by re
3、moving the copyright notice or references. 2004 Achim Pietig, PPC Card Systems GmbH, PaderbornPPC Card Systems GmbH and the author do not assume responsibility nor give a guarantee for the correctnessand/or completeness of the features and functions described in this document.PPC Card Systems GmbH a
4、nd the author are unable to accept any legal responsibility or liabilityfor incorrect and/or incomplete details and their consequences.Furthermore, PPC Card Systems GmbH and the author reserves the right to revise these specifications for technical reasonsand make amendments and/or updates to the sa
5、me.历史变化:V1.0 到 V1.1l 改变了GENERATE ASYMMETRIC KEY PAIR命令的访问权限,总是使得P1=81(读取公钥)。l 文献的调整l 具有不同访问权限的私有的新的数据对象。这是一个可选特征项,在扩展功能中描述l 描述密钥产生日期/时间的新的数据对象l CHV状态字节(C4)数据对象。在GET DATA命令中作为一个对象强制使用目 录1介绍61.1缩写定义62要求概要72.1本版本的限制73目录结构84OpenPGP应用中数据对象的目录94.1MF和DF中的数据文件和对象94.1.1EF_DIR94.2OpenPGP的DF94.2.1应用标志符(AID)104
6、.2.2OpenPGP应用的用户认证114.3数据对象(DO)114.3.1GET DATA的数据对象124.3.2PUT DATA的数据对象144.3.3数据对象详述154.3.3.1私有用法154.3.3.2名称164.3.3.3语言164.3.3.4性别164.3.3.5扩展性能164.3.3.6算法属性164.3.3.7私钥模164.3.4数据对象的长度域165安全架构176历史字节(ATR)186.1卡片性能197命令197.1ISO标准命令的使用197.2命令详述217.2.1SELECT FILE命令217.2.2VERIFY命令217.2.3CHANGE REFERENCE D
7、ATA命令217.2.4RESET RETRY COUNTER命令217.2.5GET DATA命令217.2.6PUT DATA命令217.2.7GET RESPONSE命令217.2.8PSO: COMPUTE DIGITAL SIGNATURE命令217.2.9PSO:DECIPHER命令217.2.10INTERNAL AUTHENTICATE命令217.2.11GENERAL ASYMMETRIC KEY PAIR命令217.2.12GET CHALLENGE命令217.3不同IO协议下的命令用法217.4类型字节定义227.5安全消息227.6逻辑通道227.7状态字节228文献2
8、39流程图239.1使用短Lc/Le开启卡片应用。249.2使用扩展Lc/Le开启卡片应用。269.3计算数字签名279.4消息解密289.5私钥生成291 介绍这篇功能规范描述了ISO智能卡操作系统中的OpenPGP应用的功能,还有他定义卡和终端接口时所遵循的原则。本文中主要为OpenPGP软件与以PC/SC为基础的标准读卡器之间的接口问题。解决方案主要关心如下内容:l 国际标准的使用l 避免与其他专利冲突l GNU公用证书下的软件的免费使用l 与描述智能卡操作系统无关l 将来增加功能时的便捷性l 通用性因为这篇规范并不涉及以下内容:描述卡片的所有命令和数据文件,卡片提供的安全功能,涉及多个
9、应用的功能特征,例如协议,也不描述卡片的通用电气机械特征。特别地,本规范详细描述了与应用相关的数据对象和他们各自的内容格式。应用数据的内容只有在其表现出不变因素的时候才会被描述。除了特别指定,文章中的编码值都是十六进制格式的。1.1 缩写定义AC 访问条件AID应用标志符ATR重启的应答AUT认证BCD二进制编码的十进制数据CHV持卡人验证CLA类别字节DEC解密的密文dec.十进制DF专用文件DO数据对象DSA数据签名算法ECC椭圆曲线加密FCP文件控制参数INS指示字节MF主控文件OS操作系统PK公钥RFU留作后用RSA一种公钥算法由三个发明人的姓名的首字母组成SE安全环境SIG签名URL
10、统一资源定位符UTF-8UCS转化格式8(兼容US-ASCII七位编码)2 要求概要OpenPGP应用的设计目标是能够在几个兼容ISO的智能卡操作系统中运行。因此OpenPGP能够在几种不同制造商的芯片上运行。实现过程中,下述的所有需求必须完全满足。卡片:l 完全支持7816-3的ATR指令n OpenPGP评估了卡片兼容性的历史特征l 至少支持ISO 7816-3 T=1 或者T=0中的一种传输协议n 最好是T=1(支持链和扩展Lc/Le)l 卡片必须支持不同的传输协议n ATR可能指示不同的传输协议(比如T=0 和T=1)n 不同的协议应该支持PPS选择l 根据ISO7816-3(Fi/D
11、i),高速模式是必须的(达到芯片所能达到的最大值)n 卡片应该在卡片性能中明示这个特征n 如果不支持扩展Lc/Le,那么卡片应该支持命令链 或者 用GET RESPONSE命令响应大数据对象。读卡器:l 应该支持PC/SC驱动n PC/SC应该能够在好几种平台上使用(比如:win32,Linux,Macintosh)l 应该支持T=1 和T=0l 应该支持高速协议(PPS)l 应该支持扩展Le/Lc2.1 本版本的限制本版本的卡中OpenPGP应用和终端OpenPGP应用有一些限制。主要原因是实际中的卡和读卡器(有PC/SC)不能满足所有的要求终端:l 可能不支持扩展的Lc/Le(尽管卡支持扩
12、展Lc/Le也只能使用短的Lc/Le)l 可能不支持ECC和DSA(所用的功能只使用RSA算法)卡:l 可能不支持高速协议(这种情况下,终端默认为ISO标准值)l 可能不支持扩展的Lc/Lel 卡片应该支持RSA(最低1024位)PCSCl 可能不支持高速协议(这种情况下,终端默认为ISO标准值)l 可能不支持扩展的Lc/Le3 目录结构下图给出了与OpenPGP应用相关的目录和数据对象的一个概览。安全相关的数据(例如:密码。CHV)会根据使用的OS而被存储(文件,数据对象或者其他)4 OpenPGP应用中数据对象的目录DF_OpenPGP目录和数据对象组成了OpenPGP应用。卡片中的专用文
13、件(DF)还可能存在着其他应用.4.1 MF和DF中的数据文件和对象OpenPGP应用可能会使用全局CHV(持卡人验证)。这些数据可能会被存放在主控文件中(MF),也可能在其他专用文件中(DF)或者当前OS的特殊路径中。另外,所有应用和特殊密钥的全局信息也可能被存放在MF中4.1.1 EF_DIR这个MF(文件标志符:2F00)中的文件如果存在的话,可能包含一个或多个iso/iec7816-4中的应用模板和应用标志符。虽然OpenPGP应用并不请求和计算这个数据文件,但是可能会被第三方用来声明应用。他也被那些不支持用AID 运行SELECT FILE命令的卡所用。下列的入口应该被添加进来:l
14、应用标志符(tag 4F),应该只使有具有意义的值(6字节=D27600012401)l 应用标签名(tag 50),应用的标签名应该包含如下的UTF-8编码的文字:OpenPGP4.2 OpenPGP的DFOpenPGP的应用目录可以在卡中的任意地方存放。没有固定的文件标志符(FID),因此在任何情况下它都很容易为应用所合并。如果需要FID的话,可以由卡片生产商或者其他任何机构所指定。目录中包含应用的所有数据对象。所有给定的FCP(文件控制参数)都是实现的信息参数,在响应SELECTFILE命令的时候可以选择使用。终端中的OpenPGP应用不会计算FCP的Tag。OpenPGP应用使用GET
15、 DATA命令在与应用相关数据(Tag 6E)中寻找到AID(Tag 4F的数据对象)。DF_OpenPGP中可能存在的文件控制参数(FCP)4.2.1 应用标志符(AID)可以使用唯一应用标志符来选择OpenPGP应用(参见SELECT FILE命令)。AID 有16字节长,使用下面的方法进行编码。卡中的每一个AID都是唯一的,并且要求这个值被整合到证书中去,比如用来进行客户端/服务器验证的证书。OpenPGP的AID在FSF Europe e.V中注册RID 应用注册提供者的标志符(OpenPGP的唯一标志符),ISO7816-5PIX所有权应用标注符扩展(为OpenPGP应用定义)App
16、licetion应用指示位Version应用的版本号Manufacturer应用(卡片)制造商的唯一编码SerialNumber唯一序列号RFU保留位Application:这个值(1字节)指示应用。将来,在FSF Europe e.V.的控制之下可以被设计用来指示不同的应用。下列的值已经 被定义00 保留01 OpenPGP 应用(标准)0F保留Version:版本号(2字节,BCD)给出了当前应用的状态信息。通过这个值可以通知进行更新。版本号定义如下字节1 字节2主版本号 次版本号 (取值范围:00-99)举例:1.0 被编码成01 002.102 0111.711 07Manufactu
17、rer:为了在开放网络中(比如 密钥服务器)标识卡片和登陆一台电脑,就必须要有一个应用号。因为上述原因,每一个制造卡片的卡片制造商或者部署应用的个人化操作者都必须有一个唯一的标记。这个制造商标志符由FSF Europe e.V.控制,并免费分发给卡片制造商。只有注册了的制造商才允许生产与OpenPGP兼容的应用。系统运行方式类似网络上的物理地址码(MAC)。2个字节采用二进制编码,0000和FFFF被保留用来测试。Serial number:制造商管理下的每一个OpenPGP应用都有一个唯一序列号。制造商应该保证现实世界中没有两个重复的序列号(如同网络中的物理地址码一样)。序列号有4个字节的长
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ISO 智能卡 OpenPGP 应用 功能 规范
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内