NFC近距离无线技术具有快捷、易用、安全等特性,其中安全是支付行业最关心的特性。

众所周知传统磁条银行卡的账号信息,是记录在磁条中,当进行刷卡交易时,POS机将交易金额,银行卡中的账号信息以及用户输入的账号密码,一起提交到银行服务器进行验证,当验证通过后即在银行后台完所扣款,然后返回交易结果。

由于磁条的易读取及静态特性,很容易被直接复制,制造出账号信息完全相同的两张卡,这样用户在银行卡未离开身边的情况下被盗刷。

使用NFC技术时,NFC芯片可与POS机进行动态的双向认证。每次交易的数据都是动态生成的,而且账号信息等是通过加密存放,无法直接读取。这样解决了几个问题:

1,NFC中的信息并非静态存放,破解者无法通过直接读取的方式来复制。

2,获取账号信息需要与POS机双向认证,非法设备不具有这些认证密钥,无法获取账号信息。

3,每次交易都由NFC芯片内的随机数发生器产生临时密钥,通信数据当次有效,所以即使捕捉NFC交互数据也无法复制交易。也无法简单篡改金额来伪造交易。

所以,NFC的安全性并不在于看不见交易数据,而是由于NFC为智能卡带来了能量,使得整个交易过程得以动态产生,无法通过简单的读取来复制银行卡,最终达到安全的目的。

下面以Mifare的认证过程加以说明:

1,Mifare卡B发出一个随机数Rb;

2,读卡器A产生一个随机数Ra,并将Rb一起加密后返回TokenAB给卡片;

3,卡片收到TokenAB后,译码并验证ToakeAB中的随机数Rb是否与步骤1中的相同。如不相同则认证失败;

4,卡片B将刚才的Ra加密后发给读卡器一个值TokenBA;

5, 读卡器A收到后,译码并验证TokenBA中的随机数是否和步骤2中的Ra中的相同。如相同则双向认证成功。

当卡片和读卡器有相同密钥的情况下,可以通过上述五个步骤的认证。而密钥在认证过程中并未被明文传输,所以安全性大为提高。

上述只是从卡复制的角度上阐述了NFC卡片的安全性,在支付过程中,还需要有用户密码这个方式来确保交易的安全。

NFC的安全性的更多相关文章

  1. 简单谈谈NFC(转载自-tlex/pku_android)

    NFC是Near Field Communication缩写,又称近距离无线通信,是一种短距离的高频无线通信技术,允许电子设备之间进行非接触式点对点数据传输(在十厘米内)交换数据.这个技术由免接触式射 ...

  2. [Android L]SEAndroid增强Androd安全性背景概要及带来的影响

    1  SEAndroid背景   Android对于操作系统安全性方面的增强一直沿用Linux内核所提供的MAC强制访问控制套件SELinux,对权限进行了更为深度的管理,有效地控制着进程对资源的访问 ...

  3. Android NFC开发概述

    NFC手机相比普通手机来说,有以下3个附加功能:  1.可以当成POS机来用,也就是“读取”模式   2.可以当成一张卡来刷,也就是NFC技术最核心的移动支付功能  3.可以像蓝牙.Wi-Fi一样做点 ...

  4. 解惑:NFC手机如何轻松读取银行卡信息?

    自支付宝钱包8.0推出了NFC新功能,只要将支持NFC功能的手机靠近公交卡.银行卡等带有芯片的IC卡上,可迅速读取卡内余额.卡的信息,还可以给卡进行充值,非常贴心实用. 但是很多网友表示担忧,要是别人 ...

  5. 手机NFC通信的安全车钥匙

    SmartKeys for Cyber-Cars:Secure Smartphone-based NFC-enabled Car Immobicizer 手机NFC通信的安全车钥匙 1概述 如今,智能 ...

  6. Android NFC标签 开发深度解析 触碰的艺术

    有几天没有更新博客了,不过本篇却准备了许久,希望能带给每一位开发者最简单高效的学习方式.废话到此为止,下面开始正文. NFC(Near Field Communication,近场通信)是一种数据传输 ...

  7. NFC手机

    NFC手机 NFC手机内置NFC芯片,比原先仅作为标签使用的RFID更增加了数据双向传送的功能,这个进步使得其更加适合用于电子货币支付:特别是RFID所不能实现的,相互认证和动态加密以及一次性钥匙(O ...

  8. NFC简介

    NFC简介 NFC是Near Field Communication缩写,即近距离无线通讯技术.由飞利浦和索尼公司共同开发的NFC是一种非接触式识别和互联技术,可以在移动设备.消费类电子产品.PC 和 ...

  9. 龙杰ACR122S NFC读卡器

    龙杰智能卡有限公司(ACS,龙杰智能卡控股有限公司之全资附属公司,香港联交所上市编号:8210)创立于1995年,是亚太地区第一大.全球三大智能卡读写器供应商之一.ACS被<福布斯亚洲>杂 ...

随机推荐

  1. sql server 表连接

    本文主要列举两张和三张表来讲述多表连接查询. 新建两张表: 表1:student 截图如下: SQL多表连接查询(详细实例)_新客网 表2:course 截图如下: SQL多表连接查询(详细实例)_新 ...

  2. javascript之数组

    一.定义数组. 定义数组有两个方法: 1.var arr1 = []; //定义一个空数组 2.var arr2 = [1,2,3,"str1","str2"] ...

  3. OpenCV在ARM上的移植

    OpenCV在ARM上的移植 与X86 Linux类似,请参考:Linux 下编译安装OpenCV 本文在此基础上进行进一步操作. 网络上很多移植编译的方法比较老,多数针对OpenCV 1.0,而且方 ...

  4. Linux系统编程(18)——正则表达式实用举例

    匹配特定字符串: 只能输入长度为3的字符:"^.{3}$". 只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$". 只能输入由26个大写英文字母组 ...

  5. House Robber 解答

    Question You are a professional robber planning to rob houses along a street. Each house has a certa ...

  6. 关于 MVC 字段 默认值

    以下是网友的疑问: ================================================================ Html.EditorFor(model=> ...

  7. IOS百度地图语音导航

    VoiceNavigationViewController.m * 客户端需安装百度导航地图 #import "VoiceNavigationViewController.h" # ...

  8. IOS 添加到通讯录

    addressBookHelper.h #import <Foundation/Foundation.h> enum { ABHelperCanNotConncetToAddressBoo ...

  9. 3 x 8 = 23(火了)

    颜回爱学习,德性又好,是孔子的得意门生.一天,颜回去街上办事,见一家布店前围满了人.他上前一问,才知道是买布的跟卖布的发生了纠纷. 只听买布的大嚷大叫:「三八就是二十三,你为啥要我二十四个钱?」颜回走 ...

  10. Android日语输入法Simeji使用示例

    MainActivity如下: package cn.testsimeji; import android.os.Bundle; import android.view.View; import an ...