《系统业务需求》
支付密码要写在支付凭证上,银行根据支付凭证的有关要素及支付密码进行核验,确定其真实性。
图形签章的补充。
范围:
同城票据交换;支付、银行汇票申请书,银行本票申请书,汇总凭证,及其它支付凭证。
目标:
(1)安全性:
算法-核心,国家密码办提出或批准的统一算法。
强抗攻击性。特殊通讯协议,防数据丢失和泄露。
完善的硬件授权和用户安全管理机制。
(2)可靠性:
计算和核验结果和唯一,可重复性,适应恶劣环境。
(3)经济实用:
友好,质优价廉。
(4)可扩展性:
方便密钥变换。
(5)通用性:
适应商业银行,集中核验和分散核验,适应“一机多户”和“一户多机”,及IC卡。
密码的明文编码要素标准:
签字人帐号:32位。业务种类:2。签字日期:8。
凭证号码:8。金额:16。
密码长度:16。
1、签发支票时,支票有无确定金额的标识。2、出票人同一帐号下支持支付密码器序列的标识。
C3、功能
1、凭证要素目录。2、显示。3、计算。4、存储。5、查询。6、一机多户。7、一户多机。
8、安全管理。9、硬件接口:
串口,开户银行对支付密码器进行发放、增减帐号,解锁,密钥变更。
支持IC卡。
与计算机和打印机的接口。
C4、支付密码器发放
流程:1、银行记录使用帐号基本信息,支付密码器机具号,2、经办人(开户单位)输入客户预留密码,作为指定帐号安全控制的密码。
3、帐号和帐号密码下载到支付密码器或IC卡中。
C5、支付密码核验
C6、支付密码管理
一、机器管理
1、机具号:生产厂家(2)+设备序列号(8)。
2、增加和删除帐号,解锁,由银行作。
3、变更帐户密钥,由银行作。
密钥变更日起,原秘密签名的支付在有效期内可核,……
4、支付密码器停用和挂失。
二、支付密码器安全管理
1、国家密码批准和提供的统一算法。
2、抗长时间外部恶意攻击。
3、防抵赖。
4、算法和敏感数据安全存储。
5、安全强度下,低成本。
6、支付密码器设备之间通讯必须加密。
7、支付密码器发放过程应保证数据传输的安全性,防支付密码器内部存储数据的泄露。
8、核验部分应该考虑灾难备份。
9、设置支付密码器开机到关机的时间。二级以上的口令制度。
C2、算法芯片主要功能
型号:S*-A,支付密码器核验子系统。
S*-B,开户单位所使用的支付密码器。
C3、支付密码器的技术要求(最影响通用性)
DB9到USB MINI-B:2收3发5地。
9600,8,1,1,N。
两字符间最大间隔小于等于500毫秒。
包回应超时不大于30秒。
C4、支付密码器核验子系统的技术要求
前台:对支付密码器进行实际发行操作的子系统。
后台:对支付密码器相关信息、日志进行管理的子系统。
下面是《总体方案书》的记录:
项目名称:电子支付密码器系统
产品名称:电子支付密码器系统
产品代号:
软硬件版本:
密码核验机:
密码校验卡:
密钥备份盒:
支付密码器:
开发环境:
前台:
(1)UNIX SERVER+UNIX+终端+C语言为主开发平台。
(2)OS/2 SERVER+OS/2+PC工作站+以CT/2为主开发平台。
(3)NT SERVER+WINDOWS+PC工作站+以C语言为主的开发平台。
后台:
(1)ES/9000+SNA SERVER+以C语言为主的开发平台。
(2)UNIX HOST+UNIX+以C语言为主的开发平台。
(3)AS/400+以RPG及C语言为主的开发平台。
95年开始,3个版本,C*-300在数十个银行单位使用。
硬件接口:
(1)核验机C*-400
两个INTERNET网口,一个连银行业务主机或者协议转换设备,一个连接另一台热同步核验机和核验系统管理机。
一个串口连接仿真终端,用于核验机初始化和参数设定。
(2)核验卡C*-500
33MHZ(32位),PCI总线接口,连接C*-500。
CCM专用串口,连接CK*-200。
标准UART,为调试用的端口。
(3)密码器CI*-900
USB MINI-B插座的标准232口,与工作站或终端连接。
USB MINI-B(插座),2发,3收,5地,1和4悬空。
速率:9600,8,1,1,N。
(4)密码器连接电缆CL*-4
通讯接口
(1)核验机CT*-400
TCP/IP,以太网,通讯字符集体为ASCII字符集子集{‘0’~‘9’,‘A’~‘Z’}。
100M,请求最大响应时间小于等于3秒。
联机业务的TCP/IP端口:8001,8002。
联机管理的TCP/IP端口:8011,8012。
数据同步的TCP/IP端口:8021,8022。
数据联机同步最长时间为10秒。
(2)核验卡CM*-500
与X86通过33MHZ,32位 PCI总线。
CM*-500:PCI的TARGET 设备。
X86:PCI的HOST设备。
CM*-500为PCI分配2MB的缓冲区,收发各1MB。
每一个功能数据包分配1KB的空间,收发各有1024个1KB的环形队列缓冲区。
CM*-500卡MPC860与X86交换数据采用中断号由主板BIOS分配。
(3)备份盒CK*-200
CM*-500卡与CK通讯接口采用CCM。即+5V的串口。
通信速率:10416BPS,8,1,1,N。
两个字符间最大间隔不大于500MS。
包回应超时小于等于30秒。
(4)密码器CI*-900
通讯包的数据格式:STX(0X02),TXT,ETX(0X03)。
其中TXT如下:
SEQ,TAG,LEN ,DATA,LRC。
性能需求
(1)核验机CT*-400
·分布式的,用户容量为150万户。
·集中式的,用户容量为500万户。
一户定义为一个帐户使用密码器,一个帐户使用多个密码器为多户。
(2)密码器CI*-900
·每个密码器至少可存20个帐户,100条历史记录,2个操作口令。
·每个帐号可支持50个密码器同时使用。
动态数值需求:
(1)核验机CT*-400
·双机同步时间小于10秒。
·分布式或集中式的,核验速度均大于50000笔/分钟(包括TCP/IP网络通讯时间)。
·分布式的完整备份时间小于30分钟,集中式的:120分钟。
分布式核验指:核验系统位于各个银行机构的柜面核算系统。
集中式核验指:核验系统位于各个银行机构的集中核算系统。
(2)核验卡CM*-500
·每包功能调用处理时间小于10秒,数据包字符发送间隔小于500MS。
·支付密码器核验速度大于100000笔/分钟(包括PCI总线通讯时间)。
(3)密码器CI*-900
·每包功能调用处理时间小于10秒,数据包字符发送间隔小于500MS。
·开机自检时间小于5秒,计算支付密码小于1秒。
·两节7号电池,连续工作时间大于100小时。
属性需求
可靠性
(1)存储数据时,也要存储校验值,每次读出时必须校验无误。
重要数据和难以恢复的数据需提供热备份和冷备份,如核验机中密钥等客户数据。
(2)一般RAM中的数据不校验,但如果要较长时间存储,如核验机中RAM的密钥和索引数据仍需要进行校验。
(3)各产品及模块间数据传输,必须成包传送,并附加校验值,当校验值错误或包不完整,多次重发。
(4)CT*-400是系统核心设备,单机配置双校验卡和双硬盘,系统以双机热备份方式使用。
(5)银行主密钥使用CK备份,其他核验机的数据使用完整备份和增量备份的方式。
(6)防CPU跑飞和FLASH误读。
产品MTBF指标:
密码器:5000小时。核验机:50000小时。核验卡:50000小时。备份盒:5000小时。
安全性:
银行主密钥3重备份于CK*-200共3个中。
核验机:最少两级口令控制
密码器:开机口令,主管口令,签发口令,审核口令,授权口令,长度6位。
可维护性:
故障定位。多部件产品。部件更换方便。
可移植性:
密码器:C评言,特殊部分:汇编。
其他产品用C/C++。
兼容性:
按“需求”和“规范”设计,保证产品的通用性。
可配置性:
(1)密码器中可修改配置表,选择部分功能。
(2)更改CT*-400的设置可以有选择地使用部分功能。
(3)CF—CH更改,增加删除系统功能。
系统升级:
密码器、核验卡、核验机应设计“付密码长度标志位”可改为20位。
《概要设计说明书》
参考书:《CS*-400总体方案书》,《产品规格说明书》,《支付密码器系统通用性技术规范》,
《SSX*10-B算法芯片接口说明》。
单板功能:
(1)自动关机。3个时间。
(2)15个通用键和一个开关键。
(3)128*64LCD,12*12点阵汉字50字。
(4)SSX10*-B芯片,实现密钥的产生、密码计算。
(5)232口:9600BPS,和57600BPS两种系统。
(6)与上位机通信,下载软件、自检、增加帐号。
(7)输入参数,计算出支付密码,输入的参数,作为历史记录保存。
(8)可用帐号、日期等关键字查询历史记录,历史记录保存最新150笔。
(9)可对口令、操作员信息、其它参数进行修改。
(10)附加功能:简单计算器,实现8位BCD数的加减乘除。
硬件功能模块描述:
(1)电源:低压检测、关机;输出3·3V。
(2)CPU:AT891V52,1·8432MHZ,内部8KB,存BOOT,写FLASH。
(3)FLASH:64KB,块擦除,块大小为4KB。
(4)算法芯片:
(5)LCD:50个汉字。
(6)232转换芯片:SP3220E,3V。
(7)键盘:16,P1口控制。
5、软件设计:
5、1、功能描述
5、5、单板软件功能模块(子程序)列表:
·FLASH类。·中断类。·数据转换类。·LCD显示类。·键盘类。·通讯类。·特殊技术处理。
·降耗。·防FLASH误写,抗忧。·软件狗。
5、7、语言、编译器、环境
(1)C51和汇编。
(2)FRANKLIN C51和A51。
(3)51仿真器,PC机。
6、主要性能指标:
(1)工作电流:正常,小于5MA,最大小于12MA,关机小于1UA。
(2)工作电压:2·3V~3·3V。
(3)工作温度:0~40。
(4)存储温度:-10~55。
(5)MTBF大于5000小时。
(6)采用标准:232,MINI-USB。
5、3、数据结构
内部程序:8KB,外部FLASH 64KB。
5、3、1、内部地址(0000H~1FFFH)
首址 内容 说明
0000H 跳转让 到100H
0003H 中断向量 除T1、T2外,其它所有中断向量均导入外部FLASH内部,
以利于以后的软件扩展
30H CPU软件版本
40H 内部子程序入口 所有可供外部调用的子程序入口,其后为内部程序代码,无固定位址
1FFFH 内部程序代码 5*7点阵字库,12*6点阵,内部汉字库
5、3、2、FLASH地址分配
数据空间: 0000H~0FFFFH可读写(写操作子程序在CPU内),对其按数据方式寻址时,CPU的INTO脚必须为低电平。
程序地址空间:2000H~0FFFFH,0000H~1FFF为CPU内部程序
0000H~1FFFH 参数设置区 口令设置(主管,授权,签发,审核),密码器编号
1000H~1FFFH 帐号停息备份区 格式同帐号信息区
2000H~9FFFH 程序代码区 28KB;包括程序体、12*12汉字库、校验值
0A000H~AFFFH 批量处理缓冲区
0B000H~0BFFFH 20条帐号信息, 每条128字节,每条的最后两字节为校验值
0C000H~0EFFFH 每条50字节,150条,每条的最后两字节为校验值
0F000H~0FFFFH 临时缓冲区 另也作为关机时备份信息。