emv2000_第三册.doc

上传人:wj 文档编号:30869863 上传时间:2024-09-12 格式:DOC 页数:100 大小:1.02MB
下载 相关 举报
emv2000_第三册.doc_第1页
第1页 / 共100页
emv2000_第三册.doc_第2页
第2页 / 共100页
emv2000_第三册.doc_第3页
第3页 / 共100页
emv2000_第三册.doc_第4页
第4页 / 共100页
emv2000_第三册.doc_第5页
第5页 / 共100页
点击查看更多>>
下载资源
资源描述

emv2000_第三册.doc

《emv2000_第三册.doc》由会员分享,可在线阅读,更多相关《emv2000_第三册.doc(100页珍藏版)》请在冰豆网上搜索。

emv2000_第三册.doc

应用规范

第三部分

应用规范

1.范围

支付系统集成电路卡应用规范(以下简称“应用规范”)定义了在国际通用环境中影响支付系统交易的终端和集成电路卡(IC卡)操作过程。

具体地,它包括:

l数据元和文件的映射

l交易流程(事件和向卡片发送的序列命令)

l异常处理

l特定数据对象的编码(参见附录C和D)

l用于IC卡和终端信息交换的数据元和命令的定义。

具体包括:

n金融交换的数据元及它们和数据对象的映射。

n文件的结构和引用。

nIC卡和终端之间用于完成应用级功能的报文结构和编码。

l芯片电子商务规范

本规范所描述的功能保证符合本规范的支付系统卡片能够在符合本规范的所有终端上完成共同的核心功能。

单独支付系统特有的功能和非通用的功能不在本规范描述之列,但本规范亦不排斥。

本规范不涉及清算、结算和其它任何不涉及到IC卡的交易。

本规范假定读者熟悉第一册(《应用无关的IC卡和终端接口需求》),该册描述了应用层以外的功能,包括应用选择。

两个规范都面向支付系统成员、IC卡和终端制造商、使用IC卡或接入IC卡支付系统的应用设计者。

2.参考资料

本规范引用了以下标准所包含的规定

EMV2000版本4.0:

2000年12月

支付系统的集成电路卡应用规范第一册-应用无关的IC卡到终端接口需求

EMV2000版本4.0:

2000年12月

支付系统的集成电路卡应用规范第二册-安全和密钥管理

EMV2000版本4.0:

2000年12月

支付系统的集成电路卡应用规范第四册-持卡人、收银员和收单行接口需求

FIPSPub180-1:

1995

安全哈什算法

IEC512-2:

1979

电磁设备的电磁元件规范-第二部分:

接触电阻测试、绝缘测试和电压测试

ISO/FDIS639-1:

2001

名称及语言表示代码

ISO3166:

1997

国家名称代码

ISO4217:

1995

货币和资金代码

ISO/IEC7811-1:

1995

识别卡-记录技术-第1部分:

凸印

ISO/IEC7811-3:

1995

识别卡-记录技术-第3部分:

凸印字符在ID-1卡片上的位置

ISO/IEC7813:

1995

识别卡-金融交易卡

ISO/IEC7816-1:

1998

识别卡带触点的集成电路卡第1部分:

物理性能

ISO/IEC7816-2:

1999

识别卡带触点的集成电路卡第2部分:

触点的尺寸和位置

ISO/IEC7816-3:

1997

识别卡带触点的集成电路卡第3部分:

电信号和传输协议

ISO/IEC7816-4:

1995

识别卡带触点的集成电路卡第4部分:

行业间交换用命令

ISO/IEC7816-5:

1994

识别卡带触点的集成电路卡第5部分:

应用标识符的编号系统和注册程序

ISO/IEC7816-6:

1996

识别卡带触点的集成电路卡第6部分:

行业间数据元(国际标准草案)

ISO8731-1:

1987

银行业-批准的报文鉴定算法

ISO8372:

1987

信息处理-64位块的加密运算模式

ISO/IEC8825:

1990

信息技术-开放系统互联-抽象语法符号基本编码规范一(ANS.1)

ISO8583:

1987

银行卡生成报文-交换报文规范-金融交易内容

ISO8583:

1993

