CN107241188B - 一种量子存储数据编解码方法、装置及*** - Google Patents
一种量子存储数据编解码方法、装置及*** Download PDFInfo
- Publication number
- CN107241188B CN107241188B CN201710409519.9A CN201710409519A CN107241188B CN 107241188 B CN107241188 B CN 107241188B CN 201710409519 A CN201710409519 A CN 201710409519A CN 107241188 B CN107241188 B CN 107241188B
- Authority
- CN
- China
- Prior art keywords
- data
- quantum
- coding
- encoding
- constructing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0852—Quantum cryptography
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本发明实施例提供一种量子存储数据编解码方法、装置及***,将输入数据采取随机数D加密得到数据密文P0,分别将D和P0按照各自的量子字典分解为数据量子编码集合,按照集成编码随机序码Sn,由D和P0的所有数据量子编码拼装出组合编码数据PP,将PP分割为n份数据片段PP1、PP2、……、PPn,每份数据片段头部添加编码头H和信封编码HX后,构建出n个数据P1、P2、……、Pn,输出到各自的目标位置。本发明实施例是一种秘密分割方法和***,具备加密数据不需要保存密钥、数据输出不可预测次次不同的随机特征,也为二进制量子比特计算机兼容目前的硅比特计算机提供了一种方法。
Description
技术领域
本发明涉及计算机信息技术领域,尤其涉及一种量子存储数据编解码方法、装置及***。
背景技术
本发明涉及集合及其子集的数学应用。集合是数学中一个基本概念,它是集合论的研究对象,集合是指具有某种特定性质的具体的或抽象的对象汇总成的集体,这些对象称为该集合的元素。由一个或多个确定的元素所构成的整体叫做集合。集合中的元素有三个特征:确定性、互异性、无序性。
数据加密技术是信息安全的基石,数据加密算法是一种数学变换,在选定参数(密钥)的参与下,将信息从易于理解的明文加密为不易理解的密文,同时也可以将密文解密为明文。数据加密(Data Encryption)技术将一个信息(或称明文,plain text)经过加密钥匙(Encryption key)及加密函数转换,变成无意义的密文(cipher text),而接收方则将此密文经过解密函数、解密钥匙(Decryption key)还原成明文。
秘密分割(secret splitting)是一种特殊的机密技术,指把消息分割成许多碎片,每一片本身并不代表什么,但把这些碎片放到一块,消息就会重现出来。秘密分割门限方案是一种秘密分割实现技术方案,定义如下:输入数据P0被分为n个部分,每个部分由一个参与者持有,使得:(1)由k个或多于k个参与者所持有的部分信息可重构P0。(2)由少于k个参与者所持有的部分信息则无法重构P0。满足以上条件的数据加密方案称为(k,n)秘密分割门限方案,k称为门限值。常用的秘密分割门限方案有异或门限方案、Shamir(k,n)门限方案、中国剩余定理门限方案等。
在量子计算中,作为量子信息单位的是量子比特,量子比特与经典比特相似,只是增加了物理原子的量子特性,量子比特在量子计算***中表示状态记忆和纠缠态。量子比特的英文名字为quantum bit,简写为qubit或qbit。量子比特是量子计算的信息单元,量子比特的信息量的取值称为“态”。从物理上来说量子比特就是量子态,每个量子比特除了处于“0”态或“1”态外,还可处于“0”与“1”的叠加态。常规计算机中的比特是量子比特的特例,可看作是一种特殊的单量子比特,它不是处于“0”态就是处于“1”态。N位量子寄存器是指N个量子比特的有序集合,它的态是N个量子比特的态的张量积,在二进制量子计算机中,一个N位量子寄存器可以存入2的N次方个N位数,但在测量(即读出)时,由于量子寄存器的叠加态坍缩,将只能测得某一个N位数。
在实现本发明的过程中,发明人发现:
1、数据加密需要保存密钥,密钥管理复杂、用户操作不便。对于对称加密,如果采用固定密钥,存储双方在数据传送前,发送方和接收方必须商定好秘钥,然后使双方都能保存好秘钥;如果一方的秘钥被泄露,那么加密信息也就失密。如果采用动态密钥,采取一次一密的通信方式,可实现不可破解的加密,但如何才能把密钥安全送到收信方是对称加密体制的突出问题。对于非对称加密,需要有一个可信的公钥管理机构(例如PKI),就PKI而言,存在着公钥管理***费用昂贵、互操作问题突出、PKI***与其他***的集成时面临已有***的调整甚至替换、使用和管理PKI需要更多培训、需要第三方认证机构、用户需要申请电子证书、使用者需要较高的计算机应用技能等等。
2、数据加密的明文和密文存在固定对应关系,即,同样的明文,其密文相同,这种特点导致加密技术易于被破解,在更高速的计算环境(例如云计算、量子计算)中被破解的风险更大。
3、目前还没有合适的二进制数据编解码方法,使得量子比特能够使用当前的二进制编码数据。从数据存储方面,还没有一种编解码方法,使得当前的二进制编码数据与量子寄存器的输入、输出相互兼容。
发明内容
本发明要解决的问题在于:克服现有加密技术需要保存密钥、明文和密文存在固定对应关系等方面导致的问题,提出一种不需要保存密钥、明文与密文不存在固定对应关系的一种数据编码、解码方法、装置及***,同时为二进制量子比特计算机兼容目前的硅比特计算机提供了通用的一种数据编解码方法。
本发明实施例提供一种量子存储数据编码、解码方法、装置及***。本发明通过量子存储编码器将输入数据采取随机密钥D加密得到数据密文P0,分别将D和P0按照各自的量子字典分解为数据量子编码集合,按照集成编码随机序码Sn,组装出由D和P0的所有数据量子编码拼装出的组合编码数据PP,分割为n份数据片段,每份数据片段头部添加编码头H和信封编码HX后,构建出n个数据P1、P2、……、Pn,输出到各自的目标位置。通过量子存储解码器,从n个数据P1、P2、……、Pn解码出数据P。本发明实施例提供的基于量子存储数据编码与解码方法,具备突出的防泄漏数据安全优势,为二进制量子比特计算机兼容目前的硅比特计算机提供了一种方法。
第一方面,本发明实施例提供了一种量子存储编码方法、装置和***,所述量子存储编码方法、装置和***包括:
所述量子存储编码方法、装置和***(简称量子存储编码器)包括以下模块:编码头构造模块、随机数构造模块、量子字典构造模块、量子序码构造模块、数据量子编码集合构造模块、量子存储编码集合构造模块、信封数据头构造模块、数据输入输出模块。
所述一种量子存储编码方法,其编码方法包括:
(一)初始化编码管理参数,设置各编码管理参数的取值。
编码管理参数包括:对称加密算法;数字摘要算法;源数据密文P0的数据字典比特位数N1;随机密钥D的数据字典比特位数N2;输出数据数量n;各输出数据长度比率数组nr,每个输出数据的输出目标位置;
在编码头构造模块中,将编码管理参数加入到编码头H中。
(二)初始化源数据P,生成对称加密的随机密钥D,对源数据P进行加密,得到二进制数
据编码的源数据密文P0;
所述随机密钥D,是随机生成的指定长度的二进制随机数,用做源数据加密的密钥,用D表示,其长度特征用DL表示。
用随机数构造模块生成一个变长的随机数据,作为对称加密密钥D。
随机数构造模块构造随机数时,使用的随机种子包括:计算机当前时间的毫秒数、源数据P的比特位数、源数据P编码特征数据(优选其二进制编码0所占的百分比数据)、源数据P的数字摘要、源数据P的数字摘要编码特征数据(优选其二进制编码0所占的百分比数据)。
所述源数据密文,是源数据P使用随机密钥D加密后的密文的二进制编码,用P0表示。
(三)构造出源数据密文P0的N1位数据字典和随机密钥D的N2位数据字典。
所述量子字典是根据编码参数比特位数N,构造出的N位二进制数据编码全集。在二进制量子计算机中,N位量子寄存器的“态”集合就是所述量子字典。
使用量子字典构造模块构造数据字典,量子字典构造模块根据输入数据和量子字典的元素的比特位数N构造量子字典。优选的,将二进制数据切分为长度为N位的二进制整数得到一个数组,去除重复的元素后,最后所得的二进制整数集合,即得到本次编码过程中使用的量子字典。
(四)构造出源数据密文P0的数据量子编码集合和随机密钥D的数据量子编码集合。
所述数据量子,是所述量子字典内的元素。一个数据量子是一个N位二进制整数,是N位量子寄存器的一个“态”。
所述数据量子编码,是一种数据量子及其序码的组合编码,即:数据量子编码=数据量子+序码。所述序码,是描述数据量子在待编码数据DP中出现的位置和次序信息的二进制数据编码。
使用量子序码构造模块构造序码,序码的构造方式是:将输入的长度为M的二进制待编码数据DP,从头部开始,依次切分成N位长度的数据段,每个N位长度的数据段都用一个数据量子表示;DP最后的一个数据段如果不足N位,则用0来补充不足部分,并且通过编码头构造模块,在编码头中记录补充0的数量。这样,记L=不小于M除以N的最大整数,则DP由L个数据量子组成。针对量子字典的每一个数据量子,从DP头部开始,依次一一比对各个数据段与该数据量子的异同,以0表示不同,以1表示相同,按此方式得到一个长度为L的二进制编码,这个长度为L的二进制编码就是对应数据量子的序码。
使用数据量子编码集合构造模块构造数据量子编码,过程包括:(1)输入待编码数据DP、DP的数据量子长度N,使用量子字典构造模块构造数据字典;(2)从量子字典中,依次选取数据量子,使用量子序码构造模块构造该数据量子的序码,构造该数据量子的数据量子编码(编码方式为:数据量子+序码),输出一个数据量子编码集合;(3)使用编码头构造模块,记录数据量子编码集合的元素数量。
源数据P使用密钥D加密后,形成数据密文P0。
使用数据量子编码集合构造模块,以P0和N1作为输入参数,构造出P0的数据量子编码集合。使用数据量子编码集合构造模块,以D和N2作为输入参数,构造出D的数据量子编码集合。
(五)构造量子存储编码集合。
所述量子存储编码,是所述量子存储编码器的一个输出数据,标记为Ps。
使用量子存储编码集合构造模块构造量子存储编码集合,过程包括:(1)使用随机数构造模块生成集成编码随机序码Sn。所述Sn是一个二进制随机数,由随机密钥D的数据量子编码集合的基数(DN)个0和源数据密文P0的数据量子编码集合的基数(P0N)个1组成。Sn是一个(P0N+DN)位二进制整数的随机数;(2)使用编码头构造模块,在H中记录Sn;(3)生成组合编码数据PP,即根据集成编码随机序码将源数据密文P0和对称加密密钥D两者的数据量子编码集合组合编码为一个编码数据,其中,从集成编码随机序码头部开始,由前到后依次编码,当比特位取值为1时,编入一个数据密文P0的数据量子编码元素,当比特位取值为0时,编入一个对称加密密钥D的数据量子编码元素。(4)切分PP,将组合编码数据PP切分为n个数据片段,PP1、PP2、……PPn,各片段的数据长度比率接近数组nr的设定值。(5)使用编码头构造模块,构造编码头数据H,所述编码头H,是添加在编码头部的、用于描述所编码的数据使用的数据参数、以及数据编码的数据特征的数据编码。编码头的数据项包括:对称加密算法、数字摘要算法、源数据密文P0的数据字典比特位数N1、随机密钥D的数据字典比特位数N2、输出数据数量n、各输出数据长度比率数组nr、每个输出数据的输出目标位置、源数据P的数字摘要、源数据P的长度M、对称加密密钥D的数据摘要、对称加密密钥D的长度MD、源数据密文P0的长度、数据P0的长度、P0尾部数据段、数据P0的数据量子编码集合的元素数量P0N、密钥D尾部数据段、密钥D的数据量子编码集合的元素数量DN、集成编码随机序码Sn、数据片段的数字摘要等数据参数。(5)构造量子存储编码元素Ps。构造方式为:Psi=H+i+PPi,即第i个量子存储编码元素Psi是由编码头H、数据片段在PP中的顺序i、PP的第i个数据片段PPi等三部分编码拼接而成。
(六)输出数据,将量子存储编码集合的各个元素增加信封数据头后,输出到各自的存储方。
使用信封数据头构造模块构造信封数据头HXi,构造方法为:HXi=源数据P的数字摘要+量子存储编码Psi的数字摘要+编码头H的长度+输出数据数量n+当前服务器时间。即,第i个输出数据信封头HXi是由源数据P的数字摘要、量子存储编码Psi的数字摘要、编码头H的长度、输出数据数量n、当前服务器时间等编码拼接而成。
使用数据输入输出模块输出数据Pi,过程包括:(1)构造输出数据Pi,构造方法为:Pi=HXi+Psi,即第i个输出数据Pi是由第i个信封头HXi、第i个量子存储编码元素Psi拼接而成。(2)向目标地址输出Pi。
第二方面,本发明实施例提供了一种数据量子存储解码方法、装置及***。所述数据量子存储解码方法包括:
所述一种数据量子存储解码装置及***(简称量子存储解码器)包括如下模块:参数解码模块、组合编码数据PP拼装模块、随机密钥D解码模块、数据密文P0解码模块、数据输出模块。
所述一种数据量子存储解码方法,其解码方法包括:(1)读入数据P1、P2、……Pn;(2)使用参数解码模块解析每个数据Pi的编码信封HXi、编码头H中的各项编码参数和PPi。(3)使用组合编码数据PP拼装模块,将PP1、PP2……PPn拼接为PP;(4)使用随机密钥D解码模块,根据Sn和PP,解码出D;(5)使用数据密文P0解码模块,根据Sn和PP,解码出P0;(6)使用数据输出模块,用D解密P0得到P,校验后输出。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一种量子存储编码方法流程图;
图2为本发明实施例一种量子存储解码方法流程图;
图3为本发明实施例一种量子存储编码、解码装置及***示意图;
图4为本发明实施例一种量子存储编码装置、***组成示意图;
图5为本发明实施例一种量子存储解码装置、***组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,为本发明实施例一种量子存储编码方法流程图,所述量子存储编码方法包括:
101、初始化编码管理参数,设置各编码管理参数的取值,在输出数据编码头中记录各项参数的取值。
102、初始化源数据P,生成对称加密的随机密钥D,对源数据P进行加密,得到二进制数据编码的源数据密文P0;
103、构造量子字典:构造出源数据密文P0的N1位数据字典和随机密钥D的N2位数据字典。
104、构造数据量子编码集合,构造出源数据密文P0的数据量子编码集合和随机密钥D的数据量子编码集合。
105、构造量子存储编码集合,将源数据密文P0的数据量子编码集合和随机密钥D的数据量子编码集合合并编码为一个数据编码,再按照长度比率要求,划分出指定数量的数据编码片段,在每项数据片段头部增加数据编码头。
106、输出数据,即输出量子存储编码集合的各个元素。
为每个输出的量子存储编码元素添加信封数据头(即编码信封),编码信封包括:输出数据数字摘要、编码头H的长度HL、源数据P的数字摘要、量子存储编码元素的数字摘要、量子存储编码元素的输出时间、数据片段的顺序号、数据片段的总数。
如图2所示,为本发明实施例一种量子存储解码方法流程图,所述量子存储解码方法包括:
21、读取待解码数据;从各项输入数据的编码头数据中,解码出各项编码参数;
在内存中建立一个编码参数数据结构。在读入输入数据时,将编码数据头中的所有***编码参数都解码出来,存入到编码参数数据结构中
22、根据编码参数中的各项数字摘要,校验数据是否被篡改;
根据数据片段的总数、数据片段的顺序号,验证是否有遗漏数据,要求数据数量不多也不少、编号连续、无重复;根据源数据P的数字摘要数据是否一致,验证所述待解码数据是否属于同一源数据P的编码数据。
23、从输入数据中,解码出对应的量子存储编码元素,拼装出组合编码数据PP;
根据信封数据头内的数据片段顺序号,按照由小到大的顺序,依次取出数据片段编码,拼接在一起,即得到组合编码数据PP;
24、从组合编码数据PP中,依据集成编码随机序码Sn,解码出对称加密密钥D的数据量子编码集合和源数据密文P0的数据量子编码集合;
25、解码出随机密钥D和源数据密文P0;对随机密钥D、源数据密文进行校验;
26、解密出源数据P,校验并输出;
如图3所示,为本发明实施例一种量子存储编码、解码装置及***示意图,包括:
301、数据P,作为量子存储编码器的输入数据;
302、量子存储编码器,是本发明实施例量子存储编码方法的一种技术实现装置、***。将输入数据按照量子存储编码方法,分解为多个输出数据,分别存储在各自目标位置。包括编码头构造模块、随机数构造模块、量子字典构造模块、量子序码构造模块、数据量子编码集合构造模块、量子存储编码集合构造模块、信封数据头构造模块、数据输入输出模块,见图4。
303、存储在不同位置的量子存储数据。
304、量子存储解码器,是本发明实施例量子存储解码方法的一种技术实现装置、***。将输入的各项数据按照量子存储解码方法,合并解码出一个输出数据。包括参数解码模块、组合编码数据PP拼装模块、随机密钥D解码模块、数据密文P0解码模块、数据输出模块,见图5。
305、数据P,是量子存储解码器的输出数据。
如图4所示,本发明实施例一种量子存储编码装置、***组成包括:
41、编码头构造模块:用于构造编码头H,实现了在编码过程中,各项编码参数及时编入到编码头中的功能。
42、随机数构造模块:用于根据随机种子,构造随机密钥D、随机集成编码随机序码Sn。
43、量子字典构造模块:提供统一的量子字典构造方法,用于构造随机密钥D的量子字典、数据密文P0的量子字典。
44、量子序码构造模块:提供统一的序码构造方法,用于构造随机密钥D的数据量子的序码、数据密文P0的数据量子的序码。
45、数据量子编码集合构造模块:提供统一的数据量子编码集合功能,用于构造D和P0的数据量子集合。
46、量子存储编码集合构造模块:提供统一的量子存储编码集合功能。
47、信封数据头构造模块:用于根据每个量子存储编码元素,构造对应的信封数据头。
48、数据输入输出模块:用于根据目录参数,读取输入数据或者输出存储数据。
如图5所示,本发明实施例一种量子存储解码装置、***组成包括:
501、参数解码模块:在内存中建立可以一个编码参数数据结构,在读入各输出数据编码元素时,将编码信封数据和数据编码头H中的所有参数都解码出来,存入到编码参数数据结构中
502、组合编码数据PP拼装模块:完成PP的拼装过程;
503、随机密钥D解码模块:完成随机密钥D的解码过程;
504、数据密文P0解码模块:完成数据密文P0的解码过程;
505、数据输出模块:对数据P进行校验后,输出到目标位置。
上述技术方案具有如下有益效果:
1、本发明基于数据的二进制编码,提供了一种普遍适用于所有的数据类型的量子存储编码和解码方法。
2、本发明提供了一种二进制量子字典是二进制量子比特的取值全集,也是二进制量子寄存器“态”的全集,所述构造量子字典、数据量子的方法,为所有种类的二进制计算机提供了一种通用的数据编码方式,为二进制单比特计数机和二进制多量子比特计算机的相互兼容提供了一种数据编码对应关系和具体的实现方法。
3、本发明缺省采用了随机密钥加密输入源数据,并且在数据组装过程中采用了随机顺序添加数据量子编码元素的方式,导致量子存储编码具备随机性和不可测性,即:同样的输入源数据,每次量子存储编码都会不同,具有出输入固定,而输出随机的特性。
4、本发明基于集合论,所述数据字典、数据量子编码集合、量子存储编码集合都是一种数学意义上的集合,其元素具备数学集合内所含元素的所有特点,包括确定性、互异性和无序性等等。这使得本发明具备高并发、可深度循环的特性,不仅满足当前的计算算法要求,也满足量子计算的算法要求。
5、本发明所提出的量子存储编码方法提供了一种一次一密的秘密分割算法生成方法:源数据是秘密,所有的输出数据都是秘密分割元素。本发明可方便构造出从2人分割到n人分割的秘密分割算法。
6本发明提供的基于量子存储的数据交换,交换双方之间仅仅传输非常少量的数据,提高了数据交换的速度和安全性。
以下结合应用实例对本发明实施例上述技术方案进行详细说明:
本发明基于二进制N位量子寄存器的数据结构特点,提出一种基于N位量子字典的数据编码方法,在编码过程中,为适应物理学量子的随机概率取值特征,所述量子存储编码方法允许在各个环节引入了随机变量。
本发明应用实例的技术方案由两部分组成:
一、量子存储编码器,将一个输入数据按照所述量子存储编码方法编码为一个或者多个输出数据,每个数据都可独立存储和管理。
二、量子存储解码器,将多个输入数据按照所述量子存储解码方法解码为一个数据。
参见图3,量子存储编码器和量子存储解码器是相互配套的两个装置或***。
以下对上述两个***一一说明。
一、量子存储编码器
参见图1,量子存储编码***工作过程如下:
101、初始化编码管理参数,设置各编码管理参数的取值,在输出数据编码头中记录各项参数的取值。
设置参数取值包括:源数据密文P0的数据量子长度N1=4;随机密钥D的数据量子长度N2=2;随机密钥D的长度DL=8输出数据数量n=2;输出数据长度比例数组nr={0:X}输出数据目标位置数组nt={/数据令牌;/数据密文}数字摘要算法:SHA256加密算法:异或运算初始化源数据P;
102、初始化源数据P,生成对称加密的随机密钥D,对源数据P进行加密,得到二进制数据编码的源数据密文P0;
读入源数据P:1010 1001 1100 1101 1111 1010 0011 0111 0011 1011 11110010 1011 0001
使用随机种子:当前***时间,生成随机密钥D:1011 0001
D的长度为:8,是N2的4倍,尾部补0的数量为0;在数据头中记录参数:DLA={4,0}标识D的长度特征。
源数据密文P0:0101 1000 0111 1100 0100 1011 1000 0110 1000 1010 01000011 0000 0000
P0的长度为:56,是4的14倍,尾部补0的数量为0;在数据头中记录参数:P0LA={14,0}标识P0的长度特征。
103、构造量子字典:构造出源数据密文P0的N1位数据字典和随机密钥D的N2位数据字典。
构造量子字典:
构造出源数据密文P0的4位量子字典,找出P0中出现的4位二进制整数包括:
0101,1000,0111,1100,0100,1011,0110,1010,0011,0000
构造出随机密钥D的2位量子字典,找出D中出现的2位二进制整数包括:
10,11,00,01
104、构造数据量子编码集合,构造出源数据密文P0的数据量子编码集合和随机密钥D的数据量子编码集合。
源数据密文P0的数据量子编码集合有10个元素,P0N=10
数据量子(P0N=10) | 序码(P0L={14,0}) |
0101 | 1000 0000 0000 00 |
1000 | 0100 0010 1000 00 |
0111 | 0010 0000 0000 00 |
1100 | 0001 0000 0000 00 |
0100 | 0000 1000 0010 00 |
1011 | 0000 0100 0000 00 |
0110 | 0000 0001 0000 00 |
1010 | 0000 0000 0100 00 |
0011 | 0000 0000 0001 00 |
0000 | 0000 0000 0000 11 |
数据量子编码元素是数据量子+序码,以此原则,得到P0的数据量子编码集合为:
{0101 1000 0000 0000 00 1000 0100 0010 1000 00 0111 0010 0000 0000 001100
0001 0000 0000 00 0100 0000 1000 0010 00 1011 0000 0100 0000 00 01100000 0001 0000 00 1010 0000 0000 0100 00 0011 0000 0000 0001 00 0000 00000000 0000 11}
随机密钥D的数据量子编码集合有4个元素,DN=4,数据量子编码集合如下表,
数据量子 | 序码 |
10 | 1000 |
11 | 0100 |
00 | 0010 |
01 | 0001 |
数据量子编码元素是数据量子+序码,以此原则,得到D的数据量子编码集合为:
{10 1000 11 0100 00 0010 01 0001}
105、构造量子存储编码集合,将源数据密文P0的数据量子编码集合和随机密钥D的数据量子编码集合合并编码为一个数据编码,再按照长度比率要求,划分出指定数量的数据编码片段,在每项数据片段头部增加数据编码头。
(1)生成集成编码随机序码Sn
生成一个有P0N个1,有DN个0的(P0N+DN)长度的随机二进制整数,作为集成编码随机序码Sn。即:Sn长度=10+4=14,其中有10个1,4个0。按照这个要求,生成随机数,得到:Sn=0111 1101 1011 10
(2)生成编码头,记录编码参数。
编码头为:H={N1=4,N2=2,DL=8,n=2,nr={0:X},nt={/数据令牌;/数据密文},DLA={4,0},P0LA={14,0},Sn=0111 1101 1011 10,数字摘要算法=SHA256,加密算法=异或运算},其二进制编码长度为HL
为了便于理解,以下用符号H表示其二进制编码。
(3)生成组合编码PP
组合编码PP的生成原则为:在编码头H后,以Sn为序码,由前到后依次添加编码,当Sn比特位取值为1时,编入P0的一个数据量子编码元素,当比特位取值为0时,编入一个随机密钥D量子编码元素。
按照Sn=0111 1101 1011 10,编入P0和D的量子编码集合,得到组合编码PP为:
H(代表编码头二进制编码)10 1000 0101 1000 0000 0000 00 1000 0100 00101000 00 0111 0010 0000 0000 00 1100 0001 0000 0000 00 0100 0000 1000 0010 0011
0100 1011 0000 0100 0000 00 0110 0000 0001 0000 00 00 0010 1010 00000000 0100 00 0011 0000 0000 0001 00 0000 0000 0000 0000 11 01 0001
(4)划分组合编码数据PP为量子存储编码元素
由于参数n=2,nr={0:X},将组合编码数据PP划分为2个数据片段,第一个数据包含所有***参数描述数据编码头,包含0个数据编码,第二个数据片段包含所有数据编码。
得到两个量子存储编码元素:
量子存储编码元素1:H
量子存储编码元素2:10 1000 0101 1000 0000 0000 00 1000 0100 0010 100000 0111 0010 0000 0000 001100 0001 0000 0000 000100 0000 1000 0010 0011
01001011 0000 0100 0000 000110 0000 0001 0000 0000 00101010 0000 00000100 000011 0000 0000 0001 000000 0000 0000 0000 1101 0001
106、输出数据,即输出量子存储编码集合的各个元素。
构造编码信封:为每个输出的量子存储编码元素添加信封数据头(即编码信封),编码信封包括:输出数据数字摘要、编码头H的长度HL、源数据P的数字摘要、量子存储编码元素的数字摘要、量子存储编码元素的输出时间、数据片段的顺序号、数据片段的总数。
编码信封采取固定长度格式编码,格式如下:
开始256位:存储本输出数据数字摘要值
257到512位:存储源数据P的数字摘要值
513到600位:存储信封长度值
601到856位:存储量子存储编码元素的数字摘要值
857到900位:存储量子存储编码元素的输出时间
901到916位:存储本输出数据的序号
916到950位:存储本输出数据的总数
量子存储编码元素1的编码信封HX1为:
{本输出数据数字摘要值,P的数字摘要,编码头H的长度HL,量子存储编码元素1的数字摘要,量子存储编码元素1的输出时间,序号=1,总数=2}
量子存储编码元素2的编码信封HX2为:
{本输出数据数字摘要值,P的数字摘要,编码头H的长度HL,量子存储编码元素2的数字摘要,量子存储编码元素2的输出时间,序号=2,总数=2}
构造输出数据编码元素
输出数据编码元素1:HX1 H
输出数据编码元素2:HX2 10 1000 0101 1000 0000 0000 001000 0100 00101000 000111 0010 0000 0000 001100 0001 0000 0000 000100 0000 1000 0010 0011
01001011 0000 0100 0000 000110 0000 0001 0000 0000 00101010 0000 00000100 000011 0000 0000 0001 000000 0000 0000 0000 1101 0001
输出数据
根据nt={/数据令牌;/数据密文},将输出数据编码元素1存储在本机当前目录的子目录/数据令牌中,将输出数据编码元素2存储在本机当前目录的子目录/数据密文中。
优选的,在输出数据编码中,存在大量的编码0,导致输出数据很长,采用数据压缩算法,例如LWZ算法,将输出数据压缩后存储。为方便理解,本发明实施例不采用数据压缩算法压缩输出数据。
二、量子存储解码器
将输入的量子存储编码数据解码出源数据P。主要过程为:读入数据,根据信封编码校验数据是否匹配、残缺、被篡改;解除信封编码,得到量子存储编码元素;按照次序将量子存储编码元素拼接出组合编码数据PP;从组合编码数据PP中取出编码头H;从编码头H解码出编码参数;根据参数从组合编码数据PP中解码出源数据密文P0和随机密钥D的数据量子编码集合;解码源数据密文P0数据量子编码集合,得到源数据密文P0,解码随机密钥D数据量子编码集合,得到随机密钥D。按照加密算法,根据随机密钥D,解密源数据密文P0得到源数据P的二进制编码。
参见图2,量子存储解码***工作过程如下:
21、读取待解码数据;从各项输入数据的编码头数据中,解码出各项编码参数;
读取待解码数据;将两个编码数据读入内存:
输出数据编码元素1:HX1 H
输出数据编码元素2:HX2 10 10000101 1000 0000 0000 001000 0100 00101000 000111 0010 0000 0000 001100 0001 0000 0000 000100 0000 1000 0010 0011
01001011 0000 0100 0000 000110 0000 0001 0000 0000 00101010 0000 00000100 000011 0000 0000 0001 000000 0000 0000 0000 1101 0001
22、根据编码参数中的各项数字摘要,校验数据是否被篡改;
在内存中设置编码信封二维数组HX,将每个输入数据的信封编码中的参数读入到HX数组中。方法为:读取每个输入数据的头部950位二进制编码,按照编码信封采取的固定长度格式编码规范,读取数据如下:
开始256位:本输出数据数字摘要值
257到512位:源数据P的数字摘要值,所有数据取值都应相同
513到600位:编码头H的长度HL,所有数据取值都应相同
601到856位:量子存储编码元素的数字摘要值
857到900位:量子存储编码元素的输出时间,所有数据取值都应相同
901到916位:本输出数据的序号,第一个数据取值为1,第二个数据取值为2
916到950位:本输出数据的总数,所有数据取值都是2
取各输入数据的901到916位,这部分数据是输出数据序号,须各不相同,并且构成从1开始的连续自然数数列。
23、从输入数据中,解码出对应的量子存储编码元素,拼装出组合编码数据PP;
去除所有数据的信封编码,将剩下的数据编码按照编号顺序从小到大,合并为一个编码,拼装出组合编码数据PP。组合编码数据PP为
H 10 10000101 1000 0000 0000 001000 0100 0010 1000 000111 0010 00000000 001100 0001 0000 0000 000100 0000 1000 0010 0011 01001011 0000 0100 0000000110 0000 0001 0000 0000 00101010 0000 0000 0100 000011 0000 0000 0001000000 0000 0000 0000 1101 0001
24、从组合编码数据PP中,依据集成编码随机序码Sn,解码出对称加密密钥D的数据量子编码集合和源数据密文P0的数据量子编码集合;
解码出数据编码头部,得到编码参数取值;从组合编码数据PP中的头部开始,截取编码信封的第513到600位(编码头H的长度HL)编码所记载的长度的数据编码,这部分编码是编码头,即H。
从编码头中解码出编码参数:N1=4,N2=2,DL=8,n=2,nr={0:X},nt={/数据令牌;/数据密文},DLA={4,0},P0LA={14,0},Sn=01111101101110,数字摘要算法=SHA256,加密算法=异或运算
组合编码数据PP切去编码头后剩余的编码为:
10 1000 0101 1000 0000 0000 001000 0100 0010 1000 000111 0010 00000000 001100 0001 0000 0000 000100 0000 1000 0010 0011 01001011 0000 0100 0000000110 0000 0001 0000 0000 00101010 0000 0000 0100 000011 0000 0000 0001000000 0000 0000 0000 1101 0001
按照序码Sn=0111 1101 1011 10,进行解码。
随机密钥D的数据量子编码集合:
{101000110100000010010001}
源数据密文P0的数据量子编码集合:
{0101 1000 0000 0000 00;1000 0100 0010 1000 00;0111 0010 0000 000000;1100 0001 0000 0000 00;0100 0000 1000 0010 00;1011 0000 0100 0000 00;01100000 0001 0000 00;1010 0000 0000 0100 00;0011 0000 0000 0001 00;0000 00000000 0000 11}
25、解码出随机密钥D和源数据密文P0;对随机密钥D、源数据密文进行校验;
随机密钥D的解码参数N2=2,DL=8,DLA={4,0},即随机密钥D的数据量子长度为2,随机密钥D的总长度为8,由4个数据量子组成,尾部添加0的数量为0
随机密钥D的初始化值:00000000
随机密钥D的数据量子编码集合及其解码过程如下表
数据量子 | 序码 | 解码动作 | 解码结果 |
00 00 00 00 | |||
10 | 1000 | 第1个2位用10替换 | 10 00 00 00 |
11 | 0100 | 第2个2位用11替换 | 10 11 00 00 |
00 | 0010 | 第3个2位用00替换 | 10 11 00 00 |
01 | 0001 | 第4个2位用01替换 | 10 11 00 01 |
解码出随机密钥D:10110001
按照解码随机密钥D同样的方法,解码出源数据密文P0的编码为:
初始化出一个56位长的二进制编码,取值全部为0。
数据量子 | 序码 | 解码动作 |
0101 | 1000 0000 0000 00 | P0的第1个4位用0101替换 |
1000 | 0100 0010 1000 00 | P0的第2、7、9个4位用1000替换 |
0111 | 0010 0000 0000 00 | P0的第3个4位用0111替换 |
1100 | 0001 0000 0000 00 | P0的第4个4为用1100替换 |
0100 | 0000 1000 0010 00 | P0的第5、11个4位用0100替换 |
1011 | 0000 0100 0000 00 | P0的第6个4位用1011替换 |
0110 | 0000 0001 0000 00 | P0的第8个4位用0110替换 |
1010 | 0000 0000 0100 00 | P0的第10个4位用1010替换 |
0011 | 0000 0000 0001 00 | P0的第12个4位用0011替换 |
0000 | 0000 0000 0000 11 | P0的第13、14个4位用0000替换。 |
解码出P0为:
0101 1000 0111 1100 0100 1011 1000 0110 1000 1010 0100 0011 0000 0000
26、解密出源数据P,校验后输出;
根据加密算法参数:异或运算
将P0用随机密钥D依次异或运算,得到源数据P的编码为:
1010 1001 1100 1101 1111 1010 0011 0111 0011 1011 1111 0010 1011 0001
对上述编码,采用SHA256算法计算数字摘要,与任意一个输入数据的257到512位比对,如果相同,则说明源数据P的编码过程和解码过程都安全可信任。
本发明应用实例技术方案带来如下的有益效果:
1、本发明包含的量子字典构造方法、数据量子和数据量子编码集合构造方法,可用于数据存储、数据传输、数据加密、数据压缩、数据解压缩等方面,可用于研发各种数据存储算法和数据加密算法。
2、本发明基于数据的二进制编码,提供了一种普遍适用于所有的数据类型的量子存储编码和解码方法。
3、本发明的量子存储编码具备随机性和不可测性,即:同样的输入源数据,每次量子存储编码都会不同,具有出输入固定,而输出随机的特性。本发明的编码不可测性可广泛用于交互式身份鉴别、身份认证领域,提供了一种高度安全的远程身份识别技术。
4、本发明所提出的量子存储编码方法提供了一种一次一密的秘密分割算法生成方法,可方便构造出从2人分割到n人分割的秘密分割算法。
5、本发明提供的数据量子存储设备或者***均具备一次一密的数据保密特征,在数据安全性上具有理论上不可破解的数据保密特性。
6、本发明可有效应用于并行计算算法和量子计算算法,在集群计算环境和量子计算环境中,按照本发明的方法编写的相关软件可大幅提高计算速度。
需要说明的是,本发明应用实例包含多个***和部件,但本发明应用实例***也可以将其中各子***全部集中在一个***之中,以单个软件模块、服务器、芯片或者其他设备方式呈现,这些也是本发明应用实例***的展现方式。
本领域技术人员还可以了解到本发明实施例列出的各种说明性逻辑块(illustrative logical block),单元,和步骤可以通过电子硬件、电脑软件,或两者的结合进行实现。为清楚展示硬件和软件的可替换性(interchangeability),上述的各种说明性部件(illustrative components),单元和步骤已经通用地描述了它们的功能。这样的功能是通过硬件还是软件来实现取决于特定的应用和整个***的设计要求。本领域技术人员可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为超出本发明实施例保护的范围。
本发明实施例中所描述的各种说明性的逻辑块,或单元都可以通过通用处理器,数字信号处理器,专用集成电路(ASIC),现场可编程门阵列或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。
本发明实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件模块、或者这两者的结合。软件模块可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于用户终端中。可选地,处理器和存储媒介也可以设置于用户终端中的不同的部件中。
在一个或多个示例性的设计中,本发明实施例所描述的上述功能可以在硬件、软件、固件或这三者的任意组合来实现。如果在软件中实现,这些功能可以存储与电脑可读的媒介上,或以一个或多个指令或代码形式传输于电脑可读的媒介上。电脑可读媒介包括电脑存储媒介和便于使得让电脑程序从一个地方转移到其它地方的通信媒介。存储媒介可以是任何通用或特殊电脑可以接入访问的可用媒体。例如,这样的电脑可读媒体可以包括但不限于RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储装置,或其它任何可以用于承载或存储以指令或数据结构和其它可被通用或特殊电脑、或通用或特殊处理器读取形式的程序代码的媒介。此外,任何连接都可以被适当地定义为电脑可读媒介,例如,如果软件是从一个网站站点、服务器或其它远程资源通过一个同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或以例如红外、无线和微波等无线方式传输的也被包含在所定义的电脑可读媒介中。所述的碟片(disk)和磁盘(disc)包括压缩磁盘、镭射盘、光盘、DVD、软盘和蓝光光盘,磁盘通常以磁性复制数据,而碟片通常以激光进行光学复制数据。上述的组合也可以包含在电脑可读媒介中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种数据量子存储编码方法,其特征在于,所述数据量子存储编码方法包括:
初始化编码管理参数,设置各编码管理参数的取值,在输出数据编码头中记录各项参数的取值;
初始化源数据P,生成对称加密的随机密钥D,对源数据P进行加密,得到二进制数据编码的源数据密文P0;
构造量子字典:构造出源数据密文P0和随机密钥D量子字典;
构造数据量子编码集合,构造出源数据密文P0的数据量子编码集合和随机密钥D的数据量子编码集合,构造数据量子编码集合的过程包括:(1)构造数据量子序码:将输入的长度为M的二进制编码数据P0,从头部开始,依次切分成N位长度的数据段,每个N为长度的数据段都用一个数据量子表示;P0最后的一个数据段如果不足N位,则作为P0尾部数据段;针对量子字典的每一个数据量子,从P0头部开始,依次一一比对各个数据段与该数据量子的异同,以0表示不同,以1表示相同,按此方式得到一个长度为L的二进制编码,所得的二进制编码称为数据量子序码,数据量子序码记录着数据量子在P0数据中出现的次序;(2)构造数据量子编码集合的元素:将数据量子与其对应的数据量子序码合并为一个二进制数据编码,作为数据量子编码集合的元素;
构造量子存储编码集合,将源数据密文P0的数据量子编码集合和随机密钥D的数据量子编码集合合并编码为一个数据编码,再按照长度比率要求,划分出指定数量的数据编码片段,在每项数据片段头部增加数据编码头后得到的所有数据编码,构造量子存储编码集合过程包括:(1)使用随机数构造模块生成集成编码随机序码Sn,所述Sn是一个二进制随机数,由随机密钥D的数据量子编码集合的基数(DN)个0和源数据密文P0的数据量子编码集合的基数(P0N)个1组成,Sn是一个(P0N+DN)位二进制整数的随机数;(2)使用编码头构造模块,在H中记录Sn;(3)生成组合编码数据PP,即根据集成编码随机序码将源数据密文P0和对称加密密钥D两者的数据量子编码集合组合编码为一个编码数据,其中,从集成编码随机序码头部开始,由前到后依次编码,当比特位取值为1时,编入一个数据密文P0的数据量子编码元素,当比特位取值为0时,编入一个对称加密密钥D的数据量子编码元素;(4)切分PP,将组合编码数据PP切分为n个数据片段,PP1、PP2、……PPn,各片段的数据长度比率接近数组nr的设定值;(5)使用编码头构造模块,构造编码头数据H,所述编码头H,是添加在编码头部的、用于描述所编码的数据使用的数据参数、以及数据编码的数据特征的数据编码;编码头的数据项包括:对称加密算法、数字摘要算法、源数据密文P0的数据字典比特位数N1、随机密钥D的数据字典比特位数N2、输出数据数量n、各输出数据长度比率数组nr、每个输出数据的输出目标位置、源数据P的数字摘要、源数据P的长度M、对称加密密钥D的数据摘要、对称加密密钥D的长度MD、源数据密文P0的长度、数据P0的长度、P0尾部数据段、数据P0的数据量子编码集合的元素数量P0N、密钥D尾部数据段、密钥D的数据量子编码集合的元素数量DN、集成编码随机序码Sn、数据片段的数字摘要等数据参数;(5)构造量子存储编码元素Ps,构造方式为:Psi=H+i+PPi,即第i个量子存储编码元素Psi是由编码头H、数据片段在PP中的顺序i、PP的第i个数据片段PPi等三部分编码拼接而成;
输出数据,即输出量子存储编码集合的各个元素。
2.如权利要求1所述数据量子存储编码方法,其特征在于,所述构造量子字典,包括:将二进制数据切分为长度为N位的二进制整数得到一个数组,去除重复的元素后,最后所得的二进制整数集合,即得到本次编码过程中使用的量子字典。
3.如权利要求1所述数据量子存储编码方法,其特征在于,初始化源数据P,包括:使用随机密钥D,加密源数据P得到数据密文P0;其中,随机密钥D是变长的随机数据,使用随机种子生成,使用的随机种子包括:计算机当前时间的毫秒数、源数据P的比特位数、源数据P编码特征数据、源数据P的数字摘要、源数据P的数字摘要编码特征数据;源数据P编码特征数据是指其二进制编码0所占的百分比数据;源数据P的数字摘要编码特征数据是指其二进制编码0所占的百分比数据。
4.如权利要求1所述数据量子存储编码方法,其特征在于,所述构造数据量子编码集合元素构造过程包括:(1)构造数据量子序码:将输入的长度为M的二进制编码数据P0,从头部开始,依次切分成N位长度的数据段,每个N为长度的数据段都用一个数据量子表示;P0最后的一个数据段如果不足N位,则作为P0尾部数据段;针对量子字典的每一个数据量子,从P0头部开始,依次一一比对各个数据段与该数据量子的异同,以0表示不同,以1表示相同,按此方式得到一个长度为L的二进制编码,所得的二进制编码称为数据量子序码,数据量子序码记录着数据量子在P0数据中出现的次序;(2)构造数据量子编码集合的元素:将数据量子与其对应的数据量子序码合并为一个二进制数据编码,作为数据量子编码集合的元素。
5.如权利要求1所述数据量子存储编码方法,其特征在于,所述构造量子存储编码集合,包括:量子存储编码集合按照如下方式构建:(1)构造集成编码随机序码Sn,所述Sn是一个二进制随机数,由随机密钥D的数据量子编码集合的基数(DN)个0和源数据密文P0的数据量子编码集合的基数(P0N)个1组成;Sn是一个(P0N+DN)位二进制整数的随机数;(2)在编码头H中记录Sn;(3)生成组合编码数据PP,即根据集成编码随机序码将源数据密文P0和对称加密密钥D两者的数据量子编码集合组合编码为一个编码数据,其中,从集成编码随机序码头部开始,由前到后依次编码,当比特位取值为1时,编入一个数据密文P0的数据量子编码元素,当比特位取值为0时,编入一个对称加密密钥D的数据量子编码元素;(4)切分PP,将组合编码数据PP切分为n个数据片段,PP1、PP2、……PPn;(5)构造编码头数据H,编码头H的数据项包括:对称加密算法、数字摘要算法、源数据密文P0的数据字典比特位数N1、随机密钥D的数据字典比特位数N2、输出数据数量n、各输出数据长度比率数组nr、每个输出数据的输出目标位置、源数据P的数字摘要、源数据P的长度M、对称加密密钥D的数据摘要、对称加密密钥D的长度MD、源数据密文P0的长度、数据P0的长度、P0尾部数据段、数据P0的数据量子编码集合的元素数量P0N、密钥D尾部数据段、密钥D的数据量子编码集合的元素数量DN、集成编码随机序码Sn、数据片段的数字摘要等数据参数;(6)构造量子存储编码元素Ps;构造方式为:Psi=H+i+PPi,即第i个量子存储编码元素Psi是由编码头H、数据片段在PP中的顺序i、PP的第i个数据片段PPi等三部分编码拼接而成。
6.如权利要求1所述数据量子存储编码方法,其特征在于,所述量子字典、数据量子编码集合、量子存储编码集合、输出数据P1、P2、……、Pn集合,都严格按照集合的数学要求构造,其元素具有确定性、互异性和无序性三大特征。
7.如权利要求1所述数据量子存储编码方法,其特征在于使用随机密钥D加密数据P,同一源数据的加密密钥不可预测;在数据编码过程中使用集成编码随机序码Sn构造量子存储编码集合,输出的数据编码的编码顺序不可预测。
8.一种量子存储数据编码装置,其特征在于,包括:
编码头构造模块:用于构造编码头H,实现了在编码过程中,各项编码参数及时编入到编码头中的功能;
随机数构造模块:用于根据随机种子,构造随机密钥D、随机集成编码随机序码Sn;
量子字典构造模块:提供统一的量子字典构造方法,用于构造随机密钥D的量子字典、数据密文P0的量子字典;
量子序码构造模块:提供统一的序码构造方法,用于构造随机密钥D的数据量子的序码、数据密文P0的数据量子的序码;量子序码构造模块构造数据量子编码集合的过程包括:(1)构造数据量子序码:将输入的长度为M的二进制编码数据P0,从头部开始,依次切分成N位长度的数据段,每个N为长度的数据段都用一个数据量子表示;P0最后的一个数据段如果不足N位,则作为P0尾部数据段;针对量子字典的每一个数据量子,从P0头部开始,依次一一比对各个数据段与该数据量子的异同,以0表示不同,以1表示相同,按此方式得到一个长度为L的二进制编码,所得的二进制编码称为数据量子序码,数据量子序码记录着数据量子在P0数据中出现的次序;(2)构造数据量子编码集合的元素:将数据量子与其对应的数据量子序码合并为一个二进制数据编码,作为数据量子编码集合的元素;
数据量子编码集合构造模块:提供统一的数据量子编码集合功能,用于构造D和P0的数据量子集合,数据量子编码集合构造模块构造量子存储编码集合过程包括:(1)使用随机数构造模块生成集成编码随机序码Sn,所述Sn是一个二进制随机数,由随机密钥D的数据量子编码集合的基数(DN)个0和源数据密文P0的数据量子编码集合的基数(P0N)个1组成,Sn是一个(P0N+DN)位二进制整数的随机数;(2)使用编码头构造模块,在H中记录Sn;(3)生成组合编码数据PP,即根据集成编码随机序码将源数据密文P0和对称加密密钥D两者的数据量子编码集合组合编码为一个编码数据,其中,从集成编码随机序码头部开始,由前到后依次编码,当比特位取值为1时,编入一个数据密文P0的数据量子编码元素,当比特位取值为0时,编入一个对称加密密钥D的数据量子编码元素;(4)切分PP,将组合编码数据PP切分为n个数据片段,PP1、PP2、……PPn,各片段的数据长度比率接近数组nr的设定值;(5)使用编码头构造模块,构造编码头数据H,所述编码头H,是添加在编码头部的、用于描述所编码的数据使用的数据参数、以及数据编码的数据特征的数据编码;编码头的数据项包括:对称加密算法、数字摘要算法、源数据密文P0的数据字典比特位数N1、随机密钥D的数据字典比特位数N2、输出数据数量n、各输出数据长度比率数组nr、每个输出数据的输出目标位置、源数据P的数字摘要、源数据P的长度M、对称加密密钥D的数据摘要、对称加密密钥D的长度MD、源数据密文P0的长度、数据P0的长度、P0尾部数据段、数据P0的数据量子编码集合的元素数量P0N、密钥D尾部数据段、密钥D的数据量子编码集合的元素数量DN、集成编码随机序码Sn、数据片段的数字摘要等数据参数;(5)构造量子存储编码元素Ps,构造方式为:Psi=H+i+PPi,即第i个量子存储编码元素Psi是由编码头H、数据片段在PP中的顺序i、PP的第i个数据片段PPi等三部分编码拼接而成;
量子存储编码集合构造模块:提供统一的量子存储编码集合功能;
信封数据头构造模块:用于根据每个量子存储编码元素,构造对应的信封数据头;
数据输入输出模块:用于根据目录参数,读取输入数据或者输出存储数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710409519.9A CN107241188B (zh) | 2017-06-02 | 2017-06-02 | 一种量子存储数据编解码方法、装置及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710409519.9A CN107241188B (zh) | 2017-06-02 | 2017-06-02 | 一种量子存储数据编解码方法、装置及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107241188A CN107241188A (zh) | 2017-10-10 |
CN107241188B true CN107241188B (zh) | 2022-01-28 |
Family
ID=59985325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710409519.9A Active CN107241188B (zh) | 2017-06-02 | 2017-06-02 | 一种量子存储数据编解码方法、装置及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107241188B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109447271B (zh) * | 2018-10-15 | 2020-09-15 | 合肥本源量子计算科技有限责任公司 | 一种量子比特量子态读取方法及装置 |
CN109409525B (zh) * | 2018-10-15 | 2019-09-10 | 合肥本源量子计算科技有限责任公司 | 量子比特量子态确定方法和量子比特读取信号解析方法 |
CN109639650B (zh) * | 2018-11-21 | 2021-04-13 | 中国电子科技集团公司第三十研究所 | 基于分组纵向随机剖分与路径分离传输的保密通信方法 |
CN110032523B (zh) * | 2019-03-29 | 2023-08-22 | 陕西柴油机重工有限公司 | 柴油机装配试验基于地址位动态定义的寄存器存储方法 |
CN112000978B (zh) * | 2019-06-19 | 2023-12-19 | 华控清交信息科技(北京)有限公司 | 隐私数据的输出方法、数据处理***及存储介质 |
CN112242970B (zh) * | 2019-07-16 | 2022-09-02 | 丁爱民 | 一种数据分割加密安全加固方法及装置 |
CN112398643B (zh) * | 2019-08-16 | 2023-08-18 | 丁爱民 | 一种通信数权保护方法及*** |
CN110659508B (zh) * | 2019-08-16 | 2021-08-31 | 苏州浪潮智能科技有限公司 | 一种基于卢卡斯数列的加解密方法、设备及可读介质 |
CN113222152B (zh) * | 2020-01-21 | 2023-08-11 | 本源量子计算科技(合肥)股份有限公司 | 一种量子态信息的获取方法及装置 |
CN117113374B (zh) * | 2023-08-31 | 2024-07-09 | 成都赛力斯科技有限公司 | 一种基于源字符串的数据处理方法、装置及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0555985A1 (en) * | 1992-02-10 | 1993-08-18 | Tektronix, Inc. | Dual ranked time interval conversion circuit |
WO2008150517A1 (en) * | 2007-06-04 | 2008-12-11 | Objectvideo, Inc. | Intelligent video network protocol |
CN101599826A (zh) * | 2009-07-10 | 2009-12-09 | 陕西理工学院 | 可扩展多用户量子密钥分配网络***及其密钥分配方法 |
CN101645769A (zh) * | 2008-08-05 | 2010-02-10 | 中国科学院物理研究所 | 一种异地共享真随机数序列的光学*** |
WO2010056363A1 (en) * | 2008-11-17 | 2010-05-20 | Thomson Licensing | Fec frame header design for cable television signals |
CN102082662A (zh) * | 2011-01-30 | 2011-06-01 | 山东量子科学技术研究院有限公司 | 基于同步随机数信息库信息检索的量子安全通信方法 |
CN102739394A (zh) * | 2012-06-07 | 2012-10-17 | 中国科学技术大学 | 光量子相位调制*** |
CN104125475A (zh) * | 2014-07-25 | 2014-10-29 | 丁爱民 | 一种多维量子数据压缩、解压缩方法及装置 |
CN104811209A (zh) * | 2015-04-22 | 2015-07-29 | 北京理工大学 | 一种抗最长匹配检测的压缩文件数据嵌入方法及装置 |
-
2017
- 2017-06-02 CN CN201710409519.9A patent/CN107241188B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0555985A1 (en) * | 1992-02-10 | 1993-08-18 | Tektronix, Inc. | Dual ranked time interval conversion circuit |
WO2008150517A1 (en) * | 2007-06-04 | 2008-12-11 | Objectvideo, Inc. | Intelligent video network protocol |
CN101645769A (zh) * | 2008-08-05 | 2010-02-10 | 中国科学院物理研究所 | 一种异地共享真随机数序列的光学*** |
WO2010056363A1 (en) * | 2008-11-17 | 2010-05-20 | Thomson Licensing | Fec frame header design for cable television signals |
CN101599826A (zh) * | 2009-07-10 | 2009-12-09 | 陕西理工学院 | 可扩展多用户量子密钥分配网络***及其密钥分配方法 |
CN102082662A (zh) * | 2011-01-30 | 2011-06-01 | 山东量子科学技术研究院有限公司 | 基于同步随机数信息库信息检索的量子安全通信方法 |
CN102739394A (zh) * | 2012-06-07 | 2012-10-17 | 中国科学技术大学 | 光量子相位调制*** |
CN104125475A (zh) * | 2014-07-25 | 2014-10-29 | 丁爱民 | 一种多维量子数据压缩、解压缩方法及装置 |
CN104811209A (zh) * | 2015-04-22 | 2015-07-29 | 北京理工大学 | 一种抗最长匹配检测的压缩文件数据嵌入方法及装置 |
Non-Patent Citations (2)
Title |
---|
"Continuous‐variable quantum information processing";Ulrik L. Andersen;《Laser & Photonics Reviews》;20101231;全文 * |
"量子密码协议中信息编码方式研究及应用";刘斌;《中国博士学位论文全文数据库》;20160315;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN107241188A (zh) | 2017-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107241188B (zh) | 一种量子存储数据编解码方法、装置及*** | |
JP5468898B2 (ja) | データを暗号化/復号する方法及び装置 | |
US8254570B2 (en) | Method and system for encryption of data | |
Singh et al. | Data security using private key encryption system based on arithmetic coding | |
CN105471575A (zh) | 一种信息加密、解密方法及装置 | |
CN112600665A (zh) | 一种基于区块链和加密技术的隐蔽通信方法、装置及*** | |
ES2936809T3 (es) | Método para verificar el correcto registro de una información | |
Sermeno et al. | Modified Vigenere cryptosystem: An integrated data encryption module for learning management system | |
KR101584127B1 (ko) | 거부적 암호화 시스템 및 방법 | |
AU2013334491B2 (en) | Methods and systems for concealing information | |
CN105049176B (zh) | 用于图像数据安全传输的解密方法 | |
CN111756540A (zh) | 一种传送密文的方法、终端、服务器及*** | |
CN115604023A (zh) | 一种区块链隐私数据保护方法及*** | |
CN112242970B (zh) | 一种数据分割加密安全加固方法及装置 | |
EP3654576B1 (en) | Computer-implemented method for error-correction-encoding and encrypting of a file | |
Hazzazi et al. | A Finite State Machine-Based Improved Cryptographic Technique | |
Usman et al. | A novel encoding-decoding scheme using Huffman coding for multimedia networks | |
Abdul-Jabbar | Secure QR-code generation in healthcare | |
CN115913554B (zh) | 基于国密的高效匿踪联邦学习方法、***及相关设备 | |
US11811920B1 (en) | Secure computation and communication | |
Wu et al. | Secure multi-key file-sharing for cloud storage with erasure coding | |
US20240163093A1 (en) | General access structure secret sharing using authentic garbled circuits | |
CN117938386A (zh) | 一种自提柜取送方法 | |
Priyanka et al. | Breaking Mignotte's Sequence Based Secret Sharing Scheme Using SMT Solver | |
Koepf et al. | Coding Theory and Cryptography |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |