12. PCI DSS

2024-09-05 04:28
文章标签 pci dss

本文主要是介绍12. PCI DSS,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

支付行业,如果明文的卡信息通过了你的后台,那后台必须有PCI DSS的安全认证。这个认证是做支付系统的敲门砖,如果没有这个证书,基本到哪里都行不通。具体的认证过程和项目可以查看PCI 官网介绍。本篇着重在技术层面讲解需要满足的要求。

敏感数据

卡片交易时,敏感数据分2类,一类是可存储的数据,一类是不可存储的

可存储数据

  1. 卡号(PAN)
  2. 有效期

卡号需要加密存储,有效期可以明文存储

不可存储数据

  1. CVV
  2. PIN
  3. 磁道数据(Track1/2/3)

这3个卡片数据属于超级敏感数据,只要是落盘了,就属于违规。日志都不可以打印的那种。

数据保护

数据保护需要特别注意一下程序日志,第三方组件。

日志是每个代码都必须有的东西,需要特别注意不要把敏感数据打印出来。

第三方组件常见容易出问题的是 负载均衡(LB),API Gateway,Redis这些。

可存储数据

对于卡号来说,需要加密,加密存储在数据库时,有以下几种方法

HSM加密: 这种加密无疑是最保险的方式,但是也是最不灵活的方式,费用也是比较昂贵的

软件加密: 加密强度必须强于或等于AES128,这里假设叫K1,而且加密的秘钥K1还需要被再次加密存储,加密K1的秘钥强度需要高于或等于K1的强度,这里叫K2。K1和K2需要分开地方存储,不可以放在同一个位置。并且定期需要更新滚动K1和K2。推荐K1一个季度更新一次,K2一年一次。

加密时,建议“加盐”(随机数),增加破解难度。

不可以存储数据

这个没什么好说的,用完立刻删除掉,数据停留系统的时间越短越好。

通信协议

Http和TCP是比较常见的通信方式,必须增加SSL安全加密,并且SSL最低版本需要支持TLS1.2,低于这个版本的协议需要禁用。

审核范围

以公共云服务来说,VPC为一个最小范围,只要卡数据出现在这个域内,不管有没有落盘,只要经过了这个VPC,那这个VPC下面的所有东西,都是审核范围。

但是,有点点规模的公司,其实,都是有很多服务,很庞大复杂的系统,多个开发团队,很大概率,同一个VPC下面会存在很多很多服务。如果全部纳入审查范围,那将会是极其极其头疼的事情,审核范围扩大,人员层面很难让其他团队配合审查,大部分还是生产环境的服务,要大量改造也是个很吓人的工作量。第三方评估实验室也会因为审核范围变大,费用也变高。就算过了,后续如何保证其他团队的开发每个人都能遵守安全规范呢。

所以,最重要的就是压缩审核范围,把卡数据压缩在一个最小的范围,然后把这个范围独立成一个VPC。那就只需要审核这个VPC内的服务就行了。

这篇关于12. PCI DSS的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1137936

相关文章

如何编写Linux PCI设备驱动器 之一

如何编写Linux PCI设备驱动器 之一 PCI寻址PCI驱动器使用的APIpci_register_driver()pci_driver结构pci_device_id结构 如何查找PCI设备存取PCI配置空间读配置空间APIs写配置空间APIswhere的常量值共用部分类型0类型1 PCI总线通过使用比ISA更高的时钟速率来实现更好的性能;它是时钟运行在 25 或 33 M

ssh登录服务器报错“no matching host key type found. Their offer: ssh-rsa,ssh-dss”解决方法

这个错误表明你尝试使用 ssh 连接到远程服务器时,客户端和服务器之间没有匹配的 host key 类型。具体来说,远程服务器提供了 ssh-rsa 和 ssh-dss 类型的 host key,但你的 SSH 客户端配置可能不再支持这些较旧的算法。最近的 OpenSSH 版本默认禁用了不够安全的算法,如 ssh-rsa 和 ssh-dss。 解决方法 临时启用 ssh-rsa: 你可以在

