金融POS三层密钥体系 银行卡网络安全系统

news2024/9/21 2:36:48

银行卡网络安全系统的三层密钥体系

银行卡网络安全系统的三层密钥体系为金融POS系统提供了高度安全的密钥管理。这个体系从上到下分为三层:系统密钥、主密钥、和工作密钥。每一层密钥都负责保护下一层密钥的安全性,确保系统整体的安全性。

三层密钥体系概述

  1. 系统密钥(System Key):用于加密主密钥或其他工作密钥,作本地存储。由POS终端或密码键盘在出厂时随机生成,具备防拆保护功能,防止未经授权的密钥提取。

  2. 主密钥(TMK, Terminal Master Key):用于解密工作密钥。由银行人员提供并通过安全方式输入到密码键盘,该键盘具有自动销毁功能以保护密钥的安全。

  3. 工作密钥(Working Key):包括用于PIN加密的TPK、用于MAC计算的TAK、用于磁道信息加密的TDK等,分别用于特定的数据加密任务,确保传输数据的安全性。

密钥类型

  • 主密钥(TMK):保护工作密钥,确保POS终端与银行后台主密钥的一致性。
  • PIN工作密钥(TPK):用于对持卡人输入的密码进行加密,确保密码在传输过程中的安全性。
  • MAC密钥(TAK):用于对数据包生成校验数据,确保数据在传输过程中的完整性和合法性。
  • Key Check Value (KCV):用于验证密钥传输的正确性,防止密钥被篡改。

密钥的使用场景

  1. PIN加密:当持卡人在POS终端上输入密码时,密码以密文形式传输至银行,确保传输过程中的安全性。
  2. 数据包校验(MAC):使用MAC密钥对数据包进行校验,确保数据的完整性和合法性,防止数据被恶意篡改。
  3. 密钥校验(KCV):用于验证密钥的正确性,防止错误或恶意密钥的使用,确保密钥的一致性和安全性。

工作密钥的加解密方法

  • PIN加密:依据相关规范进行操作,确保持卡人密码的安全性。
  • MAC算法:对数据包进行校验计算,保证数据传输的安全和完整。
  • 磁道信息加密:保护磁道数据,防止敏感信息泄露。

总结

三层密钥体系通过系统密钥、主密钥、和工作密钥的相互保护,构建了一个完整的POS终端安全体系。各类密钥在数据传输、加解密过程中发挥着至关重要的作用,保障了持卡人敏感信息的安全性和交易的合法性。这种分层加密的策略是银行卡网络安全的重要基石,有效防止了密钥泄露、数据篡改等安全风险。

银行卡网络安全系统的三层密钥体系

在这里插入图片描述

金融POS系列产品根据银联卡检测中心(BCTC)对于终端安全要求,设计出一套适合我们终端的三层密钥体系,从上而下依次是系统密钥、主密钥、工作密钥。上级密钥用于加密下级密钥,具体如下:

1.系统密钥用于加密主密钥或其他工作密钥作本地存储,它由POS终端或密码键盘出厂时随机产生,当遭遇拆机时会自毁,最终导致之前发行的工作密钥不能使用,以到达密钥自毁的功能;

2.主密钥用于解密工作密钥的密钥;
3.工作密钥包括TPK(PIN工作密钥),TAK(MAC工作密钥) ,TDK(磁道加密工作密钥), TPK用于PIN加密TAK,TDK用于对数据进行加解密。

密钥类型介绍

在应用实际使用中总体的密钥分为主密钥(TMK),PIN工作密钥(TPK),MAC工作密钥 (TAK),指定功能的工作密钥只能做规定的工作,例如PIN加密工作密钥只能做PIN加密;MAC工作密钥只能做MAC计算。

1.主密钥(TMK)(Terminal Master Key)

由银行科技人员提供,可以采用手工输入(在安全环境下)或密钥母POS注入密码键盘,密码键盘将主密钥写入密钥保护芯片,此芯片具有开机程序自毁功能,能很好的保护银行主密钥的安全性,生产中应保持密码键盘主密钥与银行后台主密钥的一致性。

2. PIN工作密钥(TPK)(Terminal PIN encryption Key)

PIN工作密钥为POS机向银行签到时从银行后台获取,由于签到交易需要通讯,所以需要对PIN工作密钥进行加密传输(签到时银行返回POS的PIN工作密钥是密文),POS终端收到银行返回的报文后,对PIN工作密钥用主密钥进行解密,然后将PIN工作密钥存储在专用的密钥保护芯片里,此过程用密码键盘的专用芯片进行处理,此密钥同样具有开机自毁功能。此密钥专用于计算PIN_BLOCK对磁卡人输入的密码进行加密)。

3. MAC密钥(TAK)

