文档章节

Apple Pay之Payment Token技术浅析

吴鹏辉
 吴鹏辉
发布于 2014/10/10 17:07
字数 1648
阅读 597
收藏 4

一、Token体系简介

Apple Pay引入的Token体系中,除了传统电子支付参与方外,新增了2个参与方,如下图所示:

Token

Token的应用原理:Token SP根据Token Requestor提供的PAN(主帐号)生成Token后,将Token作为PAN的替代值流转在支付的各个环节,使得在支付流程中,独一无二的PAN只在Token SP、转接方、发卡方间传递,由于三者专线连接且彼此互信,且当Token被检测到风险或到期时,将再次生成新Token替代,从而大幅降低支付过程中PAN泄漏的可能性,极大地提高了PAN的安全性。

在Token体系中,流转的核心数据如下图所示:

token

Token在NFC终端近场支付的应用,可以浓缩为以下2幅流程图:

二、Token申请流程

Token申请流程图详解:

Token

1、 NFC终端传递PAN至Token Requestor;

2、 Token Requestor向Token SP发起Token申请,发送PAN;

3、 Token SP根据PAN,生成对应的Token并返回至Token Requestor,同时建立PAN至Token的映射并存储在Token库中,与发卡方共享此Token库;

4、 Token Requestor将返回的Token传递至NFC终端。

三、Token应用流程

Token应用流程图详解:

Token

1、 Token从NFC终端开始,依次传递至POS、收单方、转接方;

2、 转接方通过与Token SP的接口,发送Token至Token SP;

3、 Token SP对Token执行去令牌化操作,并将PAN传递至转接方;

4、 转接方将Token&PAN传递至发卡方,发卡方用Token库进行验证,验证通过后,再将PAN传递至转接方;

5、 验证后的Token从转接方开始,依次传递至收单方和POS,之后Token作为PAN的替代值继续后续的交易流程。

以上是Token的技术实现方案,可以看到,在交易过程中,PAN传递且仅传递在Token SP、发卡方和转接方三者之间。

  四、Q&A(干货分享)

这段时间和业内同行交流过程中,收集了一些有关Apple Pay系统中 Payment Token体系的各种疑惑,并对此作了些简略的解答,汇总如下:

1、 Q:Token的用途和目的?

A: 作为PAN的替代值,大幅度降低了在交易流程中PAN泄漏的安全隐患。

2、 Q: Token替代PAN,安全性如何得到提升?

A:Token替代PAN,使得PAN只在Token SP、转接方、发卡方间传递,而这三者理论上是互信的,且是专线连接,从而大幅度降低了在交易流程中PAN泄漏的安全隐患。

3、 Q:Token作为PAN的替代值,如何解决在传统交易流程中,也存在的与PAN类似的泄漏隐患?

A:当Token被检测到风险或到期时,再次生成新Token替代。

4、 Q:Token生成和验证完成后,后续的传统交易流程是否改变?

A: 仅就Apply Pay目前披露的信息而言,完成Token生成和验证后,Token将作为PAN的替代值被使用,不改变后续的传统交易流程。

5、 Q:Token体系中,谁能承担新引入的Token Requestor和Token SP角色?

A:可以是新玩家,也可以是传统交易流程中的老玩家,规范并没有强制定义谁去承担这两个角色,所以不同的应用场景,可能这两个角色的承担者不同。

a) 能获得用户PAN的实体是天然的Token Requestor,如支付宝钱包、各银行手银等;

b) 能得到发卡方授权,建立PAN至Token的映射的实体是Token SP,如转接方或发卡方等,其中转接方是Token SP最可能的承担者。

c) Token SP控制PAN至Token的映射这一核心数据,在Token系统中十分关键,而Token Requestor相对不重要。

6、 Q:Token在iPhone6中的存储位置?

A:规范中并未强制规定Token的存储位置,可选的有远程存储、SE、TEE等多种存储方式,仅就Apply Pay披露的信息而言,合理怀疑Token存储在iPhone6的eSE中。

7、 Q:Token体系在国内技术实现的难点在何处?

A:首先要建立Token Requestor和Token SP系统;其次,Token传递路径上的所有参与方(POS、收单方、转接方、发卡方)均需要按照规范进行相应的系统升级,以保证良好的互操作性和一致性。

8、 Q:Apple Pay方案中运营商似乎被边缘化了?

A:只要是eSE模式,运营商都可能被边缘和管道化。SE控制权的博弈过程中,移动终端厂商一步步积累了愈来愈深厚的技术和业务实力,运营商的优势将越来越小,合理预期运营商被边缘和管道化是大势所趋。

