二维码摆渡主机的解码编排方法与流程

文档序号:21478075发布日期:2020-07-14 17:03阅读:269来源:国知局

本公开涉及二维码技术领域,尤其涉及二维码摆渡主机的解码编排方法。



背景技术:

随着社会信息化的发展,人们对二维码的应用也越来越多,例如,在政府、公安和企业的网络隔离设备都采用了二维码传输数据方式,即发送端把数据编码成二维码,接收端利用摄像机把二维码拍下并解析成数据的过程,该数据传输实现的过程是单向的。但是在单向数据传输过程中,存在数据丢失的风险,导致数据传输的可靠性差。



技术实现要素:

为了解决上述技术问题中的至少一个,本公开提供了一种二维码摆渡主机的解码编排方法。

根据本公开的一个方面,二维码摆渡主机的解码编排方法包括:用于发送原始数据包的发送端和用于接收数据的接收端,执行如下步骤:

步骤一、所述发送端将需要发送的原始数据包进行自动分块处理,设分成n个原始数据块且n≥3,每个原始数据块具有相等大小的字节,设每个数据块数据大小为s字节,对每个原始数据块的字节标记为j,其中j为1到s的自然数,对每个原始数据块进行标记序号,设标记序号为i,设原始数据块代号为ai,其中i为1到n的自然数;则每个原始数据块的数据标志为ai(j);

步骤二、在所述发送端生成二阶冗余数据c1j,c2j;其中:

公式一:c1(j)=r(1,1)*a1(j)+r(1,2)*a2(j)+r(1,3)*a3(j)+…+r(1,n)*an(j);

公式二:c2(j)=r(2,1)*a1(j)+r(2,2)*a2(j)+r(2,3)*a3(j)+…+r(2,n)*an(j);

其中,r(1,1),r(1,2),…,r(1,n)为预设的常数;r(2,1),r(2,2),…,r(2,n)为预设的另一常数;

步骤三、在所述发送端对各所述原始数据块的数据分别转换成对应的二维码图片ai;对冗余数据c1(j),c2(j)分别转换成对应的二维码图片c1及c2;

其中,各所述原始数据块的二维码图片ai由ai(1),ai(2),…,ai(s)这些s个数据组成;冗余数据c1(j)组成的二维码图片c1由c1(1),c1(2),…,c1(s)这些s个数据组成,并组成c1冗余数据块;冗余数据c2(j)组成的二维码图片c2由c2(1),c2(2),…,c2(s)这些s个数据组成,并组成c2冗余数据块;

步骤四、在所述发送端上根据所述原始数据块的数据按顺序动态显示n张二维码图片ai及所述冗余数据的2张二维码图片c1及c2;

步骤五、所述接收端通过二维码扫描设备对所述发送端上按顺序显示的n+2张二维码图片进行扫描;

步骤六、所述接收端将采集到的二维码图片进行解析;解析完成后,所述接收端自动检查数据的完整性:

若发现未丢失原始数据块,则按照步骤七执行;

若发现丢失任一原始数据块ab,其中,b为1到n的任一自然数;则原始数据块ab的恢复方法按步骤六一执行;

若发现丢失任一原始数据块ab及任一冗余数据块,其中,b为1到n的任一自然数;则原始数据块ab的恢复方法按步骤六二执行;

发现丢失任意二个原始数据块ab及ac,其中,b为1到n的任一自然数;c为1到n的自然数且b不等于c;则原始数据块ab及ac的恢复方法按步骤六三执行;

步骤六一、所述接收端根据步骤二的公式一,分别计算ab(1),ab(2),…,ab(s);由此,恢复得到原始数据块ab,再按照步骤七执行;

步骤六二、若丢失的冗余数据块是c1冗余数据块,所述接收端根据步骤二的公式二,分别计算ab(1),ab(2),…,ab(s);由此,恢复得到原始数据块ab,再按照步骤七执行;若丢失的冗余数据块是c2冗余数据块,所述接收端根据步骤二的公式一,分别计算ab(1),ab(2),…,ab(s);由此,恢复得到原始数据块ab,再按照步骤七执行;

步骤六三、所述接收端根据步骤二的公式一及公式二,分别计算ab(1)及ac(1);ab(2)及ac(2);…,ab(s)及ac(s);由此,恢复得到原始数据块ab及ac,再按照步骤七执行;

