pos机怎么用

在于USIM卡内身份认证的手机支付_手机pos支付实例

  手机支付,包括NFC、二维码扫码等极为便利,但缺陷是易受木马、黑客攻击,形成用户信息被盗和资金损失。众所周知,USIM卡平安性十分高,如能在USIM卡内完成对用户身份的运算,同时又能将手机作POS机用,那么在加强手机支付平安性的同时,将极大地降低业务的运营本钱。就现状而言,非受权用户很难穿过手机操作系统及USIM卡密保体系访问卡内文件,因而如何能从手机操作系统访问USIM卡文件,以完成在卡内对用户身份鉴权运算是讨论的重点。

  1、研讨的办法及结论

  本文基于3GPP及ISO/IEC 7816和GSM11.11标准展开阐述,对植入Java USIM卡内的Applet应用再发掘,完成USIM卡内对用户身份鉴权运算的目的。手机APP将云端效劳器下发的用户身份认证数据转换为手机号码,然后将这些号码存入卡内通讯录,在卡内定制的运转环境(JCRE)"指令分发器"触发Applet应用对这些数据运算和加密,最后手机APP再将加密数据读出并发往云效劳器停止身份鉴权。本办法完成了第三方数据在手机与USIM间双向传送,赋予了USIM卡金融级U-key的平安特质。但需特别留意的是,木马/黑客也能够应用GSM11.11指令对卡内敏感数据窜改、伪造或交换,为此,卡内设计了一套特殊的计时进程、限时认证和数据加密机制。本文的密保系统采用对称加密算法体系,其既不需求数字证书及认证中心,也不需公钥私钥根底设备(PKI),且较Diffie-Hellman等提出的公开密钥密码体系运算速度进步近千倍。

  2、密码学相关学问

  2.1 哈希函数及其特性

  (1)单向性:对任何散列码h,找到满足H(x)=h的x在计算上是不可行的。

  (2)抗弱碰撞性:对任何音讯x,找到满足y≠x且H(x)=H(y)的y在计算上是不可行的。

  (3)抗强碰撞性:找到任何H(x)=H(y)的偶对(x,y)在计算上是不可行的。

  系统采用美国国度平安局发布的平安散列函数SHA-2,算法的输入是最大长度小于2128 bit的音讯,输出是512 bit的散列值,如图1所示。

  图2的F模块对以1024 bit分组的音讯序列停止80轮运算,每一轮都把512 bit缓冲区中分别为64 bit的ABCDEFGH值作为输入,第一轮运算缓冲区是中间的哈希值Hτ-1,每一轮的64 bit值Wt(0≤t≤79)由当前被处置的1024 bit音讯分组Yτ导出。每一轮还将运用常数Kt(0≤t≤79),这些常数从前面80个素数取3次根并取小数局部的前64 bit.第80轮的输出和第一轮的输入Hτ-1相加产生Hτ。缓冲区里的8个字和Hτ-1里的相应字独立停止模264的加法运算。

  2.2 带密钥的音讯认证码(HMAC)

  哈希函数不具备密钥特性,为此需把一个密钥和报文一同放进哈希函数中运算,其输出的数据块为HMAC.

  2.3 高级加密算法(AES)

  AES是迭代式的块加密构造,属对称加密算法体系,其算法体系触及字节替代、行移位、列混杂、轮密钥加、轮密钥扩展操作,经过字节代换变换表和字节逆代换逆变换表运算完成对数据的加/解密。

SHA-2运算原理图

图1 SHA-2运算原理图

SHA-2每步运算流程

图2 SHA-2每步运算流程

  3、前期相关工作

  文中所述的云端效劳器及USIM卡预植入同样的ID号、用户身份认证数据和加密算法及鉴权、认证流程等关键数据,实体USIM卡经过销售渠道发放给用户。用户首先需在云端效劳器完成注册,设置与云效劳器的接入码以及绑定银行卡号。

  4、系统构架及双向鉴权

  文中所述系统至少包括云端效劳器、收付款终端、网联平台及金融功用效劳器等要素成员,本文仅对云端效劳器和收付款终端的功用体停止构建及阐述。

  4.1 系统构架

  云端效劳器一方面与收款终端交互数据,另一方面还与行业应用传送信息,其既对买卖用户鉴权,又对行业应用传达指令。收付款用户经过其手机提交近场支付申请,在云效劳器完成身份鉴权和买卖数据的处置。网联平台是会聚及监控买卖数据流的现有平台,其链接相应的金融效劳器,如图3所示。用户需改换Java USIM卡才具备系统的手机支付功用。当手机用作收款POS时,其扫码支付手机经蓝牙与支付手机交互身份认证数据,它的作用是充任向云端效劳器发送双方身份信息和买卖数据的中转站。支付手机无需上网。

云端效劳器与买卖成员组成网图