同PIN工作密钥的处理方式一样,POS机向银行签到时从银行后台获取,由于签到交易需要通讯,所以需要对MAC密钥进行加密传输(签到时银行返回POS的MAC密钥是密文),POS终端收到银行返回的报文后,对MAC密钥用主密钥进行解密,然后将MAC密钥存储在专用的密钥保护芯片里,此过程用密码键盘的专用芯片进行处理,此密钥同样具有开机自毁功能。此密钥专用于计算MAC(对数据包生成校验数据)。

4.Key Checkvalue(KCV)

用于密钥传输过程中密钥密文正确性的校验。它是通过密钥的明文对一串数据进行DES/TDES加密的结果,一般是用结果的前4字节数据。

其它密钥

TEK — 终端报文密钥
ZEK — 区域报文密钥
CVK — 卡检验密钥
DSK — 数据存储密钥

使用场合

1.持卡人密码(PIN工作密钥使用场合)

用来确定持卡人的身份与信用卡相符,通常是6位数字(明文)。密码应该只有持卡人自己知道。密码要送到银行主机内核对,也就是说在密码的传送过程中不能被其他人获得密码明文,就算是银行人员也不能知道。因此在密码明文输入后就必须一直以密文的形式存在,就算是银行核对密码也应该核对密码密文。
在POS上使用信用卡,持卡人在密码键盘上输入密码明文,从密码键盘出来的数据就是加密过的密码密文数据,这样在密码传输过程中(密码键盘到POS,POS到银行主机)就算被截取了,也无法获知密码明文。

2.数据包校验(MAC密钥使用场合)

按照通讯双方约定的要求,对整个需传送的数据报文或者一些具体的域组成的字符串用MAC密钥,按照约定的要求进行运算,结果为8位的校验数据,放在发送报文的后面一起发送,如果参与运算的字符串被恶意修改,则运算的结果会不同,对方收到此数据包后,也需先按照相同的方式来对数据包进行运算,并对运算的结果与收到的结果进行比对,以判断此报文的合法性。只有合法的报文才能进行下一步的操作,否则认为是非法包,拒绝处理。

3.密钥校验(KCV使用场合)

1)母POS主密钥输入时,用输入密钥分量对8字节0x00做TDES计算。显示校验值取前4字节用于人工比对校验值.

2)在实际应用签到下载工作密钥时,后台下发的密钥密文后面会带有4字节checkvalue。终端在保存工作密钥时,需要将工作密钥密文用主密钥(与后台一致的主密钥)对其解密,得到工作密钥的明文,再对8字节0x00做加密算法,取结果的前四位与checkvalue 的值比较应该是一致的,如果不一致,这次下载工作密钥失败,终端应不能做正常业务。

工作密钥加解密方法

1.个人标识码(PIN)的加密和解密方法

请参考《销售点终端(POS)应用规范-2013》附录A

2.POS终端MAC的算法

请参考《销售点终端(POS)应用规范-2013》附录B

3.磁道信息加密算法

请参考《销售点终端(POS)应用规范-2013》附录E

参考:https://i.goto327.top/BBS/Detail.aspx?ID=752c0288-12f3-494c-a55a-65f026cd56d8

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2094843.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[图解]强化自测题解析-总纲(一)01 这属于什么工作流

1 00:00:00,680 --> 00:00:05,350 今天我们开始来解析一些强化自测题 1 00:00:01,100 --> 00:00:03,980 因为现在强化自测题本身 2 00:00:05,010 --> 00:00:06,720 我们出得已经比较多了 3 00:00:07,700 --> 00:00:12,570 自测题是用来测试我们的开发人员 4 00…

华为OD机试真题 - 字符串排序(Python/JS/C/C++ 2024 D卷 100分)

华为OD机试 2024E卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。 刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、…

QT教程-十六,QT中如何解析JSON

一,对json的初步认识 (这里我们主要说明最常用的,以一个宏观的概念来说一下),json是一种数据格式,作用就是便于传递信息,我们可以按其结构和对应关系,拿到我们想要的数据。其主要结构…

【专题】2024全球电商消费电子市场研究报告合集PDF分享(附原数据表)

原文链接:https://tecdat.cn/?p37552 在如今数字经济蓬勃发展的大环境下,电商行业正以前所未有的迅猛之势,对全球商业版图进行着深刻的重塑。据 Stocklytics 发布的有关全球电商市场价值及未来增长趋势的专项调查报告显示,2024…

团队比赛时如何给小组记分?

在团队比赛中,确保每个小组的成绩和排名准确无误是组织者的重要任务。云分组小程序提供了一个便捷的“项目记分”功能,帮助您轻松管理比赛记分过程。以下是如何使用该功能进行团队比赛记分的详细步骤。一、准备工作 1. 打开云分组小程序。 2. 点击“我的…

SQLi-LABS靶场51-55通过攻略

