金融密钥管理系统方案 |
本方案的密钥管理系统是一个针对金融领域密钥管理需求而专门设计、研发的安全基础产品,本产品是纯软件产品。本产品的设计理念先进、系统架构合理、系统功能强大同时界面易于操作,本产品目前已能基本满足金融机构对密钥进行安全、高效管理的需求。
本产品已实现满足以下密钥管理需求:
PBOC1.0、PBOC2.0、PBOC3.0金融IC卡的发卡安全和交易安全验证
金融机构支持行业应用的金融IC卡发卡安全和交易安全验证
金融机构收单系统的收单终端实现一机一密的密钥管理
金融机构文件安全处理(文件加解密)
金融机构强身份认证的支持(证书签发、证书验证)
本产品目前已支持使用多个主流密码机厂商(江南所、卫士通、歌盟等)的密码机进行各种密钥管理需求的实现。若系统不支持的密码机(密码机指令集),系统也支持通过配置的方式支持密码机(密码机指令集)的扩展。而不需要进行大量客户化开发。
本产品最大的特点是全配置化的设计与实现。通过配置的方式支持硬件设备、系统功能、IC卡多应用安全需求(新安全规范)的动态扩展,扩展配置简单易学,扩展时不影响系统已有的功能。
本产品作为安全产品,其基本要求是实现系统需求的各种安全规范(如人民银行金融IC卡安全规范等),但是仅仅满足这个安全性要求是不够的。因此该软件产品在设计和实现时充分考虑了系统维护和管理、数据维护和管理的安全性。该产品通过身份认证介质、多重密码等方式保证系统用户登录的安全性。通过对功能、数据设计授权机制使用户可以根据安全需求,设计各个用户能查看的功能或数据,增加了数据的安全性。该产品还通过应用系统“白名单”等方式,防止系统遭受非法访问、重放攻击等危险,增加了系统访问的安全性。
本产品充分考虑了审计在金融系统中的重要性,在设计和实现系统审计模块时,支持对系统配置、密钥管理操作、系统服务等交易能进行事后审计,从而发现存在的问题或者安全隐患。
本产品在设计和实现密码机硬件的管理时充分考虑了密码机正确性的检测、密码机的负载均衡、密码机的热备、密码机异常转发等情况。设计了多种机制在密码机出现异常时,能及时检测并顺利转发至正常的密码机以完成密码机交易请求,保证了只要有一台密码机正常工作的情况下能正常处理所有的密码机交易请求。
与密钥管理系统相关的应用系统包括:认证中心(交换中心)CFCA、数据准备系统、交易安全认证系统、个人化系统。相关系统的总体架构示意图如下:
图1
如上图所示,与密钥管理系统相关的系统说明如下:
认证中心(交换中心)CFCA
密钥管理系统需要与CFCA通过发卡行业务人员完成IC卡发卡行证书的交互。由手工完成,无实际连接。
数据准备系统
密钥管理系统与数据准备系统的关系是密钥管理系统向后者提供金融IC卡卡片密钥、证书数据的申请服务,以完成数据准备系统对卡片安全数据的申请需求。
密钥管理系统还需要提供数据转加密、加密等安全密码运算接口,以供数据准备系统处理卡片敏感数据时调用,保证卡片敏感数据的安全。
密钥管理系统同时支持使用提交批量文件的方式,完成数据准备系统需要的密钥、证书处理需求。数据准备系统向密钥管理系统的文件提交,支持以下两种方 式:
通过密钥管理系统提供的管理界面手工提交
通过相对安全的文件传输协议(xftp等)提交,由密钥管理系统自动扫描文件是否已提交完成,并进行相应的处理
交易安全认证系统
通过手工或者联机的方式向交易安全认证系统同步密钥。
个人化系统
密钥管理系统与个人化系统的关系是密钥管理系统需要为个人化系统提供卡片主控密钥的根密钥或者直接为个人化系统提供其需要的密钥服务和密码安全服务,以协助个人化系统完成金融IC卡的发卡。
硬件密码机
密钥管理系统与硬件密码机的关系是密钥管理系统需要通过调用密码机指令来完成所有密码安全运算,从而保证密码数据运算的安全性。
应用层
密钥、密码服务、批量文件传输API
提供封装后的API开发接口给应用系统直接调用,简化应用系统开发的工作量。
管理界面软件模块
管理界面软件模块为j2ee架构的web应用,负责展示密钥管理系统的所有管理功能,同时负责完成用户和密钥管理系统服务器端的交互。
监控界面软件模块
监控界面软件模块为j2ee架构的web应用,负责提供密钥管理系统的所有监控管理功能,同时负责完成监控界面与密钥管理系统监控服务器的交互。
服务层
管理服务模块
负责完成密钥管理系统的用户管理、功能和数据的授权管理、密钥管理、证书管理、密钥档案管理、系统运行配置、系统审计、机构管理等系统管理功能。
监控模块
负责对所有监控数据进行收集、处理,同时根据指定的规则,发起相应的预警、报警信息。
密码服务模块
负责数据加密、转加密、文件加密、转加密、MAC计算/校验等密码服务功能。
密钥服务模块
负责卡片子密钥离散、私钥申请、证书申请、证书签发、静态签名数据申请等密钥服务。
批量文件处理模块
负责通过批量的方式处理文件需要的密钥、密码服务需求,生成指定格式的数据安全文件返回给数据准备系统。
密码机服务模块
负责完成与密码机的交互,同时负责密码机运行状态的检测、负载均衡、异常处理等。
数据层
该层包括密钥方案设计配置、运行配置、密钥档案配置、流水等配置及交易数据。监控数据物理上可以和上述数据单独存储。本方案系统的数据层设计时,充分考虑了金融IC卡应用对密钥管理需求的扩展需求,为发卡行支持金融IC卡应用扩展、行业应用扩展提供了切实可行的数据存储结构,系统数据存储结构原理示意图如下图:
图 3
如图3所示,本系统的密钥、证书数据按照操作员角色、卡种进行存储,可以保证数据的相互独立同时满足各种卡片密钥管理需求的扩展。
密钥管理系统的设计是基于模块化的设计,在横向或者纵向能很好地扩展对密钥管理新需求的支持,同时系统设计完全遵循金融IC卡的相关规范,遵循对称密钥、非对称密钥体系的相关安全规范。密钥管理系统主要完成如下工作:
多版本的密钥管理功能,保证密钥版本在整个生命周期内产生、存储、更新、传输、使用、销毁的正确性和安全性;
审计密钥管理操作、配置管理操作等;
管理发卡行的密钥、证书数据。包括IC卡根密钥的产生及存储、发卡行RSA对生成及存储、发卡行证书申请及存储、根CA公钥文件下载及存储等;
管理IC卡卡片密钥、证书数据。包括IC卡交易主密钥生成、IC卡RSA对生成、签发IC卡证书、签名IC卡静态应用数据等;
管理发卡行IC卡交易主密钥的分发。包括MDKs密钥向加密服务平台的分发等;
管理根CA公钥文件向终端的分发。包括根CA公钥文件的下载等;
管理密码机设备。包括多组多台密码机的管理、密码机的负载均衡、密码机状态的监控等;
金融IC卡的最大特点就是支持多应用,因此在金融IC卡的推广过程中,不断追加扩展卡片的金融应用,甚至是行业应用也是必然的。
在扩展卡片应用的同时我们同样需要考虑新应用的发卡、交易安全。本方案的密钥管理系统在系统设计时,已经充分考虑了IC卡新应用,新规范的扩展。详见本章后续描述。
通过全配置化的方式支持界面功能的扩展,在提出新的界面需求时,无论是针对新的行业应用或者金融应用的扩展,界面的功能都可以通过配置的方式进行界面功能的扩展。
针对不同的密钥、密码服务需求,系统使用服务插槽的设计方式支持动态的增加新的密钥、密码服务需求而不影响原有的任何功能。
该功能的扩展需要部分客户化开发的工作,具体的工作需要根据具体的需求而定。本方案的系统原则上可以通过密钥、密码服务扩展的方式,支持所有新增的金融应用、行业应用。
无论是金融应用还是行业应用的扩展,可能会引起密码机选型的扩展,本方案的密钥管理系统支持通过全配置的方式支持不同厂商、不同型号密码机的扩展,而不会影响到原有的密码机或者原有的系统功能。
密码机选型的扩展必然会引出密码机指令集的扩展的需求,本方案的密钥管理系统支持通过全配置的方式支持不同方式的密码机接口协议(密码机指令)。在扩展的同时,不会影响原有指令的使用。