金融交易卡生成报文-交换报文协议

ISO/IEC8859:

1987

信息处理-8位单字节编码的图形字符集

ISO/IEC9796-2:

1997

信息技术-安全技术-提供报文恢复的数字签名系统-第2部分:

使用哈什函数的机制

ISO/IEC9797:

1994

信息技术-安全技术-用块加密算法使用加密检验函数的数据完整性机制

ISO/IEC10116:

1997

信息技术-n位块加密算法的运算模式

ISO/IEC10118-3:

1998

信息技术-安全技术-哈什函数-第3部分:

专门哈什函数

ISO/IEC10373:

1993

识别卡-测试方法

3.定义

本规范中使用了以下定义:

应用[Application] 卡片和终端及其相关的数据集之间的应用协议。

字节[Byte] 8个二进制位。

卡片[Card] 支付系统定义的支付卡片。

命令[Command] 终端向IC卡发出的一条报文,该报文启动一个操作或请求一个应答。

密文[Cryptogram] 加密操作的结果

加密算法 转换数据以隐藏或显示其内容的算法。

[CryptographicAlgorithm]

金融交易 在持卡人和商户或收单行之间发生的以支付交换商品或服务的行为。

[FianancialTransaction]

功能[Function] 以一个或多个命令及其后续动作来完成一个交易的全部或部分的过程。

发卡行行为代码 发卡行根据TVR的内容选择的动作。

[IssuerActionCode]

密钥[Key] 控制加密转换操作的字符序列。

填充[Padding] 向数据串任一端添加的附加二进制位。

路径[Path] 没有分隔的文件标识符的连接。

支付系统 就本规范而言,是指Europay,Mastercard或Visa信用卡组织。

[Paymentsystem]

[Paymentsystemsenvironment]

支付系统环境 当符合本规范的支付系统应用被选择,或者用于支付系统应用目的的目录数据文件(DDF)被选择后,IC卡中所确立的逻辑条件。

应答[Response] IC卡处理命令报文以后返回给终端的报文。

脚本[Script] 发卡行向终端发送的命令或命令序列,目的是向IC卡连续输入命令。

模板[Template] 结构数据对象的值域,定义为数据对象的逻辑组。

终端[Terminal] 在交易点结合IC卡一起完成金融交易的设备。

[TerminalActionCode]

终端行为代码 终端行为代码(缺省、拒绝、联机)反映了收单行根据TVR的内容选择的动作。

4.缩写和术语

本规范使用了以下的缩写和术语:

AAC

应用认证密文(ApplicationAuthenticationCryptogram)

AAR

应用授权参考(ApplicationAuthorizationReferral)

AC

应用密文(ApplicationCryptogram)

ADF

应用数据文件(ApplicationDefinitionFile)

AEF

应用基本文件(ApplicationElementaryFile)

AFL

应用文件定位器(ApplicationFileLocator)

AID

应用标识符(ApplicationIdentifier)

An

字母数字型(Alphanumeric)

Ans

字母数字及特殊字符型(AlphanumericSpecial)

APDU

应用协议数据单元(ApplicationProtocolDataUnit)

ARPC

授权响应密文(AuthorizationResponseCryptogram)

ARQC

授权请求密文(AuthorizationRequestCryptogram)

ASN.

抽象语法表示(AbstractSyntaxNotation)

ATC

应用交易序号(ApplicationTransactionCounter)

B

二进制(Binary)

BER

基本编码规则(BasicEncodingRules)

C

摄氏度

C-APDU

命令APDU(CommandAPDU)

CDOL

卡片风险管理数据对象列表(CardRishManagementDataObjectList)

C-TPDU

命令TPDU(CommandTPDU)

CVM

持卡人验证方法(CardholderVerificationMethod)

DDF

目录数据文件(DirectoryDefinitionFile)

DDOL

动态数据认证数据对象列表(DynamicDataAuthenticationDataObjectList)

DES

数据加密标准(DataEncryptionStandard)

DF

专用文件(DedicatedFile)

DIR

目录(Directory)

EF

基本文件(ElementaryFile)

FCI

文件控制信息(FileControlInformation)

FIPS

联邦信息处理标准(FederalInformationProcessing

Standard)

