通过账户划入交易,持卡人可将其在基本医疗保险个人账户上的资金划入卡内基本医疗保险个人账户中。

特点:

1)   终端上联网进行

2)   提交个人密码(PIN)(如持卡人设置)

步骤:

1)   终端:启动账户划入交易(INITIALIZEFOR LOAD)

2)   IC卡:处理INITIALIZEFOR LOAD命令

3)   检查是否支持命令中提供的密钥(DLK)索引号(NO:9403).

4)   产生过程密钥(SESPK):伪随机数(ICC)||基本医疗保险个人帐户划入交易序号||‘8000’

5)   产生MAC1:基本医疗保险个人帐户余额+交易金额+交易类型+终端机编号

6)   终端:验证MAC1,主机将生成SESLK并确认MAC1是否有效。

7)   回送错误状态:如果不接受帐户划入交易,则主机应通知终端

8)   交易处理:扣减帐户划入金额,产生一个报文鉴别码(MAC2)

9)   发出“CREDITFOR LOAD”命令:更新卡内基本医疗保险个人帐户

10)  IC卡:验证MAC2(NO:9302).

11)  交易处理:个人帐户划入交易序号加1,交易金额累加到基本医疗保险个人帐户余额上,更新交易明细

12)  返回确认:IC卡将TAC回送给终端

[cpp] view plaincopyprint?
  1. 00A404000F7378312E73682EC9E7BBE1B1A3D5CF
  2. 0020000003123456   //验证pin
  3. 00A4040006D15600000503     //DF04:社会保险信息区
  4. MONEY=00100000
  5. DLK=00000000000000000000222000000000
  6. DTK_=00000000011111000000666000220000
  7. DTKL=copy(DTK_,0,16)
  8. DTKR=last(DTK_,16)
  9. DTK=XOR(DTKL,DTKR)
  10. //社保初始化帐户划入:密钥索引号(DLK:01) + 交易金额 + 终端机编号
  11. B02800010B+01+MONEY+130000000001  //DLK
  12. 00C0000010(ST+9000)
  13. //CIA余额          4字节
  14. //联机交易序号      2字节
  15. //密钥版本号        1字节
  16. //算法标识          1字节
  17. //伪随机数          4字节
  18. //MAC1             4字节
  19. LM=COPY(ST,1,8)//CIA余额
  20. CN=COPY(ST,9,4)//交易序号
  21. WS=COPY(ST,17,8)//伪随机数
  22. //计算帐户划入交易过程密钥SESLK
  23. ECB_3DES_EN(WS+CN+8000,DLK,SESLK)//DLK帐户划入用来产生过程密钥
  24. //计算MAC1,数据为:16个0 + CIA余额 + 交易金额 + 交易类型(此处要转为ACSII码) + 终端机编号 + 80(补足长度)
  25. SDES_MAC(0000000000000000+LM+MONEY+31+130000000001+80,SESLK,MAC1)
  26. //MAC2,数据为:16个0 + 交易金额 + 交易类型(此处要转为ACSII码) + 终端机编号 + 交易日期 + 交易时间 + 800000000000(补足长度)
  27. SDES_MAC(0000000000000000+MONEY+31+130000000001+20090106+120000+800000000000,SESLK,MAC2)
  28. //个人账户划入金额(SSS CREDIT FOR LOAD)
  29. B02A00000B+20090106+120000+MAC2     //DTK
  30. 00C0000004(TAC+9000)  //TAC:交易验证码
  31. B026000104(BALANCE+9000)//查询个人账户余额GET BALANCE
  32. SDES_MAC(0000000000000000+BALANCE+CN+MONEY+31+130000000001+20090106+120000+8000000000000000,DTK,_TAC)//终端产生

注:其中TAC必须等于_TAC;



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



转载于:https://www.cnblogs.com/iplus/p/4467138.html

