• 快捷搜索
  • 全站搜索

关注HCE:安全挑战及解决方案

2016-03-11 17:32:41作者:农业银行互联网金融推进办公室 吕芙蓉、软件开发中心 林发全编辑:金融咨询网
HCE技术为脱离SE硬件部署NFC应用提供了可行性,有利于加快NFC支付产业的发展速度。本文概述了HCE技术的特点,重点讨论了HCE备受争议的安全问题并深入分析现有解决方案。

何为HCE
  
  2013年10月,Google发布了全新的Android 4.4操作系统,其中提到了一种新的NFC实现技术——HCE(Host Card Emulation,主机卡模拟)。该技术提供了一种简单但是安全性稍差的NFC卡片模拟功能。
  
  移动支付的NFC技术标准包含三种模式:读卡器、点对点和卡模拟,为了加强安全性,卡模拟中使用了SE(Security Element,安全单元)技术。在移动设备中存在着一个叫做NFC CLF(也叫NFC控制器)的芯片,作为非接触通讯前端,它将从外部读写器接收到的命令转发到SE,然后由SE处理,并通过NFC CLF返回执行结果。在读卡器和点对点模式中,信息会被CLF路由到主机CPU中,而在卡模拟模式中,数据是被路由到SE模块,实现数据的鉴权和加解密(如图1所示)。

图片4.jpg
图1 具有硬件SE的NFC卡模拟模式

  而在安卓4.4系统中,HCE的出现改变了上述传统路由方式。卡模拟模式中的数据可以被路由到CPU中的HCE服务上,这就脱离了传统SE芯片载体的限制(如图2所示),由手机应用或云端服务器完成SE的功能,NFC终端的CLF将接收到的数据直接发送到手机应用,或是通过移动网络发送至云端服务器完成数据交互。

图片5.jpg
图2 HCE技术的卡模拟模式

  基于SE的NFC解决方案有三种,分别是NFC全终端方案、eNFC技术方案和NFC-SD技术方案,都需要借助硬件SE完成相应功能。安全模块SE的主要功能是实现应用和数据的安全存储,对NFC CLF与外部读写设备的通信数据进行加解密,确保了交易过程的安全性,SE是卡模拟的核心。
  
  三种方案中,NFC全终端方案是指将SE模块直接集成在手机中。eNFC方案是使用SIM/UIM卡作为SE的NFC技术方案,又被称为SWP(Single Wire Protocol,单线通信协议)方案或NFC—SIM方案,是用SIM/UIM卡存储用户支付账户、密钥等敏感数据并运行支付应用。手机中的NFC控制器通过SWP协议与SIM/UIM卡通信。NFC—SD方案是使用移动终端中的智能SD卡作为SE模块的NFC技术。与eNFC方案类似,智能SD卡与NFC CLF芯片之间也采用SWP协议连接,可实现卡模拟、读卡器和点对点通信三种工作模式,敏感数据存储在智能SD卡中。从产业关系看,在NFC应用的市场竞争中,谁控制了SE发行权就意味着控制了产业链的制高点。
  
  可以看出,NFC全终端产品的SE掌控权属于手机生产厂商;eNFC的控制权被移动运营商掌控,第三方SP要部署自己的服务必须与作为SE发行者的手机生产厂商或者移动运营商协商,而NFC应用产业链长、商务关系复杂、盈利方式模糊,造成了SP的谈判往往铩羽而归。尽管在采用NFC-SD方案时,SP可以自主控制SE,但目前的成本问题依然是限制其规模应用的一大障碍。
  
  银行、运营商、NFC手机生产商的SE争夺已经旷日持久。而HCE技术从根本上绕开了NFC对SE的硬件依赖,让业界看到了一种脱离SE部署NFC应用的希望。HCE直接冲击的是运营商的USIM移动支付以及手机厂商的NFC手机钱包产品。SP不必再租用第三方的SE密钥空间开展NFC应用,这势必带来NFC应用产业的重新布局。
  
HCE的安全性挑战与现有解决方案
  
  自HCE发布之日,其安全性一直备受关注。尽管其突破性地解决了NFC CLF与应用软件之间的数据传递通路问题,在功能上实现了NFC和SE模块之间的通信协议,解决了应用部署的复杂性问题。但是对于脱离SE进行数据处理和敏感信息存储,通常被认为具有较大安全隐患。比如应用本地软件模拟的方案就受到了很大争议,因为安卓系统用户可以对手机进行Root操作,用户可以获得全部存储在应用中的信息,包括支付凭证等敏感数据,这意味着手机应用尤其是涉及金融交易的敏感信息可能会被恶意软件获取。虽然从统计数据看,只有少数安卓终端进行了Root操作,但由于安卓手机目前已占智能手机市场份额的80%以上,这意味着数百万级的安卓手机是不安全的。
  
  目前业界对HCE关键数据的存储提出了两类方案,一是使用云端服务,将支付应用的敏感数据经存储或运算转移到云端;二是与本地设备中的安全存储模块结合,如可信执行环境(TEE)和各类安全芯片(SE),如图3所示。

图片6.jpg

   使用云端服务时,HCE将请求通过移动网络发送至云端,敏感信息的存储和处理都在云端服务器,安全性比直接应用安卓系统要高。此方案中的移动网络质量至关重要,网络覆盖和网络延时可能成为较大隐忧。如果限制移动支付交易时间在1秒内,云端方案则无法保证较高的交易响应体验,尤其是EMV和PBOC3.O标准对电子现金类交易的响应时间要求在500ms以内,如果借助移动网络完成激活SE、验证和执行等流程,其响应时间将远远超标。因此从交易时间约束的角度考虑,云端方案可能更适合于会员卡、优惠卡和电子票务等低价值的闭环支付领域。此外,SE的认证证书放在云端,HCE云端服务器安全一旦受到威胁,则可能引发系统性交易风险。
  
   在提升HCE云端安全性的方案中,Token(令牌化)技术被寄予厚望。笔者以Apple Pay中的Token技术说明相关原理。Token应用是以令牌替代PAN(主账号),令牌格式基本与现有PAN格式相同,可以在传递PAN的地方使用令牌,令牌交换机制同现有支付行业的报文格式及业务流程基本兼容。
  
   Token机制中引入了新角色:令牌服务提供商(TSP,Token Service Provider)和令牌请求者(Token Requester),如表1所示。其中令牌请求者是发起请求将用户PAN映射为令牌的实体,TSP则是提供此项映射服务的实体。TSP根据令牌请求者提供的PAN生成Token后,将Token作为PAN的替代值流转在支付的各个环节,在支付流程中,独一无二的PAN只在Token SP、转接方、发卡方间传递,由于三者通过专线连接且彼此互信,当Token被检测到有风险或到期时,将再次生成新Token替代,这将大幅降低支付过程中PAN泄漏的可能,极大提升PAN的安全性。

图片7.jpg

 1 2 下一页 尾页

扫码即可手机
阅读转发此文

本文评论

相关文章