一种二维码认证方法、装置及计算机可读存储介质与流程

文档序号:17158008发布日期:2019-03-20 00:15阅读:206来源:国知局
一种二维码认证方法、装置及计算机可读存储介质与流程

本发明涉及信息安全技术领域,尤其涉及一种二维码认证方法、装置及计算机可读存储介质。



背景技术:

随着移动互联网的发展和普及,二维码应用已遍及中国老百姓的衣食住行,但在为大众生活带来便利的同时,其与生俱来的安全隐患也不容忽视。由二维码引发的安全事件时有发生,触动公众神经。比如,当手机用户扫描来源不明的二维码时,可能被链接到恶意网站,使手机感染病毒或被植入木马,造成不可预知的安全隐患和经济损失。另一方面,二维码应用广泛,包含用户实名信息的二维码若丢弃,极易造成用户信息的泄露,这也是一个不容忽视的信息安全问题。

目前,针对以上问题,在二维码安全防御技术研究方面,有以下技术方案:

一是使用安全扫描工具或者防病毒软件,在扫描二维码时,利用手机病毒防御技术和云端病毒检测分析技术,对二维码信息进行分析检测,判断二维码是否存在钓鱼网站链接或病毒,对有害信息进行过滤,对用户进行风险提示。

二是提高二维码安全性能,对二维码信息加密,防止信息泄露和篡改。

但是,方案一依赖于二维码病毒库的完备性和安全模型的有效性,然而,通常这两者都很难满足。更重要的是,它无法对二维码来源进行验证,从而无法保证安全。方案二只是解决了二维码信息泄露和篡改问题,仍无法证明二维码来源是否可靠。

因此,亟需一种二维码认证的技术方案,能够有效验证二维码来源的可靠性和安全性。



技术实现要素:

有鉴于此,本发明实施例希望提供一种二维码认证的方法、装置及计算机可读存储介质,能够有效验证二维码来源的可靠性和安全性。

本发明实施例的技术方案是这样实现的:

一方面,本发明实施例提供一种二维码认证方法,所述方法包括:

获取平台数字签名和与发布终端的身份特征信息对应的第二密钥,通过所述第二密钥对第一发送内容特征值进行加密生成个人数字签名,所述平台数字签名是通过第一密钥对第一平台标识信息进行加密所得到的;

确定包括所述平台数字签名、所述第二密钥对应的第四密钥和所述个人数字签名的认证信息,基于包括所述认证信息的二维码信息生成二维码。

上述方案中,获取平台数字签名和与发布终端的身份特征信息对应的第二密钥包括:

将表征发布终端的身份特征的第一通信标识发送给认证平台;

接收所述认证平台发送的对应所述第一通信标识的数字证书和第二密钥,所述数字证书携带所述平台数字签名;

其中,对应所述第一通信标识的数字证书和第二秘钥在所述认证平台对所述第一通信标识进行审核后下发。

上述方案中,所述方法还包括:

计算发送内容的哈希值得到第一发送内容特征值;

将所述第一发送内容特征值设置在所述认证信息中。

上述方案中,所述方法还包括:

获取表征扫描终端的身份特征的第二通信标识,根据所述第二通信标识获取第三密钥;

对应地,所述基于包括所述认证信息的二维码信息生成二维码包括:

通过所述第三密钥对所述二维码信息进行加密得到加密二维码信息;

基于所述加密二维码信息生成二维码。

上述方案中,所述根据所述第二通信标识获取第三密钥包括:

将所述第二通信标识发送至所述认证平台,

接收所述认证平台发送的对应所述第二通信标识的数字证书,所述数字证书携带所述第三密钥。

另一方面,本发明实施例还提供一种二维码认证方法,所述方法包括:

扫描二维码得到包括认证信息的二维码信息,所述认证信息包括平台数字签名、第四密钥和个人数字签名,所述第四密钥与发布终端的身份特征信息对应;

获取第一密钥,通过所述第一密钥对所述平台数字签名进行解密得到第二平台标识信息;

根据所述第二平台标志信息确定所述平台数字签名正确时,通过所述第四密钥对所述个人数字签名进行解密得到第二发送内容特征值;根据所述第二发送内容特征值确定所述个人数字签名正确,确定所述二维码认证成功。

上述方案中,所述方法还包括:

获取认证信息中的第一平台标识信息;

所述第一平台标识信息和所述第二平台标识信息相同时,根据所述第二平台标志信息确定所述平台数字签名正确。

上述方案中,所述方法还包括:

获取认证信息中的第一发送内容特征值;

所述第一发送内容特征值和所述第二发送内容特征值相同时,根据所述第二发送内容特征值确定所述个人数字签名正确。

上述方案中,所述方法还包括:

根据表征扫描终端的身份特征的第二通信标识获取第五密钥;

相应地,所述扫描二维码得到包括认证信息的二维码信息包括:

扫描所述二维码得到加密二维码信息,通过所述第五密钥对所述加密二维码信息进行解密得到所述二维码信息。

上述方案中,所述根据表征扫描终端的身份特征的第二通信标识获取第五密钥包括:

将所述第二通信标识发送至认证平台;

接收所述认证平台发送的对应所述第二通信标识的数字证书,所述数字证书携带所述第五密钥。

一方面,本发明实施例还提供一种二维码认证装置,所述装置包括:加密模块和生成模块;其中,

所述加密模块,用于获取平台数字签名和与发布终端的身份特征信息对应的第二密钥,通过所述第二密钥对第一发送内容特征值进行加密生成个人数字签名,所述平台数字签名是通过第一密钥对第一平台标识信息进行加密所得到的;

所述生成模块,用于确定包括所述平台数字签名、所述第二密钥对应的第四密钥和所述个人数字签名的认证信息,基于包括所述认证信息的二维码信息生成二维码。

上述方案中,所述加密模块获取平台数字签名和与发布终端的身份特征信息对应的第二密钥包括:

将表征发布终端的身份特征的第一通信标识发送给认证平台;

接收所述认证平台发送的对应所述第一通信标识的数字证书和第二密钥,所述数字证书携带所述平台数字签名;

其中,对应所述第一通信标识的数字证书和第二秘钥在所述认证平台对所述第一通信标识进行审核后下发。

上述方案中,所述装置还包括计算模块,用于:

计算发送内容的哈希值得到第一发送内容特征值;

将所述第一发送内容特征值设置在所述认证信息中。

上述方案中,所述装置还包括第一获取模块,用于:

获取表征扫描终端的身份特征的第二通信标识,根据所述第二通信标识获取第三密钥;

