银行卡安全密码算法辅助计算工具(3DES+RSA)

原创 2014年09月13日 20:28:28

       银行卡包括磁条卡和IC卡,随着国内金融IC卡推进工作的逐步扩大,从2015年开始新发行的银行卡都将为IC卡或者是IC和磁条的复合卡,而不再单独发行磁条卡了。但由于现有磁条卡用户量巨大,磁条卡还将长期使用,只不过是越来越少而已。银行的安全在磁条介质和IC卡介质上的实现是不相同的,安全等级也是不一样的,从磁条卡升级为IC卡的一大动因就是安全性的提高,既是卡的防伪和防复制。而银行卡的安全主要依赖于使用密码算法的安全性和完善的密钥管理机制来实现的。

       银行卡使用的密码算法主要有RSA和3DES算法,国际上的大型卡组织都定义了完善的卡安全标准,概括起来包括2个方面,一个是卡验证,一个是持卡人验证。其中囊括的算法包括:数据完整性验证的MAC算法,PIN保护算法的X9.9、X9.19、IBM offset、VISA PVV,磁条卡验证的VISA PVV等,对于EMV96标准所对应到国内的PBOC1.0标准的使用3DES算法的MAC、数据加解密和密钥离散算法,还包括同EMV2000相对应的PBOC2.0算法使用的联机交易验证、脱机卡数据验证使用、密钥离散算法,其中联机交易验证使用的是3DES算法,脱机数据验证使用的RSA算法。而国密算法在银行卡上的应用为PBOC3.0标准的增强安全部分的内容了,请参看笔者的国密算法工具介绍。

      开发的图形界面GUI工具包括使用3DES算法的所有银行卡类算法,而RSA算法在GUI图形界面中集成了RSA算法的基础部分,包括密钥生成和公私钥加密与解密,而IC卡上使用RSA算法的功能有另外2个命令行工具组成,由于当时项目的一些特殊缘故,还没来得及将所有功能集成在一起(图形命令工具)。说来也是比较好笑的事,另外2个命令行工具还不是使用相同语言开发的,一个使用Ruby实现了IC卡数据准备密码服务功能,一个是使用Javascript实现了IC卡在使用中的联机验证和脱机的SDA和DDA验证,以及发卡行的应用脚本功能,实现功能包括圈存、圈提、脱机消费等,使用Javascript开发的命令行工具可链接IC卡读写设备,并可对真实的IC卡进行物理操作的。

      下面为图形部分的工具界面,2个命令工具就不再展示了。      

 图1   MAC功能界面

图2  PIN算法界面 

    图3  PBOC算法界面

    图4  RSA算法界面

        本工具算法的计算结果使用国内某厂商的金融数据密码机进行验证,功能准确、数据比对正确。

 

银行常用加密算法PINBlock加密

1.首先知道PIN的数据格式和如何获取PIN PIN的格式应符合ANSI X9.8 Format(带主账号信息) PIN的长度为4-12位格式:LV 位置 长度...
  • leumber
  • leumber
  • 2017年02月28日 15:00
  • 1592

银行卡密码的加密、MAC计算

在银行、银联、第三方支付等金融系统中,对银行卡密码等信息的加解密,对交易数据的加解密无处不在,在商场刷卡消费的POS机,在ATM机器取款等都需要对数据加密以保护数据安全,不被窃取。 本文主要对PO...
  • wkernel
  • wkernel
  • 2017年05月02日 10:52
  • 1098

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

终端角度看RSA

在金融交易里面,站在终端的角度来看,RSA算法主要用于在公钥解密,并恢复证书(发卡行公钥证书,IC卡公钥证书)。 下面从三种不同的公钥,阐述在POS终端里,RSA算法在脱机数据认证过程中发挥的作用和使...
  • freudlv
  • freudlv
  • 2014年07月29日 15:20
  • 1218

专业嵌入式软件开发——全面走向高质高效编程(含DVD光盘1张)

专业嵌入式软件开发——全面走向高质高效编程(含DVD光盘1张)  李云 编著 ISBN978-7-121-14783-8 2012年1月出版 定价:108.00元(含DVD光盘1张) 16开...

RSA公钥,私钥和数字签名这样最好理解

一、公钥加密 假设一下,我找了两个数字,一个是1,一个是2。我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥。 我有一个文件,不能让别人看,我就用1加密了。别人找到了这...
  • cut001
  • cut001
  • 2016年11月16日 18:20
  • 4105

DES,RC2,Rijndael, TripleDes,RSA, MD5, SHA1通用的安全密码类

using System; using System.IO; using System.Text; using System.Security.Cryptography; using Syst...
  • xqf222
  • xqf222
  • 2012年06月17日 10:53
  • 1315

银行卡安全认证实施细则

  • 2014年02月17日 17:06
  • 305KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:银行卡安全密码算法辅助计算工具(3DES+RSA)
举报原因:
原因补充:

(最多只允许输入30个字)