社保系列6《账户划入交易》相关推荐

  1. python银行系统-Python实现银行账户资金交易管理系统

    用类和对象实现一个银行账户的资金交易管理, 包括存款.取款和打印交易详情, 交易详情中包含每次交易的时间.存款或者取款的金额.每次交易后的余额. 如: 下面按照要求定义一个账户 Account 类.账 ...

  2. python交易_Python实现银行账户资金交易管理系统

    用类和对象实现一个银行账户的资金交易管理, 包括存款.取款和打印交易详情, 交易详情中包含每次交易的时间.存款或者取款的金额.每次交易后的余额. 如: 下面按照要求定义一个账户 Account 类.账 ...

  3. 交易软件 python_Python实现银行账户资金交易管理系统

    用类和对象实现一个银行账户的资金交易管理, 包括存款.取款和打印交易详情, 交易详情中包含每次交易的时间.存款或者取款的金额.每次交易后的余额. 如: 下面按照要求定义一个账户 Account 类.账 ...

  4. 【量化】量化交易入门系列6:量化交易学习书籍推荐(二)

    作者:悠悠做神仙 来源: 恒生LIGHT云社区 上一篇 量化交易入门系列5:量化交易学习书籍推荐(一) 我们介绍一些量化交易一些操作和理论性书籍,可能对于刚入门的大家而言,可能有些枯燥.所以这篇文章, ...

  5. 以太坊中的账户、交易、Gas和区块Gas Limit等基本概念

    本篇文章作为科普文章,汇总整理了以太坊中的账户.交易.Gas和区块Gas Limit等相关概念,以便大家在实践中更好的与具体业务相结合. 什么是账户 以太坊账户与我们所知的账户概念有一定相似之处,却又 ...

  6. python银行账户资金交易管理办法_Python实现银行账户资金交易管理系统

    用类和对象实现一个银行账户的资金交易管理, 包括存款.取款和打印交易详情, 交易详情中包含每次交易的时间.存款或者取款的金额.每次交易后的余额. 如: 下面按照要求定义一个账户 Account 类.账 ...

  7. 账户、交易核心概念及投注合约解析

    外部账户 vs 合约账户 以太坊中有两种类型的账户 外部账户 合约账户 它们的区别在Serenity版本中可能会消失. 外部账户(EOA) 外部账户 有以太币余额, 可以发送交易(以太币交易或引发合约 ...

  8. 银行账户类(Accoount)可以为账户存储交易。取款和存款都会产生交易信息。需要记录账户每次交易的信息,包括取钱还是存钱,交易的金额,交易时间和交易之后的余额。系统可以通过账户查询所有的交易次数(最

    不要自卑,去提升实力 互联网行业谁技术牛谁是爹 如果文章可以带给你能量,那是最好的事!请相信自己 加油o~ 1.题目背景 银行账户类(Accoount)可以为账户存储交易.取款和存款都会产生交易信息. ...

  9. 某银行拟开发一套ATM系统软件对客户的账户和交易信息进行管理。该系统的后台数据库为ATM,

    某银行拟开发一套ATM系统软件对客户的账户和交易信息进行管理.该系统的后台数据库为ATM,该数据库中拥有账户表Account和交易表TransInfo两张表. 使用Navicat for MySQL创 ...

最新文章

  1. 让后台服务不被杀———电话录音
  2. HDU - 4738 Caocao's Bridges(边双缩点)
  3. Python—实训day2—爬虫案例1:访问百度贴吧
  4. 文档管理 linux,Linux 文档管理
  5. IDEA Debug 无法进入断点的解决方法
  6. Python处理CSV大文件特定行数据
  7. volley 框架的使用
  8. #QCon#北京2011大会“更有效地做测试”专题Slides资料
  9. 车型代号对照表_车型代号对照表_相关文章专题_写写帮文库
  10. git 版本控制~ 文件没有绿色和红色图标
  11. arm android开发板推荐,arm7开发板推荐 最新arm开发板了解
  12. mongodb数据库添加用户名密码以及忘记密码重置操作
  13. 传染病研究-靶向下一代宏基因组测序(mNGS)分析
  14. 学的java,想问问现在想做电商的项目怎末样?
  15. 第八届北京国际电影节开幕 首次发布中国电影大数据
  16. SuperSU二进制更新失败的解决方法
  17. 2009成渝微型计算机处于空白,学海园大联考 2020届高三信息卷(二)文综答案
  18. sklearn的predict_proba
  19. 云、CDN、IDC 三个概念的区别是什么
  20. 利用这5个办法成为自由职业者,通过远程赚钱,开心旅行、轻松赚钱!

热门文章

  1. 日本人制作汉字俄罗斯方块游戏,看哭一票中国人
  2. P1532 卡布列克圆舞曲
  3. python 计算平均值、中位数、标准差
  4. Audacity分析浊音清音爆破音的时域和频域波形图
  5. Raphael 的介绍及圆和椭圆学习(一)
  6. 手机4k分辨率的dpi_4K分辨率和高DPI:要获得出色的视觉效果,您需要了解的内容
  7. 广州这个小区率先坐上无人驾驶通勤车!未来已来?
  8. 编程语言十二生肖查询网页版制作(php)
  9. 已测】【迅雷离线下载器】4.18大更新!
  10. STM32之ADC模数转换