对应地,所述生成模块基于包括所述认证信息的二维码信息生成二维码包括:

通过所述第三密钥对所述二维码信息进行加密得到加密二维码信息;

基于所述加密二维码信息生成二维码。

上述方案中,所述第一获取模块根据所述第二通信标识获取第三密钥包括:

将所述第二通信标识发送至所述认证平台,

接收所述认证平台发送的对应所述第二通信标识的数字证书,所述数字证书携带所述第三密钥。

另一方面,本发明实施例还提供一种二维码认证装置,所述装置包括:扫描模块、第一验证模块和第二验证模块;其中,

所述扫描模块,用于扫描二维码得到包括认证信息的二维码信息,所述认证信息包括平台数字签名、第四密钥和个人数字签名,所述第四密钥与发布终端的身份特征信息对应;

所述第一验证模块,用于获取第一密钥,通过所述第一密钥对所述平台数字签名进行解密得到第二平台标识信息;

所述第二验证模块,用于根据所述第二平台标志信息确定所述平台数字签名正确时,通过所述第四密钥对所述个人数字签名进行解密得到第二发送内容特征值;根据所述第二发送内容特征值确定所述个人数字签名正确,确定所述二维码认证成功。

上述方案中,所述装置还包括第一比较模块,用于:

获取认证信息中的第一平台标识信息;

所述第一平台标识信息和所述第二平台标识信息相同时,根据所述第二平台标志信息确定所述平台数字签名正确。

上述方案中,所述装置还包括第二比较模块,用于:

获取认证信息中的第一发送内容特征值;

所述第一发送内容特征值和所述第二发送内容特征值相同时,根据所述第二发送内容特征值确定所述个人数字签名正确。

上述方案中,所述装置还包括第二获取模块,用于:

根据表征扫描终端的身份特征的第二通信标识获取第五密钥;

相应地,所述扫描模块扫描二维码得到包括认证信息的二维码信息包括:

扫描所述二维码得到加密二维码信息,通过所述第五密钥对所述加密二维码信息进行解密得到所述二维码信息。

上述方案中,所述第二获取模块根据表征扫描终端的身份特征的第二通信标识获取第五密钥包括:

将所述第二通信标识发送至认证平台;

接收所述认证平台发送的对应所述第二通信标识的数字证书,所述数字证书携带所述第五密钥。

另一方面,本发明实施例还提供一种二维码认证装置,所述装置包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器用于运行所述计算机程序时,执行上述二维码认证方法的步骤。

另一方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述二维码认证方法的步骤。

本发明实施例的二维码认证方法、装置及计算机可读存储介质,在生成二维码时,获取平台数字签名和与发布终端的身份特征信息对应的第二密钥,通过所述第二密钥对第一发送内容特征值进行加密生成个人数字签名,所述平台数字签名是通过第一密钥对平台标识信息进行加密所得到的;确定包括所述平台数字签名、第二密钥对应的第四密钥和所述个人数字签名的认证信息,基于包括所述认证信息的二维码信息生成二维码。在扫描终端进行扫描时,扫描二维码得到包括认证信息的二维码信息,所述认证信息包括个人数字签名、平台数字签名和第四密钥,所述第四密钥与发布终端的身份特征信息对应;获取第一密钥,基于所述第一密钥确定所述平台数字签名正确时,通过所述第四密钥对所述个人数字签名进行解密得到第二发送内容特征值;确定所述第二发送内容特征值正确时,确定所述二维码认证成功。从而在二维码中加入二维码发布者的平台数字签名和数字签名信息,将二维码扫描终端对二维码来源及二维码分布者的验证转为对平台数字签名和个人数字签名的有效性的验证,能够有效验证二维码来源的可靠性和安全性,有效解决二维码来源无法追溯的难题。

附图说明

图1为本发明实施例一提供的一种二维码认证方法的流程示意图;

图2为本发明实施例二提供的一种二维码认证方法的流程示意图;

图3为本发明实施例三提供的一种二维码认证方法的流程示意图;

图4为本发明实施例四提供的系统原理示意图;

图5为本发明实施例四提供的认证平台的结构示意图;

图6为本发明实施例四提供的客户端的结构示意图;

图7为本发明实施例四提供的系统软件架构示意图;

图8为本发明实施例四提供的一种数字证书的格式举例;

图9为本发明实施例四提供的二维码信息组成示意图;

图10为本发明实施例四提供的数字证书申请的流程示意图;

图11为本发明实施例四提供的生成二维码的方法的流程示意图;

图12为本发明实施例四提供的识别二维码的方法的流程示意图;

图13为本发明实施例五提供的一种二维码认证装置的结构示意图;

图14为本发明实施例五提供的另一种二维码认证装置的结构示意图;

图15为本发明实施例六提供的一种二维码认证装置的结构示意图;

图16为本发明实施例六提供的另一种二维码认证装置的结构示意图;

图17为本发明实施例八提供的一种二维码认证装置的结构示意图。

具体实施方式

在本发明实施例中,在生成二维码时,获取平台数字签名和与发布终端的身份特征信息对应的第二密钥,通过所述第二密钥对第一发送内容特征值进行加密生成个人数字签名,所述平台数字签名是通过第一密钥对平台标识信息进行加密所得到的;确定包括所述平台数字签名、第二密钥对应的第四密钥和所述个人数字签名的认证信息,基于包括所述认证信息的二维码信息生成二维码。在扫描二维码时,扫描二维码得到包括认证信息的二维码信息,所述认证信息包括平台数字签名、第四密钥和个人数字签名,所述第四密钥与发布终端的身份特征信息对应;获取第一密钥,基于所述第一密钥确定所述平台数字签名正确时,通过所述第四密钥对所述个人数字签名进行解密得到第二发送内容特征值;确定所述第二发送内容特征值正确时,确定所述二维码认证成功。

下面结合附图对技术方案的实施作进一步的详细描述。

实施例一

本发明实施例提供一种二维码认证方法,如图1所示,所述方法包括:

s101、获取平台数字签名和与发布终端的身份特征信息对应的第二密钥,通过所述第二密钥对第一发送内容特征值进行加密生成个人数字签名;

所述平台数字签名是通过第一密钥对平台标识信息进行加密所得到的;

获取平台数字签名和与发布终端的身份特征信息对应的第二密钥包括:将表征发布终端的身份特征的第一通信标识发送给认证平台;接收所述认证平台发送的对应所述第一通信标识的数字证书和第二密钥,所述数字证书携带所述平台数字签名;其中,对应所述第一通信标识的数字证书和第二秘钥在所述认证平台对所述第一通信标识进行审核后下发。其中,发布终端的身份特征信息为表征发布终端的身份特征的第一通信标识。

