PSAM卡用于商户POS、网点终端、直联终端等端末设备上,负责机具的安全控管。PSAM卡具有一定的通用性。经过个人化处理的PSAM卡能在不同的机具上使用。 PSAM卡支持多级发卡的机制,各级发卡方在卡片主控密钥和应用主控密钥的控制下创建文件和装载密钥。

1. 文件结构

社会保障DES算法环境: 

FID=3F00,AID=7378312E73682EC9E7BBE1B1A3D5CF;FID = DF01,AID = D15600000590 

 

社会保障SSF33算法环境: 

FID=DDF1,AID=7378322E73682EC9E7BBE1B1A3D5CF;FID = DF01,AID = D15600000590

2. 密钥属性

1)密钥用途(27, 47, 67)的低5位为密钥类型,高3位为密钥分散级数。密钥类型约定如下: 

——0,主控密钥

——1,维护密钥 

——2,消费密钥 

——3,PIN解锁密钥 

——4,重装PIN密钥 

——5,用户卡应用维护密钥 

——6,MAC密钥 

——7,加密密钥 

——8,MAC、加密密钥 

——9-31,保留

2) 密钥算法标识 

密钥算法标识指定了密钥所支持加密算法。密钥算法标识约定如下: 

——0,3DES 

——1,DES 

——2-255,保留 

3) 密钥版本 

密钥版本指定某种类型密钥的标识。对消费密钥来说,密钥版本是用于消费交易密钥选择过程中的密钥版本号,而对于其他密钥来说,密钥版本是密钥标识。

3. 读写用户卡

SET_CPU(0)
ATR=CPURESET()
LSKEY31=LAST(ATR,16)
00A404000F7378312E73682EC9E7BBE1B1A3D5CF
0020000003123456(9000) //验证主PIN
0084000008(RANDOM+9000) SET_CPU(1)
00A4040006D15600000590
BFDE485D18+LSKEY31+3337313730307378+RANDOM(9000) //48=psam用途 5D=标识
80FA000008+1122334455667788
00C0000008(ENDATA1+9000) //get response SET_CPU(0)
0082000710+ENDATA1+1122334455667788(9000) //外部认证 07=密钥标识
00A4020002EF0C
00B202042A(DATA1+9000) //读取第二条记录 SET_CPU(0)
0084000008(RANDOM+9000) SET_CPU(1)
BFDE281210+LSKEY31+RANDOM(9000) //48=psam用途 5D=标识
80FA000008+1122334455667788
00C0000008(ENDATA2+9000) //get response SET_CPU(0)
0082000410+ENDATA2+1122334455667788(9000) //外部认证 07=密钥标识
00A4020002EF0C
00DC02042A+E9283B363232323131333831393133383431333D32303039313031303032393237373439393939393F40

4. 密钥标识分配表

由于PSAM卡中同时存在国家级、省级和地市级控制的密钥,密钥安装分散,为了保证卡内密钥能协调工作,不相互冲突,各级发放和应用PSAM卡的机构,应按照下表密钥标识的分配原则来定义PSAM卡内的密钥标识号。

国家级

省级

地市级

PSAM卡自用密钥

‘00’~‘07’

‘00’~‘07’

‘00’~‘07’

针对用户卡DDF下的密钥

‘08’~‘0F’

‘10’~‘17’

‘18’~‘1F’

针对用户卡各应用下的密钥

‘20’~‘3F’

‘40’~‘7F’

‘80’~‘BF’

注:‘C0’~ ‘FF’保留为将来使用,各级机构不得占用。

文/闫鑫原创转载请注明出处http://blog.csdn.net/yxstars/article/details/38423875

