基于SE的二维码生成、存储、识别和相关加解密的方法与流程

文档序号:14872856发布日期:2018-07-07 01:49阅读:616来源:国知局

本发明涉及一种二维码生成及识别方法,更具体的说,尤其涉及一种基于se的二维码生成、存储、识别和相关加解密的方法。



背景技术:

随着移动支付越来越融入我们的生活,扫码支付成为了人们习以为常的支付习惯。大到汽车家电、小到菜市场买菜买饭,扫码支付无不体现出了移动支付的便捷性。而作为这个流程中最关键的一个环节:二维码,无疑起着一个决定性的作用。而如何生成一个安全的二维码,则关系着整个支付过程中的信息及资金安全。

而另一方面,近几年手机病毒统计得出的数据显示,手机病毒平均每天出现将近8900个,每天感染用户90万,2016年半年感染用户数超2亿,是英国总人口数的3.12倍,同比增长42.35%。

由此可见,我们的手机处于不安全环境下的概率非常之大,在这样的环境下,如何确保我们在扫码交易的过程中所使用到的二维码安全准确则变的至关重要。而现时状态下尚没有技术来保证扫码支付过程中的资金安全。换句话说,当我们扫码支付时,收款方和付款方都无法实时得知这笔资金的具体流向,这就给我们的资金安全造成了极大的困扰。

安全元件(secureelement)简称se,通常以芯片形式提供。为防止外部恶意解析攻击,保护数据安全,在芯片中具有加密/解密逻辑电路。



技术实现要素:

本发明为了克服上述技术问题的缺点,提供了一种基于se的二维码生成、存储、识别和相关加解密的方法。

本发明的基于se的二维码生成、存储、识别和相关加解密的方法,包括二维码生成方法和二维码识别方法;其特征在于,二维码生成方法为:应用程序首先将原始数据发送给se安全芯片,然后由se安全芯片对原始数据进行加密和签名,分别得到原始数据的密文和信息摘要,最后应用程序根据密文和信息摘要生成二维码;二维码识别方法为:首先由应用程序对二维码识别,得到二维码密文和信息摘要,并将识别的二维码数据发送给se安全芯片,然后由se安全芯片对二维码进行签名和解密,得到二维码原文和信息摘要,最后应用程序对比自身获取的信息摘要与se安全芯片发送的信息摘要是否相同,来判断二维码数据是否被篡改。se安全芯片存储二维码数据,并具有进行数据存储、加解密和签名验签的运算。

本发明的基于se的二维码生成、存储、识别和相关加解密的方法,所述二维码生成方法通过以下步骤来实现:

a).发送原始数据,装载在智能终端的应用程序需要生成二维码时,应用程序将包含当前时间、当前地点、安全芯片id和交易标识在内的原始数据,发送至se安全芯片;

b).产生随机数,se安全芯片在应用程序的控制下产生随机数,并将产生的随机数赋予原始数据;

c).原始数据的加密,se安全芯片将原始数据进行加密,得到原始数据的密文;

d).原始数据的签名,se安全芯片将原始数据进行数字签名,得到原始数据的信息摘要;

e).获取密文和信息摘要,应用程序从se安全芯片获得原始数据加密后的密文以及签名后的信息摘要;

f).二维码的生成,应用程序将获取的密文和信息摘要进行组合得到组合数据,应用程序利用组合数据生成最终的二维码图片;

g).二维码的存储,应用程序将用于生成二维码的组合数据存储在se安全芯片,以备后续查询和调用;

二维码识别方法通过以下步骤来实现:

1).二维码识别,应用程序对一张二维码图片进行识别,成功识别后获取包括二维码密文和信息摘要在内的二维码数据,并将二维码数据传给se安全芯片;

2).二维码数据的解密,se安全芯片将接收的二维码密文数据进行解密,得到二维码数据的原文;如果无法解密二维码密文数据,则表明二维码是由非指定应用程序生成的,不进行后续处理;

3).二维码数据的签名,se安全芯片将解密得到的二维码数据原文进行数字签名,得到二维码原文的信息摘要;

4).获取原文和信息摘要,应用程序从se安全芯片获取解密得到的二维码数据原文以及签名得到的二维码原文摘要;

5).数据对比,应用程序将步骤1)中识别二维码得到的信息摘要与步骤4)中se安全芯片发回的数据摘要进行比对,若二者完全相同,则证明识别得到的二维码数据未被篡改,可对se安全芯片传回的解密后的二维码数据进行处理;若二者不同,则表明识别到的二维码数据被篡改或者是未知程序生成的二维码图片,则不予处理,以避免潜在的风险。

本发明的基于se的二维码生成、存储、识别和相关加解密的方法,步骤a)中所述的交易标识为车牌号码或商品编码。

本发明的基于se的二维码生成、存储、识别和相关加解密的方法,步骤c)中,se安全芯片采用诸如aes的加密算法对原始数据进行加密,步骤2)中se安全芯片采用诸如aes的解密算法对二维码数据进行解密;步骤d)中,se安全芯片利用诸如sm2、rsa的加密算法对原始数据进行数字签名,步骤3)中,se安全芯片利用诸如sm2、rsa的加密算法对二维码数据原文进行数字签名。