认证平台可通过运营商的身份认证平台对第一通信标识进行审核,具体的,将第一通信标识发送至运营商的身份认证平台,运营商的身份认证平台将第一通信标识的实名信息发送至认证平台,认证平台通过发布终端注册的信息和接收到的实名信息进行比对,二者一致时,审核通过。

发布终端在获取平台数字签名和第二密钥时,将表征自身的身份特征的通信标识发送给认证平台,认证平台接收到发布终端的通信标识时,获取该发布终端对应的数字证书和第二密钥。这里将发布终端自身的通信标识称为第一通信标识,其中,通信标识可为sim卡号、电话号码等信息。在认证平台中,对于不同的通信标识对应不同的数字证书和第二密钥。其中,数字证书可包括平台数字签名、与第二密钥对应的第四密钥、平台标识信息等信息。当发布终端将自身的通信标识发送给认证平台时,认证平台可同时下发第一密钥至发布终端。不同的通信标识对应的数字证书中的平台数字签名相同,但第四密钥不同。

在本发明实施例中,当认证平台接收到终端的第一通信标识后,认证平台可将接收到的第一通信标识发送给运营商的身份认证平台请求进行实名认证,具体的,由运营商的身份认证平台根据通信标识和实名信息的关系向认证平台返回实名信息。认证平台将接收到的实名信息和注册信息进行比对,对该用户进行审核,在审核通过后,向终端返回数字证书、第二密钥和第一密钥等信息。

这里,第一密钥为认证平台生成平台数字签名的密钥,可为平台根证书,即平台公钥。平台数字签名为通过平台私钥对平台标识信息进行加密得到的加密数据。平台私钥和平台公钥分别为用于加解密的加密密钥和解密密钥。

第二密钥为终端生成用户数字签名(即个人数字签名)的加密密钥,对于不同的用户,对应不同的加密密钥。第二密钥和第四密钥为用于加解密的密钥对,其中,第二密钥用于加密,第四密钥用于解密。第二密钥和第四密钥相同,也可不同。比如,在采用非对称加解密算法时,第二密钥和第四密钥不同,第二密钥可为用户私钥、第四密钥可为用户公钥。又比如:当采用对称算法时,第二密钥和第四密钥相同。第二密钥和第四密钥可同时从认证平台获取,也可基于第二密钥计算第四密钥。

需要说明的是,在本发明实施例中,公钥和私钥为非对称加解密算法中的加密和解密的密钥对。公钥当应用在该密钥的主体中的加密或解密的密钥,私钥为该主体以外的其他终端中加密或解密的密钥。比如:在认证平台中,通过平台公钥对平台标识信息进行加密得到平台数字签名,当在终端上对平台数字签名进行解密时,通过平台公钥对应的平台私钥对平台数字签名进行解密得到平台标识信息。

当发布终端在生成二维码时,获取平台数字签名和第二密钥。这里,当发布终端中存储有平台数字签名和第二密钥时,直接从发布终端内部获取;当发布终端中未存储有平台数字签名和第二密钥时,可从认证平台获取。当发布终端获取平台数字签名时,可获取数字证书,数字证书中包括有平台数字签名。

发布终端获取第二密钥后,确定待发送的发送内容,根据发送内容计算发送内容特征值,通过第二密钥对发送内容特征值进行加密得到个人数字签名。这里,将计算出的发送内容特征值成为第一发送内容特征值。其中,根据发送内容计算发送内容特征值的算法可为哈希算法,此时,发送内容特征值为发送内容的哈希值。发送内容可包括链接、文本、图片等内容。在计算发送内容特征值时,可计算所有的发送内容的发送内容特征值,也可计算部分发送内容的发送内容特征值。

s102、确定包括所述平台数字签名、所述第二密钥对应的第四密钥和所述个人数字签名的认证信息,基于包括所述认证信息的二维码信息生成二维码。

当确定平台数字签名、第四密钥和个人数字签名时,将这些信息作为认证信息,将认证信息和发送内容一起作为二维码信息生成二维码。其中,在认证信息中,还可包括第一发送内容特征值。

这里,第二密钥对应的第四密钥可由发布终端根据第二密钥进行计算得到,也可从认证平台获取第二密钥时,同时从认证平台获取第四密钥。

在认证信息中,平台数字签名和第四密钥可同时设置在数字证书中,此时,二维码信息包括发送内容、数字证书和个人数字签名。平台数字签名可表征二维码发布者发布的二维码为基于认证平台认证的二维码,个人数字签名可表征二维码发布者的个人身份。

在本发明实施例中,发布终端在确定二维码信息后,可对二维码信息进行加密,以验证扫描终端的身份,这里,加密的密钥可为针对一扫描终端的密钥,也可为针对多个扫描终端的密钥,当针对一扫描终端时,可根据扫描终端的身份确定加密密钥,也可将加密密钥单独发送至该扫描终端。当针对多个扫描终端时,可将加密密钥发送给认可的扫描终端。这里,对二维码信息加密的密钥为第三密钥。向扫描终端发送第三密钥的方式可为短信、微信等各种发送方式。

其中,当根据扫描终端的身份特征信息确定加密密钥时,可向认证平台获取扫描终端的用户公钥,将获取的用户公钥作为第三密钥对二维码信息进行加密。

具体的:二维码认证方法还可包括:获取表征扫描终端的身份特征的第二通信标识,根据所述第二通信标识获取第三密钥;对应地,基于包括所述认证信息的二维码信息生成二维码包括:通过所述第三密钥对所述二维码信息进行加密得到加密二维码信息;基于所述加密二维码信息生成二维码。这里,扫描终端的第二通信标识可为扫描终端的sim卡信息、电话号码等能够表征扫描终端的身份特征的身份特征信息。

其中,所述根据所述第二通信标识获取第三密钥包括:将所述第二通信标识发送至所述认证平台,接收所述认证平台发送的对应所述第二通信标识的数字证书,所述数字证书携带所述第三密钥。

发布终端通过扫描终端的第二通信标识从认证平台下载扫描终端的数字证书,扫描终端的数字证书中携带有扫描终端的第三密钥。