PCI Express 体系结构导读摘录(二)

系列文章目录 PCI Express 体系结构导读摘录(一) PCI Express 体系结构导读摘录(二) 文章目录 系列文章目录第Ⅱ篇  PCI Express 体系结构概述第 4 章  PCIe 总线概述4. 1  PCIe 总线的基础知识4. 1. 1  端到端的数据传递4. 1. 2  PCIe 总线使用的信号4. 1. 3  PCIe 总线的层次结构4. 1. 4

13. PCI PIN

PIN是啥? PIN就是我们刷卡时,输入的密码。银联卡基本都有,海外也开始慢慢普及,尤其是mastercard已经在一些国家和地区强制执行,新POS机如果不支持Online PIN已经不允许出新机器了。所以PIN显得格外重要。 PIN的重要性 上篇文章已经讲过,PIN是最敏感数据里面的一种,其实PIN是最敏感里面的最敏感,因为谁也不想自己的取款密码被泄露出去。带PIN的交易,发卡行一般都

《PCI Express体系结构导读》随记 —— 第II篇 第7章 PCIe总线的数据链路层与物理层(7)

接前一篇文章:《PCI Express体系结构导读》随记 —— 第II篇 第7章 PCIe总线的数据链路层与物理层(6) 7.1 数据链路层的组成结构 7.1.1 数据链路层的状态 3. DL_Active状态 当数据链路层处于DL_Active状态时,PCIe链路可以正常工作。此时数据链路层可以从事务层和物理层正常接收和发送TLP、并处理DLLP,此时数据链路

PCI Device Class Codes

目录 Class Code 0: Pre 2.0 Class Code 1: Mass Storage Controllers Class Code 2: Network Controllers Class Code 3: Display Controllers Class Code 4: Multimedia Devices Class Code 5: Memory Co

Linux源码阅读——PCI总线驱动代码(二)配置空间访问设置

目录 1.什么是配置空间 2.对配置空间的访问 3.PCI驱动中对配置空间的访问的实现 3.1 pci_direct_probe 3.2 pci_mmcfg_early_init 3.3 pci_direct_init 3.4 上述函数总结 3.5 pci_mmcfg_late_init 4.总结 1.什么是配置空间         PCI设备有三个相互独立的物理空间

驱动开发系列17 - PCI总线

一:概述         PCI(外设计算机互连)或PCIe总线是现代计算机的主要组成部分,了解它的工作原理对于理解许多Linux设备驱动程序非常重要。         关于PCI总线本身有很多好的信息(在维基百科和其他地方),而Linux内核中也有关于PCI处理子系统实际实现的文档。然而,这两种现有来源之间存在一个空白,本文希望填补这个空白。         虽然我在这里的重点是理解x86环境

第三十一篇:!pci of WinDbg

刚刚在看WinDbg在硬件调试方面有哪些扩展命令的时候,让我回想起一个工作中的实际事务。 在xHCI USB3.0/3.1 IP项目开发过程中,需要得到类似实际产品的PCIe配置空间信息,以作对比参考。 当时的做法是,将类似产品的xHCI host controller通过PCIe口接到SoC系统中, 通过编写ARM SoC的Bare metal代码来读取每一个产口的PCIe配置空间。

第二十七篇:Windows驱动中的PCI, DMA, ISR, DPC, ScatterGater, MapRegsiter, CommonBuffer, ConfigSpace

最近有些人问我PCI设备驱动的问题, 和他们交流过后, 我建议他们先看一看<<The Windows NT Device Driver Book>>这本书, 个人感觉, 这本书写得非常连贯流畅. PCI设备驱动基本包括了PCI的资源获取, 配置空间的读写, 中断的处理, 中断后半部在DPC中的处理. 同时, 也必须了解DMA, ScatterGater, MapRegister, Com