less-51 1.判断注入点 ?sort1 加上单引号会引起报错 2.判断闭合方式 ?sort1-- 可以闭合成功 3.查询数据库名 使用报错注入查询 ?sort1 and updatexml(1,concat(1,database()),1)-- 4.查询数据库的所有表 ?sort1 and updatexml(1,concat(1,(select group_concat(tab…

中锂天源:卡车锂电池的领跑者

随着新能源产业的飞速发展,卡车锂电池市场也呈现出旺盛的生命力。在我国锂电池产业中,中锂天源作为一家专注于新能源锂电池研发与制造的企业,成为了卡车锂电池领域的佼佼者。 中锂天源卡车锂电池采用先进的锂电池技术,具有安全性…

Linux:网络编程之TCP/IP模型,UDP协议

一、OSI模型七层结构 OSI(Open Systems Interconnection)模型,即开放系统互连参考模型,是一个概念性框架,用于促进全球通信。它定义了网络通信的七层结构,每一层都执行特定的功能,并且每一层都使…

25考研人数预计下降?这一届考研有哪些新趋势?

2025年考研时间线: 2024年9月:公共课及各院校考试大纲公布; 2024年9月下旬:预报名; 2024年10月:正式报名; 2024年11月:线上/线下确认; 2024年12月中下旬&#xff1a…

腾讯版GPT-4o平替方案:VITA

引言 庙内无僧风扫地,寺中少灯月照明。 小伙伴们好,我是微信公众号《小窗幽记机器学习》的小编:买黑神话的小男孩,紧接卖黑神话的小女孩的小作文,今天这篇小作文主要介绍腾讯开源(截至2024年8月25日尚未真正开源&…

【软考】数字签名

目录 1. 说明2. 过程2.1 数字签名过程2.2 数字加密过程 3. 公开密钥4. 报文加密5. 例题5.1 例题1 1. 说明 1.书信或文件是根据亲笔签名或印章来证明其真实性。2.在计算机网络中传送的文电用数字签名来解决问题。3.数字签名必须保证三点:接收者能够核实发送者对报文…

[C语言]第八节 数组一基础知识到高级技巧的全景探索

目录 8.1 数组概念的引入 8.2.⼀维数组的创建和初始化 8.2.1 数组的创建 8.2.2数组的初始化 8.2.3 数组的类型 8.3 ⼀维数组的使⽤ 8.3.1 数组下标 8.3.2 打印数组元素 8.3.3 输入数组元素 8.4 ⼀维数组在内存中的存储 8.5 sizeof计算数组元素个数 8.5.1 sizeof 关键…

第4章-05-用WebDriver下载页面csv到本地

🏆作者简介,黑夜开发者,CSDN领军人物,全栈领域优质创作者✌,CSDN博客专家,阿里云社区专家博主,2023年CSDN全站百大博主。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。 🏆本文已收录于专栏:Web爬虫入门与实战精讲,后续完整更新内容如下。 文章…

Java 入门指南:Java 并发编程 —— JMM Java内存模型

JMM(Java Memory Model,Java 内存模型)(抽象模型)是用来描述和控制多线程之间内存可见性、有序性、原子性、指令重排等问题的规范。 JMM 定义了一组规则,规定了在多线程环境下,线程在执行共享变…

尚品汇-MQ模块搭建测试、消息不丢失(重)(四十三)

目录: (1)消息不丢失 (2)消息确认 (3)消息确认业务封装 (4)封装发送端消息确认 (5)封装消息发送 (6)发送确认消息测试…

【C#】Visual Studio 2017开发C#,按F1键没有跳转到C#帮助文档,反而跳到了Qt的帮助文档

1. 原因 Visual Studio中安装了Qt的插件,所以将F1的跳转链接转到了Qt的帮助文档。 2. F1改回微软帮助文档方法 工具 - 选项 - Qt - General - Try Qt Documentation when F1 is pressed改为Flase

Web服务端通过SSE推送消息给浏览器客户端的实现方案(附详细代码和仓库地址)

目录 1、SSE(Server-Sent Events)简介2、SSE 的工作原理3、SSE 与客户端轮询的区别和优势比较区别优势 4、SSE简单实现(单机应用Demo)演示效果SSE-Demo仓库地址下面直接贴代码:前端实现:后端实现: 5、SSE简单实现(分布…

【pycharm】汉化及翻译插件

汉化插件 翻译插件 使用 选中右键翻译

一键解决LBP2900通信错误的问题(同样支持Win 11系统)

**目录** **前言****常见解决方式****方案一:端口排除****方案二:服务重启****方案三:注册表注入修复** 前言 佳能LBP2900向来是经典耐用款的打印机。想必各位可能遇到过,由于老旧会出现奇葩的问题,譬如 就算USB接口已…

【C++篇】~类和对象(上)

【C篇】 类和对象上 一类二实例化内存对齐原因(用空间换时间,提高效率) 一类 ‘类’class可以理解为C语言阶段的‘结构体’,它的用法与struct大差不差很多地方都相同,但是C毕竟是C,类的用法肯定比结构体的…