在本发明实施例中,在生成二维码的过程中,在二维码信息中加入了基于发布终端的身份特征的认证信息,其中,认证信息包括:平台数字签名、个人数字签名和用于加密数字个人签名的第四密钥。从而使得扫描终端在扫描二维码时,能够通过第一密钥验证平台数字签名,并通过第四密钥验证个人数字签名,将二维码扫描终端对二维码来源的验证转为对认证平台数字签名和个人数字签名有效性的验证,有效解决二维码来源无法追溯的难题。进一步的,在确定二维码信息后,基于扫描终端的身份特征信息对二维码信息进行加密,有效解决二维码信息安全保密和对扫描终端的身份验证的问题。并且,本发明实施例的二维码认证方法在实现离线生成和认证功能的同时,可将平台数字签名颁发给第三方平台可基于pki信任模型进行扩展,具有很高的应用价值。

实施例二

本发明实施例提供一种二维码认证方法,如图2所示,包括:

s201、扫描二维码得到包括认证信息的二维码信息,所述认证信息包括平台数字签名、第四密钥和个人数字签名;

这里,第四密钥与发布终端的身份特征信息对应。

当扫描终端对发布终端发布的二维码进行扫描后,得到该二维码的信息,其中,该信息可为未加密的二维码信息,也可为进行加密的二维码信息。

当该信息为加密的二维码信息时,对二维码信息进行加密的密钥为与扫描终端的身份特征信息对应的第三密钥,对加密二维码信息解码的密钥为与第三密钥对应的第五密钥。其中,第三密钥与第五密钥为用于加解密的密钥对,可为相同的密钥,也可为公钥和私钥。

这里,第三密钥和第五密钥可由认证平台生成,也可由扫描终端或发布终端生成。当由发布终端生成时,发布终端通过第三密钥对二维码信息进行加密,同时将生成的第五密钥发送给扫描终端以让扫描终端对加密二维码信息进行解密。当由扫描终端生成时,扫描终端可将生成的第三密钥发送给发布终端以用于加密二维码信息,扫描终端通过第五密钥对加密二维码信息进行解密。当由认证平台生成第三密钥和第五密钥时,认证平台对于不同的扫描终端生成不同的密钥对,将第三密钥以扫描终端的数字证书的形式发送给发布终端,将第五密钥发送给扫描终端,此时,第三密钥可为扫描终端的用户私钥,第五密钥可为扫描终端的用户公钥。

当从认证平台获取第三密钥和第五密钥时,此时,通过扫描获取加密二维码信息的二维码信息包括:

根据表征扫描终端的身份特征的第二通信标识获取第五密钥;

相应地,所述扫描二维码得到包括认证信息的二维码信息包括:

扫描所述二维码得到加密二维码信息,通过所述第五密钥对所述加密二维码信息进行解密得到二维码信息。

所述根据表征扫描终端的身份特征的第二通信标识获取第五密钥包括:

将所述第二通信标识发送至认证平台;接收所述认证平台发送的对应所述第二通信标识的数字证书,所述数字证书携带所述第五密钥。

通过对加密二维码信息的解密确定验证扫描终端的身份,具体的,当当前扫描终端为加密二维码信息的第三密钥对应的扫描终端时,当前终端能够获取与第三密钥对应的第五密钥,从而通过第五密钥对加密二维码信息进行解密,从而得到解密后的二维码信息,否则,无法对加密二维码信息进行正确解密,得到解密后的二维码信息,即未加密的二维码信息。

这里,对二维码进行扫描得到的二维码信息包括认证信息和发送内容,其中,认证信息包括数字证书、个人数字签名和发送内容。其中,数字证书中包括平台数字签名、第四密钥、平台标识信息、发送内容特征值等信息。其中,将扫描二维码得到的数字证书中包括的平台标识信息成为第一平台标识信息,将扫描二维码得到的数字证书携带的发送内容特征值称为第一发送内容特征值。

平台数字签名为通过第一密钥对平台标识信息进行加密所得到的。平台标识信息可为拼台名称、平台号码等表征平台身份的信息。第一发送内容特征值可为发布二维码的发布终端在生成二维码的过程中,对发送内容进行哈希值计算得到的哈希值。这里,计算发送内容特征值的发送内容可为全部的发送内容,也可为部分发送内容,发送内容可包括:链接、文本、图片等内容。认证信息中的第四密钥为与扫描终端的身份特征信息对应的密钥,与第四密钥互为密钥对的第二密钥为发送内容特征值进行加密得到个人数字签名的密钥。对于不同的发布终端,个人数字签名相关的加解密的密钥对不同。

s202、获取第一密钥,通过所述第一密钥对所述平台数字签名进行解密得到第二平台标识信息;

当扫描终端得到二维码信息时,获取第一密钥。第一密钥为扫描终端从认证平台获取的平台公钥,即平台根证书。

在该发明实施例中,还包括:获取认证信息中的第一平台标识信息;所述第一平台标识信息和所述第二平台标识信息相同时,根据所述第二平台标志信息确定所述平台数字签名正确。

具体的,在获取到第一密钥后,通过第一密钥对平台数字签名进行解密得到平台标志信息,这里,将解密得到的平台标识信息称为第二平台标识信息,将解密得到的第二平台标识信息和扫描得到的第一平台标识信息进行比较,确定二者相同时,确定平台数字签名正确,确定该二维码为经过认证平台认证的二维码。否则,该二维码信息未经过认证平台的认证,为不可信的二维码。

s203、根据所述第二平台标志信息确定所述平台数字签名正确时,通过所述第四密钥对所述个人数字签名进行解密得到第二发送内容特征值;根据所述第二发送内容特征值确定所述个人数字签名正确,确定所述二维码认证成功。

当根据第二平台信息确定平台数字签名正确时,此时,开始验证认证信息中的个人数字签名。

在本发明实施例中,还包括:获取认证信息中的第一发送内容特征值;

所述第一发送内容特征值和所述第二发送内容特征值相同时,根据所述第二发送内容特征值确定所述个人数字签名正确。

当确定平台数字签名正确时,通过认证信息中的第四密钥对认证信息中的个人数字签名进行加密得到发送内容特征值,这里,将解密得到的发送内容特征值称为第二发送内容特征值,将解密得到的第二发送内容特征值和扫描得到的第一发送内容特征值进行比较,确定二者相同时,确定个人数字签名正确,确定该二维码为经过认证平台认证的终端发布的二维码。

在确定扫描的二维码为平台认证过的二维码且该二维码的发布终端为经过认证平台认证得终端,此时,该二维码为可靠的安全的二维码,二维码的认证成功。

需要说明的是,在本发明实施例中,一个终端既可为发布终端,也可为扫描终端,这是对于不同的二维码的应用过程而言的。对于一二维码,生成该二维码的终端为发布终端,扫描该二维码的终端为扫描终端。

采用本发明实施例的二维码认证方法,在对二维码进行扫描后,对扫描得到的二维码信息中的平台数字签名进行验证,以验证该二维码是否为经过平台认证的二位码,在平台数字签名验证通过后,通过与发布终端的身份特征信息对应的第四密码对认证信息中的个人数字签名进行解密,以验证个人数字签名是否为经过平台认证的终端的个人数字签名,在验证通过后,确定该二维码的来源可靠且安全,则将二维码扫描终端对二维码来源的验证转为对平台数字签名和个人数字签名有效性的验证,有效解决二维码来源无法追溯的难题。进一步的,在确定二维码信息后,基于扫描终端的身份特征信息对加密的二维码信息进行解密,有效解决二维码信息安全保密和对扫描终端的身份验证的问题。并且,本发明实施例的二维码认证方法在实现离线生成和认证功能的同时,可将平台数字签名颁发给第三方平台可基于pki信任模型进行扩展,具有很高的应用价值。

实施例三

本发明实施例提供一种二维码认证方法,其中,在本发明实施例中,以一二维码的生成与识别的完整的过程为具体的应用场景对本发明实施例的二维码认证方法进行说明。这里,生成二维码的发布终端与识别二维码的扫码终端中预安装有与认证平台进行交互的客户端,以实现通过与认证平台的交互来获取基于发布终端或扫描终端的通信标识的密钥进行二维码的生成或识别,并安装有认证平台的根证书,即对平台数字签名进行解密的第一密钥,以对平台数字签名进行认证。

s301、发布终端获取平台数字签名和第二密钥,通过第二密钥对发送内容进行加密得到个人数字签名;

发布终端将自身的通信标识发送至认证平台,从认证平台获取平台数字签名和第二密钥。在获取第二密钥的同时,与第二密钥互为加解密对的第四密钥。其中,第二密钥可为发布终端的用户私钥,第四密钥可为发布终端的用户公钥。

发布终端确定发送内容后,通过对发送内容进行计算得到发送内容特征值,通过第二密钥对发送内容特征值进行加密得到个人数字签名。

s302、发布终端基于平台数字签名、个人数字签名和第二密钥对应的第四密钥生成二维码;

发布终端将平台数字签名、个人数字签名和第二密钥对应的第四密钥作为认证信息,与发送内容一起作为二维码信息生成二维码并发布。其中,二维码信息中还可包括计算的发送内容特征值与平台标识信息。

其中,在确定二维码信息后,可通过扫描终端的第三密钥对二维码信息进行加密,将加密后的二维码信息作为生成二维码的信息生成二维码。其中,第三密钥和第五密钥可为互为加解密对的密钥,第三密钥可为扫描终端的用户公钥,第五密钥可为扫描终端的用户私钥。

s303、扫描终端对二维码进行扫描对二维码进行扫描得到二维码信息,对二维码信息中的平台数字签名进行验证;

扫描终端在扫描发布终端发布的二维码后,得到二维码携带的二维码信息,其中,二维码信息包括认证信息和发送内容,认证信息包括平台数字签名、第四密钥和个人数字签名。

这里,当得到的扫描得到的信息为加密的二维码信息时,通过第五密钥对加密的二维码信息进行解密得到二维码信息。

终端在得到二维码信息后,通过第一密钥对平台数字签名进行验证,具体的,通过第一密钥对平台数字签名进行解密得到平台标识信息,将得到的平台标识信息和扫描二维码得到的平台标识信息进行比较,当二者相同时,平台数字签名验证通过。其中,与解密得到的平台标识信息进行比较的平台标识信息也可为从认证平台获取的。

s304、扫描终端确定平台数字签名验证通过后,验证个人数字签名;

当扫描终端验证平台数字签名成功后,通过第四密钥对个人数字签名进行解密,得到发送内容特征值,将解密得到的发送内容特征值和扫描二维码得到的发送内容特征值进行比较,当二者相同时,个人数字签名验证通过。其中,与解密得到的发送内容特征值进行比较的发送内容特征值也可为从发布终端获取的。

s305、扫描终端确定个人数字签名验证通过后,二维码验证通过。

实施例四

基于上述实施例,在本发明实施例中对上述实施例提供的二维码认证方法进行进一步说明。

如图4所示,用户通过认证平台的客户端用手机号码注册。当认证平台接收到客户端的手机号码后,认证平台将手机号发给运营商身份认证平台请求实名信息,运营商身份认证平台与该用户确认,向认证平台返回该用户的实名制信息。认证平台比对用户注册信息和实名制信息,当一致时,确认审核通过。审核通过后生成数字证书(含用户公钥),连同平台根证书和用户私钥一起发送给客户端。其中,数字证书包括平台数字签名和用户公钥,平台根证书为平台公钥,平台数字签名为通过平台私钥对平台标识信息进行加密得到的加密信息。

二维码发布终端在二维码中添加自身数字证书和数字签名信息。(客户端通过二维码生成算法实现-将数字证书信息和数字签名信息写入到二维码信息中)。二维码扫描终端提前安装平台根证书,在扫描二维码时利用平台根证书验证二维码中的数字证书,具体的,用根证书(平台公钥)来解密数字证书中平台的数字签名,如果能正确解密,说明该数字证书真实。验证通过后,再利用该数字证书验证其数字签名,具体的,用数字证书中的发布终端的用户公钥对数字签名,签名验证通过后则读取二维码信息,否则向用户发出“未认证二维码”的风险提示。

其中,pki系统以公钥密码技术为基础,为所有的网络应用提供密码服务和相关管理体系,包括加密解密、数字证书、数字签名等,可确保信息的保密性、安全性、完整性和不可抵赖性。其中,数字证书可以作为证书持有者的身份认证信息,数字签名作为信息发布者身份的确认。

实现本二维码认证方法的系统由认证平台和客户端两部分组成。