hex.

十六进制数(Hexadecimal)

HHMM

时、分(Hours,Minutes)

HHMMSS

时、分、秒(Hours,Minutes,Seconds)

IC

集成电路(IntegratedCircuit)

IC卡

集成电路卡(IntegratedCircuitCard)

IEC

国际电工委员会(InternationalElectrotechnical

Commission)

IFD

接口设备(InterfaceDevice)

I/O

输入/输出(Input/Output)

ISO

国际标准化组织(InternationalOrganizationfor

Standardization)

KM

主密钥(MasterKey)

KS

过程密钥(SessionKey)

Lc

终端发出的命令数据的实际长度(ExactLengthofDataSentbytheTALINACase3or4Command)

lcm

最小公倍数(LeastCommonMultiple)

LDD

IC卡动态数据长度

Le

响应数据的最大期望长度(MaximumLengthofDataExpectedbytheTALinResponsetoaCase2or4Command)

LIC卡

IC卡回送的可用数据的实际长度(ExactLengthofDataAvailableintheIC卡tobeReturnedinResponsetotheCase2or4CommandReceivedbytheICC)

LEN

长度(Length)

Lr

响应数据域的长度(LengthofResponseDataField)

LRC

冗余校验(LongitudinalRedundancyCheck)

M

必备型(Mandatory)

MAC

报文鉴别代码(MessageAuthenticationCode)

max.

最大值(maximum)

MF

主控文件(MaterFile)

min.

最小值(minimum)

n

数字型(numeric)

NCA

认证机构公钥模长度(LengthoftheCertificationAuthorityPublicKeyModulus)

NI

发卡行公钥模长度(LengthoftheIssuerPublicKeyModulus)

NIC

IC卡公钥模长度(LengthoftheICCPublicKeyModulus)

O

可选型(Optional)

P1

参数1(Parameter1)

P2

参数2(Parameter2)

P3

参数3(Parameter3)

PAN

主帐号(PrimaryAccountNumber)

PCA

认证中心公钥(CertificationAuthorityPublicKey)

PCB

协议控制字节(ProtocolControlByte)

PDOL

处理选项数据对象列表(ProcessingOptionsDataObjectList)

PI

发卡行公钥(IssuerPublicKey)

PIC

IC卡公钥(ICCPublicKey)

PIN

个人密码(PersonalIdentificationNumber)

PSA

支付系统应用(PaymentSystemApplication)

PSE

支付系统环境(PaymentSystemEnvironment)

R-APDU

响应APDU(ResponseAPDU)

RFU

保留为将来使用(ReservedforFutureUse)

RID

已注册的应用提供者标识(RegisteredApplicationProviderIdentifier)

RSA

一种非对称加密算法(Rivest,Shamir,Adleman)

R-TPDU

响应TPDU(ResponseTPDU)

SCA

认证中心机构私钥(CertificationAuthorityPrivateKey)

SI

发卡行私钥(IssuerPrivateKey)

SIC

IC卡私钥(IC卡PrivateKey)

SFI

短文件标识符(ShortFileIdentifier)

SHA

安全哈什算法(SecureHashAlgorithm)

SW1

状态码1(StatusWordOne)

SW2

状态码2(StatusWordTwo)

TAC

终端行为代码(缺省、拒绝、联机)TerminalActionCode(Default,Denial,Online)

TAL

终端应用层(TerminalApplicationLayer)

TC

交易证书(TransactionCertificate)

TDOL

交易证书数据列表(TransactionCertificteDataObjectList)

TLV

标签、长度、值(TagLengthValue)

TPDU

传输协议数据单元(TransportProtocolDataUnit)

TVR

终端校验结果(TerminalVerificationResults)

var.

变量(variable)

YYMMDD

年、月、日(Year,Month,Day)

以下术语意为:

‘0’-‘9’‘A’-‘F’

16进制数字

[]

可选部分

A:

=B

A被赋予B值

A=B

A等于B

A≡Bmodn

整数A与B之差模n,即存在一个整数d,使得(A-B)=dn

Amodn

A模n

Abs(n)

n的绝对值

Y:

=ALG(K)[X]

