1.首先知道PIN的数据格式和如何获取PIN

PIN的格式应符合ANSI X9.8 Format(带主账号信息)

PIN的长度为4-12位格式:LV

位置

长度

内容

1

1字节

PIN长度

2

7字节

4-12位PIN(每个字符占4个BIT,不足右补F)

若只得到PIN码,则按照如下格式压缩成PIN格式

PIN长度(1 个字节) 4-12位PIN(每个字符占4个BIT,不足右补F)(7 个字节)

如:0x06123456FFFFFFFFFF

2.PAN数据格式

PAN是从主账号的最后一位检验位前向左取12位,此中数据都是BCD码格式

位置

长度

内容

1

2字节

%H0000

2

6字节

取主账号的右边数第二位开始向左12 位

0000(2个字节) 12位PAN(每个字符占4个BIT)(6 个字节)

如:主账号:123456789012345678

取得PAN:0x0000678901234567

3.PIN和PAN异或得到PINBLock

将Hex格式的PIN和PAN异或即可得到要求结果

PIN: 0x06123456FFFFFFFF

PAN:0x0000678901234567

异或: 0x061253DFFEDCBA98

4.根据需要与对应密钥加密即可得最终的加密PINBLOCK数据

银行常用加密算法PINBlock加密相关推荐

  1. 对称加密算法 - Java加密与安全

    对称加密算法什么是对称加密算法呢?1. 对称加密算法就是加密和解密使用同一个密钥,例如我们使用WinRAR,对文件进行打包的时候,我们可以设置一个秘密,在解压的时候需要使用同一个密码,才能够正确的解压 ...

  2. 常用加密算法的Java实现(一)

    常用加密算法的Java实现(一) --单向加密算法MD5和SHA 摘自:http://www.blogjava.net/amigoxie/archive/2014/06/01/414299.html ...

  3. 常用加密算法概述、比较及使用场景说明

    常用加密算法概述.比较及使用场景说明 加密算法 概要介绍 算法简要描述 优缺点 破解方式 使用场景 安全性 DES 1,对称加密: 2,数据分组(64位)用秘钥(64位,其中56位有效,8位校验)行加 ...

  4. 常用加密算法之非对称加密算法

    非对称加密算法 非对称加密算法是一种密钥的保密方法. 非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey).公开密钥与私有密钥是一对,如果用公开密钥对数据进行加 ...

  5. DES、AES、RSA等常用加密算法介绍与比较

    文本先简单介绍常用的加密算法,后面将逐步推送每个加密算法的加密原理与应用及java实现方式. 加密算法分对称加密和非对称算法,其中对称加密算法的加密与解密密钥相同,非对称加密算法的加密密钥与解密密钥不 ...

  6. java md5加密长度_java中使用MD5加密算法进行加密

    java中使用MD5加密算法进行加密以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在各种应用系统的开发中 经常需要存储 ...

  7. 常用数据加密及加密格式

    一.加密和解密 1. 加密 数据加密的基本过程,就是对原来为明 的文件或数据按某种算法进行处理,使其成为不可读的一段代码,通常称为 "密文".通过这样的途径,来达到保护数据不被 非 ...

  8. MD5有哪些特性,常用的MD5加密安全吗

    在密码学中,MD5是比较常用的算法之一.大家都知道MD5曾一度被认为十分安全,并且在国内外得到广泛适用.然而,王小云教授的研究证明利用MD5算法的磕碰能够严重威胁信息体系安全,因此引发了密码学界的轩然 ...

  9. 对称加密算法(AES加密)以及对称算法与非对称算法的对比

    概述 对称加密算法就是传统的用一个密码进行加密和解密.例如,我们常用的WinZIP 和WinRAR对压缩包的加密和解密,就是使用对称加密算法:         从程序的角度着,所谓加密,就是这样一个函 ...

最新文章

  1. VC 单文档程序 隐藏程序及任务栏图标
  2. 机器学习——Java调用sklearn生成好的Logistic模型进行鸢尾花的预测
  3. 前后端数据交互方法 汇总
  4. linux 查明文密码,win10系统查看明文密码的操作方法
  5. AngularJS-webapp($q)
  6. generatorConfig 指定列的java数据类型
  7. 多线程程序中操作的原子性--转帖
  8. COMPATIBILITY参数需要是8.1.0.0.0或更大?
  9. isp mpls专线
  10. vim编辑器模式及使用方法
  11. FMEA-MSR 步骤五:风险分析(一)
  12. 在Windows环境下搭建Nginx文件服务器(简单实用版)
  13. opencontrail学习(一)
  14. HTML——倒计时制作
  15. 【2020年高被引学者】 陶哲轩 加州大学洛杉矶分校
  16. win10可以上网但显示无法连接到Internet
  17. lua table是否为空的判断
  18. $作为分隔符的字符串如何进行切割
  19. OpenSSL与CA认证
  20. Django项目:极致果蔬(一)

热门文章

  1. AD怎么输入坐标_实名推荐|相见恨晚的CAD坐标提取技巧
  2. html5-canvas常用的api介绍
  3. 粉笔公考——方法精讲——资料分析
  4. 阳台这样装洗衣柜更漂亮
  5. 去中心化金融体系初现,MIGO挖掘DeFi+NFT+DAO深层潜能
  6. 安卓学习专栏——安卓报错Version 28 (intended for Android Pie and below) is the last version of the legacy suppor
  7. java 获取服务器上文件,java获取远程服务器上的文件
  8. (1)Unity使物体去掉影子
  9. C++11多线程 内存序(std::memory_order_consume)
  10. 重学Java设计模式-创建者模式-工厂方法模式