社保系列7《PSAM卡》的更多相关文章

  1. PSAM卡

    PSAM卡    终端安全控制模块,符合<中国金融集成电路(IC卡)PSAM卡规范>,   包括普通PSAM卡和高速PSAM卡. PSAM符合以下标准及规范: 识别卡,带触点的集成电路卡标 ...

  2. PSAM卡与CPU(用户卡)的操作过程

    最近我一直在研究关于通过国密PSAM卡作为安全模块来读写cpu(用户卡)的问题 其实,两者都是卡片,或者说都是从设备.它们之间是无法相互访问的. 实际上,PSAM 卡是作为秘密密钥的载体,专门执行加密 ...

  3. PSAM 卡的应用操作方法

    PSAM 卡的应用        PSAM 功能 终端安全存储模块        PASM  常用于 脱机交易的 安全认证        脱机交易的流程          1.卡片对持卡人的认证(防止 ...

  4. IC卡、M1卡、CPU卡、SAM卡、PSAM卡的联系与区别

    一. 技术方面(非接触式IC卡)  1. 逻辑加密卡又叫存储卡,卡内的集成电路具有加密逻辑和EEPROM(电可擦除可编程只读存储器).  2. CPU卡又叫智能卡,卡内的集成电路包括中央处理器(CPU ...

  5. PSAM 卡的应用 操作方法

    PSAM 卡的应用        PSAM 功能 终端安全存储模块        PASM  常用于 脱机交易的 安全认证        脱机交易的流程          1.卡片对持卡人的认证(防止 ...

  6. PSAM卡之常用APDU指令错误码【转】

    本文转载自:http://blog.csdn.net/lvxiangan/article/details/53933714 PSAM卡的内容交互,是通过APDU指令完成的,常见的APDU报文格式如下: ...

  7. Mifare系列6-射频卡与读写器的通信(转)

    文/闫鑫原创转载请注明出处http://blog.csdn.net/yxstars/article/details/38085415 1. 复位应答(Answer to request) 读写器呼叫磁 ...

  8. 社保系列11《ATR》

    1)  冷复位(Cold Reset) 当IC卡的电源电压和其他信号从静止状态中复苏且申请复位信号时,IC卡产生的复位. 2)  热复位(Warm Reset) 在时钟(CLK)和电源电压(VCC)处 ...

  9. MIFARE系列3《卡能源和数据传递》

    在MIFARE卡中,能量和数据通过天线传输,卡中天线为几匝线圈,直接连接到芯片上,不再需要额外的组件.线圈嵌入塑料中,形成了一个无源的非接触卡. 读卡器向IC发一组固定频率的电磁波,卡内有一个IC串联 ...

随机推荐

  1. jquery是如何清除ajax缓存的

    大家都知道万恶的IE在ajax中往往只读取第一次ajax请求时候的数据,其余时候都是从cache提取数据,(太懒了T_T).原生的JS清除ajax缓存的方法多,但是终觉有点繁琐,如果是用jquery的 ...

  2. 静态库制作.a .framework

    一.静态库 .a 制作   1.新建一个Cocoa Touch Static Library         2.往里面添加文件,或者自己新建         3.添加一个Headers Phase ...

  3. 洛谷P2733 家的范围 Home on the Range

    P2733 家的范围 Home on the Range• o 26通过o 61提交• 题目提供者该用户不存在• 标签USACO• 难度普及+/提高 提交 讨论 题解 最新讨论• 暂时没有讨论题目背景 ...

  4. bootstrap modal动态加载内容

    $("#test .modal-body").load('test_url?id=' + id,function(){ $("#followStep1").mo ...

  5. 如何避免遭受HTTS中间人攻击

    先前为大家说明了如何对App的HTTPS通讯进行中间人攻击,听起来很吓人吧-表示若是使用手机的网银或购物等App,便有可能暴露在风险之中. 会发生HTTPS遭受拦截的主要原因是客户端的App未对服务器 ...

  6. 谈谈 React.js 的核心入门知识

    近来React.js变得越来越流行,本文就来谈一谈React.js的入门实践,通过分析一些常用的概念,以及提供一些入门 的最佳编程编程方式,仅供参考. 首先需要搞懂的是,React并不是一个框架,Re ...

  7. java 字节流和字符流的区别

    转载自:http://blog.csdn.net/cynhafa/article/details/6882061 java 字节流和字符流的区别 字节流与和字符流的使用非常相似,两者除了操作代码上的不 ...

  8. javaSE第十七天

    第十七天    168 1:登录注册案例(理解)    169 A:用户注册案例的分析    169 B:用户注册案例的源码    170 1: cn.itcast.pojo.User.java    ...

  9. Min Stack [LeetCode 155]

    1- 问题描述 Design a stack that supports push, pop, top, and retrieving the minimum element in constant ...

  10. 如何添加localizable.strings本地化

    1.在Supporting Files文件夹右键,NewFile… -> iOS -> Resources -> String Files,命名为Localizable.string ...