脱机数据认证是终端使用非对称公钥技术认证来自卡片数据的处理过程。
在静态数据认证处理中,终端认证卡的静态(不变的)数据。静态数据认证确保发卡行选择的卡片数据元自卡片个人化以来没有受到改变。
——动态数据认证(DDA)。
在动态数据认证处理中,终端不仅认证静态的卡数据,也认证卡片使用能够唯一标识一笔交易的交易数据生成的签名。动态数据认证除了确保发卡行选择的卡片数据元自卡片个人化以来没有受到改变,还确认卡片是真卡而不是通过从有效卡复制数据制作的伪卡(非法复制)。动态数据认证可以是标准动态数据认证(DDA),也可以是复合动态数据认证/应用密文(CDA)生成。
脱机数据认证结果决定了卡片和终端是脱机批准交易、进行联机认证还是脱机拒绝交易。联机认证系统在它们的认证响应决定中可以使用脱机数据认证结果。
所有允许脱机交易的终端应支持静态数据认证(SDA)和动态数据认证(DDA),复合动态数据认证CDA可选支持。对于不允许脱机交易的卡片而言,脱机数据认证支持是可选的。支持脱机交易的卡片应支持动态数据认证(DDA),CDA可选。
静态数据认证中,卡片没有执行任何处理。以下概述了终端执行的处理。
1) 认证中心公钥的获取
终端使用卡片上的认证中心公钥索引(PKI)以及注册的应用提供商标识来获取存储在终端的认证中心公钥和相关信息。
2) 发卡行公钥的获取
终端用认证中心公钥验证发卡行公钥证书,验证正确则从发卡行公钥证书中取出发卡行公钥。
3) 签名静态应用数据的验证
终端用发卡行公钥验证签名静态应用数据,如果验证不正确,则数据可能被改变过,静态数据认证失败了。
4) 静态数据认证结果
如果以上所有步骤得以成功执行,则静态数据认证通过。 如果静态数据认证失败,终端设置终端验证结果中的相应指示器,以显示静态数据认证结果,并在随后的处理中使用该指示器决定交易的处理。
这个处理过程,除了动态签名由卡片生成以外,其他都是由终端执行的。以下概述了这个处理过程。
1) 认证中心公钥的获取
终端用认证中心公钥索引(PKI)以及卡中的注册的应用提供商标识来获取储存在终端中的认证中心公钥以及相关信息。
2) 发卡行公钥的获取
终端用认证中心公钥验证发卡行公钥证书,验证正确则从发卡行公钥证书中取出发卡行公钥。
3) IC卡公钥的获取
终端用发卡行公钥验证IC卡公钥证书,验证正确则从IC卡公钥证书中取出IC卡公钥。如果IC卡公钥证书验证不正确,则动态数据认证失败。
4) 动态签名生成(仅标准动态数据认证)
一收到INTERNAL AUTHENTICATE命令,卡片就用IC卡私钥生成一个动态签名。卡片再把此动态签名传递给终端。
5) 动态签名校验(仅标准动态数据认证)
终端用IC卡公钥验证动态签名,如果验证不正确,则动态数据认证失败。