二维码生成方法、装置及系统与流程

文档序号:17444116发布日期:2019-04-17 05:16阅读:322来源:国知局
二维码生成方法、装置及系统与流程

本发明涉及二维码加密技术领域,尤其是涉及一种二维码生成方法、装置及其系统。



背景技术:

现有的二维码技术基本属于通配型的,即所有的用户均属于同一个密级,能看到同样的数据信息,这样的场景在一些公共场合可以适用,但是在一些需要将信息进行密级区分的场景就不太实用,例如超市,顾客跟超市管理员对商品信息知悉的权限是不一样的,顾客所希望看到商品的价格,产地,生产日期,而管理员则希望看到商品的库存以及销售情况。因此,在需要将信息进行密级区分的场景中,现有的二维码技术实用性差。



技术实现要素:

有鉴于此,本发明的目的在于提供二维码生成方法、装置及系统,以提高二维码生成技术的实用性。

第一方面,本发明实施例提供了一种二维码生成方法,该方法包括:获取待加密数据;根据预设的密级划分规则,对待加密数据进行密级划分,得到多个密级数据;将多个密级数据分别通过对应的公钥进行加密,得到相对应的多个加密后数据;通过预设的二维码生成算法,生成多个加密后数据对应的二维码。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,生成多个加密后数据对应的二维码之后,该方法还包括:扫描二维码,通过二维码解析算法得到多个加密后数据;将多个加密后数据分别通过对应的私钥进行解密,得到相对应的多个密级数据。

结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,上述将多个密级数据分别通过对应的公钥进行加密,得到相对应的多个加密后数据的步骤,包括:根据rsa算法,得到每个密级数据对应的公钥;根据对应的公钥,对每个密级数据进行加密,以得到多个加密后数据。

结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,上述通过预设的二维码生成算法,生成多个加密后数据对应的二维码的步骤,包括:对多个加密后数据进行外层加密,得到二维码数据;对二维码数据进行数据码词和纠错码词,得到纠正后二维码数据;对纠正后二维码数据进行内层加密,生成二维码。

结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,上述二维码包括二维条码和矩阵二维码。

结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,上述将多个加密后数据分别通过对应的私钥进行解密,得到相对应的多个密级数据的步骤,包括:根据rsa算法,得到每个加密后数据对应的私钥;根据相对的私钥,对每个加密后数据进行解密,以得到多个密级数据。

第二方面,本发明实施例还提供一种二维码生成装置,该装置包括:数据获取模块,用于获取待加密数据;密级划分模块,用于根据预设的密级划分规则,对待加密数据进行密级划分,得到多个密级数据;数据加密模块,用于将多个密级数据分别通过对应的公钥进行加密,得到相对应的多个加密后数据;二维码生成模块,用于通过预设的二维码生成算法,生成多个加密后数据对应的二维码。

结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,该装置还包括:二维码扫描模块,用于扫描二维码,通过二维码解析算法得到多个加密后数据;数据解密模块,用于将多个加密后数据分别通过对应的私钥进行解密,得到相对应的多个密级数据。

结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,上述数据加密模块,还用于:根据rsa算法,得到每个密级数据对应的公钥;根据对应的公钥,对每个密级数据进行加密,以得到多个加密后数据。

第三方面,本发明实施例还提供一种二维码生成系统,该系统包括二维码生产端和二维码使用端;二维码生产端通过公钥将待加密数据进行加密,并生成二维码;二维码使用端扫描二维码,并将加密后数据进行解密,得到相应的密级数据。

本发明实施例带来了以下有益效果:

本发明提供了一种二维码生成方法、装置及系统,首先获取待加密数据;根据预设的密级划分规则,对该待加密数据进行密级划分,得到多个密级数据;然后将多个密级数据分别通过对应的公钥进行加密,得到相对应的多个加密后数据;通过预设的二维码生成算法,生成多个加密后数据对应的二维码。本发明通过公钥对密级数据分密级加密生成二维码,在需要将信息进行密级区分的场景中,提高了二维码的实用性,同时有利于二维码存储更多的数据。

本发明的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本发明的上述技术即可得知。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种二维码生成方法的流程图;

图2为本发明实施例提供的两个密级数据的二维码生成方法的流程图;

图3为本发明实施例提供的另一种二维码生成方法的流程图;

图4为本发明实施例提供的二维码生成的原理图;

图5为本发明实施例提供的一种二维码解密方法的流程图;