步骤七、所述接收端将获得的对应各所述原始数据块数据写入本地缓存文件;并将各所述原始数据块数据进行合并,得到完整的原始数据进行储存。

根据本公开的至少一个实施方式,若n>15,则每15个原始数据块为一组,并在每组原始数据块中插入一组二阶冗余数据;若最后一组的原始数据块数量≤2,则将最后一组的原始数据块并入至倒数第二组的原始数据块中。

根据本公开的至少一个实施方式,若n≤2,则不使用插入冗余数据的方法,发送端可以直接将原始数据块复制两份,若数据在传输过程中丢失,则在接收端直接从备份中恢复。这种复制备份的方法适用于原始数据块数量≤2的情况。

根据本公开的至少一个实施方式,所述解码编排方法适用于每15个原始数据块中丢失的原始数据块≤2的数据传输。

附图说明

附图示出了本公开的示例性实施方式,并与其说明一起用于解释本公开的原理,其中包括了这些附图以提供对本公开的进一步理解,并且附图包括在本说明书中并构成本说明书的一部分。

图1是本公开方法执行流程图。

具体实施方式

下面结合附图和实施方式对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施方式仅用于解释相关内容,而非对本公开的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本公开相关的部分。

需要说明的是,在不冲突的情况下,本公开中的实施方式及实施方式中的特征可以相互组合。下面将参考附图1并结合实施方式来详细说明本公开。

实施例1

如图1所示,本实施例1提供了一种二维码摆渡主机的解码编排方法包括:用于发送原始数据包的发送端和用于接收数据的接收端,执行如下步骤:

步骤一、所述发送端将需要发送的原始数据包进行自动分块处理,设分成3个原始数据块,每个原始数据块具有相等大小的字节,设每个数据块数据大小为1024字节,对每个原始数据块的字节标记为j,其中j为1到1024的自然数,对每个原始数据块进行标记序号,设标记序号为i,设原始数据块代号为ai,其中i为1到3的自然数;则每个原始数据块的数据标志为ai(j);

步骤二、在所述发送端生成二阶冗余数据c1j,c2j;其中:

公式一:c1(j)=r(1,1)*a1(j)+r(1,2)*a2(j)+r(1,3)*a3(j);

公式二:c2(j)=r(2,1)*a1(j)+r(2,2)*a2(j)+r(2,3)*a3(j);

其中,r(1,1),r(1,2),r(1,3)为预设的常数;r(2,1),r(2,2),r(2,3)为预设的另一常数;

步骤三、在所述发送端对各所述原始数据块的数据分别转换成对应的二维码图片ai;对冗余数据c1(j),c2(j)分别转换成对应的二维码图片c1及c2;

其中,各所述原始数据块的二维码图片ai由ai(1),ai(2),…,ai(1024)这些1024个数据组成;冗余数据c1(j)组成的二维码图片c1由c1(1),c1(2),…,c1(1024)这些1024个数据组成,并组成c1冗余数据块;冗余数据c2(j)组成的二维码图片c2由c2(1),c2(2),…,c2(1024)这些1024个数据组成,并组成c2冗余数据块;

步骤四、在所述发送端上根据所述原始数据块的数据按顺序动态显示3张二维码图片a1,a2,a3及所述冗余数据的2张二维码图片c1及c2;

步骤五、所述接收端通过二维码扫描设备对所述发送端上按顺序显示的5张二维码图片进行扫描;

步骤六、所述接收端将采集到的二维码图片进行解析;解析完成后,所述接收端自动检查数据的完整性:

若发现未丢失原始数据块,则按照步骤七执行;

若发现丢失任一原始数据块ab,其中,b为1到3的任一自然数;在本实施例中假设b=2;则原始数据块a2的恢复方法按步骤六一执行;

若发现丢失任一原始数据块ab及任一冗余数据块,其中,b为1到3的任一自然数;在本实施例中假设b=2;则原始数据块a2的恢复方法按步骤六二执行;

发现丢失任意二个原始数据块ab及ac,其中,b为1到3的任一自然数;在本实施例中假设b=2;c为1到3的自然数且b不等于c;在本实施例中假设c=3;则原始数据块a2及a3的恢复方法按步骤六三执行;

步骤六一、所述接收端根据步骤二的公式一,分别计算a2(1),a2(2),…,a2(1024);由此,恢复得到原始数据块a2,再按照步骤七执行;