图3 云端效劳器与买卖成员组成网图

  4.2 关于双向鉴权

  双向鉴权指收款终端对云端效劳器身份认证,以及云效劳器对买卖用户的身份认证。

  4.2.1 云端效劳器对买卖用户鉴权

  云端效劳器既是用户身份的集中鉴权平台,又是衔接用户终端和第三方应用平台的枢纽,它需对发起买卖申请的终端停止鉴权。此环节,为缩短买卖时间,系统设定对用户身份的鉴权放在买卖的最后环节停止,即在云效劳器收到全部的买卖数据后才一同对收付款用户身份停止鉴权,而没有设置单独的鉴权环节。若用户身份经过鉴权,则再对买卖数据停止相应的处置。

  买卖初始,收款用户首先点击APP"收款"图标启动收款模块并向云效劳器申请买卖,同时将USIM卡ID1和APP生成的随机码rand‘发往云效劳器,并请求效劳器反应鉴权信息。云效劳器将该ID1对应的身份密钥Ki与该随机码rand’经鉴权算法HMAC运算得到鉴权响应Sers.云效劳器生成随机码rand,以预植入的与卡片ID1对应的加密密钥K1经过加密算法AES,对rand加密后与鉴权响应Sres一同发给收款手机。云效劳器生成的随机码rand贯串收付款终端及买卖的一直,其既是云效劳器对收付款用户身份鉴权的灵魂数据,又是对买卖数据加密解密的至尊法宝,对用户身份的鉴权表现在收付款终端对该随机码rand的鉴权运算响应值上,假如鉴权响应值错,则在买卖的最后环节不能经过对用户的身份鉴权,相应地终止买卖。

  4.2.2 收款手机及对云效劳器鉴权

  收款手机在向云端效劳器申请买卖时,也需对云效劳器停止鉴权,如上所述,系统设定收款手机先执行对云效劳器鉴权。

  收款手机在向云效劳器发起买卖申请的同时,还将所述随机码rand‘以手机号码格式存入卡内通讯录,卡内JCRE定制的"指令分发器"激活Applet应用,Applet将随机码rand’同卡内用户身份密钥Ki经算法HMAC算得的鉴权响应Sres‘存于Applet内。收款手机将云端效劳器反应的鉴权信息以电话号码格式存入卡内通讯录(包括加密的rand),开启摄像头。被激活的卡内Applet比对Sres’与Sres,若相同,则云效劳器经过身份鉴权,其后Applet用预植入卡内的加/解密钥K1和加密算法AES对效劳器反应的加密信息解码,将解码所得的rand与其身份密钥Ki异域得另一加/解密钥K1',将K1‘存于Applet,rand存于卡内短信后开启蓝牙。若不相同,则终止买卖流程。

  5、手机近场支付实例

  本文设计的近场支付系统是经过手机扫码并以蓝牙交互信息来完成支付。用户手机为支付手机,商户手机为收款手机,其充任POS机。支付手机并不需求上网,由收款手机(手机POS)将一切信息上传云效劳器。

  5.1 支付手机及相关随机码

  买卖开端,支付用户点击APP的"支付"图标启动支付模块,随后屏幕显现二维码信息(包括支付手机APP随机生成的本次近场通讯加/解密钥、随机生成的本次蓝牙衔接码以及支付用户USIM卡的ID2),开启蓝牙设备。收款手机扫码后便与支付手机树立蓝牙衔接,接纳收款手机APP经过蓝牙转发经过近场通讯密钥加密随机码rand给支付手机,支付手机APP以同样的近场通讯密钥对其解码,将解码所得的rand以手机号码格式存入卡通讯录,卡内定制的"指令分发器"侦听并激活Applet,其将rand与卡内用户身份密钥Ki′经算法HMAC运算得鉴权响应Sres",其后将rand再与用户身份密钥Ki’异域得另一加/解密钥K2',存K2‘于Applet内,存Sres"于卡内短信。支付手机APP读短信并挑选出数据Sres",以近场通讯密钥对Sres"加密后经过蓝牙发往收款手机。支付手机APP接纳并解码收款手机APP以蓝牙发送的、经近场通讯密钥加密的支付金额确认信息,若支付用户确认支付金额,则支付手机将支付金额以电话号码格式存入卡内通讯录。卡内被激活的Applet将该金额与用户身份密钥Ki’经算法HMAC算得含有支付用户签名的数字摘要2,即"数字签名2".Applet用K2‘经过AES加密算法对"数字签名2"、支付金额加密构成"加密信封2",存其于卡内短信。支付手机APP读卡内短信挑选"加密信封2",经近场通讯密钥加密后经过蓝牙发给收款手机。按相关规则,若买卖金额超500元需输入银行卡支付密码,则该"数字签名2"和买卖金额还需银行卡和其支付密码变换值并连同用户与效劳器的接入码一并加密构成"加密信封2",然后以该近场通讯密钥加密后经过蓝牙发给收款手机。期间,若支付用户取消买卖或不确认支付金额,则终止流程。

  5.2 收款手机及扫码蓝牙衔接

  收款手机扫描支付手机二维码后便与支付手机树立一对一蓝牙衔接,该衔接一旦树立收款手机便将扫描获取的支付用户USIM卡ID2发往云效劳器。此时效劳器便将收款用户与支付用户的卡片ID1和ID2独一关联,以防左近的黑客用其ID抢先关联支付用户ID2,切断其想偷偷与支付手机蓝牙衔接而施行盗款的念想。随后收款手机APP读取卡内短信并挑选出所述随机码rand,并以近场通讯密钥加密后经过蓝牙传给支付手机。此处获取rand的读短信事情被卡内Applet侦听到,由此触发特别设计的Applet的计时进程,以能框定从读取该次短信事情到支付手机返回鉴权响应Sres"的时间,思索到USIM卡的数据吞吐率、卡片CPU处置速度以及经过网络远程盗取数据的往复时间,系统设定该往复时间5~10 ms.在支付手机的鉴权响应Sres"返回收款手机后,一方面收款手机将该鉴权响应Sres"存于卡内通讯录指定地址,当Applet在计时进程完毕后即刻读取存于卡内通讯录指定地址的数据,即鉴权响应Sres";另一方面收款手机屏幕弹出收款金额框,在收款用户输入收款金额后,收款手机将该金额以电话号码格式存入卡内通讯录,卡内被激活的Applet将该输入金额值和收款用户身份密钥Ki经算法HMAC运算得到含有收款用户签名的数字摘要1,即"数字签名1".其后,Applet用所述加/解密钥K1’经加密算法AES对"数字签名1"及该金额和鉴权响应Sres"一道加密构成"加密信封1",存卡内短信。与此同时,收款手机还将支付金额以近场通讯密钥加密后经过蓝牙发给收款手机。收款手机读卡内短信并挑选出"加密信封1",随后将"加密信封1"及"加密信封2"并附上USIM卡标识ID1后一同发往云效劳器停止身份鉴权及买卖数据的解码处置。此处,鉴权响应Sres"的作用,一方面用于云效劳器鉴权支付用户身份,另一方面根绝智能木马或黑客经过挪动网络在用户手机上以GSM11.11指令远程调用USIM卡接口并激活卡内Applet.如Applet在计时进程完毕时而鉴权响应Sres"仍没存入卡通讯录指定地址,那么Applet读取该指定地址的数据便为"空",或为黑客干扰的错误数据,则云效劳器直接断定本次买卖无效,终止流程。

  5.3 云端效劳器相关流程

  云端效劳器是集中认证平台,其根据ID1、ID2对收款手机(手机POS)上传的买卖数据停止反向运算,先对收/付款用户停止身份鉴权运算,若均经过身份认证,则在其对银行卡图标作转换后与银行效劳器交互信息,并与金融机构交互执行扣款流程;若任一用户没经过鉴权,则终止买卖。如图4所示。