用保密密钥K,通过64位块加密方法,对64位数据块X进行加密

X:

=ALG-1(K)[Y]

用保密密钥K,通过64位块加密方法,对64位数据块Y进行解密

Y:

=Sign(SK)[X]

用私钥SK,通过使用非对称可逆算法,对数据块X进行签名

X=Recover(PK)[Y]

用公钥SK,通过使用非对称可逆算法,对电子签名数据块Y进行恢复

C:

=(A||B)

将m位块B链接到n位块A后,定义为:

C=2mA+B

H:

=Hash[MSG]

用80位的哈什函数对报文MSG哈什运算

lcm(a,b)

两个整数a和b的最小公倍数

|n|

整数N的位长

(X|n)

整数X和整数n(n=pq,p和q为素数)的Jacobi值,有如下定义:

J:

=(X(p-1)/2modp)(X(q-1)/2modq)

如果J=1或j=(pq-p-q+1)则:

(X|n)=1

否则(X|n)=-1

注:

整数X的Jacobi值在没有n素数因子时,也可计算

Xx

任意值

以下术语含义:

专有的

本规范未定义和/或本规范范围之外的

必须

表示强制的要求

应该

表示推荐

(本页有意留空)

第I部分

数据元和命令

1.数据元和文件

IC卡的一个应用包括一组信息项。

终端在成功地选择了一个应用后,就可以读写这些信息项。

(参见本规范第一册第II部分)。

信息中的一项被称为一个数据元。

一个数据元是指可以通过一个名字、一段内容的逻辑描述、一种格式和一段编码来定义的最小信息单元。

1.1与金融交易有关的数据元

在附件A的A-1表格中的数据单元目录中定义了可以用于金融交易的数据元。

附件A的A-1表格中没有定义的数据元不在本规范讨论之列。

选择(SELECT)命令的响应报文中如果包含任何附加的数据元(例如,操作系统制造商的专有数据)都放在“FCI发行者自定义数据”域中。

(EMV标签‘BF0C’)。

1.2数据对象

一个数据对象包括一个标签部分、一个长度部分和一个数值部分。

标签用来独一无二地标记应用中的一个数据对象。

长度用来表示数据对象的数值部分的长度。

一个数据对象的数值部分可以由一个数据元或一个或多个数据对象组成。

只包含一个数据元的数据对象称为基本数据对象。

包含一个以上数据对象的数据对象称为结构数据对象。

本规范中结构数据对象的指定的标签在应用环境中具有特定的含义。

结构数据对象的数值部分是一个与上下文相关的模板。

在附件B中给出了这种上下文相关的数据对象和模板的编码规则。

终端接收到信息后,需要按照附件B中定义的规则,分析所有的数据单元。

从数据单元中取出的数值必须在终端缓冲区中存储,以便将来使用。

终端必须能够按照ISO/IEC7816的定义,正确解释长度为0的TLV数据对象。

当卡片上的数据元被个人化为不存在值域时,上述情况就可能发生。

如果一个数据单元的长度为0,则必须认为该数据单元不存在。

附件A中指出的数据元长度是指在卡片上真正存在的数据元的长度。

附件A中的表格A-1和表格A-2描述了可能的情况下把数据单元映射到数据对象和把数据对象映射到模板的格式。

记录是包含一个或多个基本数据对象或结构数据对象的模板。

数据对象到纪录的映射应由发卡行决定。

数据元的使用方法在本册第II部分描述。

附件B定义了保留给EMV、支付系统和发卡行使用的标签。

遵循本规范的所有的IC卡应用都必须遵循上述编码方式和分配方案以保持与ISO/IEC7816-6标准一致。

1.2.1数据对象类别

附件C包含了不同数据对象类别的识别与编码。

附件C中定义的标签来自ISO/IEC8825和ISO/IEC7816系列的规则,并且适用于所有遵循本规范的应用。

1.3文件

IC卡中的能够读/写的数据文件中的数据对象是以记录方式保存的。

文件的结构和引用方法取决于该文件的用途。

文件的结构和引用的方法将在下面描述。

除了下一节描述的目录文件以外,其它的IC卡可读/写数据文件的布局均由发卡行定义。