步骤六二、若丢失的冗余数据块是c1冗余数据块,所述接收端根据步骤二的公式二,分别计算a2(1),ab(2),…,a2(1024);由此,恢复得到原始数据块a2,再按照步骤七执行;若丢失的冗余数据块是c2冗余数据块,所述接收端根据步骤二的公式一,分别计算a2(1),a2(2),…,a2(1024);由此,恢复得到原始数据块a2,再按照步骤七执行;

步骤六三、所述接收端根据步骤二的公式一及公式二,分别计算a2(1)及a3(1);a2(2)及a3(2);…,a2(1023)及a3(1024);由此,恢复得到原始数据块a2及a3,再按照步骤七执行;

步骤七、所述接收端将获得的对应各所述原始数据块数据写入本地缓存文件;并将各所述原始数据块数据进行合并,得到完整的原始数据进行储存。

实施例2

本实例2提供了一种二维码摆渡主机的解码编排方法包括:用于发送原始数据包的发送端和用于接收数据的接收端,执行如下步骤:

步骤一、所述发送端将需要发送的原始数据包进行自动分块处理,设分成15个原始数据块,每个原始数据块具有相等大小的字节,设每个数据块数据大小为1024字节,对每个原始数据块的字节标记为j,其中j为1到1024的自然数,对每个原始数据块进行标记序号,设标记序号为i,设原始数据块代号为ai,其中i为1到15的自然数;则每个原始数据块的数据标志为ai(j);

步骤二、在所述发送端生成二阶冗余数据c1j,c2j;其中:

公式一:c1(j)=r(1,1)*a1(j)+r(1,2)*a2(j)+r(1,3)*a3(j)+…+r(1,15)*a15(j);

公式二:c2(j)=r(2,1)*a1(j)+r(2,2)*a2(j)+r(2,3)*a3(j)+…+r(2,15)*a15(j);

其中,r(1,1),r(1,2),…,r(1,15)为预设的常数;r(2,1),r(2,2),…,r(2,15)为预设的另一常数;

步骤三、在所述发送端对各所述原始数据块的数据分别转换成对应的二维码图片ai;对冗余数据c1(j),c2(j)分别转换成对应的二维码图片c1及c2;

其中,各所述原始数据块的二维码图片ai由ai(1),ai(2),…,ai(1024)这些1024个数据组成;冗余数据c1(j)组成的二维码图片c1由c1(1),c1(2),…,c1(1024)这些1024个数据组成,并组成c1冗余数据块;冗余数据c2(j)组成的二维码图片c2由c2(1),c2(2),…,c2(1024)这些1024个数据组成,并组成c2冗余数据块;

步骤四、在所述发送端上根据所述原始数据块的数据按顺序动态显示15张二维码图片ai及所述冗余数据的2张二维码图片c1及c2;

步骤五、所述接收端通过二维码扫描设备对所述发送端上按顺序显示的17张二维码图片进行扫描;

步骤六、所述接收端将采集到的二维码图片进行解析;解析完成后,所述接收端自动检查数据的完整性:

若发现未丢失原始数据块,则按照步骤七执行;

若发现丢失任一原始数据块ab,其中,b为1到15的任一自然数;在本实施例中假设b=7;则原始数据块a7的恢复方法按步骤六一执行;

若发现丢失任一原始数据块ab及任一冗余数据块,其中,b为1到15的任一自然数;在本实施例中假设b=7;则原始数据块a7的恢复方法按步骤六二执行;

发现丢失任意二个原始数据块ab及ac,其中,b为1到15的任一自然数;在本实施例中假设b=7;c为1到15的自然数且b不等于c;在本实施例中假设c=13;则原始数据块a7及a13的恢复方法按步骤六三执行;

步骤六一、所述接收端根据步骤二的公式一,分别计算a7(1),a7(2),…,a7(1024);由此,恢复得到原始数据块a7,再按照步骤七执行;

步骤六二、若丢失的冗余数据块是c1冗余数据块,所述接收端根据步骤二的公式二,分别计算a7(1),a7(2),…,a7(1024);由此,恢复得到原始数据块ab,再按照步骤七执行;若丢失的冗余数据块是c2冗余数据块,所述接收端根据步骤二的公式一,分别计算a7(1),a7(2),…,a7(1024);由此,恢复得到原始数据块a7,再按照步骤七执行;