手机近场支付身份鉴权流程图

图4 手机近场支付身份鉴权流程图

  如上所述,系统同样可用于远程环境下的用户身份认证。

  6、中心技术及平安特性

  智能木马或黑客也能调用规范指令及接口对卡内数据施行攻击,因而必需保证系统数据的秘密性、完好性及可用性,做到防窜改、防重放和防抵赖。系统平安特性如下。

  (1)用户身份双向鉴权。收款手机与效劳器彼此鉴权,避免伪效劳器及不法终端盗取用户数据、走漏用户隐私。

  (2)防重放攻击。由于与收款用户USIM卡ID关联的随机码rand每次均不相同,因而木马及"山寨"APP无法应用留存的历史数据施行重放攻击。

  (3)防盗款攻击。鉴于云端效劳器生成的rand已将收/付款终端USIM卡ID暂时关联,由于卡片ID不同,因而盗号木马将盗得的买卖数据无法以其它USIM卡上施行盗款。

  (4)防"肉鸡"木马攻击。近场买卖的间隔短,收/付款终端间的通讯时间为纳秒级(ns),而经过网络远端盗取用户数据往复时间为秒级(s),因而若智能木马经过网络驱动远端用户终端APP及其Java USIM卡Applet停止身份运算以盗取身份数据,则其往复时间远超越系统的设定时间,如图5所示。

  (5)防窜改。系统的关键数据全在Applet内停止运算并在其内经AES加密后传送,因而木马或黑客无法窜改买卖金额。

网络盗取数据与蓝牙通讯时间比拟

图5 网络盗取数据与蓝牙通讯时间比拟

  (6)防抵赖。买卖数据在收/付款手机Applet内以用户专有、相似私钥的身份密钥及加/解密钥完成"数字签名"及"加密信封",因而具有不可承认的特性。

  7、完毕语

  本文研讨了基于Java USIM卡的运算完成用户身份鉴权的办法及机理,凿通了"机-卡"通道,仅改换USIM卡便能到达金融级U-key的平安级别。本文的成果可普遍用于生活的方方面面,如手机支付、物联网及交通ETC等业务,也能够免密码登陆网站。


您可能还会对下面的文章感兴趣:

支付机构查询_POS机怎么办理

填写信息,pos机具领取

请填写您的邮箱地址,我们将回复您的电子邮件