1.3.1应用基本文件

范围为1-10的AEF,包含一个基本数据对象或复合的BER-TLV数据对象(记录),复合数据对象是由多个基本编码规则——标签长度值(BER-TLV)的数据对象按附录C的方式组成的。

一旦选定之后,范围为1-10的AEF只能如I-1.3.2所述通过它的短文件标识符(SFI)来引用。

本规范中,一个数据文件包括一组按记录号引用的记录序列。

1-10号SFI引用的数据文件中只包括那些不由卡片解释的数据,即不在卡片内部过程中使用的数据。

这种文件的结构定义成线性结构。

根据ISO/IEC7816-4规定,文件结构既可以固定的,也可以是线性可变的。

这由发卡行自行选择,并且根据本规范不会影响对文件的读操作。

1.3.2文件引用

根据文件的种类,文件可以通过文件名或SFI引用。

1.3.2.1通过文件名引用

卡片中的任何ADF或DDF都可以通过它的DF名引用。

ADF的DF名与它的AID对应或以AID作为DF名的开头。

一张卡片中的每个DF名字必须在该卡内是唯一的。

1.3.2.2通过SFI引用

SFI用于选择AEF。

在一个给定的应用中可以通过SFI来引用任何一个AEF。

这个SFI使用5个位(bit)来编码,其值在1~30的范围内。

SFI编码将在使用它的各命令中描述。

SFI的结构如表I-1所示:

数值

意义

1~10

本规范定义

11~20

支付系统定义

21~30

发卡行定义

TABLEI-1SFI结构

每个SFI在一个应用以内必须是唯一的。

范围为1~10的SFI引用的AEF由本规范分配管理。

1.4使用数据对象列表(DOL)的规则

有时,终端应卡片的要求需要建立可变的数据元列表用来向卡片发送。

为了减少IC卡内对这些数据的处理,这个列表不需要进行TLV编码,而只是把若干数据单元连接成一个复合域。

因为复合域中的数据单元不是TLV编码的,所以当IC卡收到数据时,IC卡必须知道该复合域的格式。

因此,需要在IC卡内包含一个数据对象列表(DOL)来定义复合域中的数据格式。

本规范使用的DOL包括通过取处理选项(GETPROCESSOPTIONS)命令使用的PDOL,通过生成应用密文(GENERATEAC)命令使用的CDOL1和CDOL2,用来产生TC哈什值的TDOL和通过内部认证(INTERNALAUTHENTICATE)命令使用的DDOL。

本节描述了如何使用由卡片提供的DOL来构造一个复合域。

一个DOL是用一些条目连接而成的列表。

每个条目代表一个加入复合域的单个数据元。

每个条目地格式包括1~2个字节的标签来表明需要的数据对象,然后是1个字节的长度部分,表明本数据域在命令数据中占据的字节长度。

只有那些在附件B中定义为基本数据对象的标签才可以在DOL中使用。

终端必须完成下列步骤以建立结构域:

1.从IC卡读取DOL。

2.连接DOL中列出的所有数据单元。

按照下列规则进行连接:

a)如果DOL中指出的数据对象的标签无法被终端识别,或这个标签代表了一个结构数据对象,终端将提供一个长度为DOL指定长度的数据单元,并必须把该数据单元所有的数值部分设置为16进制的0。

b)如果该列表中的一个数据对象在终端上可以识别,但表现为IC卡上不出现的可选静态数据必须用16进制的0来填满。

c)如果在DOL条目中指出的长度小于实际数据对象的长度,则需要将实际的数据对象削减至DOL指出的长度。

如果数据对象是数字格式(n)的,则从数据单元的的最左端开始削减字节。

如果数据对象是其它格式的,则从数据单元的最右端开始削减字节。

如果指出的长度比实际的数据长度大,需要把实际的数据填充至指定长度:

l如果数据对象是数字格式(n)的,则从数据单元头部开始填充16进制的0。

l如果数据对象是压缩数字格式(cn)的,则在数据单元的末尾填充16进制的FF。

l如果数据对象是其它格式的,则在数据单元的末尾填充16进制的00。

d)如果表上的一个数据对

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 小升初

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1