为什么80%的码农都做不了架构师?>>>   

在平时的工作中,很少接触安全这块内容,最近需要自己独立完成安全这块内容,在开发中遇到的问题会在下面的理解中得到相应的解决。

在交易平台中,基于安全考虑会对传输中的报文进行加密处理,用到最多的是MAC校验、PIN加密。
    MAC校验保证数据的完整性,PIN加密保证个人信息的安全性(即你输入的密码用PIN进行保护)。
------------------------------------------------------------------------------------------------------------------
首先需要明确三点的是:
        1:除加密机之外所有看到的密钥全是以密文形式存在。
        2:当你传输索引或加密机加密后的密钥密文给加密机时,加密机会自动找到与之对就应的密钥明文,进行相应的操作(如加密或解密)
        3:加密与解密操作中是应用密钥的明文(加密机真正计算MAC、PIN时所用的密钥)。
前提:加密机有一顶层密钥(LMK)(用与加密其他密钥的密钥),通过多人分段输入来进行设置。可以认为此密钥安全。
场景:
        1)平台则
                1:平台与平台之间一般会有一个BMK(用于平台之间进行工作密钥(MACKEY,PINKEY)的自动分发),受加密机LMK保护。此密钥以索引或是通过加密机LMK加密后的密文形式出现在应用数据库中。
                2:工作密钥通过应用程序发起签到交易向服务器方获得,服务方返回的工作密钥是以通过BMK加密之后的密文形式出现。当应用程序接收到工作密钥密文时,需对工作密钥密文进行检验(checkvalue)。
                        为进一步保护工作密钥,将工作密钥由BMK加密的密文转换成以LMK加密的密文存储在应用数据库中。
                3:应用程序发起交易(余额查询)根据相应的要求,进行MAC、PIN的组包。
                          MAC:根据要求组MACBLOCK,传MACKBLOCK、MAC密钥密文 得到MAC。
                          PIN:根据要求是否需要帐号,传帐号、PIN密钥密文得PIN。
                4:程序程序做的就是计算MAC、验证MAC、PIN转换操作来完成报文的传递。

2)终端测
                1:终端与平台之间一般会有一个TMK。
                        TMK 与BMK的作用基本上相同,之后的处理过程相同,请参考虑平台则说明。

-------------------------------------------------------------------------------------------------------------------

写的非常好的参考文件:http://www.360doc.com/content/14/0217/15/15841745_353246743.shtml

关于checkvalue生成与校验:

    引用:http://www.bctest.com/wtjd-show.asp?id=2370

1)银联直联终端测试中,在POS终端签到的应答报文中,62域是如何规定的?

62域长度应为24或40个字节。对于单倍长密钥算法:前12个字节为PIN的工作密钥的密文,后12个字节为MAC的工作密钥的密文。(其中,前8个字 节是密文,后4个字节是checkvalue;用前8个字节解出的明文做key,对8个字节00做单倍长密钥算法,取结果的前四位与checkvalue 的值比较应该是一致的)。

对于双倍长密钥算法:前20个字节为PIN的工作密钥的密文,后20个字节为MAC的工作密钥的密文。(其中,“PIN工作密钥”前16个字节是密文,后 4个字节是checkvalue;用前16个字节解出明文做key,对8个字节00做双倍长密钥算法,取结果的前四位与checkvalue 的值比较应该是一致的;“MAC工作密钥”前8个字节是密文,再8个字节是二进制零,后4个字节是checkvalue;用前8个字节解出明文做key, 对8个字节00做单倍长密钥算法,取结果的前四位与checkvalue 的值比较应该是一致的)。

转载于:https://my.oschina.net/3pgp/blog/200485

