二维码生成和验证方法

文档序号:8905507阅读:615来源:国知局
二维码生成和验证方法
【技术领域】
[0001]本发明涉及数据处理领域,尤其涉及一种二维码生成和验证方法。
【背景技术】
[0002]随着二维码技术的发展,二维码广泛的应用在信息获取、会员管理、广告推送、数据验证等领域。现有技术应用二维码时,一般使用固定的二维码图片;然而,固定的二维码图片易被复制和传播,安全性较差。

【发明内容】

[0003]本发明提供一种二维码生成和验证方法,能够提高安全性。
[0004]本发明解决技术问题采用如下技术方案:一种二维码生成方法,包括:S10、接收到用户输入的数据验证指示时,根据所述数据验证指示获取对应的验证数据;S20、获取接收所述数据验证指示的接收时刻并以O为计时起点开始计时;S30、根据预设时钥、私钥和公钥对所述当前时刻和所述验证数据进行加密,得到加密数据;所述公钥与所述时钥和私钥对应;S40、生成所述加密数据对应的二维码并显示,使用户根据所述二维码进行验证;S50、当所述计时的时间达到预设刷新周期时,更新所述验证数据,并使用更新后的验证数据执行所述S20至S50。
[0005]可选的,本发明实施例提供的二维码生成方法,还包括:S60、接收用户输入的刷新周期更改指示,根据所述刷新周期更改指示更改所述刷新周期。
[0006]可选的,本发明实施例提供的二维码生成方法中,所述S10,包括:S101、根据所述数据验证指示获取具体内容;S102、获取所述具体内容对应的内容标记;S103、获取包括所述具体内容和内容标记的验证数据。
[0007]可选的,本发明实施例提供的二维码生成方法,所述数据验证指示为景区电子票券验证指示时,所述步骤101包括:根据所述数据验证指示获取包括景区名称、景区门票类型、门票数量、门票金额、门票号码和门票经销商中一种或多种的具体内容。
[0008]可选的,本发明实施例提供的二维码生成方法,所述S30,包括:S301、将所述时钥乘以所述当前时刻,得到时间加密数据;S302、通过所述私钥和公钥从所述内容标记中提取预设位数的数据,得到标记加密数据;S303、将所述私钥分别加上所述具体内容中一项或多项数据内容,得到内容加密数据;S304、根据所述时间加密数据、标记加密数据和所述内容加密数据生成所述加密数据。
[0009]可选的,本发明实施例提供的二维码生成方法,所述具体内容中包括门票号码时,所述S30,还包括:S305、获取所述门票号码和所述公钥的重叠值,得到号码加密数据;所述S303为,将所述私钥分别加上所述具体内容中除所述门票号码外的一项或多项数据内容,得到内容加密数据;所述S304具体为,根据所述时间加密数据、标记加密数据、号码加密数据和内容加密数据生成加密数据。
[0010]本发明解决技术问题采用如下技术方案:一种二维码验证方法,包括:S10、获取加密数据对应的二维码,所述加密数据为待验证数据经预设时钥和私钥加密后得到的;S20、对所述二维码进行解析,得到所述加密数据;S30、获取当前时刻和预设刷新周期;S40、根据所述当前时刻、刷新周期和预设公钥对所述加密数据进行验证,得到验证结果;所述公钥与所述私钥和时钥对应。
[0011]可选的,本发明实施例提供的二维码验证方法中,所述S40,包括:S401、根据预设公钥对所述加密数据进行解密,得到接收时刻和解密数据;S402、判断所述当前时刻与接收时刻的时间差是否大于预设刷新周期,如果不大于,执行S403 ;否则,得到验证失败的验证结果;S403、判断所述解密数据与所述接收时刻获取的验证结果是否一致;如果一致,得到验证成功的验证结果;否则,得到验证失败的验证结果。
[0012]本发明具有如下有益效果:在验证数据对应的加密数据生成二维码后,根据预设刷新周期对验证数据和二维码进行更新,从而防止二维码被复制和传播,进而提高安全性。该方案解决了现有技术中固定的二维码图片易被复制和传播,安全性较差的问题。此外,该加密数据由预设私钥和时钥生成,能够进一步提高安全性。
【附图说明】
[0013]图1为本发明实施例1提供的二维码生成方法的流程图一;
[0014]图2为本发明实施例1提供的二维码生成方法的流程图二 ;
[0015]图3为本发明实施例2提供的二维码验证方法的流程图。
【具体实施方式】
[0016]下面结合实施例及附图对本发明的技术方案作进一步阐述。
[0017]实施例1
[0018]如图1所示,本实施例提供了一种二维码生成方法,包括:
[0019]步骤101,接收到用户输入的数据验证指示时,根据该数据验证指示获取对应的验证数据。
[0020]在本实施例中,用户输入的数据验证指示需要指示数据验证的具体类型,如指示进行支付验证、电子票券验证、门锁验证等;以对景区的电子票券验证为例,该数据验证指示还可以指示数据验证的具体内容,如景区名称、景区门票类型等,以及该具体内容对应的内容标记。
[0021]在本实施例中,通过步骤101获取对应的验证数据的过程包括:根据该数据验证指示获取具体内容;获取具体内容对应的内容标记;获取包括该具体内容和内容标记的验证数据。其中,根据验证指示获取具体内容,可以为从预先存储的数据库中获取数据验证指示对应的具体内容;获取具体内容对应的内容标记,可以为根据预设标记规则获取该具体内容对应的内容标记。
[0022]特别的,当步骤101中数据验证指示为景区电子票券验证指示时,根据验证指示获取的具体内容包括:景区名称、景区门票类型、门票数量、门票金额、门票号码和门票经销商中一种或多种。
[0023]步骤102,获取接收数据验证指示的接收时刻并以O为计时起点开始计时。
[0024]步骤103,根据预设时钥、私钥和公钥对当前时刻和验证数据进行加密,得到加密数据。
[0025]在本实施例中,通过步骤103得到加密数据的过程,包括:将所述时钥乘以所述当前时刻,得到时间加密数据;通过所述私钥和公钥从所述内容标记中提取预设位数的数据,得到标记加密数据;将所述私钥分别加上所述具体内容中一项或多项数据内容,得到内容加密数据;根据所述时间加密数据、标记加密数据和所述内容加密数据生成所述加密数据。其中,得到标记加密数据的过程包括先公钥后私钥,各取一位,共取四位,在此不再一一赘述。数据验证为景区电子票券验证指示时,将私钥分别加上具体内容中一项或多项数据内容,可以为将私钥加上景区名称,在此不作限制;当私钥或具体内容中包含字母时,可以直接按字母的先后顺序排列,在此不再一一赘述。
[0026]此时,当具体内容中包括门票号码时,通过步骤103得到加密数据的过程,包括:将所述时钥乘以所述当前时刻,得到时间加密数据;通过所述私钥和公钥从所述内容标记中提取预设位数的数据,得到标记加密数据;将所述私钥分别加上所述具体内容中一项或多项数据内容,得到内容加密数据;获取所述门票号码和所述公钥的重叠值,得到号码加密数据;根据所述时间加密数据、标记加密数据、号码加密数据和内容加密数据生成加密数据。其中,步骤103中公钥与时钥和私钥对应;获取门票号码和公钥的重叠值的方式可以为,先上后下,由后至前,空用零补。
[0027]步骤104,生成加密数
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1