金融IC卡发卡系统和交易系统(以下简称金融IC卡系统)是现代信息技术与金融服务的高度融合,通过发行采用芯片技术与金融行业标准,可兼具银行卡、保障卡、管理卡等多重功能的金融IC卡,从根本上提高银行卡的安全性。金融IC卡系统密码应用主要解决卡片与发卡行之间的身份鉴别、持卡人的身份鉴别、交易数据的传输安全与存储安全等方面的问题。
一般来说,金融IC卡发卡系统和交易系统是两个单独的信息系统,本案例为了更好地展示整体的密码应用工作流程,将它们作为一个信息系统进行介绍,并分别命名为“发卡侧”和“交易侧”。
密码应用需求
金融IC卡系统在日常运行和管理过程中,在身份鉴别、关键数据的保密性和完整性保护等方面,都需要利用密码技术进行保护。密码应用需求主要包括:
(1)身份鉴别需求:对使用金融IC卡的用户进行身份标识和身份鉴别,实现身份鉴别信息的防截获、防假冒和防重用,保证用户身份的真实性。
(2)关键数据的保密性和完整性需求:在传输和存储过程中,对金融IC卡数据、持卡人数据、交易信息数据、日志信息等进行保密性和完整性保护。
密码应用架构
金融IC卡系统分为发卡侧、交易侧两个部分。金融IC卡系统整体架构和部署情况如图所示(图中的A、B、C、D为测试工具接入点)。
1)发卡侧
发卡侧主要由IC卡业务管理应用、密钥管理应用、数据准备应用、个人化应用组成,实现金融IC卡的发行,具体如下:
IC卡业务管理应用。负责接收和处理所有IC卡业务,包括IC卡账户管理、发卡参数管理、柜面类业务处理、脱机消费批处理等。
密钥管理应用。负责发卡行证书的申请、管理; IC卡应用相关证书、密钥的管理;调用密码机实现签名验签、数据加解密、密钥管理等密码功能。
数据准备应用。分别从IC卡业务管理应用、密钥管理应用导入业务数据、卡产品模板数据、发卡行应用数据、密钥数据等制卡数据,同时提供数据解析、文件转换等功能,输出目标制卡数据。
个人化应用。输入数据准备应用阶段生成的目标制卡数据,制发卡设备将卡片对应的应用数据安全写入卡片,完成个人化操作。
2)交易侧
本案例不考虑跨行交易的情形。交易侧主要由受理终端设备、收单前置应用、IC卡前置应用组成,实现金融IC卡的交易受理,具体如下:
受理终端设备。负责读取金融IC卡信息,通过与金融IC卡、收单前置服务器通信交互,实现金融交易信息和密钥信息的传输、处理,包括ATM机、POS机等。
收单前置应用。负责接收、处理或转发受理终端设备的交易请求信息,并向受理终端设备返回交易结果信息。
IC卡前置应用。负责接收、处理金融IC卡交易请求信息,完成金融IC卡业务预处理功能,包括安全报文验证、应用密文验证及产生、金融IC卡柜面类业务等。
重要设备和关键数据
金融IC卡系统包括的密码产品、通用服务器、关键业务应用和关键数据分别如下。
▲金融IC卡系统的密码产品列表
▲金融IC卡系统的通用服务器列表
▲金融IC卡系统关键业务应用列表
▲金融IC卡系统关键数据列表
密钥体系
金融IC卡系统在“应用和数据安全”层面包括对称和非对称两套密钥体系。
1)对称密钥体系
金融IC卡系统发卡侧的对称密钥及其功能如表所示。
金融IC卡系统交易侧对称密钥遵循经典的三层密钥体系,交易侧的对称密钥及其功能如表所示。
2)非对称密钥体系
金融IC卡系统涉及的非对称密钥体系基于PKI技术实现,分为三层证书体系,如表所示。
密码应用工作流程
1)金融IC卡系统发卡侧密码应用工作流程
金融IC卡系统发卡侧的密码应用工作流程如图所示。
金融IC卡系统发卡侧的密码应用工作流程如下:
密钥管理应用产生并存储发卡行公私钥对,向CA提交发卡行公钥及证书申请信息。
认证中心签发发卡行证书并下发给发卡行。
密钥管理应用产生IC卡公私钥对,并使用发卡行私钥对IC卡公钥进行签名,形成IC卡数字证书。
密钥管理应用产生并存储发卡行应用密文主密钥MDK,同时将MDK按照IC卡的卡号分散出IC卡应用密文主密钥UDK。
IC卡业务管理应用产生原始制卡数据文件,并发送给数据准备应用。
数据准备应用负责卡片个人化前的数据准备工作,并向个人化应用传输卡片个人化所需的所有数据和密钥,包括发卡行应用数据、模板数据及发卡行数字证书、IC卡数字证书、IC卡私钥、IC卡应用密文主密钥UDK等。数据准备应用和个人化应用之间,通过KEK/TK密钥、MAC密钥对传输内容进行加密,保证传输内容的保密性和完整性。
个人化应用将发卡行数字证书、IC 卡数字证书、IC 卡私钥、Ic 卡应用密文主密钥UDK等数据写入卡片,并通过发卡行主密钥KMC保护装载数据的保密性和完整性。
2)金融IC卡系统交易侧密码应用工作流程
金融IC卡系统交易侧密码应用工作流程如图所示,发卡行受理本行发行的金融IC卡的交易过程如下:
金融IC卡在POS机等受理终端设备进行脱机交易时,受理终端通过预先装载的CA证书验证金融IC卡内发卡行证书、IC 卡证书以及签名数据的真实性、完整性,验证成功后方可进行交易。
金融IC卡在进行联机交易时,金融IC卡和发卡行之间通过应用密文密钥(MDK和UDK)产生应用密文请求和响应(如ARQC、ARPC) ,验证卡片和发卡行的真实性。验证成功后方可进行交易。需要说明的是,金融IC卡并不- -定会在本步骤中单独与发卡行进行一次报文交互,而是将产生的应用密文请求和响应封装在步骤中的交易报文中,与其他数据一并传输。
受理终端设备负责采集交易信息并传输交易报文发送至发卡行。交易信息包括交易类型、交易金额、PIN等。传输交易报文时,通过PIK密钥保护PIN的保密性,通过MAK密钥保护交易报文的完整性。
领取专属 10元无门槛券
私享最新 技术干货