图6为本发明实施例提供的一种二维码扫描验证方法的流程图;

图7为本发明实施例提供的一种二维码生成装置的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

现有的二维码技术基本属于通配型的,即所有用户均属于同一密级,能看到同样的数据信息,在需要将信息进行密级区分的场景中,现有的二维码技术实用性差,基于此,本发明实施例提供的一种二维码生成方法、装置及系统,该技术可以应用于超市、商场和其他需要将信息进行密级区分的场景中。

为便于对本实施例进行理解,首先对本发明实施例所公开的一种二维码生成方法进行详细介绍。

参见图1所示的一种二维码生成方法的流程图,该方法的具体步骤,包括:

步骤s102,获取待加密数据。

上述待加密数据通常为需要将信息数据进行密级区分的场景中的信息数据,该信息数据可以根据密级的不同,划分成不同的密级数据,因此,拥有不同密级的用户可以获取自己权限内能获取的数据。

步骤s104,根据预设的密级划分规则,对待加密数据进行密级划分,得到多个密级数据。

上述预设的密级划分规则可以是根据用户类型将待加密数据进行密级划分,例如,在超市,顾客和超市管理员希望看到的商品信息是不同,因此,可将商品信息划分成两个密级数据,一个密级数据包括顾客希望看到的价格、产地和生产日期等,另一个密级数据包括超市管理员希望看到的商品的库存以及销售情况等。

步骤s106,将多个密级数据分别通过对应的公钥进行加密,得到相对应的多个加密后数据。

将获得的带加密数据进行分级加密,其中每个密级数据采用不同的公钥进行加密,例如,有两个密级数据分别为低密级数据和高密级数据,对低密级数据采用公钥1进行加密,得到加密后数据1;对高密集数据采用公钥2进行加密,得到加密后数据2,其中,加密算法可采用rsa算法。

上述rsa算法可称为不对称算法加密技术,该算法加密密钥采用公开密钥(相当于上述公钥),而解密密钥采用私钥进行保密,rsa算法的加密解密算法是公开的,即由公钥加密的内容可以并且只能由私钥进行解密,并且由私钥加密的内容可以并且只能由公钥进行解密,也就是说,rsa算法的这一对公钥、私钥都可以用来加密和解密,并且一方加密的内容可以由并且只能由对方进行解密。

步骤s108,通过预设的二维码生成算法,生成多个加密后数据对应的二维码。

上述预设的二维码生成算法生成二维码的的步骤为:对多个加密后数据进行外层加密,得到二维码数据;对二维码数据进行数据码词和纠错码词,得到纠正后二维码数据;对纠正后二维码数据进行内层加密,生成二维码。

将多个加密后数据通过二维码生成算法,生成相应的二维码,例如,将上述低密级数据和高密级数据对应的加密后数据1和加密后数据2,通过二维码生成算法得到二维码,如图2所示为两个密级数据的二维码生成方法的流程图。

二维码使用方扫描二维码认证方得到的上述二维码,并将扫描数据放入自己的后台,最后通过的自己的密级权限从二维码认证方获得对应的私钥,通过私钥对二维码进行数据解密,以获取自己密级权限内能获取的数据。

本发明实施例提供了一种二维码生成方法,首先获取待加密数据;根据预设的密级划分规则,对该待加密数据进行密级划分,得到多个密级数据;然后将多个密级数据分别通过对应的公钥进行加密,得到相对应的多个加密后数据;通过预设的二维码生成算法,生成多个加密后数据对应的二维码。本发明通过公钥对密级数据分密级加密生成二维码,在需要将信息进行密级区分的场景中,提高了二维码的实用性,同时有利于二维码存储更多的数据。

本发明实施例还提供了另一种二维码生成方法,该方法在图1中所示方法基础上实现;参见图3所示的另一种二维码生成方法的流程图,该方法的具体步骤,包括:

步骤s302,获取待加密数据。

步骤s304,根据预设的密级划分规则,对待加密数据进行密级划分,得到多个密级数据。

步骤s306,根据rsa算法,得到每个密级数据对应的公钥。

上述rsa算法是一种公钥加密算法,该算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但想要对其乘积进行因式分解却极其困难。因此可以将乘积公开作为加密密钥,即公钥,而两个大素数组合成私钥;公钥是可发布的供任何人使用,私钥则为自己所有,供解密之用。

利用rsa算法,确定每个密级数据相对应的公钥,以对每个密级的数据进行加密。

