本发明属于支付技术领域,具体涉及一种二维码安全支付设备。
背景技术:
二维码是目前最流行的支付设备,但目前绝大部分个人采用的二维码支付设备为智能手机,其主要缺点是:1)智能手机价格昂贵,一个手机的正常价格在大几百至上万元不等;2)使用智能手机支付步骤较多,对部分人群,如小孩、老人来说难以掌握;3)智能手机使用通用的智能操作系统,如安卓或ios,这些通用的操作系统通常都存在公知的漏洞,而这些漏洞可能会被黑客攻击而导致钱财被黑客窃走;5)绝大部分智能手机不带有专用的se芯片,其安全性比专用的se芯片来得低。
技术实现要素:
本发明的目的在于提供一种二维码安全支付设备,该设备有利于提高支付的安全性。
为实现上述目的,本发明采用的技术方案是:一种二维码安全支付设备,包括处理器组、比对特征信息采集装置和输入输出设备,所述处理器组主要由主cpu和se芯片组成,所述主cpu用于提供包括驱动、通讯的设备基本功能,所述se芯片用于存储敏感信息以及进行敏感计算;所述比对特征信息采集装置用于采集比对特征信息;所述输入输出设备用于进行信息交互,所述输入输出设备包括用于扫描二维码的摄像模块和用于显示二维码的显示模块;用户向设备发起支付交易请求时,用户通过比对特征信息采集装置输入比对特征信息,然后在se芯片中与预置的比对特征信息进行比对,如果比对通过,则允许使用存储在se芯片中的敏感信息及进行敏感计算,否则拒绝请求。
进一步地,所述敏感信息包括密钥、pin、pan、token信息以及比对特征信息,在使用敏感信息时,需要经过比对校验方能使用;所述敏感计算包括使用敏感信息的操作,密钥加密及解密,签名、验签,计算及校验mac值,比对特征信息的比对以及计算二维码显示内容。
进一步地,设备采用嵌入式操作系统或无操作系统;若采用嵌入式操作系统,嵌入式操作系统为封闭式操作系统。
进一步地,主cpu和se芯片采用安全启动机制,下载的固件和应用程序在通过设备厂商合法签名之后方可下载到设备中,以确保设备的安全性。
进一步地,所述比对特征信息为密码或生物特征信息,所述生物特征信息为指纹、人脸或虹膜,所述比对特征信息采集装置为数字键盘、密码键盘或生物特征信息采集装置,所述生物特征信息采集装置为指纹模块、人脸识别模块或虹膜采集模块。
进一步地,所述比对特征信息采集装置与se芯片连接,由se芯片直接采集比对特征信息,以提高安全性。
进一步地,所述se芯片内设有安全运算次数阈值,在单位时间内,所述se芯片的敏感计算次数不得大于安全运算次数阈值,以防止被暴力穷举破解。
进一步地,所述设备按如下方法预装设备私钥和证书:
a1)设备向设备认证后台上传设备信息;
a2)设备生成公私钥对;
a3)设备向设备认证后台发送公钥和设备相关信息;
a4)设备认证后台将公钥签成证书并下发给设备。
进一步地,所述设备按如下方法预置或修改预置的比对特征信息:
b1)用户通过输入输出设备向设备发出预装比对特征信息的请求;
b2)设备判断是否已预装过比对特征信息,是则转步骤b3,否则转步骤b4;
b3)用户通过比对特征信息采集装置输入比对特征信息,se芯片进行比对特征信息比对校验,校验通过则转b4,校验不通过则拒绝请求,结束退出;
b4)用户通过比对特征信息采集装置输入合法有效的比对特征信息,并存储于se芯片中,完成比对特征信息的预装或修改。
进一步地,所述设备按如下方法进行敏感计算:
c1)用户通过输入输出设备向设备发出敏感计算请求;
c2)用户通过比对特征信息采集装置输入比对特征信息,se芯片进行比对特征信息比对校验,校验通过则转c3,校验不通过则拒绝请求,结束退出;
c3)se芯片进行敏感计算,并将结果反馈给用户,成功之后结束退出。
相较于现有技术,本发明具有以下有益效果:提供了一种二维码安全支付设备,该设备通过设置独立的se芯片来存储敏感信息以及进行敏感计算,然后通过比对特征信息采集装置采集比对特征信息,以进行用户身份比对校验,从而提高了支付的安全性。此外,该设备结构简单,造价低,且专用于基于二维码的安全支付,使用简单便捷。因此,本发明具有很强的实用性和广阔的应用前景。
附图说明
图1是本发明实施例的设备结构框图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细说明。
本发明提供了一种二维码安全支付设备,如图1所示,包括处理器组、比对特征信息采集装置和输入输出设备。
所述处理器组主要由主cpu和se芯片组成,所述主cpu用于提供驱动、通讯等设备基本功能,所述se芯片用于存储敏感信息以及进行敏感计算。所述敏感信息包括但不限于密钥、pin、pan、token以及比对特征信息等信息,在使用敏感信息时,需要经过授权方能使用,授权方式包括指纹、pin等。所述敏感计算包括使用敏感信息的存取、删除、修改等操作,密钥加/解密,签名、验签,计算/校验mac值,比对特征信息的比对,计算二维码显示内容等。
所述比对特征信息采集装置用于采集比对特征信息,以在用户请求操作se芯片时进行用户身份认证。
所述输入输出设备用于进行信息交互。所述输入输出设备包括用于扫描二维码的摄像模块、用于显示二维码的显示模块以及其他必要的设备。
用户向设备发起支付交易请求时,用户通过比对特征信息采集装置输入比对特征信息,然后在se芯片中与预置的比对特征信息进行比对,如果比对通过,则允许使用存储在se芯片中的敏感信息及进行敏感计算,否则拒绝请求。
本发明通过使用se芯片使敏感信息的存储安全可靠,攻击者很难通过读取或导出存储器(flash)上的数据直接获取敏感数据。同时敏感计算放在se芯片中实现,可以进一步加大攻击者通过物理攻击方式获取到敏感信息的难度。
本发明设备采用嵌入式操作系统或无操作系统,如nucleus,freertos,threadx等。采用嵌入式操作系统或无操作系统可以降低对cpu性能的要求,有利于降低成本,同时由于操作系统为非智能操作系统,黑客很难找到漏洞,从而提高设备的安全性。若采用嵌入式操作系统,嵌入式操作系统为封闭式操作系统,除了设备厂商授权的应用程序之外,不允许安装由第三方签名的其他应用程序,通过关闭或管控安装应用程序通道加强设备的安全性。较佳地,主cpu和se芯片采用安全启动机制(secureboot),下载的固件和应用程序需要在通过设备厂商合法签名之后方可下载到设备中,以确保设备的安全性。
本发明还可以设置专用的支付相关按键,包括0-9数字键,显示、扫码按键,以使支付过程简单易用。
在本实施例中,所述比对特征信息为密码或生物特征信息,所述生物特征信息为指纹、人脸或虹膜,所述比对特征信息采集装置为数字键盘、密码键盘或生物特征信息采集装置,所述生物特征信息采集装置为指纹模块、人脸识别模块或虹膜采集模块。
较佳地,所述比对特征信息采集装置与se芯片连接,由se芯片直接采集比对特征信息,以提高安全性。
为了防止被暴力穷举破解,所述se芯片内设有安全运算次数阈值,在单位时间内,所述se芯片的敏感计算次数不得大于安全运算次数阈值。
下面对本发明的二维码安全支付设备的工作方法进行说明。
本发明设备按如下方法预装设备私钥和证书::
a1)设备向设备认证后台上传设备信息;
a2)设备生成公私钥对;
a3)设备向设备认证后台发送公钥和设备相关信息;
a4)设备认证后台对公钥签名生成证书并下发给设备。
本发明设备按如下方法预置或修改预置的比对特征信息:
b1)用户通过输入输出设备向设备发出预装比对特征信息的请求;
b2)设备判断是否已预装过比对特征信息,是则转步骤b3,否则转步骤b4;
b3)用户通过比对特征信息采集装置输入比对特征信息,se芯片进行比对特征信息比对校验,校验通过则转b4,校验不通过则拒绝请求,结束退出;
b4)用户通过比对特征信息采集装置输入合法有效的比对特征信息,并存储于se芯片中,完成比对特征信息的预装或修改。
本发明设备按如下方法进行敏感计算:
c1)用户通过输入输出设备向设备发出敏感计算请求;
c2)用户通过比对特征信息采集装置输入比对特征信息,se芯片进行比对特征信息比对校验,校验通过则转c3,校验不通过则拒绝请求,结束退出;
c3)se芯片进行敏感计算,并将结果反馈给用户,成功之后结束退出。
以下是用户使用存储在se芯片中的敏感信息的几个具体实例。
使用口令场景:
1.ap上面提示用户输入个人口令,ap发命令到se端,请求se端开始处理用户口令输入流程。
2.se端收到ap的请求命令后,开始进入用户输入口令处理。
3.用户开始输入口令,并确认完成。
4.se端比对存储在se端的身份认证口令,如果校验通过,则允许后续的敏感数据的操作,并将结果返回给ap。
5.ap收到结果后,根据结果进行对应的处理,如果失败,提示用户并退出,如果成功则继续执行下一步。
6.ap请求操作存储在se中的敏感数据,详见:请求使用数据操作请求流程(如:请求se用密钥加密一串数据),将原数据发送到se。
7.se收到数据后,根据步骤4结果状态进行处理,如果步骤4校验通过,则响应ap请求操作,否则拒绝请求,并将结果返回ap。
8.ap收到应答,并根据结果进行下一步操作,如果失败,则提示用户并推出,如果成功则继续执行步骤6,或者进入步骤9进行退出操作。
9.se收到ap的退出请求命令后,将当前状态复位(下一次操作需要重新执行认证操作),并将结果返回ap。
10.ap收到se应答后,结束流程。
使用生物信息认证场景:
1.ap上面提示用户输入个人口令,ap发命令到se端,请求se端开始处理用户生物信息采集流程。
2.se端收到ap的请求命令后,开始进入生物信息采集流程处理。
3.se开始采集生物信息(指纹,眼膜,或者人脸等)采集,并确认完成。
4.se端比对存储在se端的生物身份信息数据,如果校验通过,则允许后续的敏感数据的操作,并将结果返回给ap。
5.ap收到结果后,根据结果进行对应的处理,如果失败,提示用户并退出,如果成功则继续执行下一步。
6.ap请求操作存储在se中的敏感数据(如:请求se用密钥加密一串数据),将原数据发送到se。
7.se收到数据后,根据步骤4结果状态进行处理,如果步骤4校验通过,则响应ap请求操作,否则拒绝请求,并将结果返回ap。
8.ap收到应答,并根据结果进行下一步操作,如果失败,则提示用户并推出,如果成功则继续执行步骤6,或者进入步骤9进行退出操作。
9.se收到ap的退出请求命令后,将当前状态复位(下一次操作需要重新执行认证操作)。并将结果返回ap。
10.ap收到se应答后,结束流程。
请求使用数据操作流程(以下实例为ap请求se利用存储在se端的token生成一组交易报文数据):
1.ap将需要交易的数据(如付款方账户、收款方账户、交易金额等)给se,请求生成一组带有token签名的一组数据。
2.se端收到ap端的请求后,将按照通信报文格式组成对应的报文,并用对应存储在se端安全位置的token来生成最终的校验值(如签名,或mac等方式),并附在报文后面,组成一段完整的交易报文返回给ap。
3.ap收到se的报文后,将报文直接通过网络通信方式发送到交易后台,等待后台的处理结果。
4.后台根据报文的信息取出对应二维码终端的token,并用约定好的算法计算出校验值,与报文的校验值进行比对,如果相同则报文真实,交易有效,并进行最终的业务处理,最后将处理成功返回到二维码终端,否则拒绝交易,并将错误码返回到二维码终端。
5.二维码终端收到后台交易结果,并提升交易结果。
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。