CN103295046B - 生成和使用安全二维码的方法和设备 - Google Patents
生成和使用安全二维码的方法和设备 Download PDFInfo
- Publication number
- CN103295046B CN103295046B CN201310233577.2A CN201310233577A CN103295046B CN 103295046 B CN103295046 B CN 103295046B CN 201310233577 A CN201310233577 A CN 201310233577A CN 103295046 B CN103295046 B CN 103295046B
- Authority
- CN
- China
- Prior art keywords
- quick response
- information
- response code
- certificate
- content
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Storage Device Security (AREA)
Abstract
本发明提供了用于生成和使用安全二维码的方法。用于生成安全二维码的方法包括:a)接收发布方的证书信息、认证信息和想要发布的发布内容;b)生成所述发布内容的数字摘要;c)使用与所述证书信息相对应的加密密钥对所述认证信息和所述数字摘要进行加密,以获得加密信息;以及d)将所述发布内容、所述证书信息、以及所述加密信息编码为二维码形式,以获得安全二维码。
Description
技术领域
本发明涉及信息安全领域,更具体地涉及生成和使用安全二维码的方法和设备。
背景技术
在当今生活中,二维码作为重要的信息编码技术,已经被越来越广泛地应用于各个领域,例如:电子凭证、车辆管理、产品防伪/溯源、广告推送、数据下载等。随着信息传播方式和移动设备的发展,用户在日常生活中接触、使用二维码的机会越来越多。
传统的二维码主要分为矩阵式(棋盘式)二维码和堆叠式/行排式二维码。矩阵式二维码包括例如:QR(快速响应)码、数据矩阵、Maxi码等,而堆叠式/行排式二维码包括例如:Code 16K、Code 49、PDF417等。
现有二维码的问题在于其技术门槛低,任何人均可以使用在网络上公开的工具和技术来生成包含其想要发布的任何信息在内的二维码。这样生成的二维码不可追溯发布来源,不能确定发布者的身份,从而有可能被恶意第三方用来发布具有安全风险的信息。
下面,参照图1来简要描述现有技术中的二维码生成和扫描过程,其中,二维码生成和扫描主要采用现有公开的二维码标准进行处理。
在图1中,在步骤S101中任何想要通过二维码来发布信息的企业或个人向二维码生成工具/平台提交欲发布的信息,然后在步骤S102中二维码生成工具/平台返回基于该信息所生成的二维码,最后在步骤S103中该企业/个人可以对外发布该二维码。而获得了该二维码的用户在步骤S104中可以通过其使用的终端上的二维码扫描工具来扫描该二维码,并在步骤S105中向用户返回对该二维码进行解码后所得到的信息。
对于以上述方式生成和使用的二维码,恶意第三方通过在发布的信息中包含钓鱼网站的链接,并诱使用户使用二维码工具或软件来扫描该二维码,可以使得用户进入钓鱼网站,从而造成用户的经济损失。此外,通过修改由正版软件官方发布的指向其软件下载页面的二维码,恶意第三方可以使得用户下载被植入了木马等恶意软件的软件(盗版软件或被篡改的正版软件),进而造成用户在使用这些软件时产生各种损失(例如,未经过用户同意的数据流量、用户信息泄漏、信用卡/网银账号密码丢失等)。
针对这些二维码安全问题的现有解决办法是通过扫描二维码来获取其中的URL或跳转的URL,并判断URL是否指向恶意地址。如果是,则警告或阻止用户访问该恶意地址。该现有解决方案的示例包括360手机卫士,其提供安全二维码功能。该功能可扫描二维码,并检测其所含链接的安全性,如果有风险,则提示用户。
其主要以下述方式实现:
(1)扫描二维码并解析出二维码所承载的信息;以及
(2)检测该信息中是否含有链接,如果有则提取链接,并基于本地或者网络服务器中的URL数据库,比对和检测URL的安全性,如果有风险,则提示用户。
而该解决方案的主要问题在于:
(1)仅能检测二维码中“URL”的安全性;
(2)对URL安全性更新不及时:对于同一个URL,其页面内容是可以修改的,且因此在一段时间后其可能由安全页面变成对用户有风险的页面,而采用数据库中的网址进行比对时,对URL安全性的判断,是基于历史数据(较早的数据)的;
(3)对于在数据库中不存在的新发布的URL,无法确定其安全性;
(4)任何人均可发布二维码,无法判断来源,例如用户看到某一二维码,其自称是知名购物网站的优惠,扫描后根据其中包含的URL跳转过去,有可能进入了钓鱼网站;又例如用户扫描二维码以下载软件,其号称是某游戏的官方版,点击下载后,却下载了一个加壳的恶意软件;以及
(5)如果有人对官方发布的二维码内容进行解析,并修改为恶意内容后再生成二维码发布,则用户可能无法判断其是否被篡改,无法判断其是否官方发布。
例如,在用户使用360手机卫士进行安全二维码扫描时,在程序解析出二维码后,主要是将获取到的URL与URL数据库进行比对,来判断二维码的安全性。但是360手机卫士如上所述无法确保其URL数据库的及时性;以及无法判断链接指向的内容是否官方发布或是否伪造。在使用现有技术的二维码技术的情况下,用户仍有可能遇到以下情况:被判定为非恶意的网址指向钓鱼网站、盗版发布的产品、病毒下载等风险。
发明内容
为了解决上述问题,提供了本发明的用于生成和使用安全二维码的方法和设备。
根据本发明的第一方面,提供了一种生成安全二维码的方法。该方法包括:a)接收发布方的证书信息、认证信息和想要发布的发布内容;b)生成所述发布内容的数字摘要;c)使用与所述证书信息相对应的加密密钥对所述认证信息和所述数字摘要进行加密,以获得加密信息;以及d)将所述发布内容、所述证书信息、以及所述加密信息编码为二维码形式,以获得安全二维码。
在一些实施例中,所述证书信息包括证书内容、证书ID、证书的密码中的任意一种或其中的任意组合。
在一些实施例中,所述认证信息包括发布者身份信息、发布内容介绍、相关说明文字中的任意一种或其中的任意组合。
在一些实施例中,在所述步骤d)之前还包括:接收与二维码生成相关的选项,以及所述步骤d)还包括:根据所述选项,将所述发布内容、所述证书信息、以及所述加密信息编码为二维码形式,以获得安全二维码。
在一些实施例中,所述选项包括:二维码的制式和二维码的样式。
在一些实施例中,在所述步骤d)中,在编码之前执行可逆操作,以将所述发布内容、所述证书信息、以及所述加密信息合并。
在一些实施例中,所述可逆操作包括使用分隔符将所述发布内容、所述证书信息、以及所述加密信息相连。
根据本发明的第二方面,提供了一种使用安全二维码的方法。该方法包括:a)对所述安全二维码解码,以获得发布内容、证书信息、以及加密信息;b)获取由所述证书信息所代表的证书的解密密钥;c)使用所述解密密钥对所述加密信息进行解密,以获得认证信息和第一数字摘要;d)计算所述发布内容的第二数字摘要,并与所述第一数字摘要进行比较;e)如果两个数字摘要匹配,则确定所述安全二维码内容未被篡改,否则确定所述安全二维码被篡改。
在一些实施例中,所述证书信息包括证书内容、证书ID、证书的密码中的任意一种或其中的任意组合。
在一些实施例中,所述认证信息包括发布者身份信息、发布内容介绍、相关说明文字中的任意一种或其中的任意组合。
在一些实施例中,所述步骤a)还包括:通过对解码后信息中在编码过程中已被执行了可逆操作的内容执行该可逆操作的逆操作,分别获得所述发布内容、所述证书信息、以及所述加密信息。
在一些实施例中,所述逆操作包括:对解码后信息中的分隔符进行定位。
在一些实施例中,在所述步骤e)之后,所述方法还包括:如果确定所述安全二维码内容未被篡改,则向用户呈现所述发布内容和/或所述认证信息。
在一些实施例中,在所述步骤e)之后,所述方法还包括:检测所述发布内容中是否包含URL;以及如果包含URL,则检测所述URL是否是恶意链接。
根据本发明的第三方面,提供了一种生成安全二维码的设备。该设备包括:接收单元,用于接收发布方的证书信息、认证信息和想要发布的发布内容;生成单元,用于生成所述发布内容的数字摘要;加密单元,用于使用与所述证书信息相对应的加密密钥对所述认证信息和所述数字摘要进行加密,以获得加密信息;以及编码单元,用于将所述发布内容、所述证书信息、以及所述加密信息编码为二维码形式,以获得安全二维码。
在一些实施例中,所述证书信息包括证书内容、证书ID、证书的密码中的任意一种或其中的任意组合。
在一些实施例中,所述认证信息包括发布者身份信息、发布内容介绍、相关说明文字中的任意一种或其中的任意组合。
在一些实施例中,所述接收单元还用于:接收与二维码生成相关的选项,以及所述编码单元还用于:根据所述选项,将所述发布内容、所述证书信息、以及所述加密信息编码为二维码形式,以获得安全二维码。
在一些实施例中,所述选项包括:二维码的制式和二维码的样式。
在一些实施例中,所述编码单元还用于在编码之前执行可逆操作,以将所述发布内容、所述证书信息、以及所述加密信息合并。
在一些实施例中,所述可逆操作包括使用分隔符将所述发布内容、所述证书信息、以及所述加密信息相连。
根据本发明的第四方面,提供了一种使用安全二维码的设备。该设备包括:解码单元,用于对所述安全二维码解码,以获得发布内容、证书信息、以及加密信息;获取单元,用于获取由所述证书信息所代表的证书的解密密钥;解密单元,用于使用所述解密密钥对所述加密信息进行解密,以获得认证信息和第一数字摘要;计算比较单元,用于计算所述发布内容的第二数字摘要,并与所述第一数字摘要进行比较;确定单元,用于如果两个数字摘要匹配,则确定所述安全二维码内容未被篡改,否则确定所述安全二维码被篡改。
在一些实施例中,所述证书信息包括证书内容、证书ID、证书的密码中的任意一种或其中的任意组合。
在一些实施例中,所述认证信息包括发布者身份信息、发布内容介绍、相关说明文字中的任意一种或其中的任意组合。
在一些实施例中,所述解码单元还用于:通过对解码后信息中在编码过程中已被执行了可逆操作的内容执行该可逆操作的逆操作,分别获得所述发布内容、所述证书信息、以及所述加密信息。
在一些实施例中,所述逆操作包括:对解码后信息中的分隔符进行定位。
在一些实施例中,所述设备还包括:呈现单元,用于如果确定所述安全二维码内容未被篡改,则向用户呈现所述发布内容和/或所述认证信息。
在一些实施例中,所述设备还包括:检测单元,用于检测所述发布内容中是否包含URL,以及如果包含URL,则检测所述URL是否是恶意链接。
使用本发明的方法和设备,降低了用户在使用二维码过程中的风险,最大程度地保证了二维码的安全。
附图说明
通过下面结合附图说明本发明的优选实施例,将使本发明的上述及其它目的、特征和优点更加清楚,其中:
图1是示出了现有技术的二维码生成和使用过程的示例的示意图。
图2是示出了根据本发明实施例的二维码生成和使用系统的应用场景的示例的示意图。
图3是示出了根据本发明实施例的二维码生成方法的示例的流程图。
图4是示出了根据本发明实施例的二维码使用方法的示例的流程图。
图5是示出了根据本发明实施例的二维码生成设备的示例的功能框图。
图6是示出了根据本发明实施例的二维码使用设备的示例的功能框图。
在本发明的所有附图中,相同或相似的结构均以相同或相似的附图标记标识。
具体实施方式
下面参照附图对本发明的优选实施例进行详细说明,在描述过程中省略了对于本发明来说是不必要的细节和功能,以防止对本发明的理解造成混淆。以下,以本发明应用于无线移动通信系统的场景为例,对本发明进行了详细描述。但本发明并不局限于此,本发明也可以应用于固定通信系统、有线通信系统,或者应用于无线移动通信系统、固定通信系统、有线通信系统等的任意混合结构。就移动通信系统而言,本发明并不局限于所涉及的各个移动通信终端的具体通信协议,可以包括(但不限于)2G、3G、4G、5G网络,WCDMA、CDMA2000、TD-SCDMA系统等,不同的移动终端可以采用相同的通信协议,也可以采用不同的通信协议。本发明并不局限于移动终端的具体操作系统,可以包括(但不限于)iOS、Windows Mobile、Symbian、Android等,不同的移动终端可以采用相同的操作系统,也可以采用不同的操作系统。
图2是示出了根据本发明的二维码生成和使用系统1000的应用场景的示意图。如图2所示,二维码生成和使用系统1000可以包括用户的移动终端100、信息发布方的主机200以及第三方认证服务器300。为了清楚起见,图2中仅示出了一个移动终端100和一个主机200,但本发明并不局限于此,还可以包括多个终端(不限于移动终端,也可以是固定终端)、移动终端和固定终端的组合、多个主机等情况。移动终端100可以属于用户,或者可以由用户操作。移动终端100可以通过通信网络与主机200和认证服务器300相连并与之进行通信。通信网络的示例可以包括(但不限于):互联网、移动通信网络(如3G、4G等)、无线通信网络(如WiFi等)、固定线路(如xDSL、光纤等)等。此外,主机200和认证服务器300也可以通过通信网络相连并彼此通信。在备选实施例中,移动终端100、主机200、和/或认证服务器300也可以不通过通信网络而直接通信。
移动终端100包括安装在其中的用于根据本发明的实施例来使用(例如,扫描、解析、安全检测等)安全二维码的客户端150(以下简称为二维码使用客户端150)。二维码使用客户端150可以由用户以软件的形式自行安装在移动终端100中,或者可以由终端生产厂商以硬件或固件的形式安装在移动终端100中。此外,可以以开放代码的方式集成在其他软件中,或开放接口的方式供其他软件调用的形式在移动终端100中实现功能的应用,其中,代码或接口开放可以针对不同集成或调用需求采取部分或全部开放。在一些实施例中,二维码使用客户端150可以是例如在用户购买了移动终端100之后从例如安卓应用商店、苹果应用商店中下载的专门用于二维码使用的应用软件。在另一些实施例中,二维码使用客户端150可以是例如由终端生产厂商以固件或硬件形式预先安装在移动终端100中的应用程序。在又一些实施例中,二维码使用客户端150可以是网页浏览器,如IE、Firefox等等,其通过二维码使用页面进行二维码的使用(例如,由第三方提供的用于安全二维码扫描、解析、安全检测等的安全二维码处理页面)。在另外一些实施例中,二维码使用客户端150可以是机顶盒中的嵌入式模块(其可以是硬件、固件或软件),其通过有线电视网络来进行二维码扫描和解析。此外,在备选实施例中,移动终端100可以仅具有现有技术的二维码扫描、解析客户端。该客户端与根据本发明的实施例的二维码使用客户端150的区别之处在于:该客户端仅能对安全二维码进行扫描和解析,并得到安全性未知的发布内容,而并不提供针对安全二维码的各种安全检测相关功能等。
主机200包括安装在其中的用于生成二维码的客户端250(以下简称为二维码生成客户端250)。二维码生成客户端250可以由用户以软件的形式自行安装在主机200中,或者可以由主机生产厂商以硬件或固件的形式安装在主机200中。在一些实施例中,二维码生成客户端250可以是例如在用户购买了主机200之后从例如互联网上下载的专门用于二维码生成的应用软件。在另一些实施例中,二维码生成客户端250可以是例如由终端生产厂商以固件或硬件形式预先安装在主机200中的应用程序。在又一些实施例中,二维码生成客户端250可以是网页浏览器,如IE、Firefox等等,其通过二维码生成页面进行二维码的生成(例如,由第三方提供的用于安全二维码生成等的安全二维码处理页面)。在另外一些实施例中,二维码生成客户端250可以是机顶盒中的嵌入式模块(其可以是硬件、固件或软件),其通过有线电视网络进行二维码生成。在备选实施例中,主机200可以仅负责提供要发布的内容,而根据该内容来生成安全二维码的过程可以在通信网络中另一节点(例如,由第三方提供的安全二维码处理平台)处执行。
下面,将假定在移动终端100中安装了根据本发明实施例的安全二维码使用客户端150且主机200中安装了根据本发明实施例的安全二维码生成客户端250的情况下说明本发明的各个实施例。
当信息发布方想要通过根据本发明的实施例的安全二维码来发布其信息时,其应当首先在主机200上安装凭证信息。在一个实施例中,凭证信息可以是由信息发布方根据标准的数字证书申请过程从第三方认证机构的认证服务器(例如,认证服务器300)获取到的数字证书。其也可以是主机200根据公开的证书生成规则生成,并在第三方认证机构的认证服务器(例如,认证服务器300)处进行备案的数字证书。不论在哪种情况下,当信息发布方获得了(导入或生成)与其绑定的数字证书时,在认证服务器300处也可以相应保存该数字证书。
根据本发明的实施例,信息发布方在生成安全二维码时使用的证书信息可以是证书内容或证书ID,也可以是证书内容或证书ID与证书的密码结合,其中,证书内容可以是完整的证书,而证书ID可用于在认证服务器300处识别/检索相应的数字证书。即,证书ID与数字证书是对应的,可以通过证书ID来查询证书并获取其内容,例如该证书的公钥等。在一个实施例中,证书ID可以是数字证书的序列号。
此外,在根据本发明的实施例中,信息发布方在生成安全二维码之前还应当准备认证信息,当然,该认证信息也可以为空。认证信息是与证书持有者相关的信息,包括例如(但不限于):发布者身份信息(例如,证书持有者的名称(公司/机构名称))、发布内容介绍、相关说明文字等。该认证信息可以是自定义内容,且其内容可以或可以不由第三方认证机构来认证。实际上,该认证信息可以是信息发布方想要向公众发布的任何信息。例如,认证信息可以包括以下内容:“某某科技有限公司,全球最大的移动安全服务领导厂商”等。此外,认证信息也可以与对应的二维码相关。例如,认证信息也可以包括与该二维码中包含的URL所指向的软件下载相关的说明,例如,“官方发布的手机浏览器1.1版本,支持多页面浏览”等。
此外,为了使用根据本发明的实施例的生成和使用安全二维码的方法和设备,所需的证书不限于上述数字证书。实际上在安全二维码的生成和使用中也可以使用其他凭证信息,只要该凭证信息能够用于识别信息发布方的身份以及用于验证信息发布方的身份的机制(例如,公钥数字签名验证)即可。
在一个实施例中,当信息发布方安装了数字证书(导入了凭证信息)之后,其可以通过主机200上的二维码生成客户端250,基于其想要发布的信息内容来生成相应的安全二维码。在一个实施例中,当信息发布方启动二维码生成客户端250之后,二维码生成客户端250读取发布方的证书内容,并获得其证书信息。此外,二维码生成客户端250还从信息发布方获得其想要发布的信息内容以及认证信息。然后,二维码生成客户端250计算该信息内容的数字摘要。在一个实施例中,可以通过MD5算法得到该信息内容的32位的散列(hash)值,作为其数字摘要。
接下来,二维码生成客户端250使用与数字证书的公钥相对应的私钥(加密密钥),对认证信息和欲发布信息的数字摘要进行加密。对认证信息和数字摘要进行加密的方式可以是任何非对称加密方式,例如RSA、Diffie-Hellman算法、ECC(椭圆曲线加密算法)等。此外,可以对认证信息和数字摘要分别加密,也可以将认证信息和数字摘要合并(例如,串联、以任何规定符号为分隔符进行串联等)后再统一进行加密,或更一般地,对认证信息和数字摘要进行某种可逆运算后再统一进行加密。加密的方式不限于这些方式。实际上,只要可以根据加密后的密文得到(例如,通过解密+可逆操作等)加密前的认证信息和数字摘要,可以允许使用任何加密方式。
在生成了包含认证信息和数字摘要在内的加密信息之后,二维码生成客户端250可以将欲发布的信息内容、证书信息、以及加密信息打包。与上面加密方式类似地,打包的方式也不限于简单的字符串串联、以任何规定符号(例如,空格)为分隔符进行串联等。可以使用任何可逆操作对信息内容、证书信息、以及加密信息进行打包。实际上,只要可以根据打包后的信息得到(例如,可逆操作)打包前的信息内容、证书信息、以及加密信息,可以允许使用任何打包方式。然而,为了与现有的二维码编码技术保持一定程度的兼容性,在本实施例中,使用了以任何规定符号(例如,空格)为分隔符进行串联的方式来打包。
当生成了打包后的信息之后,二维码生成客户端250可以根据信息发布方选择的二维码相关选项,使用标准的二维码编码方法对打包后的信息进行编码,从而生成二维码(即,根据本发明的实施例的安全二维码)。二维码相关选项可以包括例如:二维码的制式和二维码的样式。二维码的制式用于指定二维码所采用的标准,例如QR码、数据矩阵、Maxi码、Code 16K、Code 49、PDF417等。二维码的样式用于指定与二维码相关的一些设置,例如:尺寸、个性化展示、版本、纠错水平、信息类型等。例如个性化展示的设定可以在生成二维码之后处理。这样,信息发布方通过主机200上的二维码生成客户端250可以生成安全二维码。然后,信息发布方可以通过各种方式来发布其安全二维码,例如,通过彩信、电子邮件、实体广告图案等。
根据上述方法生成的安全二维码应当包括以下若干项:
-信息发布方发布的原始信息,其可以是文字信息、URL等;
-证书信息,可以是证书内容、证书ID或任何可以用于识别/检索证书的数据、证书的密码等;
-认证信息,可以是发布者身份信息、发布内容介绍、相关说明文字等,其为与信息发布方相关的信息,包括例如“发布来源”(信息发布方的身份等)、文字介绍等,其可以具有默认内容或默认格式,并可由信息发布方来定制,此外,其也可以与对应的二维码相关;以及
-原始信息的数字摘要(例如,32位MD5值),用于检查原始信息是否受到篡改。
其中,认证信息和数字摘要是经过加密的(使用信息发布方的私钥),非明文。
当用户获得该安全二维码之后,其可以通过使用移动终端100上的二维码使用客户端150来扫描并解析该安全二维码。二维码使用客户端150首先按照标准二维码扫描和解析过程对安全二维码进行解码,以得到信息发布方发布的信息内容、证书信息、以及加密信息。实际上,在本实施例中,由于在前述安全二维码生成过程中为了与现有二维码标准保持一定程度的兼容而在打包方式的选择上选择了以任何规定符号(例如,空格)为分隔符进行串联的方式,因此在对安全二维码进行标准解码之后,根据本发明的实施例的二维码使用客户端150或任何标准二维码解码器都能得到相同的信息内容、证书信息、以及加密信息。此时,不使用二维码使用客户端150的用户也可以得到信息发布方发布的信息内容,只是其只能得到原始信息、证书信息与加密信息,且从而不能对该安全二维码进行后续的安全检验。
在一个实施例中,在使用二维码使用客户端150的情况下,二维码使用客户端150根据解析出的证书信息(例如,数字证书ID)从认证服务器300获得与该证书信息(例如,数字证书ID)相对应的数字证书或其所需部分(例如,其公钥(解密密钥))。如果认证服务器300中不存在与该证书信息(例如,数字证书ID)相对应的数字证书或其所需部分,则二维码使用客户端150可以确定要么该安全二维码暂无认证信息,要么该二维码是假冒的二维码。在这种情况下,二维码使用客户端150可以向用户提示。
在获得数字证书之后,二维码使用客户端150可以使用数字证书中包含的信息发布方的公钥(解密密钥)对安全二维码中包含的加密信息进行解密。具体解密方式与前述加密方式相对应。即,在一个实施例中,可以使用“解密+可逆操作”来获得认证信息和信息发布方发布的信息的数字摘要。如果解密操作失败,则二维码使用客户端150可以确定要么数字证书有误,要么加密信息遭到了篡改。在这种情况下,二维码使用客户端150可以向用户提示。
当成功解密之后,二维码使用客户端150获得了信息发布方的认证信息和其发布的信息的数字摘要。此时,二维码使用客户端150使用数字摘要算法(例如,MD5)对在前述步骤中获得的信息发布方发布的信息内容计算数字摘要,并将计算出的数字摘要与从安全二维码中解密得到的数字摘要进行比较。如果两个数字摘要匹配,则二维码使用客户端150可以确定该安全二维码是信息发布方原始发布的二维码,并未遭到任何篡改,则之后可以向用户呈现发布内容和/或认证信息。如果不匹配,则二维码使用客户端150可以确定该二维码中的信息内容遭到了篡改,且该二维码是由(恶意)第三方重新生成的。在这种情况下,二维码使用客户端150可以向用户提示。
此外,当二维码使用客户端150验证了该安全二维码确实是由信息发布方原始发布的安全二维码之后,还可以进一步判断其内容是否包含链接。如果包含链接,则对该链接进行安全检测。例如,可以将其与本地或网络服务器上的链接数据库进行比对,以确定其指向的页面、下载等是否属于不安全的页面、下载。此外,如果下载了软件,则进一步判断该软件的安全性,例如判断其是否是恶意软件、病毒软件等。
这样,通过上述安全二维码的生成和使用方法,降低了用户在使用二维码过程中的风险,最大程度地保证了二维码的安全。
图3是示出了根据本发明实施例的二维码生成方法400的流程图。图4是示出了根据本发明实施例的二维码使用方法500的流程图。如图3所示,二维码生成方法400可以包括步骤S410、S420、S430和S440,其中,部分步骤可以单独执行或组合执行,以及可以并行执行或顺序执行,并不局限于图3所示的具体操作顺序。如图4所示,二维码使用方法500可以包括步骤S510、S520、S530、S540和S550,其中,部分步骤可以单独执行或组合执行,以及可以并行执行或顺序执行,并不局限于图4所示的具体操作顺序。在一些实施例中,二维码生成方法400可以由图2所示的主机200或安装在主机200中的客户端250来执行。在一些实施例中,二维码使用方法500可以由图2所示的移动终端100或安装在移动终端100中的客户端150来执行。
图5是示出了根据本发明实施例的主机200的框图。如图5所示,主机200可以包括:接收单元210、生成单元220、加密单元230、以及编码单元240。
接收单元210用于接收发布方的证书信息、认证信息和想要发布的发布内容。在一些实施例中,接收单元210可以是主机200的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其可以与主机200的网络接口(例如,以太网卡、调制解调器等)相配合,从认证服务器300接收证书信息。此外,其也可以与主机200的输入设备(例如,鼠标、键盘等)相配合,从信息发布方接收想要发布的发布内容、认证信息等。此外,其也可以与主机200的存储设备(例如,硬盘、光盘等)相配合,从存储设备中检索到已导入的证书信息、认证信息和想要发布的发布内容等。
生成单元220用于生成发布内容的数字摘要。在一些实施例中,生成单元220可以是主机200的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其根据上述数字摘要算法来计算发布内容的数字摘要(例如,其32位MD5值)。
加密单元230用于使用与证书信息对应的加密密钥对认证信息和数字摘要进行加密,以获得加密信息。在一些实施例中,加密单元230可以是主机200的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其根据上述加密算法对认证信息和数字摘要加密。
编码单元240用于将发布内容、证书信息、以及加密信息编码为二维码形式,以获得安全二维码。在一些实施例中,编码单元240可以是主机200的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其根据上述二维码编码方法对发布内容、证书信息、以及加密信息进行编码,并生成作为结果的安全二维码。
图6是示出了根据本发明实施例的移动终端100的框图。如图6所示,移动终端100可以包括:解码单元310、获取单元320、解密单元330、计算比较单元340、以及确定单元350。
解码单元310用于对安全二维码解码,以获得发布内容、证书信息、以及加密信息。在一些实施例中,解码单元310可以是移动终端100的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其可以基于上述二维码解码方法对安全二维码解码,以获得发布内容、证书信息、以及加密信息。
获取单元320用于获取由证书信息所代表的证书的解密密钥。在一些实施例中,获取单元320可以是移动终端100的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其可以与移动终端100的发射机和接收机相配合,从认证服务器300接收证书信息和/或其公钥。此外,其也可以与移动终端100的存储设备(硬盘、软盘、光盘等)相配合,检索到与证书信息相关联的证书的公钥(解密密钥)。
解密单元330用于使用解密密钥对加密信息进行解密,以获得认证信息和第一数字摘要。在一些实施例中,解密单元330可以是移动终端100的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其根据上述解密算法对加密信息进行解密,以获得认证信息和第一数字摘要。
计算比较单元340用于计算发布内容的第二数字摘要,并与第一数字摘要进行比较。在一些实施例中,计算比较单元340可以是移动终端100的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其根据上述数字摘要算法来计算发布内容的数字摘要,并将其与第一数字摘要进行比较。
如果两个数字摘要匹配,则确定单元350用于确定安全二维码未被篡改,否则确定安全二维码被篡改。在一些实施例中,确定单元350可以是移动终端100的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器等等,其根据上述比较的结果来确定安全二维码是否被篡改。
此外,在其他实施例中,移动终端100还可以包括呈现单元和检测单元。如果确定安全二维码内容未被篡改,则呈现单元用于向用户呈现认证信息和/或发布内容等。检测单元用于检测发布内容中是否包含URL,以及如果包含URL,则还检测该URL是否是恶意链接。其各自的具体功能分别如上面关于“呈现”和“检测”过程所述,此处不再赘述。
以下将结合图3和图5,对根据本发明实施例的安全二维码的生成方法400和主机200进行详细的描述。
在步骤S410中,由主机200的接收单元210来接收发布方的证书信息、认证信息和想要发布的发布内容。
在步骤S420中,由主机200的生成单元220来生成发布内容的数字摘要;
在步骤S430中,由主机200的加密单元230使用与证书信息相对应的加密密钥对认证信息和数字摘要进行加密,以获得加密信息。
在步骤S440中,由主机200的编码单元240将发布内容、证书信息、以及加密信息编码为二维码形式,以获得安全二维码。
在一些实施例中,证书信息包括证书内容、证书ID、证书的密码中的任意一种或其中的任意组合。
在一些实施例中,认证信息包括发布者身份信息、发布内容介绍、相关说明文字中的任意一种或其中的任意组合。
在一些实施例中,在步骤S440之前还包括:接收与二维码生成相关的选项,以及步骤S440包括:根据选项,将发布内容、证书信息、以及加密信息编码为二维码形式,以获得安全二维码。
在一些实施例中,选项包括:二维码的制式和二维码的样式。
在一些实施例中,在步骤S450中,在编码之前执行可逆操作,以将发布内容、证书信息、以及加密信息合并。
在一些实施例中,可逆操作包括使用分隔符将发布内容、证书信息、以及加密信息相连。
以下将结合图4和图6,对根据本发明实施例的安全二维码的使用方法500和移动终端100进行详细的描述。
在步骤510中,由移动终端100的解码单元310对安全二维码解码,以获得发布内容、证书信息、以及加密信息。
在步骤520中,由移动终端100的获取单元310来获取由证书信息所代表的证书的解密密钥。
在步骤530中,由移动终端100的解密单元330使用解密密钥对加密信息进行解密,以获得认证信息和第一数字摘要。
在步骤540中,由移动终端100的计算比较单元340来计算发布内容的第二数字摘要,并与第一数字摘要进行比较。
在步骤550中,如果两个数字摘要匹配,则由移动终端100的确定单元350来确定安全二维码未被篡改,否则确定安全二维码被篡改。
在一些实施例中,证书信息包括证书内容、证书ID、证书的密码中的任意一种或其中的任意组合。
在一些实施例中,认证信息包括发布者身份信息、发布内容介绍、相关说明文字中的任意一种或其中的任意组合。
在一些实施例中,步骤S510还包括:通过对解码后信息中在编码过程中已被执行了可逆操作的内容执行该可逆操作的逆操作,分别获得发布内容、证书信息、以及加密信息。
在一些实施例中,逆操作包括:对解码后信息中的分隔符进行定位。
在一些实施例中,在步骤S550之后,方法还包括:如果确定安全二维码未被篡改,则向用户呈现认证信息和/或发布内容。
在一些实施例中,在步骤S550之后,方法还包括:检测发布内容中是否包含URL;以及如果包含URL,则检测URL是否是恶意链接。
至此已经结合优选实施例对本发明进行了描述。应该理解,本领域技术人员在不脱离本发明的精神和范围的情况下,可以进行各种其它的改变、替换和添加。因此,本发明的范围不局限于上述特定实施例,而应由所附权利要求所限定。
Claims (16)
1.一种生成安全二维码的方法,包括:
a)接收发布方的证书信息、认证信息和想要发布的发布内容;
b)生成所述发布内容的数字摘要;
c)使用与所述证书信息相对应的加密密钥对所述认证信息和所述数字摘要进行加密,以获得加密信息;以及
d)使用分隔符将所述发布内容、所述证书信息、以及所述加密信息相连,并将所述发布内容、所述证书信息、以及所述加密信息编码为二维码形式,以获得安全二维码,
其中,所述认证信息包括发布者身份信息、发布内容介绍、相关说明文字中的任意一种或其中的任意组合。
2.根据权利要求1所述的方法,其中,所述证书信息包括证书内容、证书ID、证书的密码中的任意一种或其中的任意组合。
3.根据权利要求1所述的方法,其中,在所述步骤d)之前还包括:接收与二维码生成相关的选项,以及所述步骤d)还包括:根据所述选项,将所述发布内容、所述证书信息、以及所述加密信息编码为二维码形式,以获得安全二维码。
4.根据权利要求3所述的方法,其中,所述选项包括:二维码的制式和二维码的样式。
5.一种使用安全二维码的方法,包括:
a)对所述安全二维码解码,并对解码后信息中的分隔符进行定位,以获得发布内容、证书信息、以及加密信息;
b)获取由所述证书信息所代表的证书的解密密钥;
c)使用所述解密密钥对所述加密信息进行解密,以获得认证信息和第一数字摘要;
d)计算所述发布内容的第二数字摘要,并与所述第一数字摘要进行比较;
e)如果两个数字摘要匹配,则确定所述安全二维码内容未被篡改,否则确定所述安全二维码被篡改,
其中,所述认证信息包括发布者身份信息、发布内容介绍、相关说明文字中的任意一种或其中的任意组合。
6.根据权利要求5所述的方法,其中,所述证书信息包括证书内容、证书ID、证书的密码中的任意一种或其中的任意组合。
7.根据权利要求5所述的方法,其中,在所述步骤e)之后,所述方法还包括:
如果确定所述安全二维码内容未被篡改,则向用户呈现所述发布内容和/或所述认证信息。
8.根据权利要求5所述的方法,其中,在所述步骤e)之后,所述方法还包括:
检测所述发布内容中是否包含URL;
以及如果包含URL,则检测所述URL是否是恶意链接。
9.一种生成安全二维码的设备,包括:
接收单元,用于接收发布方的证书信息、认证信息和想要发布的发布内容;
生成单元,用于生成所述发布内容的数字摘要;
加密单元,用于使用与所述证书信息相对应的加密密钥对所述认证信息和所述数字摘要进行加密,以获得加密信息;以及
编码单元,用于使用分隔符将所述发布内容、所述证书信息、以及所述加密信息相连,并将所述发布内容、所述证书信息、以及所述加密信息编码为二维码形式,以获得安全二维码,
其中,所述认证信息包括发布者身份信息、发布内容介绍、相关说明文字中的任意一种或其中的任意组合。
10.根据权利要求9所述的设备,其中,所述证书信息包括证书内容、证书ID、证书的密码中的任意一种或其中的任意组合。
11.根据权利要求9所述的设备,其中,所述接收单元还用于:接收与二维码生成相关的选项,以及所述编码单元还用于:根据所述选项,将所述发布内容、所述证书信息、以及所述加密信息编码为二维码形式,以获得安全二维码。
12.根据权利要求11所述的设备,其中,所述选项包括:二维码的制式和二维码的样式。
13.一种使用安全二维码的设备,包括:
解码单元,用于对所述安全二维码解码,并对解码后信息中的分隔符进行定位,以获得发布内容、证书信息、以及加密信息;
获取单元,用于获取由所述证书信息所代表的证书的解密密钥;
解密单元,用于使用所述解密密钥对所述加密信息进行解密,以获得认证信息和第一数字摘要;
计算比较单元,用于计算所述发布内容的第二数字摘要,并与所述第一数字摘要进行比较;
确定单元,用于如果两个数字摘要匹配,则确定所述安全二维码内容未被篡改,否则确定所述安全二维码被篡改,
其中,所述认证信息包括发布者身份信息、发布内容介绍、相关说明文字中的任意一种或其中的任意组合。
14.根据权利要求13所述的设备,其中,所述证书信息包括证书内容、证书ID、证书的密码中的任意一种或其中的任意组合。
15.根据权利要求13所述的设备,其中,所述设备还包括:
呈现单元,用于如果确定所述安全二维码内容未被篡改,则向用户呈现所述发布内容和/或所述认证信息。
16.根据权利要求13所述的设备,其中,所述设备还包括:
检测单元,用于检测所述发布内容中是否包含URL,以及如果包含URL,则检测所述URL是否是恶意链接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310233577.2A CN103295046B (zh) | 2013-06-13 | 2013-06-13 | 生成和使用安全二维码的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310233577.2A CN103295046B (zh) | 2013-06-13 | 2013-06-13 | 生成和使用安全二维码的方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103295046A CN103295046A (zh) | 2013-09-11 |
CN103295046B true CN103295046B (zh) | 2016-08-24 |
Family
ID=49095873
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310233577.2A Expired - Fee Related CN103295046B (zh) | 2013-06-13 | 2013-06-13 | 生成和使用安全二维码的方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103295046B (zh) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103514517A (zh) * | 2013-10-09 | 2014-01-15 | 上海谱盟光电科技有限公司 | 杆塔二维码辨识系统和方法 |
CN103607377B (zh) * | 2013-10-29 | 2016-03-09 | 小米科技有限责任公司 | 信息分享方法、装置及系统 |
CN103559526A (zh) * | 2013-10-31 | 2014-02-05 | 北京天威诚信电子商务服务有限公司 | 二维码的生成与验证方法及系统 |
CN103647779A (zh) * | 2013-12-16 | 2014-03-19 | 北京奇虎科技有限公司 | 一种通过二维码检测钓鱼欺诈信息的方法及装置 |
CN103763686A (zh) * | 2013-12-23 | 2014-04-30 | 北京奇虎科技有限公司 | 短消息的处理方法和装置 |
CN103902950A (zh) * | 2014-04-03 | 2014-07-02 | 北京金水永利科技有限公司 | 一种基于加密二维码的野外设施信息识别系统 |
CN104980332A (zh) * | 2014-04-14 | 2015-10-14 | 深圳市亚汇讯实业有限公司 | 一种远程数据管理的系统及方法 |
CN105187357A (zh) * | 2014-06-04 | 2015-12-23 | 北京大学深圳研究生院 | 二维码认证方法和系统 |
CN104008322B (zh) * | 2014-06-14 | 2016-10-05 | 河南融信数据有限公司 | 基于可靠数字签名的二维码发布者身份认证方法 |
CN105577376A (zh) * | 2014-10-13 | 2016-05-11 | 航天信息股份有限公司 | 二维码的编解码和认证方法和装置 |
CN104484847A (zh) * | 2014-10-22 | 2015-04-01 | 刘品新 | 基于可信电子档案、摘要加密及二维码的食品生产流通全过程溯源系统 |
CN105704100A (zh) * | 2014-11-26 | 2016-06-22 | 阿里巴巴集团控股有限公司 | 一种文件识别方法及装置 |
CN104767615A (zh) * | 2015-03-02 | 2015-07-08 | 苏盛辉 | 基于非对称身份的商品防伪方法 |
CN106293787A (zh) * | 2015-05-26 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 一种应用的获取方法、装置及系统 |
CN105096115B (zh) * | 2015-06-29 | 2020-04-03 | 深圳市可秉资产管理合伙企业(有限合伙) | 无销售点终端的电子支付交易的方法及移动装置 |
CN105184123A (zh) * | 2015-09-15 | 2015-12-23 | 重庆智韬信息技术中心 | 构建双层二维码信息实现对用户安全提醒的方法 |
CN105809044A (zh) * | 2016-03-07 | 2016-07-27 | 武汉华工安鼎信息技术有限责任公司 | 利用纸介质信息加密的安全传输系统及其方法 |
CN106022423B (zh) * | 2016-05-05 | 2019-03-29 | 深圳市通用条码技术开发中心 | 多功能二维码制作方法及识读解密方法 |
CN106022738A (zh) * | 2016-06-02 | 2016-10-12 | 中国联合网络通信集团有限公司 | 一种二维码安全支付方法、终端及系统 |
CN107633172B (zh) * | 2016-07-18 | 2021-12-14 | 北京搜狗科技发展有限公司 | 一种恶意网页监测方法及电子设备 |
CN106778994B (zh) * | 2016-11-24 | 2020-08-25 | 中国银联股份有限公司 | 一种二维码生成、解析方法及装置 |
CN108229596B (zh) * | 2016-12-09 | 2024-03-26 | 北京大码技术有限公司 | 组合二维码、电子证书载体、生成、识读装置及方法 |
CN109214474B (zh) * | 2017-06-30 | 2022-05-24 | 阿里巴巴集团控股有限公司 | 基于信息编码的行为分析、信息编码风险分析方法和装置 |
CN107222501A (zh) * | 2017-07-06 | 2017-09-29 | 中国电子科技集团公司第二十九研究所 | 一种基于信息识别码非电磁信号的信息交互安全传输方法及系统 |
CN108229966A (zh) * | 2018-01-26 | 2018-06-29 | 中国银行股份有限公司 | 一种银行卡交易处理方法、银行卡及银行服务器 |
CN110708273B (zh) * | 2018-07-10 | 2022-03-04 | 杭州海康威视数字技术股份有限公司 | 一种数据加密、解密方法及数据加密解密系统 |
CN109409472B (zh) | 2018-08-24 | 2022-11-22 | 创新先进技术有限公司 | 二维码生成方法、数据处理方法、装置及服务器 |
CN109447623A (zh) * | 2018-09-19 | 2019-03-08 | 新开普电子股份有限公司 | 一种基于二维码支付安全认证方法 |
CN109544153A (zh) * | 2018-10-16 | 2019-03-29 | 珠海横琴现联盛科技发展有限公司 | 基于防篡改加密算法的电子凭证票据验证方法 |
CN109447203A (zh) * | 2018-11-07 | 2019-03-08 | 广州凯晟信息科技有限公司 | 二维码加密、解密方法、装置、云服务器及系统 |
CN109670222B (zh) * | 2018-12-07 | 2023-05-09 | 广联达科技股份有限公司 | 一种模型或图纸在线差异对比方法、装置和系统 |
CN109740717A (zh) * | 2018-12-30 | 2019-05-10 | 尤尼泰克(嘉兴)信息技术有限公司 | 一种数据自我核验的编码、解码方法 |
CN112861109B (zh) * | 2021-02-07 | 2022-03-25 | 新大陆(福建)公共服务有限公司 | 一种基于ctid平台和前置系统生成的数字身份码及交互方法 |
CN117932573A (zh) * | 2022-10-17 | 2024-04-26 | 华为云计算技术有限公司 | 一种二维码防伪系统、方法及相关设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102750510A (zh) * | 2012-06-19 | 2012-10-24 | 袁开国 | 基于pki和hash的可信二维码方案 |
CN102902997A (zh) * | 2012-09-21 | 2013-01-30 | 华南农业大学 | 一种二维码混合编码、解码装置及方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102779263A (zh) * | 2012-06-19 | 2012-11-14 | 袁开国 | 基于pki和数字签名的可信二维码方案 |
CN102799990A (zh) * | 2012-06-19 | 2012-11-28 | 袁开国 | 基于pki的双二维码产品防伪方案 |
CN102799989A (zh) * | 2012-06-19 | 2012-11-28 | 袁开国 | 基于pki和二维码的产品溯源方案 |
-
2013
- 2013-06-13 CN CN201310233577.2A patent/CN103295046B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102750510A (zh) * | 2012-06-19 | 2012-10-24 | 袁开国 | 基于pki和hash的可信二维码方案 |
CN102902997A (zh) * | 2012-09-21 | 2013-01-30 | 华南农业大学 | 一种二维码混合编码、解码装置及方法 |
Non-Patent Citations (2)
Title |
---|
《基于PKI的电子签章系统的实现》;郭正荣,周城;《计算机科学》;20060930(第6期);第3节、图1,3,4 * |
《基于网格矩阵码的烟花爆竹监管平台的研究》;赵洋;《中国优秀硕士学位论文全文数据库 信息科技辑 》;20121015(第10期);第3.3.1节、图3.1 * |
Also Published As
Publication number | Publication date |
---|---|
CN103295046A (zh) | 2013-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103295046B (zh) | 生成和使用安全二维码的方法和设备 | |
CN105512881B (zh) | 一种基于二维码完成支付的方法及终端 | |
CN105099692B (zh) | 安全校验方法、装置、服务器及终端 | |
CN101305545B (zh) | 用于管理安全可移除介质的数字版权的方法和装置 | |
CN104662864A (zh) | 使用了移动认证应用的用户方便的认证方法和装置 | |
KR20150038157A (ko) | 로그인 인증 방법 및 시스템 | |
CN103281187B (zh) | 安全认证方法、设备和系统 | |
CN112883361B (zh) | 应用程序的功能跳转方法、装置、计算机设备及存储介质 | |
CN104125064B (zh) | 一种动态密码认证方法、客户端及认证系统 | |
CN103067174A (zh) | 一种在移动操作系统中完成数字签名的方法和系统 | |
CN112202794A (zh) | 交易数据的保护方法、装置、电子设备和介质 | |
CN112131564A (zh) | 加密数据通信方法、装置、设备以及介质 | |
EP1785901B1 (en) | Secure License Key Method and System | |
CN112734361B (zh) | 一种分布式协同办公数据处理方法及系统 | |
CN113961893A (zh) | 基于区块链的用户登录方法、装置、电子设备及存储介质 | |
CN101916350B (zh) | 终端阅读内容的保护方法及系统 | |
CN113852628B (zh) | 一种去中心化的单点登录方法、装置及存储介质 | |
CN105577376A (zh) | 二维码的编解码和认证方法和装置 | |
CN109951416B (zh) | 一种可信验证方法及终端 | |
CN108900472A (zh) | 信息的传输方法和装置 | |
Huang et al. | Mutual authentications to parties with QR-code applications in mobile systems | |
CN115150193A (zh) | 一种数据传输中敏感信息加密方法、系统和可读存储介质 | |
CN115567271A (zh) | 鉴权方法和装置、页面跳转方法和装置、电子设备及介质 | |
CN109447203A (zh) | 二维码加密、解密方法、装置、云服务器及系统 | |
CN112699366B (zh) | 跨平台免登安全通讯方法、装置和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160824 Termination date: 20190613 |