一、发卡行公钥证书(CA私钥签过名的数据)
2B0CB3F653A15F5DD6A30D09F47E9BB36747B52C7B49499416FF12E5707FDFDB
CF8B8F05703B86BDC0B322A8943F801EEED8FAD8A96B533D742DBF36410548C0
9EBE9C317C98542BF694C4143A3813F3ABDF5C3AD23BA26B0B23A4D52455E11F
6F0D1EE0435C69DD4B41E38C9D855A03E194C5321152879375849401BB415166
二、CA公钥模数数据
AE8DE479F30046B083AD42DD7E9300BE9EF67E891AE79FB96599C46A3CA5516B
EA1598E3FB3AEDE7CE5EA8E47DD98774D2D2373B3CBACC7BBEC807CF7D9110B7
AB1946D4C762244A5E006DCDB3F4E6BB99BBA4A0BE9A892203B8226352F7B9F2
60C32B37EE255D96E68E12D8F90C70842009ABB07E708110A70292E2EFCBB4D9
三、CA公钥指数数据
010001
四、发卡行公钥证书(CA公钥解密后的数据)
6A02622800FF123000000101018001B4AB1DC9B46B8745C26703A7CEFF495229
22F18DABFBBD0AA3492FA1A893A78C1766226561F7895CA938FFDF53838E5863
E46D11D60B98104125174D7A0DF09FAF7C255DDC5A51494D60449B8A7524EE33
955363C7CB26CD679A05EB500DC25210B5F2ADDF14429F2A9F3CB781A5717EBC
五、发卡行公钥证书数据解析
6A//恢复数据头
02//证书格式
622800FF//发卡行标识(主账号最左面的3-8个数字)
1230//证书失效日期
000001//证书序列号
01//哈希算法标识
01//发卡行公钥算法标识
80//发卡行公钥长度
01//发卡行公钥指数长度
//下面是发卡行公钥模数的最左边92个字节数据
//(计算哈希结果的时候还要加上后续的36个字节公钥余项,再加上公钥指数03)
B4AB1DC9B46B8745C26703A7CEFF49522922F18DABFBBD0AA3492FA1A893A78C
1766226561F7895CA938FFDF53838E5863E46D11D60B98104125174D7A0DF09F
AF7C255DDC5A51494D60449B8A7524EE33955363C7CB26CD679A05EB

//下面是哈希结果
500DC25210B5F2ADDF14429F2A9F3CB781A5717E

BC//恢复数据结尾

六、下面验证一下哈希结果是否正确
//下面是发卡行公钥模数的完整数据128个字节
//(说明一下,前面92个字节是从发卡行公钥证书解得的,后面36个字节发卡行公钥余项可从IC卡中读出)
B4AB1DC9B46B8745C26703A7CEFF49522922F18DABFBBD0AA3492FA1A893A78C
1766226561F7895CA938FFDF53838E5863E46D11D60B98104125174D7A0DF09F
AF7C255DDC5A51494D60449B8A7524EE33955363C7CB26CD679A05EBC193DEF1
65FD9026C33952A5F1C7C8A917A34DC2A9853973FD139F821D068A07267E8AC5

七、计算发卡行公钥证书的哈希结果需要把下面的数据连接起来,用sha1算法计算摘要

02//证书格式
622800FF//发卡行标识(主账号最左面的3-8个数字)
1230//证书失效日期
000001//证书序列号
01//哈希算法标识
01//发卡行公钥算法标识
80//发卡行公钥长度
01//发卡行公钥指数长度
//发卡行公钥模数的完整数据128个字节
B4AB1DC9B46B8745C26703A7CEFF49522922F18DABFBBD0AA3492FA1A893A78C
1766226561F7895CA938FFDF53838E5863E46D11D60B98104125174D7A0DF09F
AF7C255DDC5A51494D60449B8A7524EE33955363C7CB26CD679A05EBC193DEF1
65FD9026C33952A5F1C7C8A917A34DC2A9853973FD139F821D068A07267E8AC5

03//发卡行公钥指数

八、连接七部分列出来的数据组成一个数据块:
02622800FF123000000101018001
B4AB1DC9B46B8745C26703A7CEFF49522922F18DABFBBD0AA3492FA1A893A78C
1766226561F7895CA938FFDF53838E5863E46D11D60B98104125174D7A0DF09F
AF7C255DDC5A51494D60449B8A7524EE33955363C7CB26CD679A05EBC193DEF1
65FD9026C33952A5F1C7C8A917A34DC2A9853973FD139F821D068A07267E8AC5
03

九、计算上面数据块哈希摘要(sha1)结果得:
500DC25210B5F2ADDF14429F2A9F3CB781A5717E

十、第五部分解出来的哈希结果:

500DC25210B5F2ADDF14429F2A9F3CB781A5717E

十一、九和十结果一致,说明发卡行公钥证书确为CA所签发,合法有效,可以使用