9、 Q:Apply Pay方案在国内是否能成功复制?

A:Apply Pay在NFC原有的产业链上又新增了Token Requestor和Token SP,成功复制Apply Pay需要两个前提,或者拥有庞大的NFC手机用户体量(掌控eSE),或者成为数量稀缺的Token SP(掌控PAN至Token的映射核心数据)。原先看好小米,可惜米4不带NFC。

最后,还有一段私货如鲠在喉,不吐不快。EMV Payment Tokenisation Specification的发布日期是2014/4,版本为V1.0,而9月发布的iPhone6在Apple Pay应用中为移动支付率先引入Token体系,从规范发布到体系应用的时间差如此短,合理怀疑苹果是此规范幕后的推动人之一;16日苹果加入GP组织,步步为营的策略,再次对苹果硬件+软件+服务的全系统整合能力深表敬畏。

孙子兵法云:善攻者动于九天之上;善战者无赫赫之功。诚如斯言!

参考资料:EMVCo_Payment_Tokenisation_Specification_Technica1_Framework_v1.0.pdf

链接:http://www.emvco.com/specifications.aspx?id=263

本文系移动支付从业者谢勇原创,如需转载,请注明出处,谢谢。


本文转载自:http://www.emvco.com/specifications.aspx?id=263

共有 人打赏支持
吴鹏辉
粉丝 11
博文 7
码字总数 897
作品 0
松江
程序员
私信 提问
Apple Pay 应用内支付流程分析

接入方式 Apple Pay接入方式的选择上有两种。一种是使用 CUP SDK(CUP 就是 China Union Pay)等第三方的 SDK。另外一种就是使用 iOS 的 PassKit Framework 和银联的接口来接入。本质上来说,...

背锅侠
2016/02/23
79
0
Apple Pay编程指导

1.About Apple Pay Apple Pay是一种移动支付技术,让使用者把它们对真实的物品和服务的支付信息以一种方便和安全的方式给你。 对于在app中给出的数字物品和服务,可查看In-App Purchase Pro...

Chars-D
2016/02/27
91
0
Apple Pay--iOS开发

一、什么是Apple Pay?   1. 概念     Apple Pay,简单来说, 就是一种移动支付方式。通过Touch ID/ Passcode,用户可使用存储在iPhone 6, 6p等设备上的信用卡和借记卡支付证书来授权支付...

秦无炎
2016/07/11
5
0
Apple Pay-swift篇

这是上一篇的OC版 有一些文字说明,Merchant ID 证书配置 可以参照 补充一点证书方面的东西 签发机构在钥匙串中是以Apple Worldwide Developer Relations开头的证书Apple Worldwide Develop...

w_sen
2016/07/07
57
0
Apple Pay在APP应用内的集成

Apple Pay接入iOS端最主要的工作就是申请授权和SDK的集成,只要 授权的开发者才能接入sdk,apple通过授权team id的方式对开发者授权 最近在做这个东西,发现网上相关资料少的很,整理出来供准...

Marginx
2016/11/07
442
10

没有更多内容

加载失败,请刷新页面

加载更多

rabbitmq学习

使用docker安装rabbit docker run -d --hostname my-rabbit --name rabbit -p 8080:15672 rabbitmq:management--hostname:指定容器主机名称--name:指定容器名称-p:将mq端口号映射到本地...

元谷
19分钟前
0
0
想知道谁是你的最佳用户?基于Redis实现排行榜周期榜与最近N期榜

本文由云+社区发表 前言 业务已基于Redis实现了一个高可用的排行榜服务,长期以来相安无事。有一天,产品说:我要一个按周排名的排行榜,以反映本周内用户的活跃情况。于是周榜(按周重置更新...

腾讯云加社区
21分钟前
1
0
函数计算性能福利篇(二) —— 业务冷启动优化

继前一篇《函数计算性能福利篇——系统冷启动优化》,我们再来看看近期函数计算推出的 Initializer 功能之后,带来的一波高能性能优化成果。 背景 函数计算是一个事件驱动的全托管 serverle...

阿里云官方博客
27分钟前
1
0
开源版本说明

1527
28分钟前
2
0
Mysql经验-------持续更新

单表行数超过 500 万行或者单表容量超过 2GB,才推荐进行分库分表。 说明:如果预计三年后的数据量根本达不到这个级别,请不要在创建表时就分库分表。

DoLo-lty
31分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部