[发明专利]一种基于分组加密的垃圾分类二维码生成方法在审

专利信息
申请号: 202210596457.8 申请日: 2022-05-30
公开(公告)号: CN114997353A 公开(公告)日: 2022-09-02
发明(设计)人: 吴新华;徐明强 申请(专利权)人: 江苏工程职业技术学院
主分类号: G06K19/06 分类号: G06K19/06;G06F21/60
代理公司: 南通物格知识产权代理事务所(普通合伙) 32395 代理人: 胡燕
地址: 226000 江*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 分组 加密 垃圾 分类 二维码 生成 方法
【权利要求书】:

1.一种基于分组加密的垃圾分类二维码生成方法,其特征在于,包括如下几个步骤:

(1)转码

首先,将某件垃圾袋的身份信息编码生成唯一的字符型垃圾袋身份码,表示为S1S2...Sk Sk+1Sk+2...Sk+L Sk+L+1Sk+L+2...Sk+L+p Sk+L+p+1Sk+L+p+2...Sk+L+p+n Sk+L+p+n+1Sk+L+p+n+2,其中S1S2...Sk为省市区,Sk+1Sk+2...Sk+L为具体居住地址,Sk+L+1Sk+L+2...Sk+L+p为联系人和联系电话,Sk+L+p+1Sk+L+p+2...Sk+L+p+n为制码日期,Sk+L+p+n+1Sk+L+p+n+2为垃圾分类颜色信息,相互之间用英文空格字符隔开,

然后,从垃圾袋身份码中提取出身份显示码S1S2...Sk Sk+L+p+1Sk+L+p+2...Sk+L+p+nSk+L+p+n+1Sk+L+p+n+2和身份隐藏码Sk+1Sk+2…Sk+L Sk+L+1Sk+L+2...Sk+L+p,并将身份显示码逐个字符转换成数值型数据,得到对应的数值序列同时将身份隐藏码逐个字符转换成数值型数据,得到对应的数值序列

最后,将数值序列P2中元素P2i逐个转换成二进制序列PB{i},并将二进制序列PB{i}进行组合,从而得到组合二进制序列其中

其中垃圾袋身份码由GB2312字符集中双字节编码的汉字和ASCLL码值∈[32,126]的可见字符组合而得,垃圾袋身份码长度为k+L+p+n+6,数值序列P1的长度为且数值序列P2的长度为且组合二进制序列B的长度为且

(2)二进制序列B的分组、重组

首先,利用数值序列P1,数值序列P2转换而成的二进制序列B,以及外部密钥α和β,按照如下(1)-(3)公式分别计算得到Logistic混沌映射的初值x1、参数μ和迭代次数n,

令则

x1=α+mod(α-kp,1-α), (1)

μ=β+mod(β+kp,4-β), (2)

其中,表示组合二进制序列B中含二进制位‘1’的个数,表示组合二进制序列B中含二进制位‘0’的个数,外部密钥满足α∈(0,1),β∈(3.57,4),

由混沌映射的初值x1和参数μ,对如下公式(4)所示Logistic混沌映射进行n次迭代,式中k表示迭代次数、xk+1表示第k次迭代得到的混沌信号,k=1,2,...,n

xk+1=μ·xk·(1-xk) (4)

从而得到混沌信号序列X={x1,x2,...,xn,xn+1},

然后,将组合二进制序列中元素,依次进行如下分组、重组操作:

S0:令j=1,y1=xn+1,分组初始位置t=0,分组规则参数

S1:判断参数k_switch的数值,

如果k_switch=0,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取5个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4,Bt+5},同时将二进制分组序列BF{j}的前面添上二进制“001”,表示为且t=t+5,

如果k_switch=1,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取5个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4,Bt+5},同时将二进制分组序列BF{j}的前面添上二进制“010”,表示为且t=t+5,

如果k_switch=2,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取5个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4,Bt+5},同时将二进制分组序列BF{j}的前面添上二进制“01”、第1位后添上二进制位‘0’,表示为且t=t+5,

如果k_switch=3,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取5个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4,Bt+5},同时将二进制分组序列BF{j}的前面添上二进制“01”、第2位后添上二进制位‘0’,表示为且t=t+5,

如果k_switch=4,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取5个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4,Bt+5},同时将二进制分组序列BF{j}的前面添上二进制“01”、第3位后添上二进制位‘0’,表示为且t=t+5,

如果k_switch=5,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取5个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4,Bt+5},同时将二进制分组序列BF{j}的前面添上二进制“01”、第4位后添上二进制位‘0’,表示为且t=t+5,

如果k_switch=6,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取5个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4,Bt+5},同时将二进制分组序列BF{j}的前面添上二进制“01”、末尾添上二进制位‘0’,表示为且t=t+5,

如果k_switch=7,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取5个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4,Bt+5},同时将二进制分组序列BF{j}的前面添上二进制位‘0’、第1位后添上二进制位‘1’、末尾添上二进制位‘0’,表示为且t=t+5,

如果k_switch=8,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取4个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4},同时将二进制分组序列BF{j}的前面添上二进制“0010”,表示为且t=t+4,

如果k_switch=9,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取4个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4},同时将二进制分组序列BF{j}的前面添上二进制“0011”,表示为且t=t+4,

如果k_switch=10,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取4个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4},同时将二进制分组序列BF{j}的前面添上二进制“0100”,表示为且t=t+4,

如果k_switch=11,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取4个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4},同时将二进制分组序列BF{j}的前面添上二进制“0101”,表示为且t=t+4,

如果k_switch=12,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取4个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4},同时将二进制分组序列BF{j}的前面添上二进制“0110”,表示为且t=t+4,

如果k_switch=13,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取4个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4},同时将二进制分组序列BF{j}的前面添上二进制“01”、末尾添上二进制“00”,表示为且t=t+4,

如果k_switch=14,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取4个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4},同时将二进制分组序列BF{j}的前面添上二进制“01”、末尾添上二进制“01”,表示为且t=t+4,

如果k_switch=15,则首先继续判断是否成立,

如果不成立,则将组合二进制序列的末尾补充上个二进制位‘1’,

随后从组合二进制序列B的第t+1个元素开始连续取4个,得到二进制分组序列BF{j}={Bt+1,Bt+2,Bt+3,Bt+4},同时将二进制分组序列BF{j}的前面添上二进制“01”、末尾添上二进制“10”,表示为且t=t+4,

S2:采用bin2dec()函数,将二进制序列转换成数值型数据即并更新混沌信号同时根据公式(4)所示Logistic混沌映射进行单次迭代,得到yj+1,计算且令j=j+1,接着判断t的大小,如果则转入步骤S1,否则转入步骤S3,

S3:记m=j-1,结束组合二进制序列的分组、重组操作,从而得到分组加密后的二进制序列,表示为以及数值序列

(3)转码

采用char(·)函数,将数值序列中元素逐个转换为ASCII码值属于[32,126]的可见字符,得到字符序列C={C1,C2,...,Cm-1,Cm},即为垃圾分类号,其中字符序列C的长度为m,并将垃圾袋身份显示码(S1S2...Sk Sk+L+p+1Sk+L+p+2...Sk+L+p+n Sk+L+p+n+1Sk+L+p+n+2)和垃圾分类号进行组合,生成垃圾分类码,接着生成QR Code,即垃圾分类二维码。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏工程职业技术学院,未经江苏工程职业技术学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202210596457.8/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top