继续解析IC卡公钥证书.......

十二、IC卡公钥证书(发卡行私钥签过名的数据)
2E3E615E24165DCF4941B32CD0B64BF4FAB8F78B3D16CFF088BB452E1556D729
744D25B17057D306D3A5900113ED26DCC9F1827DABE5115C4D86C685FB3F2826
6DA84206373820FD893A4E064567066BE768F07AB4F26FD8E44608DA46D4BC99
1E44ED3E4A7B764DAE0A3AF31AEAF6027325601E03EFCA7B41CC2056F09B01B2

十三、发卡行公钥模数数据
B6F553279E88CEFA81C0597FDD39AEF4D5CF5DE9AC64D78EC69BE4CC0EDD595E
219F774316912B5096B478CEFCD98EC5A15C6FD994ED3C8FC2C2A0379473FD1D
6BD63DDD70A2F0F6813310CB2417CA5B0C9F1988DE2B45451434452B64DF4781
2507868D9028C4F1D032920E507051225C3F4D6F6AD105EA8009C318B8DF20B3

十四、发卡行公钥指数数据
03

十五、IC卡公钥证书(发卡行公钥解密过的数据)
6A046228000100001117FFFF123100000101018003DCC633F5728D3B93C2D7BE
93BA5AE021A8888D621A3DD17CC739485BAD19C571B20811629A44526964416D
346143B3503173C70B8CEF57C9990EC0B007E862B6075CC5249E44880DCC93FA
3BF5D047A1FFAA0339D548CA7D169D24B403A7F20C5DDC85D60CF504F2333FBC

十六、下面是对IC卡公钥证书的解析
6A//恢复数据头
04//证书格式
6228000100001117FFFF//应用主账号
1231//证书失效日期
000001//证书序列号
01//哈希算法标识
01//IC卡公钥算法标识
80//IC卡公钥长度
03//IC卡公钥指数长度
//IC卡公钥或IC卡公钥的最左边86字节(IC卡公钥余项42字节可在IC中读出)
DCC633F5728D3B93C2D7BE93BA5AE021A8888D621A3DD17CC739485BAD19C571
B20811629A44526964416D346143B3503173C70B8CEF57C9990EC0B007E862B6
075CC5249E44880DCC93FA3BF5D047A1FFAA0339D548
//哈希结果
CA7D169D24B403A7F20C5DDC85D60CF504F2333F
BC//恢复数据尾

十七、验证IC卡公公证书的哈希结果
//下面是IC卡公钥模数的完整数据128字节
//说明:前面86个字节从IC卡公钥证书中解得,后面42个字节从IC卡中读出
DCC633F5728D3B93C2D7BE93BA5AE021A8888D621A3DD17CC739485BAD19C571
B20811629A44526964416D346143B3503173C70B8CEF57C9990EC0B007E862B6
075CC5249E44880DCC93FA3BF5D047A1FFAA0339D5480E81D6B54F0FD406197F
AA21A92554DA1351515925071A29696BBF9D268757DD5234277107A16768741B

十八、计算IC卡公钥证书中的哈希结果需要把下面数据连接起来做sha1哈希摘要计算

04//证书格式
6228000100001117FFFF//应用主账号
1231//证书失效日期
000001//证书序列号
01//哈希算法标识
01//IC卡公钥算法标识
80//IC卡公钥长度
03//IC卡公钥指数长度

//IC卡公钥模数的完整数据128字节
DCC633F5728D3B93C2D7BE93BA5AE021A8888D621A3DD17CC739485BAD19C571
B20811629A44526964416D346143B3503173C70B8CEF57C9990EC0B007E862B6
075CC5249E44880DCC93FA3BF5D047A1FFAA0339D5480E81D6B54F0FD406197F
AA21A92554DA1351515925071A29696BBF9D268757DD5234277107A16768741B

//IC卡公钥指数
010001
//应用主帐号TAG+长度+应用主帐号+应用主帐号序列号TAG+长度+应用主帐号序列号
5A0862280001000011175F340101

十九、把十八部分列出的数据连接成一个数据块:
046228000100001117FFFF123100000101018003
DCC633F5728D3B93C2D7BE93BA5AE021A8888D621A3DD17CC739485BAD19C571
B20811629A44526964416D346143B3503173C70B8CEF57C9990EC0B007E862B6
075CC5249E44880DCC93FA3BF5D047A1FFAA0339D5480E81D6B54F0FD406197F
AA21A92554DA1351515925071A29696BBF9D268757DD5234277107A16768741B
0100015A0862280001000011175F340101

二十、对上面的数据块用sha1算法取哈希摘要得:
CA7D169D24B403A7F20C5DDC85D60CF504F2333F

与十六解析出来的IC卡公钥证书中的哈希结果相同说明IC卡公钥证书合法,可用

2013.4.25原创 曹昆