步骤s308,根据对应的公钥,对每个密级数据进行加密,以得到多个加密后数据。

每个密级数据对应着不同的公钥,将每个密级数据均针对其对应的公钥进行加密,得到所有密级数据对应的加密后数据。

步骤s310,对多个加密后数据进行外层加密,得到二维码数据。

步骤s312,对二维码数据进行数据码词和纠错码词,得到纠正后二维码数据。

步骤s314,对纠正后二维码数据进行内层加密,生成二维码。

如图4所示为二维码生成的原理图,首先将文本(相当于上述加密后数据)或者图片进行外层加密,得到二维码数据,然后将二维码数据进行数据码词,相当于对二维码数据进行编码,再对编码后的数据进行纠错(相当于纠错码词),得到纠正后的二维码数据;然后对纠正后的二维码数据进行内层加密,最后生成二维码。该二维码包块二维条码(pdf417码)和矩阵二维码(qr)。

本实施例通过对二维码数据进行区分加密,来达到划分密级的效果;同时,从数据加密方向对现有二维码技术进行改善,现有二维码存储的数据虽然不多,但经过算法的改进,今后二维码存储的数据会有数量级的增长,因此,二维码数据的加密就显得尤为重要。

对应于上述二维码生成方法实施例,参见图5所示的一种二维码解密方法的流程图;该方法应用于生成多个加密后数据对应的二维码之后,该方法的具体步骤,包括:

步骤s502,扫描二维码,通过二维码解析算法得到多个加密后数据。

首先通过二维码上的定位图形和分隔符确定二维码信息的图像;定位图形确定二维码符号中模块的坐标,二维码中的模块都是固定的,包括校正图形、版本信息、数据和纠错码;分隔符可以将图形与二维码信息图像分开;然后灰度化二维码信息像素,再去掉二维码信息像素的噪点;然后二值化二维码信息像素;最后进行二维码译码和纠错,得到相对应的加密后数据。

步骤s504,将多个加密后数据分别通过对应的私钥进行解密,得到相对应的多个密级数据。

上述步骤还包括:根据rsa算法,得到每个加密后数据对应的私钥;根据相应的私钥,对每个加密后数据进行解密,以得到多个密级数据。

例如,参加图6所示的一种二维码扫描验证方法的流程图,扫描二维码,通过二维码解析算法得到二维码数据,二维码数据中包括两个加密后数据,分别为加密后级数据1和加密后数据2;加密后数据1采用私钥1进行解密可得到低密级数据,加密后数据2采用私钥2进行解密可得到高密级数据,其中,解密算法可采用rsa算法。

用户扫描上述二维码,然后用户通过自己的密级权限,也就是用户可获得的密级数据对应的私钥,对二维码中的相对应的加密后数据进行解密,得到自己密级权限对应的密级数据。

本实施例提供了二维码解密算法,通过rsa算法可分别对不同密级的数据进行解密,在一些需要将信息进行密级区分的场景中,有较好的实用性,同时也有利于二维码技术的发展。

对应于上述方法实施例,参见图7所示的一种二维码生成装置的结构示意图,该装置包括:

数据获取模块70,用于获取待加密数据;

密级划分模块71,用于根据预设的密级划分规则,对待加密数据进行密级划分,得到多个密级数据;

数据加密模块72,用于将多个密级数据分别通过对应的公钥进行加密,得到相对应的多个加密后数据;

二维码生成模块73,用于通过预设的二维码生成算法,生成多个加密后数据对应的二维码。

进一步地,该装置还包括:二维码扫描模块,用于扫描二维码,通过二维码解析算法得到多个加密后数据;数据解密模块,用于将多个加密后数据分别通过对应的私钥进行解密,得到相对应的多个密级数据。

进一步地,上述数据加密模块,还用于:根据rsa算法,得到每个密级数据对应的公钥;根据对应的公钥,对每个密级数据进行加密,以得到多个加密后数据。

本发明实施例提供的二维码生成装置,与上述实施例提供的二维码生成方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。

本实施例还提供了一种与上述方法实施例相对应的一种二维码生成系统,该系统包括二维码生产端和二维码使用端;二维码生产端通过公钥将待加密数据进行加密,并生成二维码;二维码使用端扫描二维码,并将加密后数据进行解密,得到相应的密级数据。

本发明实施例所提供的二维码生成方法、装置及系统的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和/或装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

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