CN111860726A - 二维码显示方法、验证方法、设备及计算机可读存储介质 - Google Patents
二维码显示方法、验证方法、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111860726A CN111860726A CN202010754275.XA CN202010754275A CN111860726A CN 111860726 A CN111860726 A CN 111860726A CN 202010754275 A CN202010754275 A CN 202010754275A CN 111860726 A CN111860726 A CN 111860726A
- Authority
- CN
- China
- Prior art keywords
- dimensional code
- displayed
- frame
- information
- target area
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000012795 verification Methods 0.000 title claims abstract description 65
- 238000012545 processing Methods 0.000 claims abstract description 31
- 238000013507 mapping Methods 0.000 claims description 58
- 230000036541 health Effects 0.000 claims description 57
- 230000003068 static effect Effects 0.000 abstract description 6
- 238000005242 forging Methods 0.000 abstract description 5
- 238000004891 communication Methods 0.000 description 12
- 238000007689 inspection Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 239000003086 colorant Substances 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K17/00—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
- G06K17/0022—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisious for transferring data to distant stations, e.g. from a sensing device
- G06K17/0025—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisious for transferring data to distant stations, e.g. from a sensing device the arrangement consisting of a wireless interrogation device in combination with a device for optically marking the record carrier
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Computer Networks & Wireless Communication (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种二维码显示方法、验证方法、显示设备、验证设备及计算机可读存储介质,所述显示方法包括:获取待显示二维码;在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理,其中,所述目标区域是所述待显示二维码中的部分区域。本发明中当采用截图、翻摄和修图手段来伪造二维码时,由于得到的是静态的二维码而不是存在动态区域的动态二维码,从而无法伪造成功,进而提高了二维码的伪造难度,也就提高了二维码的安全性。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种二维码显示方法、验证方法、显示设备、验证设备及计算机可读存储介质。
背景技术
二维码是一个近几年来非常流行的新型的条码技术,是在一维条码的基础上扩展出另一维具有可读性的条码,使用黑白矩形图案表示0进制数据,被设备扫描后可获取其中所包含的信息。目前,二维码的应用非常广泛,在日常购物、收款和信息验证等日常操作中,二维码为我们带来了极大的便利。但是,由于二维码往往涉及到我们的金钱和人身利益,一些不法分子通过截图、翻摄、修图等手段就可伪造二维码达到其不法目的,从而带来了二维码的安全问题。
发明内容
本发明的主要目的在于提供一种二维码显示方法、验证方法、显示设备、验证设备及计算机可读存储介质,旨在解决目前的二维码容易通过截图、翻摄、修图等手段伪造,安全性低的问题。
为实现上述目的,本发明提供一种二维码显示方法,所述方法包括以下步骤:
获取待显示二维码;
在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理,其中,所述目标区域是所述待显示二维码中的部分区域。
可选地,所述在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理的步骤包括:
基于刷新所述待显示二维码的帧画面的刷新时刻和/或所述待显示二维码中的携带信息,从所述待显示二维码的多个待选区域中确定所述帧画面对应的目标区域,并在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理。
可选地,所述基于刷新所述待显示二维码的帧画面的刷新时刻和所述待显示二维码中的携带信息,从所述待显示二维码的多个待选区域中确定所述帧画面对应的目标区域的步骤包括:
基于预设映射算法将刷新所述待显示二维码的帧画面的刷新时刻和所述待显示二维码中的携带信息映射到目标序号,其中,所述目标序号是所述待显示二维码中多个待选区域对应的区域序号中的一个;
将所述目标序号对应的待选区域作为所述帧画面对应的目标区域。
可选地,所述基于预设映射算法将刷新所述待显示二维码的帧画面的刷新时刻和所述待显示二维码中的携带信息映射到目标序号的步骤包括:
获取种子信息,其中,所述种子信息至少包括刷新所述待显示二维码的帧画面的刷新时刻;
按照预设哈希算法基于所述种子信息将所述携带信息映射到预设数量的时间桶得到映射值,将所述映射值作为目标序号,其中,所述预设数量为所述待显示二维码中待选区域的数量,且各待选区域的面积均小于所述待显示二维码的容错面积。
可选地,所述在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理的步骤包括:
在刷新所述待显示二维码的各帧画面时,将各帧画面对应的目标区域置空。
可选地,所述获取待显示二维码的步骤包括:
当检测到目标用户对应的二维码申请指令时,获取基于所述目标用户的标识信息生成的用户私钥;
将所述目标用户的二维码申请信息上传至服务器,以供所述服务器根据所述二维码申请信息反馈二维码原始内容数据;
采用所述用户私钥对所述二维码原始内容数据进行加密得到二维码加密内容数据;
根据所述二维码加密内容数据生成所述待显示二维码。
可选地,所述采用所述用户私钥对所述二维码原始内容数据进行加密得到二维码加密内容数据的步骤包括:
采用预设信息摘要算法生成所述二维码原始内容数据的摘要串;
采用所述用户私钥对所述摘要串进行加密得到二维码加密内容数据。
可选地,所述获取待显示二维码的步骤包括:
当检测到目标用户对应的二维码申请指令时,获取目标用户的二维码申请信息,其中,所述二维码申请信息至少包括所述目标用户的历史时空轨迹信息;
将所述目标用户的二维码申请信息上传至服务器,以供所述服务器根据所述历史时空轨迹信息和预设疫情风险信息生成所述目标用户的健康风险等级并返回;
根据所述健康风险等级生成所述目标用户的健康码,并将所述健康码作为所述待显示二维码。
为实现上述目的,本发明提供一种二维码验证方法,其特征在于,所述方法包括以下步骤:
扫描用户端中显示的二维码,识别扫描到的各帧二维码画面中对应的第一目标区域,根据扫描各帧二维码画面的扫描时刻对应从各帧二维码画面中确定第二目标区域;或,
扫描用户端中显示的二维码,识别所述二维码中的携带信息和扫描到的各帧二维码画面中对应的第一目标区域,根据所述携带信息从各帧二维码画面中确定第二目标区域;或,
扫描用户端中显示的二维码,识别所述二维码中的携带信息和扫描到的各帧二维码画面中对应的第一目标区域,根据所述携带信息和扫描各帧二维码画面的扫描时刻对应从各帧二维码画面中确定第二目标区域;
比对所述第一目标区域与所述第二目标区域的位置,根据比对结果得到二维码验证结果。
为实现上述目的,本发明还提供一种二维码显示设备,所述二维码显示设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的二维码显示程序,所述二维码显示程序被所述处理器执行时实现如上所述的二维码显示方法的步骤。
为实现上述目的,本发明还提供一种二维码验证设备,所述二维码验证设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的二维码验证程序,所述二维码验证程序被所述处理器执行时实现如上所述的二维码验证方法的步骤。
此外,为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有二维码显示程序,所述二维码显示程序被处理器执行时实现如上所述的二维码显示方法的步骤。
此外,为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有二维码验证程序,所述二维码验证程序被处理器执行时实现如上所述的二维码验证方法的步骤。
本发明中,通过获取待显示二维码,在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域预设动态处理,也即,相比于现有静态的二维码,本发明中在刷新待显示二维码的各帧画面时,各帧画面中二维码的部分区域是动态区域,连续刷新多帧画面形成动态的二维码,进而使得二维码的查验人员在不借助扫描设备的情况下,通过肉眼观察二维码,若不存在动态区域,即可直接判定二维码是伪造,从而降低了二维码的查验成本,在查验人员需要查验大量二维码的情况下,极大地提高了二维码的查验速度;并且,当采用截图、翻摄和修图手段来伪造二维码时,由于得到的是静态的二维码而不是存在动态区域的动态二维码,从而无法伪造成功,进而提高了二维码的伪造难度,也就提高了二维码的安全性。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的结构示意图;
图2为本发明二维码显示方法第一实施例的流程示意图;
图3为本发明实施例涉及的一种二维码示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
需要说明的是,本发明实施例二维码显示设备可以是智能手机、个人计算机和服务器等设备,在此不做具体限制。
如图1所示,该二维码显示设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的设备结构并不构成对二维码显示设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及二维码显示程序。其中,操作系统是管理和控制设备硬件和软件资源的程序,支持二维码显示程序以及其它软件或程序的运行。在图1所示的设备中,用户接口1003主要用于与客户端进行数据通信;网络接口1004主要用于服务器建立通信连接;处理器1001可以用于调用存储器1005中存储的二维码显示程序,并执行以下操作:
获取待显示二维码;
在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理,其中,所述目标区域是所述待显示二维码中的部分区域。
进一步地,所述在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理的步骤包括:
基于刷新所述待显示二维码的帧画面的刷新时刻和/或所述待显示二维码中的携带信息,从所述待显示二维码的多个待选区域中确定所述帧画面对应的目标区域,并在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理。
进一步地,所述基于刷新所述待显示二维码的帧画面的刷新时刻和所述待显示二维码中的携带信息,从所述待显示二维码的多个待选区域中确定所述帧画面对应的目标区域的步骤包括:
基于预设映射算法将刷新所述待显示二维码的帧画面的刷新时刻和所述待显示二维码中的携带信息映射到目标序号,其中,所述目标序号是所述待显示二维码中多个待选区域对应的区域序号中的一个;
将所述目标序号对应的待选区域作为所述帧画面对应的目标区域。
进一步地,所述基于预设映射算法将刷新所述待显示二维码的帧画面的刷新时刻和所述待显示二维码中的携带信息映射到目标序号的步骤包括:
获取种子信息,其中,所述种子信息至少包括刷新所述待显示二维码的帧画面的刷新时刻;
按照预设哈希算法基于所述种子信息将所述携带信息映射到预设数量的时间桶得到映射值,将所述映射值作为目标序号,其中,所述预设数量为所述待显示二维码中待选区域的数量,且各待选区域的面积均小于所述待显示二维码的容错面积。
进一步地,所述在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理的步骤包括:
在刷新所述待显示二维码的各帧画面时,将各帧画面对应的目标区域置空。
进一步地,所述获取待显示二维码的步骤包括:
当检测到目标用户对应的二维码申请指令时,获取基于所述目标用户的标识信息生成的用户私钥;
将所述目标用户的二维码申请信息上传至服务器,以供所述服务器根据所述二维码申请信息反馈二维码原始内容数据;
采用所述用户私钥对所述二维码原始内容数据进行加密得到二维码加密内容数据;
根据所述二维码加密内容数据生成所述待显示二维码。
进一步地,所述采用所述用户私钥对所述二维码原始内容数据进行加密得到二维码加密内容数据的步骤包括:
采用预设信息摘要算法生成所述二维码原始内容数据的摘要串;
采用所述用户私钥对所述摘要串进行加密得到二维码加密内容数据。
进一步地,所述获取待显示二维码的步骤包括:
当检测到目标用户对应的二维码申请指令时,获取目标用户的二维码申请信息,其中,所述二维码申请信息至少包括所述目标用户的历史时空轨迹信息;
将所述目标用户的二维码申请信息上传至服务器,以供所述服务器根据所述历史时空轨迹信息和预设疫情风险信息生成所述目标用户的健康风险等级并返回;
根据所述健康风险等级生成所述目标用户的健康码,并将所述健康码作为所述待显示二维码。
进一步地,此外本发明实施例还提出一种二维码验证设备,本发明实施例二维码验证设备可以是智能手机、个人计算机和服务器等设备,在此不做具体限制。该二维码验证设备可以包括:处理器,例如CPU,网络接口,用户接口,存储器,通信总线。其中,通信总线用于实现这些组件之间的连接通信。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口还可以包括标准的有线接口、无线接口。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器可选的还可以是独立于前述处理器的存储装置。
作为一种计算机存储介质的存储器中可以包括操作系统、网络通信模块、用户接口模块以及二维码显示程序。其中,操作系统是管理和控制设备硬件和软件资源的程序,支持二维码显示程序以及其它软件或程序的运行。在图1所示的设备中,用户接口主要用于与客户端进行数据通信;网络接口主要用于服务器建立通信连接;处理器可以用于调用存储器中存储的二维码显示程序,并执行以下操作:
扫描用户端中显示的二维码,识别扫描到的各帧二维码画面中对应的第一目标区域,根据扫描各帧二维码画面的扫描时刻对应从各帧二维码画面中确定第二目标区域;或,
扫描用户端中显示的二维码,识别所述二维码中的携带信息和扫描到的各帧二维码画面中对应的第一目标区域,根据所述携带信息从各帧二维码画面中确定第二目标区域;或,
扫描用户端中显示的二维码,识别所述二维码中的携带信息和扫描到的各帧二维码画面中对应的第一目标区域,根据所述携带信息和扫描各帧二维码画面的扫描时刻对应从各帧二维码画面中确定第二目标区域;
比对所述第一目标区域与所述第二目标区域的位置,根据比对结果得到二维码验证结果。
基于上述的结构,提出二维码显示方法的各实施例。
参照图2,图2为本发明二维码显示方法第一实施例的流程示意图。需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。本发明二维码显示方法各个实施例的执行主体可以是智能手机、个人计算机和服务器等设备,为便于描述,以下各实施例中省略执行主体进行阐述。在本实施例中,二维码显示方法包括:
步骤S10,获取待显示二维码;
对于需要显示的二维码,可将其作为待显示二维码。待显示二维码可以是实时生成的,也可以是预先生成后保存在本地的,或者是从其他端获取的,例如从服务端申请得到的二维码,本实施例中并不限制待显示二维码的来源。待显示二维码可以是任意码制的二维码,在本实施例中也不做限制。此外应当理解的是,根据使用场景不同,待显示二维码中携带有不同的数据信息,本实施例对二维码所使用的场景也不做限制,例如,二维码可以是付款二维码、收款二维码或身份验证二维码等等。
步骤S20,在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域内做预设动态处理,其中,所述目标区域是所述待显示二维码中的部分区域。
在获取到待显示二维码后需要显示待显示二维码,在本实施例中显示待显示二维码是一帧一帧画面刷新显示的。可以理解的是,目前的静态二维码在显示时每一帧显示的二维码都是相同的,也可以说是不会刷新画面的,而在本实施例中,各帧画面是不同的,从而形成动态二维码。
具体地,各帧画面分别对应目标区域,目标区域是待显示二维码中的部分区域。可以理解的是,待显示二维码对应一个图形区域,如矩形的二维码对应的是一个矩形区域;目标区域可以是该图形区域中的一部分区域。各帧画面对应的目标区域可以是相同的,也可以是不同的,一帧画面中目标区域可以只有一个,也可以有多个。各帧画像对应的目标区域可以是在显示该二维码之前确定,也即,提前确定各帧画面对应的目标区域;也可以是在显示待显示二维码时,实时确定刷新时刻对应的目标区域,也即,实时确定当前帧画面对应的目标区域。确定目标区域即指确定待显示二维码中哪一部分区域作为目标区域。
当目标区域在待显示二维码的数据区域时,目标区域的面积可以小于二维码的容错面积,以避免目标区域影响二维码的内容识别。其中容错面积即当二维码上小于容错面积的区域被遮挡时不会影响对二维码的内容识别。
可以按照预先设置的规则确定目标区域。具体地,可预先设置待显示二维码整个区域内可作为目标区域的多个待选区域;可以理解的是,待显示二维码中部分区域是不能做更改的,否则可能会影响二维码的识别,故当待显示二维码在显示后需要被其他设备扫描并识别时,待选区域应不包括这些不能做更改的区域;可按照预先设置的规则,从各待选区域中选取一个或多个作为目标区域。例如,预先确定N个待选区域,在显示待显示二维码之前,可以从N个待选区域中随机选取M个,分别作为M帧画面对应的目标区域,在显示待显示二维码时,对每帧画面中的目标区域做预设动态处理。
预设动态处理可以是预先设置的处理方式,根据具体需要可设置不同的动态处理方式。例如,当各帧画面的目标区域相同时,动态处理可以是以一定频率对目标区域置空或设置为其他颜色(黑色和白色外的颜色);当各帧画面的目标区域不都相同时,动态处理可以是在显示该帧画面时,对该帧画面对应的目标区域置空或设置为其他颜色。其中,置空即将该区域设置为空白。
在本实施例中,通过获取待显示二维码,在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域预设动态处理,也即,相比于现有静态的二维码,本实施例中在刷新待显示二维码的各帧画面时,各帧画面中二维码的部分区域是动态区域,连续刷新多帧画面形成动态的二维码,进而使得二维码的查验人员在不借助扫描设备的情况下,通过肉眼观察二维码,若不存在动态区域,即可直接判定二维码是伪造,从而降低了二维码的查验成本,在查验人员需要查验大量二维码的情况下,极大地提高了二维码的查验速度;并且,当采用截图、翻摄和修图手段来伪造二维码时,由于得到的是静态的二维码而不是存在动态区域的动态二维码,从而无法伪造成功,进而提高了二维码的伪造难度,也就提高了二维码的安全性。
进一步地,所述步骤S20包括:
步骤S201,基于刷新所述待显示二维码的帧画面的刷新时刻和/或所述待显示二维码中的携带信息,从所述待显示二维码的多个待选区域中确定所述帧画面对应的目标区域,并在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理。
在一实施方式中,确定待显示二维码中目标区域的方式可以是:基于刷新待显示二维码的帧画面的刷新时刻从待显示二维码的多个待选区域中确定该帧画面对应的目标区域。其中,刷新待显示二维码的帧画面的刷新时刻即设备刷新该帧画面时从设备时钟中读取到的时刻值,具体读取到哪一时间刻度可根据需要设置,例如,可只读秒,也可以是读分和秒。预先可设置显示待显示二维码时的刷新帧率。例如,当每秒刷新一帧,刷新时刻只读秒时,在t秒刷新第一帧,则根据t确定第一帧对应的目标区域,并对该目标区域做动态处理,在t+1秒刷新第二帧,则根据t+1确定第二帧对应的目标区域,并对该目标区域做动态处理,以此类推。
根据刷新时刻来从待选区域中确定目标区域的方式可以有多种。例如,预先在二维码中设置多个待选区域,这些待选区域有对应的标识,如采用待选区域中一像素点的坐标值作为该待选区域的标识,或对各个待选区域进行编号,将序号作为标识;采用预设的映射算法,将刷新时刻映射到一个区域标识,将该区域标识对应的待选区域作为该刷新时刻对应的目标区域。映射算法可采用自定义的算法,或现有的映射算法,在此不进行详细赘述。
通过根据刷新二维码帧画面时的刷新时刻实时确定帧画面二维码中的目标区域,使得二维码中的动态区域具有实时性,即同一二维码在不同时刻显示时,其动态区域是不同的。那么,要伪造二维码就需要知道二维码中目标区域的确定规则,而这个规则是显示二维码的设备中才有的,伪造者难以获得,从而增加了二维码的伪造难度。
在另一实施方式中,确定待显示二维码中目标区域的方式可以是:基于待显示二维码中的携带信息从待显示二维码的多个待选区域中确定目标区域。其中,携带信息是指二维码中携带的数据信息,若待显示二维码是存储在本地或从其他端获取到的,则可对待显示二维码进行识别得到携带信息。根据携带信息从各待选区域中确定目标区域的方式也可以有很多种。例如,同样可设置各个待选区域,以及待选区域的区域标识,要确定N帧画面中每帧画面对应的目标区域,则可采用预设的映射算法,将携带信息映射到N个区域标识,将这N个区域标识对应的待选区域分别作为各帧画面的目标区域。
通过二维码中的携带信息来确定二维码中的目标区域,使得当二维码中的携带信息不同时,其目标区域是不同的,从而当伪造者对二维码中的携带信息进行篡改时,也能够通过目标区域的位置判定其是伪造的,从而增加二维码的伪造难度。同样地,要伪造二维码,也需要知道根据携带信息确定目标区域的规则,而这个规则是显示二维码的设备中才有的,伪造者难以获得。
在另一实施方式中,结合上述两种实施方式,可基于刷新待显示二维码帧画面的刷新时刻和携带信息从待显示二维码的多个待选区域中确定目标区域。具体地,可采用预设的映射算法,将刷新时刻和携带信息映射到一个区域标识,将该区域标识对应的待选区域作为该刷新时刻对应的目标区域。
进一步地,基于上述第一实施例,提出本发明二维码显示方法第二实施例,在本实施例中,所述步骤S201中基于刷新所述待显示二维码的帧画面的刷新时刻和所述待显示二维码中的携带信息,从所述待显示二维码的多个待选区域中确定所述帧画面对应的目标区域的步骤包括:
步骤S2011,基于预设映射算法将刷新所述待显示二维码的帧画面的刷新时刻和所述待显示二维码中的携带信息映射到目标序号,其中,所述目标序号是所述待显示二维码中多个待选区域对应的区域序号中的一个。
步骤S2022,将所述目标序号对应的待选区域作为所述帧画面对应的目标区域。
在本实施例中,当基于刷新待显示二维码的帧画面的刷新时刻和待显示二维码中的携带信息确定该帧画面对应的目标区域时,可以预先设置多个待选区域,并对多个待选区域进行数字编号,得到各个待选区域对应的区域序号。基于预设映射算法将刷新时刻和携带信息映射到一个目标序号,这个目标序号是各个待选区域对应的区域序号中的一个。将目标序号对应的待选区域作为该帧画面对应的目标区域。预设映射算法可以是预先设置的映射算法,该映射算法可实现将任意数值映射到目标数值区间内。
也即,根据映射算法,不同的刷新时刻或不同的携带信息进行映射得到的序号是不同的,那么由于每一帧的刷新时刻是不同的,所以得到的目标序号也是不同的,从而各帧画面对应的目标区域是不同的,且目标区域的位置与刷新该帧画面的时刻相关,从而使得显示出的动态二维码中的动态区域是与时间相关的,具有实时性。那么,要伪造二维码就需要知道二维码中目标区域的确定规则,而这个规则是显示二维码的设备中才有的,伪造者难以获得,从而增加了二维码的伪造难度。
进一步地,步骤S2011包括:
步骤a,获取种子信息,其中,所述种子信息至少包括刷新所述待显示二维码的帧画面的刷新时刻;
在本实施例中,预设映射算法可以是预设哈希算法,哈希算法可以是采用现有哈希算法中的一种。先获取种子信息。其中,种子信息可以至少包括刷新待显示二维码的帧画面的刷新时刻。刷新时刻在上述实施例中已作出解释,在此不再赘述。种子信息还可包括刷新时刻外的其他信息,例如,当待显示二维码是与用户唯一对应的二维码时,如用户健康码,种子信息中还可包括用户标识信息。
步骤b,按照预设哈希算法基于所述种子信息将所述携带信息映射到预设数量的时间桶得到映射值,将所述映射值作为目标序号,其中,所述预设数量为所述待显示二维码中待选区域的数量,且各待选区域的面积均小于所述待显示二维码的容错面积。
在获取到种子信息后,按照预设哈希算法基于该种子信息将携带信息映射到预设数量的时间桶得到映射值,将映射值作为目标序号。预设数量为时间桶的数量,也为待显示二维码中待选区域的数量,那么各个待选区域的区域序号是按照0至预设数量编号的。按照哈希算法基于种子信息将携带信息映射到预设数量的时间桶具体是指:当待选区域的数量为M个时,预设数量为M,按照哈希算法,基于种子信息和携带信息进行计算得到一个映射值,这个映射值是在0~M之间的一个值,也即映射到预设数量为M的时间桶。当种子信息改变时,得到的映射值是不同的。各个待选区域的区域面积均小于待显示二维码的容错面积。
进一步地,如图3所示,可将二维码的中间区域划分为N*N个待选区域,每个待选区域的面积小于二维码的容错面积。那么,预设数量设置为N*N。需要说明的是,图3只是给出了一种待选区域的划分示例,具体实施时可按照需要划分出不同样式和位置的待选区域。
在本实施例中,通过将刷新待显示二维码的刷新时刻做为种子,按照哈希算法将二维码中的携带信息映射到预设数量的时间桶,得到映射值,将映射值作为目标序号,将目标序号对应的待选区域作为该帧画面对应的目标区域。由于映射值是以刷新时刻为种子计算得到的,使得目标区域具备实时性,增加了二维码伪造难度。又由于将二维码中的携带信息进行映射,使得当待显示二维码中的携带信息被篡改时,无法得到同样的目标区域,从而增加了二维码伪造难度。即使伪造者知道了是根据二维码的携带信息和刷新时刻来确定目标区域,其也难以获知设备中采用的是哪一种哈希算法,故进一步增加了二维码伪造难度。
进一步地,所述步骤S20包括:
步骤S202,在刷新所述待显示二维码的各帧画面时,将各帧画面对应的目标区域置空。
在一实施方式中,对目标区域的预设动态处理可以是在刷新待显示二维码的各帧画面时,将各帧画面对应的目标区域置空。也即,在每刷新一帧画面时,预先或实时确定了该帧画面对应的目标区域,则将该目标区域置空,置空即将该区域置为空白。当二维码中的待选区域按照如图3所示进行划分时,在显示待显示二维码时,每一帧画面会出现至少一个小格子是空白的,那么多帧画面连续刷新时,就会形成有跳动的小白格的动态二维码。
进一步地,基于上述第一和/或二实施例,提出本发明二维码显示方法第三实施例。在本实施例中,所述步骤S10包括:
步骤S101,当检测到目标用户对应的二维码申请指令时,获取基于所述目标用户的标识信息生成的用户私钥;
在本实施例中,二维码显示方法可以应用于用户端,例如应用于用户手机上的小程序。用户端中可设置供用户申请二维码的用户交互界面,用户基于用户交互界面可触发二维码申请指令。用户端通过用户的标识信息区分各个用户,其中,用户的标识信息可以是用户的手机号码、身份证号码等具备唯一属性的标识信息。
当用户端检测到目标用户对应的二维码申请指令时,获取基于该目标用户的标识信息生成的用户私钥。用户私钥可以是根据目标用户的标识信息生成的,并与目标用户的标识信息绑定,不可更改。具体地,可以以用户的标识信息为种子,采用密钥生成算法生成用户私钥,同时,也可生成与私钥对应的公钥。密钥生成算法可采用常用的算法,在此不作限制。
步骤S102,将所述目标用户的二维码申请信息上传至服务器,以供所述服务器根据所述二维码申请信息反馈二维码原始内容数据;
用户端将目标用户的二维码申请信息上传至服务器。其中,二维码申请信息即向服务器申请二维码时所需要提交的信息,可以理解的是,根据具体的应用场景不同,二维码申请信息的内容不同。例如,当要申请的是健康码时,二维码申请信息中可包括目标用户的健康证明等健康信息。二维码申请信息可以是用户通过用户交互界面上传至用户端的,也可以是用户端从其他第三方平台拉取的,具体并不限制其来源。
服务器接收二维码申请信息,并根据二维码申请信息反馈二维码原始内容数据。具体地,根据具体应用场景不同,服务器可对二维码申请信息进行审核或验证操作,并生成与该二维码申请信息对应的二维码原始内容数据。例如,当要申请的是健康码时,服务器可根据二维码申请信息中的健康信息确定目标用户的健康风险等级,进而将健康风险等级作为二维码原始内容数据返回给用户端。
进一步地,当待显示二维码是健康码时,二维码申请信息中的健康信息可以是目标用户的历史时空轨迹信息。历史时空轨迹信息可包括用户历史一段时间内所经过的地方的坐标信息。历史时空轨迹信息可由用户端平时根据定位信息进行记录得到。服务器中记录已公布的疫情风险信息,疫情风险信息可包括疫情发生地区和感染者接触过的地区的坐标范围,服务器可将用户端上传的历史时空轨迹信息与疫情风险信息进行匹配,根据其匹配程度得到一个风险等级(健康等级),将风险等级作为二维码原始内容数据返回给用户端。
用户端接收服务器反馈的该二维码原始内容数据。
步骤S103,采用所述用户私钥对所述二维码原始内容数据进行加密得到二维码加密内容数据;
步骤S104,根据所述二维码加密内容数据生成所述待显示二维码。
用户端可采用目标用户的用户私钥对该二维码原始内容数据进行加密,得到二维码加密内容数据。其中采用私钥对数据进行加密的方法可采用常用的私钥加密算法,在此不进行详细赘述。
用户端根据二维码加密内容数据生成待显示二维码。具体地,用户端可将二维码加密内容数据作为二维码所携带的内容数据,按照二维码生成规则,生成待显示二维码。其中,二维码生成规则可以是常用的二维码码制所对应的规则,在此不进行详细赘述。
在本实施例中,通过目标用户的标识信息生成目标用户的私钥,并采用私钥对目标用户申请到的二维码原始内容数据进行加密后再生成待显示二维码,使得伪造者在没有公钥的情况下无法对二维码中的信息进行篡改,从而增加了二维码的伪造难度,提高了二维码的安全性。
进一步地,所述步骤S103包括:
步骤S1031,采用预设信息摘要算法生成所述二维码原始内容数据的摘要串;
步骤S1032,采用所述用户私钥对所述摘要串进行加密得到二维码加密内容数据。
在一实施方式中,用户端在从服务器获取到二维码原始内容数据后,可先采用预设信息摘要算法生成该二维码原始内容数据的摘要串。其中,预设信息摘要算法可以是常用的信息摘要算法(也称消息摘要算法),例如,MD5算法。通过信息摘要算法进行加密的数据无法被解密,且只有输入相同的明文数据经过相同的消息摘要算法才能得到相同的密文。在生成摘要串后,用户端再采用用户私钥对摘要串进行加密,得到二维码加密内容数据。
通过先采用信息摘要算法对二维码原始内容数据生成摘要串,再采用私钥对摘要串进行加密,实现了双重加密,进一步增加了二维码信息篡改难度,提升了二维码的安全性。且,通过信息摘要算法生成摘要串后,即使被他人利用公钥解密,得到的也是摘要串,而不是二维码原始内容数据,从而保护了目标用户的隐私安全。例如,当二维码是健康码时,能够避免用户的健康风险等级这样的敏感信息被他人随意获取,从而保护了用户的隐私安全。
进一步地,二维码申请信息中还可包括目标用户的公钥和标识信息,以供服务器将二维码原始内容数据、用户公钥和标识信息进行绑定存储。当二维码是健康码时,用户端可以是对目标用户的标识信息、从服务器获取到的健康风险等级(二维码原始内容数据)和用户健康信息生成摘要串,再对摘要串进行私钥加密。那么,当需要对二维码进行验证时,可采用扫描设备扫描二维码获得用户的标识信息和二维码中的携带信息,扫描设备将标识信息和携带信息上传服务器;服务器根据标识信息匹配对应的公钥、用户健康信息和二维码原始内容数据,采用公钥对携带信息进行解密得到解密结果,采用预设信息摘要算法生成标识信息、二维码原始内容数据和用户健康信息的摘要串;比对解密结果和摘要串是否相同,如果相同,则验证结果为成功,如果不相同,则说明扫描设备扫描的二维码是伪造的,验证不成功。从而实现了伪造私钥和篡改标识信息、健康信息和健康风险等级中任一信息时,都会验证失败,从而进一步增加了二维码的安全性。进一步服务器可将验证结果返回给扫描设备,扫描设备输出该验证结果,具体可以是在扫描设备的显示屏中显示该验证结果,或以语音、震动、提示音或亮灯等方式输出该验证结果。
进一步地,在一实施方式中,待显示二维码可以是用户健康码,所述步骤S10包括:
步骤S105,当检测到目标用户对应的二维码申请指令时,获取目标用户的二维码申请信息,其中,所述二维码申请信息至少包括所述目标用户的历史时空轨迹信息;
步骤S106,将所述目标用户的二维码申请信息上传至服务器,以供所述服务器根据所述历史时空轨迹信息和预设疫情风险信息生成所述目标用户的健康风险等级并返回;
步骤S107,根据所述健康风险等级生成所述目标用户的健康码,并将所述健康码作为所述待显示二维码。
当用户端检测到目标用户对应的二维码申请指令时,获取目标用户的二维码申请信息,其中,该二维码申请信息可至少包括目标用户的历史时空轨迹信息,还可包括用户的标识信息等其他信息。历史时空轨迹信息可包括用户历史一段时间内所经过的地方的坐标信息。历史时空轨迹信息可由用户端平时根据定位信息进行记录得到。
用户端将二维码申请信息上传至服务器。服务器中记录已公布的疫情风险信息,疫情风险信息可包括疫情发生地区和感染者接触过的地区的坐标范围,服务器可将用户端上传的历史时空轨迹信息与疫情风险信息进行匹配,根据其匹配程度得到一个健康风险等级,将健康风险等级返回给用户端。
用户端根据健康风险等级生成目标用户的健康码,并将健康码作为待显示二维码,以动态显示该健康码。
在本实施例中,通过将用户的历史时空轨迹信息在内的二维码申请信息上传至服务器,服务器根据历史时空轨迹信息和已公布的疫情风险信息生成用户的健康风险等级,由于用户历史时空轨迹信息和疫情风险信息具备实时性,从而提高了健康码的准确性。并且,通过以动态形式显示健康码,使得检疫人员能够快速地确定健康码的真假,极大地提高了健康码的检验效率,促进了疫情防控工作的开展。
进一步地,基于上述第一、第二和/或第三实施例,提出本发明二维码验证方法第四实施例。在本实施例中,所述二维码验证方法包括以下步骤:
步骤A10,扫描用户端中显示的二维码,识别扫描到的各帧二维码画面中对应的第一目标区域,根据扫描各帧二维码画面的扫描时刻对应从各帧二维码画面中确定第二目标区域;
步骤A20,比对所述第一目标区域与所述第二目标区域的位置,根据比对结果得到二维码验证结果。
当用户端对待显示二维码按照刷新时刻从待选区域中确定目标区域,并在显示待显示二维码时对目标区域做预设动态处理时,对用户端中显示的二维码可采用如下方式进行验证:
用户端是一帧一帧画面刷新的方式显示二维码的,扫描设备也是一帧一帧读取用户端显示的二维码,扫描设备中的读取频率与用户端的刷新频率一致。用户端每刷新一帧,就按照刷新时刻确定该帧画面二维码中的目标区域,并对目标区域做动态处理。对应地,扫描设备每读取一帧画面,就从该帧画面中识别出做了动态处理的区域,将该区域作为第一目标区域,并记录读取该帧画面的时刻,也即扫描时刻。扫描设备根据扫描时刻从二维码中的待选区域中确定目标区域,将其记为第二目标区域,需要说明的是,扫描设备中根据扫描时刻从二维码的待选区域中确定目标区域的方式,与用户端中根据刷新时刻从二维码的待选区域中确定目标区域的方式相同。对于每一帧画面,扫描设备比对该帧画面对应的第一目标区域与第二目标区域的位置,根据比对结果得到二维码验证结果。具体地,若超过N帧画面的比对结果不一致,即确定二维码验证失败,否则,二维码验证成功。其中,N可以根据需要进行设置,当验证要求较严格时,N可以设置得较小。扫描设备可以是现有任意具备二维码扫描功能的设备,在此不作限定。
可以理解的是,当用户端中显示的二维码是正常的二维码时,由于扫描设备按照扫描时刻确定目标区域,用户端按照刷新时刻确定目标区域,扫描时刻与刷新时刻是对应相同的,第一目标区域与第二目标区域的位置也应该是相同的。当用户端中显示的二维码是采用其他方法伪造的动态目标区域时,虽然肉眼可能无法观察出二维码的目标区域有什么不同,但是扫描设备通过比对第一目标区域和第二目标区域的位置,即可确定二维码是否为伪造。并且,扫描设备只需要对目标区域的位置进行验证即可,无需从服务器中获取二维码的内容信息进行比对,从而降低了验证的成本,提高了验证效率。
在另一实施方式中,所述二维码验证方法包括以下步骤:
步骤A30,扫描用户端中显示的二维码,识别所述二维码中的携带信息和扫描到的各帧二维码画面中对应的第一目标区域,根据所述携带信息从各帧二维码画面中确定第二目标区域;
步骤A40,比对所述第一目标区域与所述第二目标区域的位置,根据比对结果得到二维码验证结果。
当用户端对待显示二维码按照二维码中的携带信息从待选区域中确定各帧画面对应目标区域,并在刷新各帧画面时对目标区域做预设动态处理时,对用户端中显示的二维码可采用如下方式进行验证:
用户端是一帧一帧画面刷新的方式显示二维码的,扫描设备也是一帧一帧读取用户端显示的二维码,扫描设备中的读取频率与用户端的刷新频率一致。用户端预先或实时地根据二维码中的携带信息从待选区域中确定了目标区域,并对目标区域做了预设动态处理。对应地,扫描设备每读取一帧画面,就从该帧画面中识别出做了动态处理的区域,将该区域作为第一目标区域,从而得到各帧画面对应的第一目标区域。同时扫描设备可以对读取到的其中一帧画面的二维码进行识别,得到二维码的携带信息,并根据携带信息从二维码的待选区域中确定各帧画面对应的目标区域,并记为第二目标区域。需要说明的是,扫描设备中根据携带信息从二维码的待选区域中确定目标区域的方式,与用户端中根据携带信息从二维码的待选区域中确定目标区域的方式相同。可以理解的是,由于扫描设备不一定扫描到了用户端显示的第一帧画面,故扫描设备可将第一目标区域组成的第一序列与第二目标区域组成的第二序列进行整体比对,根据比对结果得到二维码验证结果。具体地,扫描设备可检测第一序列中是否存在一个连续子序列,与第二序列中的一个连续子序列完全匹配,若存在,且这个连续子序列的长度大于预设长度,即确定二维码验证成功,否则,二维码验证失败。其中,预设长度可根据需要进行设置,当验证要求较严格时,预设长度可以设置得较大。扫描设备可以是现有任意具备二维码扫描功能的设备,在此不作限定。
可以理解的是,当用户端中显示的二维码是正常的二维码时,由于扫描设备按照二维码携带信息确定目标区域,与用户端确定目标区域的方式相同,故第一目标区域与第二目标区域的位置也应该是相同的。当用户端中显示的二维码是采用其他方法伪造的动态目标区域时,虽然肉眼可能无法观察出二维码的目标区域有什么不同,但是扫描设备通过比对第一目标区域和第二目标区域的位置,即可确定二维码是否为伪造。并且,扫描设备只需要对目标区域的位置进行验证即可,无需从服务器中获取二维码的内容信息进行比对,从而降低了验证的成本,提高了验证效率。
在另一实施方式中,所述二维码验证方法包括以下步骤:
步骤A50,扫描用户端中显示的二维码,识别所述二维码中的携带信息和扫描到的各帧二维码画面中对应的第一目标区域,根据所述携带信息和扫描各帧二维码画面的扫描时刻对应从各帧二维码画面中确定第二目标区域;
步骤A60,比对所述第一目标区域与所述第二目标区域的位置,根据比对结果得到二维码验证结果。
当用户端对待显示二维码按照刷新时刻和二维码中的携带信息从待选区域中确定目标区域,并在显示待显示二维码时对目标区域做预设动态处理时,对用户端中显示的二维码可采用如下方式进行验证:
用户端是一帧一帧画面刷新的方式显示二维码的,扫描设备也是一帧一帧读取用户端显示的二维码,扫描设备中的读取频率与用户端的刷新频率一致。用户端每刷新一帧,就按照刷新时刻确定该帧画面二维码中的目标区域,并对目标区域做动态处理。对应地,扫描设备可以对读取到的其中一帧画面的二维码进行识别,得到二维码的携带信息。并,扫描设备每读取一帧画面,就从该帧画面中识别出做了动态处理的区域,将该区域作为第一目标区域,并记录读取该帧画面的时刻,也即扫描时刻。扫描设备根据读取该帧画面的时刻(扫描时刻)和携带信息从二维码中的待选区域中确定目标区域,将其记为第二目标区域,需要说明的是,扫描设备中根据扫描时刻和携带信息从二维码的待选区域中确定目标区域的方式,与用户端中根据刷新时刻和携带信息从二维码的待选区域中确定目标区域的方式相同。对于每一帧画面,扫描设备比对该帧画面对应的第一目标区域与第二目标区域的位置,根据比对结果得到二维码验证结果。具体地,若超过N帧画面的比对结果不一致,即确定二维码验证失败,否则,二维码验证成功。其中,N可以根据需要进行设置,当验证要求较严格时,N可以设置得较小。扫描设备可以是现有任意具备二维码扫描功能的设备,在此不作限定。
可以理解的是,当用户端中显示的二维码是正常的二维码时,由于扫描设备按照扫描时刻确定目标区域,用户端按照刷新时刻确定目标区域,扫描时刻与刷新时刻是对应相同的,第一目标区域与第二目标区域的位置也应该是相同的。当用户端中显示的二维码是采用其他方法伪造的动态目标区域时,虽然肉眼可能无法观察出二维码的目标区域有什么不同,但是扫描设备通过比对第一目标区域和第二目标区域的位置,即可确定二维码是否为伪造。并且,扫描设备只需要对目标区域的位置进行验证即可,无需从服务器中获取二维码的内容信息进行比对,从而降低了验证的成本,提高了验证效率。
进一步地,扫描设备可输出该验证结果,输出方式可以是在扫描设备的显示屏中显示文字形式的验证结果,还可以是以语音、震动、提示音或亮灯等方式输出该验证结果。
此外本发明实施例还提出一种二维码显示装置,所述装置包括:
获取模块,用于获取待显示二维码;
显示模块,用于在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理,其中,所述目标区域是所述待显示二维码中的部分区域。
进一步地,所述显示模块还用于:
基于刷新所述待显示二维码的帧画面的刷新时刻和/或所述待显示二维码中的携带信息,从所述待显示二维码的多个待选区域中确定所述帧画面对应的目标区域,并在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理。
进一步地,所述显示模块包括:
映射单元,用于基于预设映射算法将刷新所述待显示二维码的帧画面的刷新时刻和所述待显示二维码中的携带信息映射到目标序号,其中,所述目标序号是所述待显示二维码中多个待选区域对应的区域序号中的一个;
确定单元,用于将所述目标序号对应的待选区域作为所述帧画面对应的目标区域。
进一步地,所述映射单元包括:
获取子单元,用于获取种子信息,其中,所述种子信息至少包括刷新所述待显示二维码的帧画面的刷新时刻;
映射子单元,用于按照预设哈希算法基于所述种子信息将所述携带信息映射到预设数量的时间桶得到映射值,将所述映射值作为目标序号,其中,所述预设数量为所述待显示二维码中待选区域的数量,且各待选区域的面积均小于所述待显示二维码的容错面积。
进一步地,所述显示模块包括:
显示单元,用于在刷新所述待显示二维码的各帧画面时,将各帧画面对应的目标区域置空。
进一步地,所述获取模块包括:
第一获取单元,用于当检测到目标用户对应的二维码申请指令时,获取基于所述目标用户的标识信息生成的用户私钥;
第一上传单元,用于将所述目标用户的二维码申请信息上传至服务器,以供所述服务器根据所述二维码申请信息反馈二维码原始内容数据;
加密单元,用于采用所述用户私钥对所述二维码原始内容数据进行加密得到二维码加密内容数据;
第一生成单元,用于根据所述二维码加密内容数据生成所述待显示二维码。
进一步地,所述加密单元包括:
生成子单元,用于采用预设信息摘要算法生成所述二维码原始内容数据的摘要串;
加密子单元,用于采用所述用户私钥对所述摘要串进行加密得到二维码加密内容数据。
进一步地,所述获取模块包括:
第二获取单元,用于当检测到目标用户对应的二维码申请指令时,获取目标用户的二维码申请信息,其中,所述二维码申请信息至少包括所述目标用户的历史时空轨迹信息;
第二上传单元,用于将所述目标用户的二维码申请信息上传至服务器,以供所述服务器根据所述历史时空轨迹信息和预设疫情风险信息生成所述目标用户的健康风险等级并返回;
第二生成单元,用于根据所述健康风险等级生成所述目标用户的健康码,并将所述健康码作为所述待显示二维码。
本发明二维码显示装置的具体实施方式的拓展内容与上述二维码显示方法各实施例基本相同,在此不做赘述。
此外本发明实施例还提出一种二维码验证装置,所述装置包括:
扫描模块,扫描用户端中显示的二维码,识别扫描到的各帧二维码画面中对应的第一目标区域,根据扫描各帧二维码画面的扫描时刻对应从各帧二维码画面中确定第二目标区域;或,扫描用户端中显示的二维码,识别所述二维码中的携带信息和扫描到的各帧二维码画面中对应的第一目标区域,根据所述携带信息从各帧二维码画面中确定第二目标区域;或,扫描用户端中显示的二维码,识别所述二维码中的携带信息和扫描到的各帧二维码画面中对应的第一目标区域,根据所述携带信息和扫描各帧二维码画面的扫描时刻对应从各帧二维码画面中确定第二目标区域;
比对模块,用于比对所述第一目标区域与所述第二目标区域的位置,根据比对结果得到二维码验证结果。
本发明二维码验证装置的具体实施方式的拓展内容与上述二维码验证方法各实施例基本相同,在此不做赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述存储介质上存储有二维码显示程序,所述二维码显示程序被处理器执行时实现如下所述的二维码显示方法的步骤。
本发明二维码显示设备和计算机可读存储介质的各实施例,均可参照本发明二维码显示方法各实施例,此处不再赘述。
此外,本发明实施例还提供一种计算机可读存储介质,所述存储介质上存储有二维码验证程序,所述二维码验证程序被处理器执行时实现如下所述的二维码验证方法的步骤。
本发明二维码验证设备和计算机可读存储介质的各实施例,均可参照本发明二维码验证方法各实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (13)
1.一种二维码显示方法,其特征在于,所述方法包括以下步骤:
获取待显示二维码;
在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理,其中,所述目标区域是所述待显示二维码中的部分区域。
2.如权利要求1所述的二维码显示方法,其特征在于,所述在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理的步骤包括:
基于刷新所述待显示二维码的帧画面的刷新时刻和/或所述待显示二维码中的携带信息,从所述待显示二维码的多个待选区域中确定所述帧画面对应的目标区域,并在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理。
3.如权利要求2所述的二维码显示方法,其特征在于,所述基于刷新所述待显示二维码的帧画面的刷新时刻和所述待显示二维码中的携带信息,从所述待显示二维码的多个待选区域中确定所述帧画面对应的目标区域的步骤包括:
基于预设映射算法将刷新所述待显示二维码的帧画面的刷新时刻和所述待显示二维码中的携带信息映射到目标序号,其中,所述目标序号是所述待显示二维码中多个待选区域对应的区域序号中的一个;
将所述目标序号对应的待选区域作为所述帧画面对应的目标区域。
4.如权利要求3所述的二维码显示方法,其特征在于,所述基于预设映射算法将刷新所述待显示二维码的帧画面的刷新时刻和所述待显示二维码中的携带信息映射到目标序号的步骤包括:
获取种子信息,其中,所述种子信息至少包括刷新所述待显示二维码的帧画面的刷新时刻;
按照预设哈希算法基于所述种子信息将所述携带信息映射到预设数量的时间桶得到映射值,将所述映射值作为目标序号,其中,所述预设数量为所述待显示二维码中待选区域的数量,且各待选区域的面积均小于所述待显示二维码的容错面积。
5.如权利要求1所述的二维码显示方法,其特征在于,所述在刷新所述待显示二维码的各帧画面时,对各帧画面对应的目标区域做预设动态处理的步骤包括:
在刷新所述待显示二维码的各帧画面时,将各帧画面对应的目标区域置空。
6.如权利要求1至5任一项所述的二维码显示方法,其特征在于,所述获取待显示二维码的步骤包括:
当检测到目标用户对应的二维码申请指令时,获取基于所述目标用户的标识信息生成的用户私钥;
将所述目标用户的二维码申请信息上传至服务器,以供所述服务器根据所述二维码申请信息反馈二维码原始内容数据;
采用所述用户私钥对所述二维码原始内容数据进行加密得到二维码加密内容数据;
根据所述二维码加密内容数据生成所述待显示二维码。
7.如权利要求6所述的二维码显示方法,其特征在于,所述采用所述用户私钥对所述二维码原始内容数据进行加密得到二维码加密内容数据的步骤包括:
采用预设信息摘要算法生成所述二维码原始内容数据的摘要串;
采用所述用户私钥对所述摘要串进行加密得到二维码加密内容数据。
8.如权利要求1至5任一项所述的二维码显示方法,其特征在于,所述获取待显示二维码的步骤包括:
当检测到目标用户对应的二维码申请指令时,获取目标用户的二维码申请信息,其中,所述二维码申请信息至少包括所述目标用户的历史时空轨迹信息;
将所述目标用户的二维码申请信息上传至服务器,以供所述服务器根据所述历史时空轨迹信息和预设疫情风险信息生成所述目标用户的健康风险等级并返回;
根据所述健康风险等级生成所述目标用户的健康码,并将所述健康码作为所述待显示二维码。
9.一种二维码验证方法,其特征在于,所述方法包括以下步骤:
扫描用户端中显示的二维码,识别扫描到的各帧二维码画面中对应的第一目标区域,根据扫描各帧二维码画面的扫描时刻对应从各帧二维码画面中确定第二目标区域;或,
扫描用户端中显示的二维码,识别所述二维码中的携带信息和扫描到的各帧二维码画面中对应的第一目标区域,根据所述携带信息从各帧二维码画面中确定第二目标区域;或,
扫描用户端中显示的二维码,识别所述二维码中的携带信息和扫描到的各帧二维码画面中对应的第一目标区域,根据所述携带信息和扫描各帧二维码画面的扫描时刻对应从各帧二维码画面中确定第二目标区域;
比对所述第一目标区域与所述第二目标区域的位置,根据比对结果得到二维码验证结果。
10.一种二维码显示设备,其特征在于,所述二维码显示设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的二维码显示程序,所述二维码显示程序被所述处理器执行时实现如权利要求1至8中任一项所述的二维码显示方法的步骤。
11.一种二维码验证设备,其特征在于,所述二维码验证设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的二维码验证程序,所述二维码验证程序被所述处理器执行时实现如权利要求9所述的二维码验证方法的步骤。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有二维码显示程序,所述二维码显示程序被处理器执行时实现如权利要求1至8中任一项所述的二维码显示方法的步骤。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有二维码验证程序,所述二维码验证程序被处理器执行时实现如权利要求9所述的二维码验证方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010754275.XA CN111860726B (zh) | 2020-07-30 | 2020-07-30 | 二维码显示方法、验证方法、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010754275.XA CN111860726B (zh) | 2020-07-30 | 2020-07-30 | 二维码显示方法、验证方法、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111860726A true CN111860726A (zh) | 2020-10-30 |
CN111860726B CN111860726B (zh) | 2023-12-22 |
Family
ID=72945508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010754275.XA Active CN111860726B (zh) | 2020-07-30 | 2020-07-30 | 二维码显示方法、验证方法、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111860726B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023094890A1 (en) * | 2021-11-25 | 2023-06-01 | Chau Tsz Him | Animating qr code for mobile payment |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130033516A (ko) * | 2011-09-16 | 2013-04-04 | 강석영 | 2차원 코드를 이용한 동적 정보 제공 방법 |
CN103778403A (zh) * | 2012-10-17 | 2014-05-07 | 财团法人工业技术研究院 | 动态条形码防伪装置、应用动态条形码的防伪系统及方法 |
CN104851117A (zh) * | 2014-02-13 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 图像与二维码的融合方法和装置 |
CN105590121A (zh) * | 2014-11-06 | 2016-05-18 | 邹贵圣 | 一种动态可识别二维码的显示方法及解码方法 |
CN106656908A (zh) * | 2015-10-28 | 2017-05-10 | 阿里巴巴集团控股有限公司 | 一种二维码处理方法和装置 |
CN108122274A (zh) * | 2016-11-29 | 2018-06-05 | 腾讯科技(深圳)有限公司 | 一种二维码动画的生成方法以及装置 |
CN108681896A (zh) * | 2018-03-29 | 2018-10-19 | 阿里巴巴集团控股有限公司 | 二维码的展示、识别方法及装置 |
CN109583894A (zh) * | 2018-11-28 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 二维码的提供、验证方法和装置 |
CN110110831A (zh) * | 2019-05-17 | 2019-08-09 | 深圳智控佳科技有限公司 | 一种复合二维码及其生成、显示方法、电子设备 |
CN110390375A (zh) * | 2018-04-17 | 2019-10-29 | 银河联动信息技术(北京)有限公司 | 动态二维码与标识的合成系统以及方法、动态二维码显示装置 |
CN111464951A (zh) * | 2020-03-31 | 2020-07-28 | 深圳前海微众银行股份有限公司 | 疫情防控方法、装置、设备及计算机可读存储介质 |
-
2020
- 2020-07-30 CN CN202010754275.XA patent/CN111860726B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130033516A (ko) * | 2011-09-16 | 2013-04-04 | 강석영 | 2차원 코드를 이용한 동적 정보 제공 방법 |
CN103778403A (zh) * | 2012-10-17 | 2014-05-07 | 财团法人工业技术研究院 | 动态条形码防伪装置、应用动态条形码的防伪系统及方法 |
CN104851117A (zh) * | 2014-02-13 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 图像与二维码的融合方法和装置 |
CN105590121A (zh) * | 2014-11-06 | 2016-05-18 | 邹贵圣 | 一种动态可识别二维码的显示方法及解码方法 |
CN106656908A (zh) * | 2015-10-28 | 2017-05-10 | 阿里巴巴集团控股有限公司 | 一种二维码处理方法和装置 |
CN108122274A (zh) * | 2016-11-29 | 2018-06-05 | 腾讯科技(深圳)有限公司 | 一种二维码动画的生成方法以及装置 |
CN108681896A (zh) * | 2018-03-29 | 2018-10-19 | 阿里巴巴集团控股有限公司 | 二维码的展示、识别方法及装置 |
CN110390375A (zh) * | 2018-04-17 | 2019-10-29 | 银河联动信息技术(北京)有限公司 | 动态二维码与标识的合成系统以及方法、动态二维码显示装置 |
CN109583894A (zh) * | 2018-11-28 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 二维码的提供、验证方法和装置 |
CN110110831A (zh) * | 2019-05-17 | 2019-08-09 | 深圳智控佳科技有限公司 | 一种复合二维码及其生成、显示方法、电子设备 |
CN111464951A (zh) * | 2020-03-31 | 2020-07-28 | 深圳前海微众银行股份有限公司 | 疫情防控方法、装置、设备及计算机可读存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023094890A1 (en) * | 2021-11-25 | 2023-06-01 | Chau Tsz Him | Animating qr code for mobile payment |
Also Published As
Publication number | Publication date |
---|---|
CN111860726B (zh) | 2023-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111860727B (zh) | 二维码生成方法、验证方法、设备及计算机可读存储介质 | |
US10498541B2 (en) | Electronic identification verification methods and systems | |
KR101074951B1 (ko) | 화상 암호화 장치, 화상 복호 장치, 방법, 및 기록 매체 | |
US20090232351A1 (en) | Authentication method, authentication device, and recording medium | |
US10692167B2 (en) | System and method for digitally watermarking digital facial portraits | |
US9324085B2 (en) | Method and system of generating digital content on a user interface | |
CN113806806B (zh) | 一种用于网页截图的脱敏、还原方法和系统 | |
US10395022B2 (en) | Access control for a resource | |
CN111222178B (zh) | 一种数据签名方法及装置 | |
US20190149335A1 (en) | Authentication apparatus using visual cryptography and method thereof | |
US11509477B1 (en) | User data validation for digital identifications | |
CN114880687A (zh) | 文档安全防护方法、装置、电子设备和存储介质 | |
CN115225362A (zh) | 人机行为的验证方法、装置、设备及存储介质 | |
JP2017021603A (ja) | 正当性確認装置、方法、媒体発行装置、方法、及びプログラム | |
CN111860726B (zh) | 二维码显示方法、验证方法、设备及计算机可读存储介质 | |
CN111339556A (zh) | 数据脱敏方法、终端、装置及存储介质 | |
CN115511030A (zh) | 防伪验证方法、装置和电子设备 | |
CN115688059B (zh) | 图像数据的处理方法及装置、电子设备和存储介质 | |
GB2477561A (en) | Pseudo-Isochromatic challenge for determining whether a user is human or a computer | |
US11120520B2 (en) | Method for marking visuals of information for subsequent identification or authentication | |
JP3221969U (ja) | 暗号化ギャラリー管理システム | |
CN110740112B (zh) | 认证方法、装置和计算机可读存储介质 | |
CN110717078A (zh) | 美容院店务数据监控方法、装置、设备及介质 | |
CN114121049B (zh) | 一种数据处理方法、装置以及存储介质 | |
CN117336570B (zh) | 基于数字水印的视频防篡改系统、方法、电子设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |