1.一种基于量子计算的物联网隐私查询方法,其特征在于:设置隐私查询系统模型,所述隐私查询系统模型中,存在四个实体,分别为客户端、数据提供商、边缘设备和终端物联网设备;
所述客户端,用于作为用户对数据提供商的数据库中目标数据的查询对象;客户端具有终端电子设备和量子装置,能够进行量子比特操作;
所述数据提供商,用于存储大量的数据信息;数据提供商具有服务器和量子装置,能够进行量子比特操作;
所述边缘设备,用于接收终端物联网设备上传的数据信息,然后在本地进行整合聚合,最终将处理过的数据信息上传给数据提供商;
所述终端物联网设备,用于收集数据信息然后上传给边缘设备;
在数据提供商拥有满足客户端希望查询的数据后,当拥有索引地址信息的用户要通过数据提供商查询一个数据项,数据提供商在了解到有一个客户端需要查询数据后,将数据集进行加密并且量子化后,发送给客户端;客户端在接收到加密的数据集后,进行解密获得目标数据;在此过程中,不会泄露客户端隐私信息‑索引地址,同样也不会泄露查询数据项之外的服务器隐私数据;
基于隐私查询系统模型进行隐私查询,实现过程包括以下步骤,S1,系统初始化,包括数据提供商收集数据,客户端注册获得索引地址;实现过程中,假设数据提供商具有原始数据集S={s0,s1,...,sN‑1},其中每个数据项s0,s1,...,sN‑1都位于nZ2={0,1},Z2表示数据值为0或者为1,数据项总量N=2 ,n表示一个与数据项总量N具有特定数学关系的数值,用于为稍后步骤提供参数,假设客户端已经获得索引地址x;
S2,密钥生成,包括生成共享密钥,私有密钥以及私有随机数;采用以下子步骤实现,步骤2.1,数据提供商和客户端通过量子密钥分发协议获得等长的N比特共享密钥K={k0,k1,...,kN‑1},其中每个密钥数据项k0,k1,...,kN‑1都为0或者为1;
步骤2.2,客户端随机生成私有密钥KAB=(ka,kb)={ka0,ka1,...,kan‑1,kb0,kb1,...,kbn‑1},其中ka表示私有密钥KAB中内容为ka0,ka1,...,kan‑1的部分私有密钥串,kb表示私有密钥KAB中内容为kb0,kb1,...,kbn‑1的部分私有密钥串;kb0,kb1,...,kbn‑1和ka0,ka1,...,kan‑1表示私有密钥的具体密钥项,其中每一项的值都随机为0或者为1;
步骤2.3,客户端生成一个随机私有的整数,即私有随机数r∈{0,1,...,N‑1};
S3,数据提供商传输密文,包括提供具有加密数据的量子叠加态给客户端;采用以下子步骤实现,步骤3.1,数据提供商利用共享密钥K={k0,k1,...,kN‑1}对数据库数据S={s0,s1,...,sN‑1}进行加密获得加密数据KS=K⊕S={k0⊕s0,k1⊕s1,...,kN‑1⊕sN‑1}={ks0,ks1,...,ksN‑1},其中,ks0,ks1,...,ksN‑1为加密数据项;
步骤3.2,数据提供商准备一个量子随机存取存储器QRAM,其中QRAM的地址寄存器包含一个量子叠加态 对应地每个数据寄存器存储一个基态|ks(i)>,QRAM输出量子叠加态,
其中|i>表示第i位地址数据的量子表示形式, 表示索引地址的量子叠加态,表示加密数据的量子叠加态,引入c和d分别表示存储地址量子叠加态的寄存器和存储加密数据量子叠加态的寄存器,从而使得|i>c,表示索引地址的量子叠加态,|ksi(i)>d,表示加密数据的量子叠加态,|ksi(i)>中的ksi表示加密数据KS的第i项,而(i)表示他在|data>中对应索引量子叠加态中的索引值;
步骤3.3,数据提供商将量子叠加态|data>发送给客户端;
S4,客户端保护隐私信息同时获得查询数据,采用以下子步骤实现,步骤4.1,客户端利用私有随机密钥对量子叠加态中的首位寄存器‑索引叠加态进行量子一次一密加密:客户端在接收到量子叠加态|data>后,利用私有密钥KAB并通过量子一次一密加密方式加密索引地址的量子叠加态|i>c,然后,客户端得到如下量子叠加状态,
其中 泡利‑Z门 泡利‑X门
在量子领域中称为张量积,用于将向量空间合在一起构成更大的向量空间,表示将从0到n‑1的某些元素张量积在一起, 表示泡利X门的kai次幂, 表示泡ka kb利Z门的kbi次幂,X 表示将n个以私有密钥中ka部分为幂的泡利X门进行张量积,同理X 表ka kb示将n个以私有密钥中kb部分为幂的泡利Z门进行张量积,X 和X 同时用于对索引地址的*量子叠加态所使用的量子比特按比特进行加密,|i>表示加密后第i位上索引地址的量子* *状态,|i>c表示加密后的索引地址量子叠加态,|ksi(i)>d表示加密后索引地址量子叠加态*对应的加密数据量子叠加态,其中i表示第i位加密的索引值,用于表明加密数据量子叠加态中每个加密数据所对应的加密后的索引值;
步骤4.2,客户端利用随机私有整数对量子叠加态中的第二位寄存器‑加密数据叠加态加密:客户端随机选择一个整数r∈{0,1,...,N‑1}同时进一步执行一个加法操作算子作用在量子叠加态|dataA>,实现在执行完添加随机数操作后,客户端得到如下量子状态,
其中 表示在量子状态下对加密数据添加随机数据r的量子叠加态,相当于对原*始数据二次加密后的加密数据量子叠加态;ksi为加密数据ksi添加随机数r后的结果;
步骤4.3,客户端在整个量子叠加态上添加用于搜索目标状态的标记叠加态:客户端准备一个辅助量子状态|0>并执行一个操作算子Umark,实现在执行完该操作后,客户端得到如下量子状态,
其中
上述公式中的x是客户端的隐私信息‑索引地址; 表示将量子状态|0>张成积在量*子叠加态 上;i表示对应在量子叠加态|dataB>中某一已经加密的索引* *
值,mark(i)表示一个标记值,如果加密后的索引地址量子叠加态|i>c中第i位的量子状态* ka kb *满足|i >=X Z |x>则对应的mark(i)值为1,其他情况标记为0,这里引入e表示存储标记*信息量子叠加态的寄存器,从而使得|mark(i)>e表示标记信息的量子叠加态;
步骤4.4,客户端对整个量子叠加态进行量子搜索算法,然后对其进行测量,从而获得加密的目标数据:客户端应用量子搜索算法‑Grover来搜索量子叠加态|dataC>去查找目标状态* ka kb其中|x>=X Z |x>,
*
其中|x>表示客户端目标数据索引地址的量子形式,|x>表示对|x>进行一次一密加密* *后的的量子形式,x表示目标数据索引地址x加密后的值;ksx(x)表示加密数据量子叠加态*中值为ksx的加密数据,其对应的索引地址量子状态的值为x;
在Grover搜索算法中执行Grover迭代时,状态|dataC>的第二和第三量子叠加态都被视为oracle工作空间量子位;
步骤4.5,客户端利用私有随机数对测量数据进行解密:
客户端测量应用Grover搜索算法的量子状态|dataC>,从而获得加密的目标数据步骤4.6,客户端利用共享密钥进一步对测量数据进行解密,从而获得目标数据:客户端首先对测量结果 减去随机整数r,从而获得加密值ksx;然后客户端通过共享密钥K中的kx比特来解密加密数值ksx,从而获得目标索引数据sx=ksx⊕kx。
2.根据权利要求1所述基于量子计算的物联网隐私查询方法,其特征在于:步骤1的实现方式为,客户端注册并获得索引数据的索引地址信息;数据提供商接收到边缘设备上传的聚合数据信息,其中边缘设备的上传数据信息是在接收到终端物联网设备上传的信息后进行处理,聚合后得到的。
3.根据权利要求1所述基于量子计算的物联网隐私查询方法,其特征在于:步骤2的实现方式包括以下子步骤,S2.1,客户端和数据提供商通过量子密钥分发获得共享密钥;
S2.2,客户端生成私有的随机密钥;
S2.3,客户端生成一个随机私有的整数。
4.根据权利要求1所述基于量子计算的物联网隐私查询方法,其特征在于:步骤3的实现方式包括以下子步骤,S3.1,数据提供商利用共享密钥对原始数据进行加密;
S3.2,数据提供商利用量子存储器对加密的原始数据进行量子化,从而获得加密数据的量子叠加态;
S3.3,数据提供商将量子叠加态发送给客户端。
5.根据权利要求1所述基于量子计算的物联网隐私查询方法,其特征在于:步骤4的实现方式包括以下子步骤,S4.1,客户端利用私有随机密钥对量子叠加态中的首位寄存器‑索引叠加态进行量子一次一密加密;
S4.2,客户端利用随机私有整数对量子叠加态中的第二位寄存器‑加密数据叠加态加密;S4.3,客户端在整个量子叠加态上添加用于搜索目标状态的标记叠加态;
S4.4,客户端对整个量子叠加态进行量子搜索算法,然后对其进行测量,从而获得加密的目标数据;
S4.5,客户端利用私有随机数对测量数据进行解密;
S4.6,客户端利用共享密钥进一步对测量数据进行解密,从而获得目标数据。
6.一种基于量子计算的物联网隐私查询系统,其特征在于:用于实现如权利要求1‑5任一项所述的一种基于量子计算的物联网隐私查询方法。
7.根据权利要求6所述的基于量子计算的物联网隐私查询系统,其特征在于:包括以下模块,系统初始化模块,用于系统初始化,包括数据提供商收集数据,存储数据,客户端注册,从而获得索引地址信息;
密钥生成模块,用于数据提供商加密原始数据提高通信安全性以及客户端加密量子状态保护隐私数据信息;
数据提供商传输密文模块,用于数据提供商利用共享密钥加密原始数据,然后利用量子随机存储器将原始数据量子化,并将量子状态发送给客户端,最终使得客户端能够获得目标数据;在此过程中,数据提供商的隐私信息不会遭到泄露;
客户端获得查询数据模块,用于帮助客户端获得目标数据而不会泄露隐私信息;客户端首先对接收到的量子状态进行一系列加密进而保证在之后的操作中不会存在泄露客户端隐私信息的风险,然后客户端通过搜索、测量和解密操作后获得目标数据。