步骤六三、所述接收端根据步骤二的公式一及公式二,分别计算a7(1)及a13(1);a7(2)及a13(2);…,a7(1024)及a13(1024);由此,恢复得到原始数据块a7及a13,再按照步骤七执行;

步骤七、所述接收端将获得的对应各所述原始数据块数据写入本地缓存文件;并将各所述原始数据块数据进行合并,得到完整的原始数据进行储存。

实施例3

本实施例3提供了一种二维码摆渡主机的解码编排方法包括:用于发送原始数据包的发送端和用于接收数据的接收端,执行如下步骤:

步骤一、所述发送端将需要发送的原始数据包进行自动分块处理,设分成17个原始数据块,每个原始数据块具有相等大小的字节,设每个数据块数据大小为1024字节,对每个原始数据块的字节标记为j,其中j为1到1024的自然数,对每个原始数据块进行标记序号,设标记序号为i,设原始数据块代号为ai,其中i为1到17的自然数;则每个原始数据块的数据标志为ai(j);

步骤二、在所述发送端生成二阶冗余数据c1j,c2j;其中:

公式一:c1(j)=r(1,1)*a1(j)+r(1,2)*a2(j)+r(1,3)*a3(j)+…+r(1,17)*a17(j);

公式二:c2(j)=r(2,1)*a1(j)+r(2,2)*a2(j)+r(2,3)*a3(j)+…+r(2,17)*a17(j);

其中,r(1,1),r(1,2),…,r(1,17)为预设的常数;r(2,1),r(2,2),…,r(2,17)为预设的另一常数;

步骤三、在所述发送端对各所述原始数据块的数据分别转换成对应的二维码图片ai;对冗余数据c1(j),c2(j)分别转换成对应的二维码图片c1及c2;

其中,各所述原始数据块的二维码图片ai由ai(1),ai(2),…,ai(1024)这些1024个数据组成;冗余数据c1(j)组成的二维码图片c1由c1(1),c1(2),…,c1(1024)这些1024个数据组成,并组成c1冗余数据块;冗余数据c2(j)组成的二维码图片c2由c2(1),c2(2),…,c2(1024)这些1024个数据组成,并组成c2冗余数据块;

步骤四、在所述发送端上根据所述原始数据块的数据按顺序动态显示17张二维码图片ai及所述冗余数据的2张二维码图片c1及c2;

步骤五、所述接收端通过二维码扫描设备对所述发送端上按顺序显示的19张二维码图片进行扫描;

步骤六、所述接收端将采集到的二维码图片进行解析;解析完成后,所述接收端自动检查数据的完整性:

若发现未丢失原始数据块,则按照步骤七执行;

若发现丢失任一原始数据块ab,其中,b为1到17的任一自然数;在本实施例中假设b=9;则原始数据块a9的恢复方法按步骤六一执行;

若发现丢失任一原始数据块ab及任一冗余数据块,其中,b为1到n的任一自然数;在本实施例中假设b=9;则原始数据块a9的恢复方法按步骤六二执行;

发现丢失任意二个原始数据块ab及ac,其中,b为1到n的任一自然数;在本实施例中假设b=9;c为1到n的自然数且b不等于c;在本实施例中假设c=17;则原始数据块a9及a17的恢复方法按步骤六三执行;

步骤六一、所述接收端根据步骤二的公式一,分别计算a9(1),a9(2),…,a9(1024);由此,恢复得到原始数据块a9,再按照步骤七执行;

步骤六二、若丢失的冗余数据块是c1冗余数据块,所述接收端根据步骤二的公式二,分别计算a9(1),a9(2),…,a9(1024);由此,恢复得到原始数据块ab,再按照步骤七执行;若丢失的冗余数据块是c2冗余数据块,所述接收端根据步骤二的公式一,分别计算a9(1),a9(2),…,a9(1024);由此,恢复得到原始数据块a9,再按照步骤七执行;

步骤六三、所述接收端根据步骤二的公式一及公式二,分别计算a9(1)及a17(1);a9(2)及a17(2);…,a9(1024)及a17(1024);由此,恢复得到原始数据块a9及a17,再按照步骤七执行;

步骤七、所述接收端将获得的对应各所述原始数据块数据写入本地缓存文件;并将各所述原始数据块数据进行合并,得到完整的原始数据进行储存。

实施例4

本实施例4提供了一种二维码摆渡主机的解码编排方法包括:用于发送原始数据包的发送端和用于接收数据的接收端,执行如下步骤:

步骤一、所述发送端将需要发送的原始数据包进行自动分块处理,设分成18个原始数据块,每个原始数据块具有相等大小的字节,设每个数据块数据大小为1024字节,对每个原始数据块的字节标记为j,其中j为1到1024的自然数,对每个原始数据块进行标记序号,设标记序号为i,设原始数据块代号为ai,其中i为1到18的自然数;则每个原始数据块的数据标志为ai(j);

步骤二、插入两组冗余数据,a1-a15插入c1及c2;a16-a18插入c3及c4;

其中:

a1-a15插入c1及c2的方法同实施例2的方法;后续数据传输及数据恢复的步骤也同实施例2。

a16-a18插入c3及c4的方法同实施例1的方法;后续数据传输及数据恢复的步骤也同实施例1。

实施例5

本实施例5提供了一种二维码摆渡主机的解码编排方法包括:用于发送原始数据包的发送端和用于接收数据的接收端,执行如下步骤:

步骤一、所述发送端将需要发送的原始数据包进行自动分块处理,设分成32个原始数据块,每个原始数据块具有相等大小的字节,设每个数据块数据大小为1024字节,对每个原始数据块的字节标记为j,其中j为1到1024的自然数,对每个原始数据块进行标记序号,设标记序号为i,设原始数据块代号为ai,其中i为1到32的自然数;则每个原始数据块的数据标志为ai(j);

步骤二、插入两组冗余数据,a1-a15插入c1及c2;a16-a32插入c3及c4;

其中:

a1-a15插入c1及c2的方法同实施例2的方法;后续数据传输及数据恢复的步骤也同实施例2。

a16-a32插入c3及c4的方法同实施例3的方法;后续数据传输及数据恢复的步骤也同实施例3。

实施例6

本实施例6提供了一种二维码摆渡主机的解码编排方法包括:用于发送原始数据包的发送端和用于接收数据的接收端,执行如下步骤:

步骤一、所述发送端将需要发送的原始数据包进行自动分块处理,设分成33个原始数据块,每个原始数据块具有相等大小的字节,设每个数据块数据大小为1024字节,对每个原始数据块的字节标记为j,其中j为1到1024的自然数,对每个原始数据块进行标记序号,设标记序号为i,设原始数据块代号为ai,其中i为1到33的自然数;则每个原始数据块的数据标志为ai(j);

步骤二、插入三组冗余数据,a1-a15插入c1及c2;a16-a30插入c3及c4;a31-a33插入c5及c6;

其中:

a1-a15插入c1及c2的方法同实施例2的方法;后续数据传输及数据恢复的步骤也同实施例2。

a16-a30插入c3及c4的方法同实施例2的方法;后续数据传输及数据恢复的步骤也同实施例2。

a31-a33插入c5及c6的方法同实施例1的方法;后续数据传输及数据恢复的步骤也同实施例1。

根据本公开的至少一个实施方式,若n>15,则每15个原始数据块为一组,并在每组原始数据块中插入一组二阶冗余数据;若最后一组的原始数据块数量≤2,则将最后一组的原始数据块并入至倒数第二组的原始数据块中。

根据本公开的至少一个实施方式,若n≤2,则不使用插入冗余数据的方法,发送端可以直接将原始数据块复制两份,若数据在传输过程中丢失,则在接收端直接从备份中恢复。这种复制备份的方法适用于原始数据块数量≤2的情况。

根据本公开的至少一个实施方式,所述解码编排方法适用于每15个原始数据块中丢失的原始数据块≤2的数据传输。

本公开数据传输的方法,可以将大量的数据转化为二维码图片进行传输,提高了数据传输的可靠性,解决了内网与外网隔离造成的数据同步困难问题,保证了物理隔离传输的安全性;同时,采用的数据单向传输采用了带纠错的解码编排方法,大大提高了数据传输的完整性及可靠性。

在本说明书的描述中,参考术语“一个实施例/方式”、“一些实施例/方式”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例/方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例/方式或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例/方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例/方式或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例/方式或示例以及不同实施例/方式或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

本领域的技术人员应当理解,上述实施方式仅仅是为了清楚地说明本公开,而并非是对本公开的范围进行限定。对于所属领域的技术人员而言,在上述公开的基础上还可以做出其它变化或变型,并且这些变化或变型仍处于本公开的范围内。

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