一种基于二维码的物理隔离传输方法_2

文档序号:9330549阅读:来源:国知局
h表示原始数据长度,BlockSize表示块大小,所述块大小自定义,LastBlockSize表示最后一个所述分块数据的大小,则由公式⑴能得到所述分块数据的总数,由公式⑵能得到最后一个所述分块数据的大小;
[0042]例如,传输一份10.5M的WORD文件,若自定义块大小为1MB,则经过分块处理得到的分块数据总数为:TotalBlock = (int) (_File.Length/
[0043](long)BlockSize)+l = (10.5/1)+1 = 10+1 = 11,最后一个分块数据的大小为:10.5-(11-1)*1 = 0.5o
[0044]如图2所示,所述步骤60中,若出现异常情况(包括断电等意外)导致传输中断,则执行断点续传,所述断点续传包括如下步骤:
[0045]步骤61、所述第二网络终端发送重传指令至第一网络终端,并从所述第一网络终端获取所述分块数据总数和最后一个所述分块数据的大小(由所述分块数据总数和最后一个所述分块数据大小可计算得到所述原始数据传输到所述第二网络终端所需的传输总次数);
[0046]步骤62、所述第二网络终端校验本地缓存文件中已存的所述分块数据,并从本地缓存文件中循环读入已存的所述分块数据;
[0047]步骤63、所述第二网络终端对读取到的已存的所述分块数据分别进行计算获取各自对应的哈希值,并与从所述第一网络终端获取的各所述分块数据的哈希值进行比较是否相同:若是,则找出其中所述分块数据对应的区块序号最大的所述分块数据,从而获取与尚未传输的所述分块数据对应的区块序号列表;若否,则记入损坏的所述分块数据对应的区块序号列表中;
[0048]步骤64、所述第二网络终端根据所述损坏的所述分块数据对应的区块序号列表或所述尚未传输的所述分块数据对应的区块序号列表,向所述第一网络终端循环发送获取对应的所述分块数据的指令,并开始异步接收所述第一网络终端发送的对应的所述分块数据;
[0049]步骤65、所述第二网络终端对接收的所述分块数据进行无限循环判断直到接收到正确的所述分块数据;
[0050]步骤66、所述第二网络终端将接收到的所述分块数据写入本地缓存文件并进行无限循环判断直到所述分块数据成功写入本地缓存文件(防止发生磁盘写入错误等情况发生,保证数据的准确性);
[0051]步骤67、判断第二网络终端是否接收到全部所述分块数据:若是,则结束传输;若否,则循环执行步骤62到步骤66。
[0052]本发明,通过将大量的数据转化为二维码图片进行传输,提高了数据传输的可靠性及准确性,解决了内网与外网隔离造成的数据同步困难问题,保证了物理隔离传输的安全性,并提高了传输效率。
[0053]虽然以上描述了本发明的【具体实施方式】,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
【主权项】
1.一种基于二维码的物理隔离传输方法,其特征在于:包括用于发送原始数据的第一网络终端和接收原始数据的第二网络终端,执行如下步骤: 步骤10、所述第一网络终端对需要发送的原始数据进行自动分块处理,得到分块数据;各所述分块数据都对应一区块序号; 步骤20、所述第一网络终端对各所述分块数据进行加密并分别转换为对应的二维码图片; 步骤30、在所述第一网络终端上根据所述区块序号按顺序显示各二维码图片得到组合二维码图片;所述组合二维码图片由复数张所述二维码图片排列组成; 步骤40、所述第二网络终端通过二维码扫描设备或高速照相机对所述第一网络终端上显示的所述组合二维码图片进行扫描; 步骤50、所述第二网络终端将采集到的所述组合二维码图片进行解密,并拆分为对应的各所述二维码图片; 步骤60、所述第二网络终端将拆分得到的各所述二维码图片进行解析,获得对应的各所述分块数据并写入本地缓存文件; 步骤70、所述第二网络终端将接收的全部所述分块数据进行合并,得到完整合并后的所述原始数据进行存储。2.根据权利要求1所述的一种基于二维码的物理隔离传输方法,其特征在于:所述步骤10进一步具体为,所述第一网络终端根据所述原始数据的数据量与所述二维码图片存储容量划分所述原始数据,得到所述分块数据,且所述分块数据的总数与最后一个所述分块数据的大小分别满足以下公式: TotalBlock = (int)(_File.Length/(long)BlockSize)+1(I)LastBlockSize = (int)(_File.Length-((long)TotalBlock-1)*(long)BlockSize)(2) 在公式(I)和公式(2)中TotalBlock表示所述分块数据的总数,_File.Length表示原始数据长度,BlockSize表示块大小,所述块大小自定义,LastBlockSize表示最后一个所述分块数据的大小,则由公式(I)能得到所述分块数据的总数,由公式(2)能得到最后一个所述分块数据的大小。3.根据权利要求1或2所述的一种基于二维码的物理隔离传输方法,其特征在于:所述步骤60中,若出现异常情况导致传输中断,则执行断点续传,所述断点续传包括如下步骤: 步骤61、所述第二网络终端发送重传指令至第一网络终端,并从所述第一网络终端获取所述分块数据总数和最后一个所述分块数据的大小; 步骤62、所述第二网络终端校验本地缓存文件中已存的所述分块数据,并从本地缓存文件中循环读入已存的所述分块数据; 步骤63、所述第二网络终端对读取到的已存的所述分块数据分别进行计算获取各自对应的哈希值,并与从所述第一网络终端获取的各所述分块数据的哈希值进行比较是否相同:若是,则找出其中所述分块数据对应的区块序号最大的所述分块数据,从而获取与尚未传输的所述分块数据对应的区块序号列表;若否,则记入损坏的所述分块数据对应的区块序号列表中; 步骤64、所述第二网络终端根据所述损坏的所述分块数据对应的区块序号列表或所述尚未传输的所述分块数据对应的区块序号列表,向所述第一网络终端循环发送获取对应的所述分块数据的指令,并开始异步接收所述第一网络终端发送的对应的所述分块数据;步骤65、所述第二网络终端对接收的所述分块数据进行无限循环判断直到接收到正确的所述分块数据; 步骤66、所述第二网络终端将接收到的所述分块数据写入本地缓存文件并进行无限循环判断直到所述分块数据成功写入本地缓存文件。 步骤67、判断第二网络终端是否接收到全部所述分块数据:若是,则结束传输;若否,则循环执行步骤62到步骤66。
【专利摘要】本发明提供一种基于二维码的物理隔离传输方法,包括:第一网络终端对需要发送的原始数据进行自动分块处理,得到分块数据;对各分块数据进行加密并分别转换为对应的二维码图片;在第一网络终端上根据区块序号按顺序显示各二维码图片得到组合二维码图片;第二网络终端对组合二维码图片进行扫描;将采集到的组合二维码图片进行解密并拆分为对应的各二维码图片;将拆分得到的各二维码图片进行解析,获得对应的各分块数据并写入缓存文件;第二网络终端将接收的全部分块数据进行合并,得到完整合并后的原始数据进行存储。本发明的优点是提高了数据传输的可靠性及准确性,解决了内外网隔离造成的数据同步困难问题,保证了物理隔离传输的安全性和效率。
【IPC分类】G06K19/06, H04L29/06
【公开号】CN105049425
【申请号】CN201510366303
【发明人】陈其其, 何新欣
【申请人】南威软件股份有限公司
【公开日】2015年11月11日
【申请日】2015年6月28日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1