电子消费卡系统概要设计Word文档格式.docx
- 文档编号:17881653
- 上传时间:2022-12-11
- 格式:DOCX
- 页数:20
- 大小:183.96KB
电子消费卡系统概要设计Word文档格式.docx
《电子消费卡系统概要设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《电子消费卡系统概要设计Word文档格式.docx(20页珍藏版)》请在冰豆网上搜索。
2.3PSAM卡的选择9
3电子消费卡密钥管理办法10
3.1密钥分级管理原理10
3.2密钥多组设计原理10
3.3密码验证机制11
3.4电子消费卡应用密钥11
3.5系统主要母卡及发卡流程12
4卡片文件设计14
4.1卡片结构14
4.2公共信息文件(INFO)的设计14
5发卡系统概要设计16
5.1用户卡的发卡17
5.2用户卡的检查19
5.3用户卡的回收21
5.4用户卡的充值23
6系统结构24
6.1系统结构24
6.2电子消费卡密钥管理系统配置25
6.3电子消费卡发卡系统配置25
1概述
1.1概述
本设计是根据XXXXX发行电子消费卡的实际需求而制作的,主要包括电子消费卡的密钥管理系统和发卡系统,以及其他的一些相关内容,如卡片选择、回收、充值等,提供给XXXXX作参考。
1.2设计原则
根据电子消费卡的特点,本设计遵循以下原则:
1.电子消费卡不记名、不挂失,对客户只提供消费功能,金额用完后,回收卡片,在银行进行统一的充值
2.为特定商户发行的消费卡只能在该商户内使用,目前不支持消费卡的跨商户使用
3.电子消费卡采用密码保护和密钥保护两级保护机制,确保系统的安全性
4.电子消费卡密钥采用两级分散机制,密钥管理系统安全实现密钥的生成、保存、传输、使用等功能
5.电子消费卡的各种发卡操作在发卡机上进行,发卡软件提供良好的可操作性和稳定性
6.在进行系统设计时即保证实现现有需求,又保持一定的灵活性,以便将来对系统进行扩充,在设计时考虑到将来实现跨商户消费功能;
1.3功能描述
这里对上海XXXXX电子消费卡系统的功能作简单描述,详细的描述将在下面的设计描述中给出。
密钥管理系统功能:
⏹生成上海XXXXX电子消费卡消费、充值等密钥
⏹制作上海XXXXX消费卡主控母卡、洗卡母卡和母卡认证卡
⏹制作各商户电子消费卡发卡母卡
⏹提供密钥服务的逻辑加密机功能
发卡系统的主要功能:
⏹进行电子消费卡的发卡
⏹进行电子消费卡的回收
⏹进行电子消费卡的充值
⏹进行电子消费卡的检查
⏹PSAM卡的发卡:
支持PBOC卡和非PBOC卡
2
卡片选择
在电子消费卡系统中一共包括以下几种卡片:
密钥管理母卡、PSAM卡及电子消费卡。
母卡用来实现密钥存储、备份、传递等功能,母卡的数量比较少,但对安全性的要求比较高;
PSAM卡一般放置在商户的POS机中,用来实现脱机交易验证;
电子消费卡是向社会广泛发行的卡片,数量比较大要求安全性好、可靠性高,使用寿命长。
2.1电子消费卡的选择
目前电子消费卡的可选卡种有:
专用消费卡、PBOC金融卡和加密存储卡。
2.1.1专用消费卡
目前市场上广泛应用的专有消费卡的产品有GEMPLUS公司的GemClub卡片和握奇公司、斯伦贝谢公司的电子消费卡,卡片种类为CPU卡,容量大约在1K左右。
由上海市商委牵头发行的消费卡即采用此类卡片,此类卡片的价格介于加密存储卡和PBOC金融卡之间,由于安全性比较好以及具有良好的性价比,因此在目前上海市场上占有较大的份额。
缺点是由于电子消费卡没有现成的规范,因此各家厂商的交易指令并不统一,因此如果要发放多种厂商的消费卡,需要开发多套终端交易程序和发卡程序。
下面以GemClub卡片为例说明发卡、消费、充值的实现方法:
在GemClub卡片上可以建立一个或多个KEY文件,每个KEY文件存放一个密钥,另外在卡片上可以建立一个或多个Counter(类似于金融IC卡中的电子钱包),对于Counter有两种交易(消费、充值),每一个Counter对应一个消费密钥和一个充值密钥。
卡片支持两种交易——消费和充值,且交易都针对指定的Counter进行。
卡片的安全机制主要有:
1.对卡片上的文件创建、读取可以设置相应的密钥保护
2.密钥文件的安全更新可以采用加密的安全报文方式
3.在进行交易时可以设置PIN保护
4.交易时通过卡片和终端的双向验证保证交易的安全性
5.进行交易验证的TAC密钥由发卡方指定,商户无法验证交易的合法性
消费过程如下:
开始时,终端根据PSAM卡上消费密钥、消费卡序列号等信息计算得到电子消费卡的消费密钥,用此消费密钥对相关交易信息等数据进行加密计算产生MAC_IN,请求卡片验证终端的合法性,如果卡片验证成功,则向终端发送MAC_OUT,及交易认证码TAC,MAC_OUT由卡片中的消费密钥对交易数据加密产生,TAC由卡片中的TAC密钥对交易数据加密产生,终端通过检验MAC_OUT验证卡片的合法性,同时记录TAC,以供银行对交易进行确认。
充值在银行统一进行,实现卡片充值有两种方法,一种方法是通过充值交易实现,实现方式与消费类似,另一种方法是通过重发卡片实现,这种方式能在实现卡片充值的同时替换消费密钥。
由于消费和充值通过不同的密钥实现,因此可以通过密钥管理进行操作权限控制,如在商户终端的PSAM卡中只提供消费密钥,则在商户终端只能实现消费交易,不能实现卡片充值。
2.1.2加密存储卡
加密存储卡是IC卡家族中的早期产品,与磁条卡相比具有容量大、性能可靠、使用寿命长、经济实惠的优点,因此在金融以外的领域(如门禁等)有广泛应用,但由于其安全性能有一定缺陷,因此近年来在金融、支付领域应用不多。
存储卡对欲加密保护的数据采用SecureCode保护机制,即卡片内存放密码,终端对卡片密码进行校验,通过则能访问、修改卡片上的数据。
为了提高系统的安全性,一般在商户终端存放一个“种子密钥”,卡片上的密码由此“种子”对卡片信息进行密码运算后得到,在进行交易时,终端根据卡片信息计算卡片密码,验证通过后进行相应的交易。
采用存储卡有如下安全隐患:
1.卡片文件机构为线性结构,卡片操作系统不支持对文件的创建,因此无法对卡片建立一套完整的安全管理机制。
2.卡片无法进行加密、解密计算,因此在发卡、交易过程中无法实现随机、实时交易验证。
3.由于没有相应的消费、充值、TAC等密钥,因此无法实现消费交易和充值交易的权限管理,商户也可以对卡片进行充值。
4.如果存放在终端上的“种子密钥”泄露,则可能制作出大量伪卡,而且这些卡还可以充值,从而带来很大的风险。
为了提高系统的安全性,可以采用如下措施:
1.“种子密钥”存放在相应终端的PSAM卡中,对于大型商户也可以存放在安全性更高的硬件加密设备中。
2.采用多组“种子密钥”,并在对消费卡进行充值时定期重置密码。
2.1.3金融IC卡
用金融IC卡实现电子消费功能具有安全、规范、扩展性好的特点,缺点是与专用消费卡比较,卡片成本比较高,在使用时不大方便。
可以通过在金融IC卡中建立一个电子消费应用,仿照金融IC卡钱包建立一个电子消费钱包,消费过程同《中国金融IC卡规范》中的定义,对消费卡的充值通过“圈存”交易来实现。
综合考虑系统的安全性、成本等因素,本方案选用GEMPLUS公司的GEMCLUB电子消费卡,同时系统提供对其他公司专有电子消费卡的支持。
2.2密钥管理母卡的选择
密钥母卡系统采用法国施伦贝谢(Schlumberger)公司的KMC(KeyModuleCard)卡,容量为8K,该卡片具有良好的安全性,是目前使用较广泛的母卡,在中国人民银行金融IC卡联合试点的密钥管理系统中有成功的使用。
2.3PSAM卡的选择
PSAM的选择与电子消费卡的卡种、品牌有关,从系统的通用性和可扩展性考虑,PSAM卡应尽量采用符合人行规范的PSAM卡。
考虑到PSAM卡的一卡多用,系统支持以下两种电子消费PSAM卡:
7.PBOC应用+电子消费卡应用:
在PBOCPSAM卡(有人行统一发卡)中追加电子消费卡应用;
8.仅电子消费卡应用:
由新的PSAM卡创建,仅包含电子消费卡应用。
3
电子消费卡密钥管理办法
3.1密钥分级管理原理
为了方便对电子消费卡密钥的管理,同时考虑了系统的可扩展性,本方案采用两级密钥管理体系,密钥分散流程图如下(以消费密钥管理为例):
商户标识分散
...
直接
卡片序列号分散
图3-1:
不支持跨商户功能的消费卡密钥流程图
XXXXX消费主密钥由XXXXX产生,可以保存在专门的消费卡主控母卡中,商户消费密钥由XXXXX消费主密钥经商户标识分散后产生,存放在商户消费卡发卡母卡中,用户卡消费密钥由商户消费密钥经消费卡序列号分散产生,用户卡消费密钥的注入由消费卡发卡系统批量完成,商户消费密钥同时直接装载至商户PSAM卡中,由于不同商户拥有不同的商户消费密钥,因此某特定商户的电子消费卡只能在该商户内使用。
同时由于所有的商户消费密钥均由XXXXX消费主密钥分散得到,因此如果将来需要支持电子消费卡的跨商户功能,只需在商户PSAM卡中装载XXXXX消费主密钥并相应的修改POS程序即可实现,不必重发电子消费卡。
3.2密钥多组设计原理
为了降低密钥泄漏造成的风险,建议电子消费卡消费密钥采用多个密钥版本机制;
在PSAM卡中存放消费密钥的所有版本的密钥,在消费卡中存放消费密钥的某个版本的密钥,同时在消费卡中记录此卡所采用的消费密钥的版本号;
在消费或交易时,取PSAM卡和用户卡中共有的密钥进行相互的认证;
采用多组密钥可以降低密钥泄漏导致的金融风险,如采用5组密钥的设计,则在其中一组密钥泄漏时,只影响到1/5的电子消费卡;
3.3密码验证机制
为了提高电子消费卡的安全性,防止消费卡伪造,系统采用了密码验证机制,即将电子消费卡的权限设置为必须通过密码检验才能完成相应的消费、充值等交易。
但该密钥不提供给用户,而由POS机和发卡系统使用。
每张卡片的密码各不相同,由相应的密码种子密钥根据卡号等信息生成。
该密钥可以保存在PSAM卡中,也可以直接写入到POS机程序中。
建议将该密钥直接写入到POS机程序中,其一保证POS机程序的不可伪造性,其二可以分散系统风险。
同时该密钥还要保存在发卡系统中,用于在发卡和充值中生成密码。
该密钥不纳入密钥管理系统的管理,由XXXXX以密码信封的形式提交给我公司和POS机开发商,从管理上确保该密钥不被泄漏。
3.4电子消费卡应用密钥
电子消费卡主要有以下几种应用密钥:
密钥代码
密钥名称
描述
MPK
消费密钥
用于脱机消费的双向认证
MLK
充值密钥
用于安全修改卡片余额
MTK
TAC密钥
用于生成消费交易的认证码
MSCK
密码种子密钥
用于生成卡片密码
MAMK
维护密钥
用于维护卡片文件
MRPK/MPUK
PIN重装解锁密钥
用于PIN维护
上述密钥都由银行统一生成,其中的MPK需要装载到PSAM卡中;
MAMK、MRPK/MPUK、MLK保留在银行,用于发卡和充值;
MSCK写入到POS机和发卡程序中,用于增强安全控制;
MTK需要装载到硬件加密机中,用于交易的认证;
另外,MPK、MLK、MTK经卡号分散后写入到电子消费卡中。
3.5系统主要母卡及发卡流程
根据密钥分级管理原则,密钥系统主要有以下母卡:
母卡名称
主要密钥
XXXXX主控母卡
包含BMPK、BMTK、BMLK等
XXXXX洗卡母卡
包含电子消费卡洗卡密钥、厂商传输密钥等
XXXXX母卡认证卡
包含母卡的控制密钥,用来认证其他母卡
商户发卡母卡
包含MPK、MTK、MLK等,用于发卡、充值等
商户PSAM卡
商户消费密钥MPK(可能有金融IC卡GMPK)
电子消费卡
DPK、DTK、DLK等
密钥管理系统发卡流程如下:
图3-2:
发卡流程
9.输入种子码单,生成XXXXX主控母卡,洗卡母卡和母卡认证卡;
10.使用XXXXX主控母卡和母卡认证卡为商户生成商户发卡母卡;
11.使用商户发卡母卡完成电子消费卡的发卡、充值等;
12.使用商户发卡母卡完成电子消费PSAM卡的发卡;
3.6商户联合发卡的实现办法
商户联合发卡指为多个商户发行的电子消费卡可以进行跨商户的消费,并在日终在XXXXX进行交易的清算。
商户联合发卡可有多种实现办法:
13.在PSAM卡中包含XXXXX电子消费卡主密钥BMPK,在消费时,将BMPK进行两级分散,就可以与所有消费卡进行双向认证,实现跨商户交易;
14.为需要联合发卡的商户设定一个统一的商户号,使这些商户使用相同的MPK,实现跨商户脱机交易,同时通过卡号的设置来区别不同的商户,保证清算的进行;
15.在PSAM卡中包含所有需联合发卡的商户的MPK,在消费时选择与消费卡商户号相同的MPK进行双向认证。
上述办法中,第二种办法是最可取得,实现起来非常简单,几乎不需要改动任何程序(除了清算部分),只需要从管理上确定联合商户号和卡号定义办法,重发PSAM卡和消费卡即可,而且该办法还可以支持多个联合商户号。
4卡片文件设计
以下以GEMCLUB卡片为例,设计电子消费卡的文件结构。
4.1卡片结构
图4-1:
GEMCLUB卡片文件结构
4.2公共信息文件(INFO)的设计
卡片文件设计的关键是公共信息文件的设计,其他文件都可以参照卡片厂商标准的文件结构。
公共信息文件结构:
代码
名称
长度(字节)
类型
MSN
商户号
BCD
ASN
卡号
APP_VER
应用版本号
KEY_VER
密钥版本号
LOAD_CNT
充值计数器
LOAD_LMT
充值次数上限
RSV1
保留1
RSV2
保留2
5发卡系统概要设计
电子消费卡的发卡系统分以下功能模块:
1.用户卡的发卡:
空白用户卡创建文件,写密钥、写信息、充值等
2.用户卡的检查:
对发卡或充值后的用户卡进行可用性(余额等)检查
3.用户卡的回收;
读取回收卡片的信息,清除卡片,生成回收文件
4.用户卡的充值:
对已回收的卡片进行充值
5.PSAM卡的发卡:
以下对各功能模块进行详细的描述:
5.1
用户卡的发卡
用户卡的发卡指在空白用户卡(刚出厂的卡片)中创建应用所需的文件和写入必要的密钥和信息,并进行充值,发卡需要由卡务系统提供发卡文件,发卡结束后,必须进行“用户卡的检查”。
5.1.1发卡流程
以下是用户卡发卡的流程图:
图5-1:
发卡流程图
5.1.2发卡文件结构
下图是发卡文件的结构:
FILE_ID
RECORD_LENS
…
RECORD
CHECK_SUM
图5-2:
发卡文件结构
16.FILE_ID:
标识文件类型,固定为“FK”
17.RECORD_LENS:
发卡数量,2字节二进制码
18.RECORD:
卡片信息
19.CHECK_SUM:
前面所有信息的校验码,4字节二进制,算法CRC32
5.1.3发卡信息数据结构
下表是卡片发卡信息的数据结构:
字段
备注
充值金额
999999.99
表5-1:
发卡信息数据结构
5.2
用户卡的检查
用户卡的检查指对已发卡或充值的用户卡进行卡片的正确性和可用性检查,可用性检查包括:
余额、卡号、商户号等。
检查后生成用户卡发卡或充值结果文件,该文件提交给卡务系统,由卡务系统进行核对和记录。
因此,用户卡发卡和充值后必须进行用户卡的检查。
5.2.1检查流程
以下是用户卡检查的流程图:
图5-3:
检查流程图
5.2.2检查结果文件结构
图5-4:
检查结果文件结构
20.FILE_ID:
标识文件类型,固定为“JC”
21.RECORD_LENS:
22.RECORD:
检查结果信息
23.CHECK_SUM:
5.2.3检查结果信息数据结构
下表是卡片检查结果信息的数据结构:
余额
结果代码
注4-1
表5-2:
检查结构数据结构
注4-1:
2000正确发卡或充值
2001未发卡或充值
2002余额错误
2003商户号不符
2004卡片错误
2999其他错误
5.3
用户卡的回收
用户卡的回收指将商户送回的卡片进行统计和检查,读取卡片的卡号、余额等信息,检查卡片是否达到充值次数上限,并生成卡片回收文件,供帐务系统进行相应处理。
5.3.1回收流程
以下是用户卡回收的流程图:
图5-5:
卡片回收流程图
5.3.2卡片回收结果文件结构
图5-6:
卡片回收文件结构
24.FILE_ID:
标识文件类型,固定为“HS”
25.RECORD_LENS:
26.RECORD:
卡片回收信息
27.CHECK_SUM:
5.3.3卡片回收信息数据结构
回收代码
注4-2
表5-3:
卡片回收信息数据结构
注4-2:
3000正常回收
3001冲值次数达到上限
3002卡片损坏
3003非法卡片
3999其他错误
5.4
用户卡的充值
用户卡的充值往已回收的用户卡中追加金额。
5.4.1充值流程
以下是用户卡充值的流程图:
图5-7:
卡片充值流程图
用户卡的充值不涉及任何文件或数据结构,充值结束后,需要对所有卡片进行一次检查操作,并生成检查结构文件,该文件传输给帐务系统,用以更新本次充值得卡片的帐户信息。
5.5
PSAM卡的发卡
PSAM卡的发卡支持两种PSAM卡:
PBOC卡(已包含PBOC金融应用)和非PBOC卡(不包含其他任何应用,由空白卡创建)。
除了卡片控制密钥不一样外,这两种卡片的发卡过程类似。
5.5.1PSAM发卡流程
以下是PSAM卡发卡的流程图:
图5-8:
PSAM卡发卡流程图
6系统结构
6.1系统结构
图6-1:
电子消费卡发卡系统和密钥管理系统结构图
⏹发卡使用DATACARDUG285小型发卡设备,该设备带IC卡读写模块、印刷模块、写磁模块;
⏹由于UG285本身不带编程站,必须通过RS-232与发卡控制机相连,由发卡控制机控制进卡、写IC、印刷、出卡等操作;
⏹发卡控制机通过TCP/IP网络与密钥管理系统相连,从密钥管理系统取得密钥和进行加解密计算;
⏹另外,发卡控制机以磁盘文件形式从XXXXX帐务主机接收发卡、充值文件,或传送回收、检查文件给帐务主机;
⏹密钥管理系统是整个应用系统的安全核心,密钥管理系统使用密钥母卡保存密钥,使用硬件加密机为帐务主机提供加解密的计算服务;
⏹密钥管理系统运行逻辑加密机软件,为发卡控制机提供密钥服务。
6.2电子消费卡密钥管理系统配置
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子 消费 系统 概要 设计