认证平台的组成如图5所示,认证平台包括证书中心((certificateauthority,ca)、注册中心(registrationauthority,ra)、密钥管理中心(keymanagementcenter,kmc)、公钥基础设置(publickeyinfrastructure,pki)存储库等。ca是用于签发并管理证书;ra用于个人身份审核、证书吊销列表(certificaterevokelist,crl)管理;kmc提供用户加密密钥的生成及管理服务等;pki存储库包括轻型目录存取协定(lightweightdirectoryaccessprotocol,ldap)目录服务器和普通数据库,用于对用户申请、证书、密钥、crl和日志等信息进行存储和管理,并提供一定的查询功能。ca、ra、kmc可独立部署,也可部署在同一服务器。

客户端的组成如图6所示,客户端主要负责认证证书申请、二维码生成和读取,包括证书管理组件、二维码生成组件、二维码读取组件、密钥管理组件、加密解密组件等。证书管理组件负责向认证平台申请、撤销、查询、下载、存储、读取数字证书、二维码生成组件负责对二维码承载信息进行数据分析、信息编码、纠错编码、生成二维码图像。二维码读取组件负责扫描识读、图形定位、纠错解码、信息解码和信息展示。密钥管理组件负责存储读取用户密钥对。加密解密组件负责对二维码承载信息、认证证书、数字签名信息进行加密和解密。

在本发明实施例中,认证平台采用基于ssm框架(spring+springmvc+mybatis)的软件架构。如图7所示,该框架的软件结构包括表现层、应用服务层和数据访问层。具体的,

表现层基于springmvc框架实现,由controlle提供restful风格的api访问接口供客户端和web浏览器(后台管理页面)调用。

应用服务层采用springioc容器管理,并通过spring与springmvc和mybatis集成。

数据访问层采用mybatis框架,支持普通sql,存储过程和高级映射,轻便好使,并且易于与spring集成。

在本发明实施例中,可按照x.509证书格式创建数字证书,证书中包括证书版本号、证书持有人公钥、证书序列号、证书持有者信息、帧数有效期、证书颁发者名称、证书颁发者签名、签名算法标识。其中,平台标识信息可为证书颁发者名称,证书颁发者签名即为平台数字签名,证书持有人公钥即为扫描终端的用户公钥。该证书符合itu-tx.509国际标准,可以被其它符合x.509标准的应用使用,增强了系统的扩展性。可采用如图8所示的x.509版本最新的v3版,签名算法采用sha1,加密算法采用rsa1024。

二维码为在二维方向上表示信息的条码,它通过一定的编码规则将信息编码成黑白相间的几何图案。本发明实施例中的二维码可采用qr二维码作为信息载体,在二维码中加入认证信息。最终的二维码信息包括业务信息(文字、网址、图片、视频等)、发布者的数字证书以及发布者对业务信息(哈希值)的数字签名,采用qr二维码,具有数据容量大、读取速度快等特点。

如图9所示,二维码携带的信息包括数字证书、个人数字签名和业务信息,其中,数字证书和个人数字签名为认证信息,业务信息为发送内容。经验证,采用本发明实施例的数字证书和个人数字签名方案,将占用不超过15%左右的二维码数据容量。

在本发明实施例中,对于一二维码的生成和识别的过程包括证书申请、二维码生成和二维码扫描三个过程。

证书申请过程如图10所示,具体的:

s1001、用户终端通过客户端用电话号码在认证平台注册。

用户终端(包括二维码发布用户和扫描用户)中包括客户端和sim卡,在客户端的用户填写注册信息,客户端将注册信息发送至认证平台。

s1002、认证平台通过运营商的身份认证平台对注册信息进行人工审核;

认证平台向运营商的身份认证平台发送手机号码查询用户信息,通过运营商的认证平台对用户注册信息进行查询。

运营商的身份认证平台向用户发短信确认用户终端是否同意查询,在接收到用户终端的同意查询响应后,向认证平台返回客户信息,认证平台将客户信息和注册信息进行比对进行人工审核。当认证平台从移动运营商的身份认证平台接收的客户信息和用户端的注册信息一致时,确认审核通过。

s1003、认证平台审核通过后下发认证平台根证书、数字证书和用户私钥。

二维码生成过程如图11所示,具体的:

s1101、是否认证扫描终端的身份;

当是时,执行s1102,否则执行s1104。

s1102、是否存储有扫描终端的数字证书;

当否时,执行s1103,否则执行s1104。

s1103、下载扫描终端的数字证书;

向认证平台发送扫描终端的通信标识,下载扫描终端的数字证书。

s1104、准备二维码信息;

二维码信息包括认证信息和发送内容,其中认证信息包括数字证书和个人数字签名,还包括发送内容的哈希值。其中,数字证书包括平台数字签名、用户密钥和平台标识信息。

s1105、对二维码信息进行加密;

当s1101的结果为是时执行该步骤,对二维码信息进行加密得到加密的二维码信息。

这里,如果需要验证扫描者身份,可在二维码条码编码前,对信息进行加密,根据不同场景,加密时可采用以下两种加密方式:(1)基于公钥的非对称加密:该加密方式适用扫描者为单一用户的场景,发布者须先在认证平台查询扫描者的数字证书,然后用其公钥行进行加密。(2)基于口令的对称加密:该加密方式适用扫描者为单一或多用户的场景,发布者无须下载扫描者的数字证书,但须将口令通过认证平台或以短信方式提前发给扫描者。

s1106、生成二维码图案。

可用base64编码算法对s1104的二维码信息或s1105的加密后的二维码信息进行编码,生成二维码图案。

二维码扫描过程如图12所示,具体的:

s1201、扫描二维码得到二维码信息;

s1202,判断扫描的二维码信息是否需要解密;

当需要解密时执行s1203,否则执行s1204。

s1203、对加密二维码信息进行解密;

通过扫描终端的用户私钥对加密的二维码信息进行解密。

s1204、验证数字证书;

验证数字证书中的平台数字签名,具体的,通过平台根证书对平台数字签名进行解密,解密正确,则证书真实,验证通过。当证书真实时,执行s1205,否则执行s1207,进行风险提示。

s1205、验证个人数字签名;

验证个人数字签名,具体的,通过数字证书中的扫描终端的用户公钥对个人数字签名进行解密,解密正确,则个人数字签名验证通过,当通过时,执行s1206读取二维码信息。否则,执行s1207,进行风险提示。

s1207、进行风险提示;

在进行风险提示后,如果接收到用户的继续读取二维码的选择操作时,执行s1206,读取二维码信息,此时,为不确定二维码的来源是否安全的情况下读取二维码信息。

需要说明的是,二维码扫描用户扫描二维码时,如需验证身份,先采用base64编码算法进行解码,然后用私钥或口令解密出包含发布者数字证书和数字签名的二维码。

如无需验证身份,扫描者获取二维码信息后,先利用预安装的认证平台根证书验证二维码发布者证书的真伪,如果真实,则再利用发布者证书中的公钥验证发布者的数字签名,如果真实,则解析二维码业务信息。如果证书或数字签名不真实,则发出“未认证二维码”的风险提示,让用户选择是否继续解析。在整个二维码扫描过程中无需认证平台参与,实现了离线和双向认证。

实施例五

为实现实施例一提供的二维码认证方法,本发明实施例提供一种二维码认证装置,如图13所示,所述装置包括:加密模块1301和生成模块1302;其中,

加密模块1301,用于获取平台数字签名和与发布终端的身份特征信息对应的第二密钥,通过所述第二密钥对第一发送内容特征值进行加密生成个人数字签名,所述平台数字签名是通过第一密钥对第一平台标识信息进行加密所得到的;

生成模块1302,用于确定包括所述平台数字签名、所述第二密钥对应的第四密钥和所述个人数字签名的认证信息,基于包括所述认证信息的二维码信息生成二维码。

加密模块1301获取平台数字签名和与发布终端的身份特征信息对应的第二密钥包括:将表征发布终端的身份特征的第一通信标识发送给认证平台;接收所述认证平台发送的对应所述第一通信标识的数字证书和第二密钥,所述数字证书携带所述平台数字签名;其中,对应所述第一通信标识的数字证书和第二秘钥在所述认证平台对所述第一通信标识进行审核后下发。

如图14所示,该装置还包括计算模块1303,用于:计算发送内容的哈希值得到第一发送内容特征值;将所述第一发送内容特征值设置在所述认证信息中。

所述装置还包括第一获取模块1304,用于:获取表征扫描终端的身份特征的第二通信标识,根据所述第二通信标识获取第三密钥;

对应地,生成模块1302基于包括所述认证信息的二维码信息生成二维码包括:通过所述第三密钥对所述二维码信息进行加密得到加密二维码信息;基于所述加密二维码信息生成二维码。

第一获取模块1304根据所述第二通信标识获取第三密钥包括:将所述第二通信标识发送至所述认证平台,接收所述认证平台发送的对应所述第二通信标识的数字证书,所述数字证书携带所述第三密钥。

实施例六

为实现实施例二提供的二维码认证方法,本发明实施例提供一种二维码认证装置,如图15所示,所述装置包括:扫描模块1501、第一验证模块1502和第二验证模块1503;其中,

扫描模块1501,用于扫描二维码得到包括认证信息的二维码信息,所述认证信息包括平台数字签名、第四密钥和个人数字签名,所述第四密钥与发布终端的身份特征信息对应;

第一验证模块1502,用于获取第一密钥,通过所述第一密钥对所述平台数字签名进行解密得到第二平台标识信息;

第二验证模块1503,用于根据所述第二平台标志信息确定所述平台数字签名正确时,通过所述第四密钥对所述个人数字签名进行解密得到第二发送内容特征值;根据所述第二发送内容特征值确定所述个人数字签名正确,确定所述二维码认证成功。

如图16所示,所述装置还包括第一比较模块1504,用于:获取认证信息中的第一平台标识信息;所述第一平台标识信息和所述第二平台标识信息相同时,根据所述第二平台标志信息确定所述平台数字签名正确。

所述装置还包括第二比较模块1505,用于:获取认证信息中的第一发送内容特征值;所述第一发送内容特征值和所述第二发送内容特征值相同时,根据所述第二发送内容特征值确定所述个人数字签名正确。

所述装置还包括第二获取模块1506,用于:根据表征扫描终端的身份特征的第二通信标识获取第五密钥;

相应地,扫描模块1501扫描二维码得到包括认证信息的二维码信息包括:

扫描所述二维码得到加密二维码信息,通过所述第五密钥对所述加密二维码信息进行解密得到所述二维码信息。

第二获取模块1506根据表征扫描终端的身份特征的第二通信标识获取第五密钥包括:将所述第二通信标识发送至认证平台;接收所述认证平台发送的对应所述第二通信标识的数字证书,所述数字证书携带所述第五密钥。

实施利七

本发明实施例还提供了一种二维码认证装置,该二维码认证装置包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器用于运行所述计算机程序时,执行:获取平台数字签名和与发布终端的身份特征信息对应的第二密钥,通过所述第二密钥对第一发送内容特征值进行加密生成个人数字签名,所述平台数字签名是通过第一密钥对第一平台标识信息进行加密所得到的;确定包括所述平台数字签名、所述第二密钥对应的第四密钥和所述个人数字签名的认证信息,基于包括所述认证信息的二维码信息生成二维码。

处理器用于运行所述计算机程序时,执行获取平台数字签名和与发布终端的身份特征信息对应的第二密钥包括:

将表征发布终端的身份特征的第一通信标识发送给认证平台;

接收所述认证平台发送的对应所述第一通信标识的数字证书和第二密钥,所述数字证书携带所述平台数字签名;其中,对应所述第一通信标识的数字证书和第二秘钥在所述认证平台对所述第一通信标识进行审核后下发。

处理器还用于运行所述计算机程序时,执行:计算发送内容的哈希值得到第一发送内容特征值;将所述第一发送内容特征值设置在所述认证信息中。

处理器还用于运行所述计算机程序时,执行:获取表征扫描终端的身份特征的第二通信标识,根据所述第二通信标识获取第三密钥;

对应地,所述基于包括所述认证信息的二维码信息生成二维码包括:

通过所述第三密钥对所述二维码信息进行加密得到加密二维码信息;

基于所述加密二维码信息生成二维码。

处理器用于运行所述计算机程序时,执行所述根据所述第二通信标识获取第三密钥包括:

将所述第二通信标识发送至所述认证平台,

接收所述认证平台发送的对应所述第二通信标识的数字证书,所述数字证书携带所述第三密钥。

实施例八

本发明实施例还提供了一种二维码认证装置,该二维码认证装置包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器用于运行所述计算机程序时,执行:扫描二维码得到包括认证信息的二维码信息,所述认证信息包括平台数字签名、第四密钥和个人数字签名,所述第四密钥与发布终端的身份特征信息对应;

获取第一密钥,通过所述第一密钥对所述平台数字签名进行解密得到第二平台标识信息;

根据所述第二平台标志信息确定所述平台数字签名正确时,通过所述第四密钥对所述个人数字签名进行解密得到第二发送内容特征值;根据所述第二发送内容特征值确定所述个人数字签名正确,确定所述二维码认证成功。

处理器还用于运行所述计算机程序时,执行:获取认证信息中的第一平台标识信息;所述第一平台标识信息和所述第二平台标识信息相同时,根据所述第二平台标志信息确定所述平台数字签名正确。

处理器还用于运行所述计算机程序时,执行:获取认证信息中的第一发送内容特征值;所述第一发送内容特征值和所述第二发送内容特征值相同时,根据所述第二发送内容特征值确定所述个人数字签名正确。

处理器还用于运行所述计算机程序时,执行:根据表征扫描终端的身份特征的第二通信标识获取第五密钥;

相应地,所述扫描二维码得到包括认证信息的二维码信息包括:

扫描所述二维码得到加密二维码信息,通过所述第五密钥对所述加密二维码信息进行解密得到所述二维码信息。

处理器用于运行所述计算机程序时,执行所述根据表征扫描终端的身份特征的第二通信标识获取第五密钥包括:将所述第二通信标识发送至认证平台;接收所述认证平台发送的对应所述第二通信标识的数字证书,所述数字证书携带所述第五密钥。

图17是本发明实施利七或实施例八的二维码认证装置的结构示意图,图17所示的二维码认证装置包括:至少一个处理器1701和存储器1702。二维码认证装置中的各个组件通过总线系统1703耦合在一起。可理解,总线系统1703用于实现这些组件之间的连接通信。

可以理解,存储器1702可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,readonlymemory)、可编程只读存储器(prom,programmableread-onlymemory)、可擦除可编程只读存储器(eprom,erasableprogrammableread-onlymemory)、电可擦除可编程只读存储器(eeprom,electricallyerasableprogrammableread-onlymemory)、磁性随机存取存储器(fram,ferromagneticrandomaccessmemory)、快闪存储器(flashmemory)、磁表面存储器、光盘、或只读光盘(cd-rom,compactdiscread-onlymemory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,randomaccessmemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,staticrandomaccessmemory)、同步静态随机存取存储器(ssram,synchronousstaticrandomaccessmemory)、动态随机存取存储器(dram,dynamicrandomaccessmemory)、同步动态随机存取存储器(sdram,synchronousdynamicrandomaccessmemory)、双倍数据速率同步动态随机存取存储器(ddrsdram,doubledataratesynchronousdynamicrandomaccessmemory)、增强型同步动态随机存取存储器(esdram,enhancedsynchronousdynamicrandomaccessmemory)、同步连接动态随机存取存储器(sldram,synclinkdynamicrandomaccessmemory)、直接内存总线随机存取存储器(drram,directrambusrandomaccessmemory)。本发明实施例描述的存储器1202旨在包括但不限于这些和任意其它适合类型的存储器。