pboc2.0证书解析相关推荐

  1. 移动安全规范 — 4.1 PBOC2.0 IC卡认证

    #1 什么是PBOC2.0 2005年3月13日,人民银行发布第55号文,正式颁发了<中国金融集成电路(IC)卡规范>(简称PBOC2.0) #2 PBOC认证分类 PBOC数据认证方面, ...

  2. gmssl编程之X509证书解析

    gmssl编程之X509证书解析 引言 X509语法结构 基本项 证书版本号 证书序列号 证书颁发者 证书使用者 证书有效期 证书公钥 扩展项 基本约束 密钥用途 增强型密钥用途 颁发者标识 使用者标 ...

  3. iis+php解析漏洞修复,IIS7.0畸形解析漏洞通杀0day

    IIS7.0畸形解析0day通杀漏洞,和Nginx上次的0day一样.使用iis7.0的注意了.临时解决办法:关闭cgi.fix_pathinfo为0 Nginx好像又爆0day了,windows下可 ...

  4. 在.NET2.0中解析Json和Xml

    在.NET2.0中解析Json和Xml 在.NET解析json有很多方法,这里介绍最简单也用的最多的一种. 一.添加引用 解析Json,先下载开源控件 Newtonsoft.Json.dll 下载地址 ...

  5. 【转】PBOC3.0和PBOC2.0标准规范异同分析

    2013年2月,中国人民银行发布了<中国金融集成电路(IC)卡规范(V3.0)>(以下简称PBOC3.0),PBOC3.0是在中国人民银行2005年颁布的<中国金融集成电路(IC)卡 ...

  6. $(cd $(dirname $0),pwd) 解析

    xx.sh 文件内容如下: #!/bin/bash BIN_FOLDER=$(cd "$(dirname "$0")";pwd) echo $BIN_FOLDE ...

  7. 北斗通讯协议4.0 java_北斗4.0协议解析.doc

    北斗4.0协议解析 北斗用户机用户接口协议 (4.0版本外用) 接口数据传输约定 串口非同步传送,参数定义如下: 传输速率:19200bit/s(默认),可根据用户机具体情况设置其它速率: 1 bit ...

  8. RT-Thread 4.1.0 特性解析之LIBC与POSIX

    1. POSIX 渊源 可移植操作系统接口,POSIX 标准定义了操作系统(很多时候针对的是类 Unix 操作系统)应该为应用程序提供的接口标准,从而保证了应用程序在源码层次的可移植性,如今主流的 L ...

  9. 添加vcsa7.0证书密钥记录

    vmware vsphere client添加vcsa7.0证书 客户端切记在资产中添加分配许可,切勿在许可证下添加 在这里插入图片描述 VMware vSphere 7.x **vSphere ES ...

最新文章

  1. 关于windows的version和OS build version
  2. 【代码笔记】iOS-字体抖动动画
  3. [Web 前端] 解决因inline-block元素导致的空白间距和元素下沉
  4. 安全筛选器创建与管理
  5. julia语言 调用 java_以编程方式/动态导入Julia中的模块
  6. uniapp 移动端上传文件_基于 uniapp 实现动态路由和动态 Tabbar
  7. SQL Server执行大文件SQL脚本
  8. 一起学ORBSLAM2(6)ORBSLAM中的特征匹配
  9. javascript禁用Backspace退格键(结合自己实际应用中遇到的textarea中退格造成页面假死问题做了修改)
  10. Ubuntu设置自动登录
  11. EOS区块链开发的第一步
  12. Unity UGUI实现王者荣耀版多格血条
  13. 观世音菩萨为什么不直接将整个地狱的众生都拯救出来?
  14. c# 计算圆锥的体积_用C#编写一个程序计算出球,圆柱和圆锥的表面积和体积。...
  15. 数字三角形 (15 分)
  16. Visual Studio 2019 和 qt 5.15.1 下 opengl 的运用 - Lighting - 02 - BasicLighting
  17. shell脚本批量修改文件后缀
  18. Net framework3.5装不上的解决办法
  19. PHP商城二手交易市场课程设计
  20. [RK3288][Android6.0] 调试笔记 --- touch无法获取坐标点

热门文章

  1. sql 日期 增加2个月
  2. Minecraft 1.19.2 Forge模组开发 08.生物生成
  3. 文件格式转换DOS到UNIX:dos2unix+UltraEdit(解决no such file or directory问题)
  4. CMOS图像传感器的参数和评价标准
  5. linux安装两个独立显卡驱动,Manjaro Linux 双显卡安装步骤及独立显卡运行游戏(Nvidia GeForce GTX 980m)...
  6. 跨考=浪费大学四年?跨专业考研应该怎么做?
  7. 跨考不容易,各专业跨考建议注意事项!
  8. JavaScript 美化滑块
  9. Win10 解决小娜助手占用过高CPU资源问题
  10. 百度全景地图调用时不能进入