交易平台基本密钥处理流程(SJL05加密机)相关推荐

  1. 加密机体系(要配合银联密钥体系一起看)

    版权声明:转载或使用时请注明出处与作者. https://blog.csdn.net/weixin_43177881/article/details/83034315 </div>< ...

  2. 电子招投标系统源码之了解电子招标投标全流程

    随着各级政府部门的大力推进,以及国内互联网+的建设,电子招投标已经逐渐成为国内主流的招标投标方式,但是依然有很多人对电子招投标的流程不够了解,在具体操作上存在困难.虽然各个交易平台的招标投标在线操作会 ...

  3. 电子招投标采购系统之电子招标投标的全流程!企业电子招投标系统源码

    随着各级政府部门的大力推进,以及国内互联网+的建设,电子招投标已经逐渐成为国内主流的招标投标方式,但是依然有很多人对电子招投标的流程不够了解,在具体操作上存在困难.虽然各个交易平台的招标投标在线操作会 ...

  4. 电子招标系统源码之了解电子招标投标全流程

    随着各级政府部门的大力推进,以及国内互联网+的建设,电子招投标已经逐渐成为国内主流的招标投标方式,但是依然有很多人对电子招投标的流程不够了解,在具体操作上存在困难.虽然各个交易平台的招标投标在线操作会 ...

  5. 企业电子招标采购源码之电子招标投标全流程!

    随着各级政府部门的大力推进,以及国内互联网+的建设,电子招投标已经逐渐成为国内主流的招标投标方式,但是依然有很多人对电子招投标的流程不够了解,在具体操作上存在困难.虽然各个交易平台的招标投标在线操作会 ...

  6. 了解电子招标投标全流程

    随着各级政府部门的大力推进,以及国内互联网+的建设,电子招投标已经逐渐成为国内主流的招标投标方式,但是依然有很多人对电子招投标的流程不够了解,在具体操作上存在困难.虽然各个交易平台的招标投标在线操作会 ...

  7. 七张图带你了解电子招标投标全流程!

    随着各级政府部门的大力推进,以及国内互联网+的建设,电子招投标已经逐渐成为国内主流的招标投标方式,但是依然有很多人对电子招投标的流程不够了解,在具体操作上存在困难.虽然各个交易平台的招标投标在线操作会 ...

  8. 碳排放交易平台的建设方案分享

    先给大家转发分享一下 5月14日,央行.证监会.银保监会等部委发布<关于金融支持粤港澳大湾区建设的意见>(以下简称<意见>),<意见>提出,充分发挥广州碳排放交易所 ...

  9. java版企业电子招投标系统源代码之了解电子招标投标全流程

    随着各级政府部门的大力推进,以及国内互联网+的建设,电子招投标已经逐渐成为国内主流的招标投标方式,但是依然有很多人对电子招投标的流程不够了解,在具体操作上存在困难.虽然各个交易平台的招标投标在线操作会 ...

最新文章

  1. 【Qt】通过QtCreator源码学习Qt(五):QLoggingCategory管理、分类、过滤打印信息
  2. linux 测试环境启用jar_Linux下用java -jar运行可执行jar包的方法教程
  3. rhel6编译ssh的src.rpm包并修改spec参数
  4. SAE帮助「海底小纵队学英语」全面拥抱Serverless
  5. map 与 unordered_map
  6. 初入c++(七)运算符的重载+、-、*、/、[]、自加++的重载
  7. python测量信号信噪比
  8. 微信小程序之自定义toast弹窗
  9. 计算机科学基础word实验一,大学计算机基础综合实验实验报告 参考模板(1)
  10. qscoj:喵哈哈村的卢西奥
  11. 扩展JavaScript数组(Array)添加删除元素方法
  12. C语言程序设计第五版 谭浩强 第五版课后答案
  13. 使用 Jupyter Notebook
  14. Python工程目录结构
  15. java读取文件的万能解决方案
  16. 泛微e9隐藏明细表_泛微Ecology权限整理大全,相当全要点
  17. css中flex设置为1是什么意思
  18. 数据分析-用python分析中国五大城市的PM2.5值(ols建立回归模型)
  19. 计算机网络的硬件系统包含那些部件,计算机的硬件系统主要包括哪五大部件
  20. MTK平台前后摄使用PMIC供电无法设置不同的DVDD电压

热门文章

  1. Redis数据结构之字符串
  2. 使用java调用fastDFS客户端进行静态资源文件上传
  3. 在Centos 6.x 下yum安装php 5.5
  4. .project sturcture和Project Structure 无论是按快捷键或者是从files中打开都不显示
  5. 分享一点python 编码设置的知识
  6. java信息管理系统总结_java实现科研信息管理系统
  7. go mongodb排序查询_【赵强老师】MongoDB中的索引(下)
  8. git 移动分支指针_图解4种git合并分支方法
  9. 2 s锁是什么_innodb存储引擎读书笔记:锁
  10. 【转载】Yield,迭代器,生成器