本发明的有益效果是:本发明的二维码生成及识别方法,应用程序将包含当前时间、地点、se芯片id和交易标识在内的原始数据,发送至se安全芯片,由se安全芯片对其进行加密和签名,生产原始数据的密文和信息摘要,再由密文和信息摘要生成二维码图片,利用了se安全芯片数据安全性的特点,使得所生成的二维码具有较高的安全性,并通过对二维码数据的存储,确保了二维码数据的安全性。在二维码图片识别过程中,应用程序获取二维码数据后,将数据发送至se安全芯片进行解密和数字签名,由se安全芯片对二维码数据进行解密和签名,获取二维码数据的原文和信息摘要,应用程序通过对比直接获取的二维码数据的信息摘要与se安全芯片返回的信息摘要是否一致,来判断二维码数据是否被篡改,进一步保证了二维码识别交易的安全性。

附图说明

图1为本发明中应用程序向se安全芯片发送原始数据的示意图;

图2为本发明中se安全芯片产生密文的示意图;

图3为本发明中se安全芯片产生信息摘要的示意图;

图4为本发明中应用程序从se安全芯片获取密文的示意图;

图5为本发明中应用程序从se安全芯片获取信息摘要的示意图;

图6为本发明中应用程序生成二维码图片的示意图;

图7为本发明中应用程序向se安全芯片发送二维码数据的示意图;

图8为本发明中se安全芯片从获取的二维码数据中获取原文和信息摘要的示意图;

图9为本发明中应用程序从se安全芯片中获取二维码数据原文的示意图;

图10为本发明中应用程序从se安全芯片中获取二维码数据摘要的示意图;

图11为本发明中应用程序对读取的二维码信息摘要与se安全芯片发回的数据摘要的比对过程。

具体实施方式

下面结合附图与实施例对本发明作进一步说明。

本发明的基于se的二维码生成、存储、识别和相关加解密的方法,包括二维码生成方法和二维码识别方法;所述二维码生成方法通过以下步骤来实现:

a).发送原始数据,装载在智能终端的应用程序需要生成二维码时,应用程序将包含当前时间、当前地点、安全芯片id和交易标识在内的原始数据,发送至se安全芯片;如图1所示,给出了本发明中应用程序向se安全芯片发送原始数据的示意图;

b).产生随机数,se安全芯片在应用程序的控制下产生随机数,并将产生的随机数赋予原始数据;

c).原始数据的加密,se安全芯片将原始数据进行加密,得到原始数据的密文;如图2所示,给出了本发明中se安全芯片产生密文的示意图;

d).原始数据的签名,se安全芯片将原始数据进行数字签名,得到原始数据的信息摘要;如图3所示,给出了本发明中se安全芯片产生信息摘要的示意图;

e).获取密文和信息摘要,应用程序从se安全芯片获得原始数据加密后的密文以及签名后的信息摘要;如图4所示,给出了本发明中应用程序从se安全芯片获取密文的示意图,如图5所示,给出了本发明中应用程序从se安全芯片获取信息摘要的示意图;

f).二维码的生成,应用程序将获取的密文和信息摘要进行组合得到组合数据,应用程序利用组合数据生成最终的二维码图片;如图6所示,给出了本发明中应用程序生成二维码图片的示意图;

g).二维码的存储,应用程序将用于生成二维码的组合数据存储在se安全芯片,以备后续查询和调用;

二维码识别方法通过以下步骤来实现:

1).二维码识别,应用程序对一张二维码图片进行识别,成功识别后获取包括二维码密文和信息摘要在内的二维码数据,并将二维码数据传给se安全芯片;如图7所示,给出了本发明中应用程序向se安全芯片发送二维码数据的示意图;该步骤中,所述的交易标识为车牌号码或商品编码。

2).二维码数据的解密,se安全芯片将接收的二维码密文数据进行解密,得到二维码数据的原文;如果无法解密二维码密文数据,则表明二维码是由非指定应用程序生成的,不进行后续处理;

3).二维码数据的签名,se安全芯片将解密得到的二维码数据原文进行数字签名,得到二维码原文的信息摘要;如图8所示,给出了本发明中se安全芯片从获取的二维码数据中获取原文和信息摘要的示意图;

4).获取原文和信息摘要,应用程序从se安全芯片获取解密得到的二维码数据原文以及签名得到的二维码原文摘要;如图9和图10所示,分别给出了本发明中应用程序从se安全芯片中获取二维码数据原文和信息摘要的示意图;

5).数据对比,应用程序将步骤1)中识别二维码得到的信息摘要与步骤4)中se安全芯片发回的数据摘要进行比对,若二者完全相同,则证明识别得到的二维码数据未被篡改,可对se安全芯片传回的解密后的二维码数据进行处理;若二者不同,则表明识别到的二维码数据被篡改或者是未知程序生成的二维码图片,则不予处理,以避免潜在的风险。如图10所示,给出了本发明中应用程序对获取的二维码信息摘要与se安全芯片发回的数据摘要的比对过程。

本发明的基于se的二维码生成、存储、识别和相关加解密的方法,在二维码生成过程中,利用se安全芯片的数据安全性,应用程序将原始数据发送至se安全芯片,由se安全芯片对原始数据进行加密和签名处理,应用程序再利用返回的密文和信息再要生成二维码,保证了所生成的二维码具有较高的安全性。在二维码识别过程中,应用程序将获取的二维码数据发送至se安全芯片中进行解密和签名处理,获取二维码数据的原文和信息摘要,再通过对比获取的二维码信息摘要与se安全芯片返回的信息摘要是否一致,来判断二维码是否被篡改,进一步保证了二维码识别交易过程的安全性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1