中国银联mPOS通用技术安全分析和规范解读
mPOS是近年出现并得到迅速发展的一种新型受理产品,不少机构和生产企业进行了各种形式的试点。
因为mPOS引入了手机、平板电脑等通用智能移动设备。并通过互联网进行信息传输。因此其安全特点与传统银行卡受理终端存在不同;同一时候,市场对mPOS含义认识不一,安全水平參差不齐。因而也对安全管理提出了更大的挑战。
本文基于银联终端工作组研究成果。结合最新公布的《中国银联mPOS通用技术安全要求》(下面简称《要求》)。对mPOS技术概念、安全目标和技术要求进行解读,并提出系统应用部署的安全方案演示样例供交流和參考。
一、银联mPOS技术概念
mPOS是一个总体概念,包含终端设备和相关应用。详细指。通过移动通讯设备(含所搭载的支付应用软件)进行商户收银操作。由外接专用受理终端完毕银联卡相关信息的採集和加密。通过移动通讯设备与后台处理系统交互完毕交易,这一过程涉及的前端专用软硬件设备总称即为mPOS。
上述定义体现了下面几个重要概念:
(一)“移动”设备
“mPOS”这一名称最早在境外流行,全称为“mobile POS”。增加“mobile”,体现了该类产品的“移动”特征:一是体现“移动通讯设备”对银行卡支付受理的參与;二是体现专用受理终端亦是移动的、便携的。
可是。mPOS在境内市场不等同于中文直译的“移动POS”。因为国内业界习惯于将无线POS、手持POS称为“移动POS”,因此在各类技术标准、业务规则、以及宣传材料中一般直接採用“mPOS”这一英文缩写,“移动POS”往往另有他指。
mpos分享到
(二)商户收单
银联mPOS是以商户收单为目的、以收单级别为安全目标的受理产品,这与境外有所差别。境外(比如美国)市场mPOS概念非常宽,包含了Square等手机外接刷卡器类产品、手机自身集成刷卡器类产品、以及银联定义中的产品。
境内市场对个人支付和商户收单进行了区分,设定了不同的业务、风险和技术要求,管理手段也存在较大的差异。Square等手机刷卡器、迷你付等互联网IC卡终端等均为个人支付类产品,由对应的技术标准和业务规则进行界定,不属于银联mPOS定义范围。
(三)mPOS是总体概念
标准和管理规则中的mPOS包含了硬件设备部分(专用的外接受理终端)和支付软件部分(移动通讯设备上的应用软件),单纯的外接设备不能等同为mPOS。其实整个系统前端还包含手机、平板电脑等移动通讯设备(技术上称其为“上位机”)。但因为上位机为通用电子产品,非金融定制,因此一般对其不进行要求和限制。
(四)高要求的外接终端
mPOS中的外接受理终端是专用的安全设备。须要完毕卡片读取、PIN输入、数据加解密、提示信息显示等操作。与手机刷卡器等个人支付终端相比較,具有更高的安全性,这也是其运用于商户收单、差别于个人支付设备的关键因素。
二、mPOS系统抽象架构
mPOS系统抽象架构分享到
mPOS系统抽象架构以及当中各组成部分的功能见上图说明。
以此为基础,mPOS在详细形态上具备灵活性。
在外接方式上,受理终端既能够通过Micro-USB等有线方式、也能够通过蓝牙等无线方式与手机等上位机连接。
MPOS
在移动通讯设备上,不限制设备类型——能够是智能手机、平板电脑等;不限制执行环境——主要指操作系统,能够是Android、iOS、Windows等。
在后台通讯方式上,既能够通过3G/4G无线连接,也能够通过WiFi连接。
三、mPOS技术安全分析
mPOS在对受理产品进行创新的同一时候也引入了一些潜在风险,特别是线下收单设备执行环境打破了传统的封闭格局,处于一个开放的环境中。easy受外部环境的威胁和攻击,主要呈现下面特点:
一方面。差别于传统全线路专线化的传输环境,mPOS及其相关应用和系统通过各种方式接入公共网络。使安全度较低的公网成为信息传输线路的组成部分,交易数据和设备管理信息受到截取、篡改、重放等攻击的可能性和easy性升高。
还有一方面,智能手机、平板电脑(PAD)等设备功能日益强大,使用体验不断提升,因此mPOS方案中将其作为受理终端的上位机使用。订单生成、交易上送甚至部分交易处理操作在上位机完毕。
因为智能终端通常搭载开放操作系统,同一时候接入公网,加之系统破解、获取root权限等用户现象的存在,易被木马、病毒等攻击,上位机设备本身的安全难以保障,对账户数据和支付信息的保密性、真实性、完整性等均提出了挑战。
四、安全目标和技术要求
(一)安全目标
安全目标是产品设计、生产、使用、维护的基本技术安全原则。因为受现有技术条件、认识水平和研究能力约束,详细的技术要求存在未能全然覆盖和掌控安全点的可能,但安全目标为各參与方提供了基本框架、指出了工作方向。mPOS技术安全目标包含下面四个方面:
一是应保证账户信息安全。对磁道信息、PIN、卡片验证码、卡片有效期等敏感信息,以及涉及的私有密钥和证书,进行有效保护。
二是应保证其它关键交易信息安全。
交易金额、交易类型、货币类型、商户号、终端号、终端硬件序列号、交易流水号等表征交易的关键信息。在处理和传输过程中应不被篡改。
三是保证交易的真实性。对交易报文的来源进行鉴别,保证交易真实有效,防止信息伪造和重放攻击。
四是应具有安全提示。
向操作人(包含持卡人和收银员,重点是持卡人)提供获悉真实交易信息、推断交易正常与否、指示下一步操作的有效參考途径。
(二)技术安全要求
标准对mPOS的要求分为基本要求和叠加要求两部分,均属于通用技术要求范围。对详细实现方案不进行限制。
1、基本要求
依据原有标准。为mPOS的主要组成部分设置基础和前提性的要求,主要包含:受理终端应首先满足《PIN输入设备安全规范》要求;上位机软件应首先满足《支付应用软件安全规范》;后台处理系统应满足《银联卡收单机构账户信息安全管理标准》、《银联卡账户信息与交易数据安全管理规则》、《第三方机构接入银联技术安全要求》等要求。
2、叠加要求
在基本要求基础上,对各部分提出针对mPOS特点的叠加要求,详细项目不再赘述。仅对关键内容概括举比例如以下:
对于受理终端。应具有安全读取账户信息的功能(包含磁条卡和IC卡),对卡片数据进行有效保护;应能够显示交易类型、金额、结果等足够操作和推断的信息,并确保提示信息收到保护;设备固件、程序的下载和更新应具有合法性的验证机制;设备应保证“一机一密”要求的落实。并建议在交易过程中实现“一次一密”密钥机制;应有设备签到机制。并向后台处理系统上送设备序列号。同一时候具有对后台系统合法性的验证能力;对外提供的加密功能进行限制,对外提供MAC校验功能需进行关键域校验或强制填充;传输协议和接口进行安全保护;私有密钥和证书进行安全保护;具备抗重放机制等。
对于上位机(支付应用软件)。要求上送上位机唯一特征码作为參考信息;与后台系统之间採用安全协议进行传输数据;具实用户訪问控制;建议上送地理位置信息。对于后台处理系统,要求对受理终端进行合法性验证,并与受理终端配合实现防交易重放的功能。
3、其它方面
mPOS的前端核心安全主要由受理终端实现。由支付应用软件和后台处理系统配合。但受理终端主要提供设备安全,总体上必须由实际部署的应用流程和安全机制给予有效支撑。因此,在支付应用软件的认证过程中,要求提交详细的总体设计方案(包含受理终端至后台处理系统的交互全流程和关键操作)供初步评估。
五、国外标准情况
EMVCo在2013年10月成立mPOS工作组,负责研制技术白皮书,银联參与了研制。
EMVCo希望通过白皮书来总体性地显示全部可能的mPOS形态和方案思路,但临时不做技术标准及认证上的强制要求,其实临时放开了对mPOS的限制。
PCI是国际支付卡安全标准组织。提供境外银行卡产品的安全标准和认证服务。PCI已和EMVCo联合开展mPOS安全技术的研究,但尚未有针对性标准。
总体上,眼下境外并没有针对mPOS的完整技术规范。银联公布的mPOS技术安全要求及配套认证是该领域首个标准化服务。
六、其它实施建议
(一)处理流程
支付安全是总体性、系统性课题。在mPOS这类创新产品上显得尤为突出。软硬件设备自身的安全不过当中一个方面。处理流程的设计和实施效果将直接影响总体安全性。
(二)交易组包
交易组包是处理流程中的关键问题。
建议支付核心信息的报文组包和加密保护在受理终端完毕。
在现有条件下,不建议在上位机组包;如因业务须要确实需进行此类部署。收单机构应充分评估其风险,设计强化的安全机制和配套的业务风险管理机制。并慎重应用。如后台处理系统实现报文组包等交易处理逻辑,应强制实现受理终端与后台处理系统建立传输数据的安全通道。并制定对应的密钥和信息交互安全机制;此外,因为该模式对通讯稳定性有较高要求,实际部署效果未必理想。
(三)后台系统安全
建议加强账户信息和系统技术安全的设计和管理,使之有效抵御网络攻击。防止非法终端对系统影响,及时处理异常。
(四)參考实践方案
标准工作组针对mPOS设计了一些技术安全解决方式演示样例,以“资料性附录”的形式,对《要求》提供适当补充,为受理终端、上位机支付应用软件、后台处理系统的设计和开发提供技术參考,不作为强制要求。
中国银联mPOS通用技术安全分析和规范解读的更多相关文章
- Python数据预处理:机器学习、人工智能通用技术(1)
Python数据预处理:机器学习.人工智能通用技术 白宁超 2018年12月24日17:28:26 摘要:大数据技术与我们日常生活越来越紧密,要做大数据,首要解决数据问题.原始数据存在大量不完整.不 ...
- 无线网络中的MIMO与OFDM技术原理分析
无线网络中的MIMO与OFDM技术原理分析CNET中国·ZOL 07年08月14日 [原创] 作者: 中关村在线 张伟 从最早的红外线技术到目前被寄予重望的WIFI,无线技术的进步推动我们的网络一步步 ...
- seo伪原创技术原理分析,php实现伪原创示例
seo伪原创技术原理分析,php实现伪原创示例 现在seo伪原创一般采用分词引擎以及动态同义词库,模拟百度(baidu),谷歌(google)等中文切词进行伪原创,生成后的伪原创文章更准确更贴近百度和 ...
- [转载] 关于“淘宝应对"双11"的技术架构分析”
微博上一篇最新的关于“淘宝应对"双11"的技术架构分析”.数据产品的一个最大特点是数据的非实时写入.
- AIOps背景/所应具备技术能力分析(上)
本文篇幅较长,分为上,中,下,三个部分进行连载.内容分别为:AIOps 背景/所应具备技术能力分析(上),AIOps 常见的误解(中),挑战及建议(下). 前言 我大概是 5,6 年前开始接触 ITO ...
- 通用技术 mysql 亿级数据优化
通用技术 mysql 亿级数据优化 一定要正确设计索引 一定要避免SQL语句全表扫描,所以SQL一定要走索引(如:一切的 > < != 等等之类的写法都会导致全表扫描) 一定要避免 lim ...
- iOS之中国银联移动支付控件升级的问题
自从11月以来,如果用户安装了集成了中国银联手机支付SDK的app,那么在使用银联支付的时候,会发现,不能调用银联支付方式,并且弹出一个提示”银联手机支付已升级请更新客户端8100010”.如下图: ...
- Protocol Buffer技术详解(语言规范)
Protocol Buffer技术详解(语言规范) 该系列Blog的内容主体主要源自于Protocol Buffer的官方文档,而代码示例则抽取于当前正在开发的一个公司内部项目的Demo.这样做的目的 ...
- Atitit usrQBK1600 技术文档的规范标准化解决方案
Atitit usrQBK1600 技术文档的规范标准化解决方案 1.1. Keyword关键词..展关键词,横向拓展比较,纵向抽象细化拓展知识点1 1.2. 标题必须有高大上词汇,参考文章排行榜,1 ...
随机推荐
- phpStorm更新后配置svn无法使用
phpStorm迎来新的更新,结果之前配置的svn竟然无法使用啦,快捷键一类也没有作用.各种查找解决方案,最后找到解决方案.点击File找到Settings,找到Plugins这个部分,这个部分是管理 ...
- jmeter关联、下载文件、简单压测
关联 一.什么是关联 关联是请求与请求之间存在数据依赖关系,需要从上一个请求获取下一个请求需要回传回去的数据. 简单地说就是在测试过程中有些数据的值会经常发生变化,要获取并使用这些数据,把这个动态的信 ...
- 【洛谷4158/BZOJ1296】[SCOI2009]粉刷匠(动态规划)
题目:洛谷4158 分析: 这题一看就是动态规划. 可以看出,如果每个木条粉刷的次数是固定的,那么这些木条是互不干扰的,因此对于每个木条可以通过dp来求出把T次中的j次分配给这个木条时可以获得的最大正 ...
- ACM_二维数组的查找
二维数组的查找 Time Limit: 2000/1000ms (Java/Others) Problem Description: 给定一个n*m的二维数组,保证a[i][j] < a[i+1 ...
- Spring Web MVC核心架构
可以查看DispatherServlet中的源代码,就是doDispatch()方法!
- C/C++ Python的函数默认参数
发现C/C++ Python的函数可以使用默认参数,来减少传参时候的参数个数. 但是:这样的默认参数最好是不变对象! #include <stdio.h> #include <st ...
- webHttpBinding+wsHttpBinding+basicHttpBinding的区别 (转)
1. webHttpBinding (web AJAX/JSON)2. wsHttpBinding (ASP.NET client) 3. basicHttpBinding (Silverlight) ...
- 启用禁用USB接口
一个小工具,功能有启用禁用外网.USB接口,可由服务端socket长链接进行操控客户端从而达到实现前边的这些功能,这里贴上核心代码,先给上启用禁用USB接口吧,这个方法可随时启用禁用,之前用过一个改u ...
- Redux 基础概念
Redux is a predictable state container for JavaScript apps.,亦即 Redux 希望能提供一个可以预测的 state 管理容器,让开发者可以可 ...
- registerDataSetObserver:浅析Andorid ListView和Adapte
最近由于遇到将内容分部绑定到ListView里的需求,追踪源码之后对ListView和Adapter有了点肤浅的认识,在此与大家分享. 这里用到了观察者模式,在ListView的setAdapter里 ...