本发明实施例中的存储器1702用于存储各种类型的数据以支持实施利七或实施例八的二维码认证装置的操作。

上述本发明实施例揭示的方法可以应用于处理器1701中,或者由处理器1701实现。处理器1701可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1701中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1701可以是通用处理器、数字信号处理器(dsp,digitalsignalprocessor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器1701可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器1702,处理器1701读取存储器1702中的信息,结合其硬件完成前述方法的步骤。

在示例性实施例中,实施利七或实施例八的二维码认证装置可以被一个或多个应用专用集成电路(asic,applicationspecificintegratedcircuit)、dsp、可编程逻辑器件(pld,programmablelogicdevice)、复杂可编程逻辑器件(cpld,complexprogrammablelogicdevice)、现场可编程门阵列(fpga,field-programmablegatearray)、通用处理器、控制器、微控制器(mcu,microcontrollerunit)、微处理器(microprocessor)、或其他电子元件实现,用于执行前述方法。

实施例九

在示例性实施例中,本发明实施例还提供了一种计算机可读存储介质,例如包括计算机程序的存储器1702,上述计算机程序可由二维码认证装置中的处理器1701执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flashmemory、磁表面存储器、光盘、或cd-rom等存储器。

一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器运行时,执行:

获取平台数字签名和与发布终端的身份特征信息对应的第二密钥,通过所述第二密钥对第一发送内容特征值进行加密生成个人数字签名,所述平台数字签名是通过第一密钥对第一平台标识信息进行加密所得到的;

确定包括所述平台数字签名、所述第二密钥对应的第四密钥和所述个人数字签名的认证信息,基于包括所述认证信息的二维码信息生成二维码。

所述计算机程序被处理器运行时,执行获取平台数字签名和与发布终端的身份特征信息对应的第二密钥包括:

将表征发布终端的身份特征的第一通信标识发送给认证平台;

接收所述认证平台发送的对应所述第一通信标识的数字证书和第二密钥,所述数字证书携带所述平台数字签名。

所述计算机程序被处理器运行时,还执行:计算发送内容的哈希值得到第一发送内容特征值;将所述第一发送内容特征值设置在所述认证信息中。

所述计算机程序被处理器运行时,还执行:

获取表征扫描终端的身份特征的第二通信标识,根据所述第二通信标识获取第三密钥;

对应地,所述基于包括所述认证信息的二维码信息生成二维码包括:

通过所述第三密钥对所述二维码信息进行加密得到加密二维码信息;

基于所述加密二维码信息生成二维码。

所述计算机程序被处理器运行时,执行所述根据所述第二通信标识获取第三密钥包括:

将所述第二通信标识发送至所述认证平台,

接收所述认证平台发送的对应所述第二通信标识的数字证书,所述数字证书携带所述第三密钥。

实施例十

在示例性实施例中,本发明实施例还提供了一种计算机可读存储介质,例如包括计算机程序的存储器1702,上述计算机程序可由二维码认证装置中的处理器1701执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flashmemory、磁表面存储器、光盘、或cd-rom等存储器。

一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器运行时,执行:

扫描二维码得到包括认证信息的二维码信息,所述认证信息包括平台数字签名、第四密钥和个人数字签名,所述第四密钥与发布终端的身份特征信息对应;

获取第一密钥,通过所述第一密钥对所述平台数字签名进行解密得到第二平台标识信息;

根据所述第二平台标志信息确定所述平台数字签名正确时,通过所述第四密钥对所述个人数字签名进行解密得到第二发送内容特征值;根据所述第二发送内容特征值确定所述个人数字签名正确,确定所述二维码认证成功。

所述计算机程序被处理器运行时,还执行:

获取认证信息中的第一平台标识信息;

所述第一平台标识信息和所述第二平台标识信息相同时,根据所述第二平台标志信息确定所述平台数字签名正确。

所述计算机程序被处理器运行时,还执行:

获取认证信息中的第一发送内容特征值;

所述第一发送内容特征值和所述第二发送内容特征值相同时,根据所述第二发送内容特征值确定所述个人数字签名正确。

所述计算机程序被处理器运行时,还执行:

根据表征扫描终端的身份特征的第二通信标识获取第五密钥;

相应地,所述扫描二维码得到包括认证信息的二维码信息包括:

扫描所述二维码得到加密二维码信息,通过所述第五密钥对所述加密二维码信息进行解密得到所述二维码信息。

所述计算机程序被处理器运行时,执行所述根据表征扫描终端的身份特征的第二通信标识获取第五密钥包括:

将所述第二通信标识发送至认证平台;

接收所述认证平台发送的对应所述第二通信标识的数字证书,所述数字证书携带所述第五密钥。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

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