n取k的不經(jīng)意傳輸方法和系統(tǒng)的制作方法
【技術領域】
[0001] 本發(fā)明涉及通信技術領域,特別涉及一種n取k的不經(jīng)意傳輸方法和系統(tǒng)。
【背景技術】
[0002] 不經(jīng)意傳輸協(xié)議是密碼學的基本原語,是指協(xié)議參與方以一種模糊化的方式傳遞 信息,從而有效的保護參與方的隱私。其中主要包括兩個參與方:信息持有者和信息接收 者。
[0003] 在n取k的不經(jīng)意傳輸?shù)倪^程中,信息持有者持有n個信息。信息接收者想要申請獲 得n個信息當中的k個信息,通過雙方的交互,能夠做到使得信息接收者只獲得了其中的k個 提前申請的想要獲得的信息。這樣不僅保證了不泄露其余的信息,而且還使得信息持有者 不知道信息接收者獲得了哪些信息。不經(jīng)意傳輸因為具有上述特征而成為重要的密碼學原 語,對于安全分布式計算意義重大,而且在隱私信息恢復、公平交易合同簽署及不經(jīng)意安全 計算等領域當中都具有重要的應用。
[0004] 為了加速不經(jīng)意傳輸,很多人都提出了各種各樣的不經(jīng)意傳輸?shù)膮f(xié)議。然而在目 前的n取k的不經(jīng)意傳輸協(xié)議中,信息接收者申請信息時的計算還較為復雜,計算開銷較大, 信息的傳輸效率還有待提高。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明旨在至少在一定程度上解決相關技術中的技術問題之一。為此,本發(fā)明的 一個目的在于提出一種n取k的不經(jīng)意傳輸方法,能夠降低信息接收者申請信息時的計算開 銷,提高計算速率,從而能夠提高信息的傳輸效率。
[0006] 本發(fā)明的第二個目的在于提出一種n取k的不經(jīng)意傳輸系統(tǒng)。
[0007] 根據(jù)本發(fā)明第一方面實施例的n取k的不經(jīng)意傳輸方法,包括以下步驟:根據(jù)輸入 的安全參數(shù),輸出乘法循環(huán)群G,并隨機選擇所述乘法循環(huán)群G中的兩個生成元g和h;從所述 乘法循環(huán)群G中選擇k個與信息接收者將要獲取的k個信息一一對應的第一隨機數(shù),所述信 息接收者根據(jù)所述兩個生成元和k個所述第一隨機數(shù),利用改進的批處理指數(shù)運算乘積算 法計算請求數(shù)據(jù),并將所述請求數(shù)據(jù)發(fā)送給信息持有者;從所述乘法循環(huán)群G中選擇與信息 持有者所持有的n個信息分別對應的第二隨機數(shù),所述信息持有者根據(jù)所述請求數(shù)據(jù)和所 述第二隨機數(shù)對所述n個信息進行加密,得到密文,并將與所述信息接收者將要獲取的k個 信息對應的密文發(fā)送給所述信息接收者;所述信息接收者根據(jù)所述第一隨機數(shù)對與所述將 要獲取的k個信息對應的密文進行解密,獲取所述k個信息。
[0008] 根據(jù)本發(fā)明實施例的n取k的不經(jīng)意傳輸方法,信息接收者通過改進的批處理指數(shù) 運算乘積算法計算請求數(shù)據(jù),信息持有者根據(jù)請求數(shù)據(jù)對信息進行加密后,發(fā)送給信息接 收者,信息接收者進行相關的解密過程以得到信息。由此,通過利用改進的批處理指數(shù)運算 乘積算法,能夠降低信息接收者申請信息時的計算開銷,提高了計算速率,從而提高了信息 的傳輸效率。
[0009] 另外,根據(jù)本發(fā)明上述實施例的n取k的不經(jīng)意傳輸方法還可以具有如下附加的技 術特征:
[0010] 根據(jù)本發(fā)明的一個實施例,所述將要獲取的k個信息假設為al、a2、…、ak,與所述 將要獲取的k個信息一一對應的k個所述第一隨機數(shù)為rl、r2、…、rk,利用以下公式計算所 述請求數(shù)據(jù):
[0012]其中,71表示將要獲取的k個信息中第1個信息的請求數(shù)據(jù)。
[0013]根據(jù)本發(fā)明的一個實施例,所述n個信息為mi、m2、…、mn,其中,第i個信息 mi對應的 第二隨機數(shù)為Sl,i,其中,1 < i <n,l < 1 < k,所述密文為:
[0014]氣I = (gV/,所,(乃以'廣,')'
[0015] 其中,Cl>1表示n個信息中第i個信息的密文。
[0016] 根據(jù)本發(fā)明的一個實施例,所述信息接收者將要獲取的k個信息中第1個信息對應 的密文為〇1,1= (a,b),根據(jù)所述第一隨機數(shù)對所述將要獲取的k個信息對應的密文進行解 密,獲取的信息為maFb/a^l < 1 <k。
[0017] 根據(jù)本發(fā)明第二方面實施例的n取k的不經(jīng)意傳輸系統(tǒng),包括:初始化模塊,用于根 據(jù)輸入的安全參數(shù),輸出乘法循環(huán)群G,并隨機選擇所述乘法循環(huán)群G中的兩個生成元g和h; 請求批計算模塊,用于從所述乘法循環(huán)群G中選擇k個與信息接收者將要獲取的k個信息一 一對應的第一隨機數(shù),并根據(jù)所述兩個生成元和k個所述第一隨機數(shù),利用改進的批處理指 數(shù)運算乘積算法計算請求數(shù)據(jù);數(shù)據(jù)加密模塊,用于從所述乘法循環(huán)群G中選擇與信息持有 者所持有的n個信息分別對應的第二隨機數(shù),并根據(jù)所述請求數(shù)據(jù)和所述第二隨機數(shù)對所 述n個信息進行加密,得到密文;數(shù)據(jù)解密模塊,用于根據(jù)所述第一隨機數(shù)對與所述將要獲 取的k個信息對應的密文進行解密,獲取所述k個信息。
[0018]根據(jù)本發(fā)明實施例的n取k的不經(jīng)意傳輸系統(tǒng),可通過改進的批處理指數(shù)運算乘積 算法計算請求數(shù)據(jù),并可根據(jù)請求數(shù)據(jù)對信息進行加密,在進行相關的解密過程后可得到 信息。由此,通過利用改進的批處理指數(shù)運算乘積算法,能夠降低信息接收者申請信息時的 計算開銷,提高了計算速率,從而提高了信息的傳輸效率。
[0019] 另外,根據(jù)本發(fā)明上述實施例的n取k的不經(jīng)意傳輸系統(tǒng)還可以具有如下附加的技 術特征:
[0020] 根據(jù)本發(fā)明的一個實施例,所述將要獲取的k個信息假設為al、a2、…、ak,與所述 將要獲取的k個信息一一對應的k個所述第一隨機數(shù)為rl、r2、…、rk,利用以下公式計算所 述請求數(shù)據(jù):
[0022] 其中,71表示將要獲取的k個信息中第1個信息的請求數(shù)據(jù)。
[0023] 根據(jù)本發(fā)明的一個實施例,所述n個信息為ml、m2、…、mn,其中,第i個信息mi對應 的第二隨機數(shù)為si,i,其中,1 < i <n,l < 1 < k,所述密文為:
[0024] CjJ =(g'Vi>/
[0025] 其中,Cl>1表示n個信息中第i個信息的密文。
[0026] 根據(jù)本發(fā)明的一個實施例,所述信息接收者將要獲取的k個信息中第1個信息對應 的密文為cai,i=(a,b),所述數(shù)據(jù)解密模塊獲取的信息為maizb/a'l < 1 <k。
【附圖說明】
[0027] 圖1為根據(jù)本發(fā)明一個實施例的n取k的不經(jīng)意傳輸方法的流程圖;
[0028] 圖2為根據(jù)本發(fā)明一個實施例的n取k的不經(jīng)意傳輸中各實體的結(jié)構(gòu)示意圖;
[0029] 圖3為根據(jù)本發(fā)明一個實施例的n取k的不經(jīng)意傳輸系統(tǒng)的結(jié)構(gòu)框圖。
【具體實施方式】
[0030] 下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終 相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附 圖描述的實施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。
[0031] 下面結(jié)合附圖描述本發(fā)明實施例的n取k的不經(jīng)意傳輸方法和系統(tǒng)。
[0032] 圖1為根據(jù)本發(fā)明一個實施例的n取k的不經(jīng)意傳輸方法的流程圖。
[0033] 如圖1所示,本發(fā)明實施例的n取k的不經(jīng)意傳輸方法,包括以下步驟:
[0034] S101,根據(jù)輸入的安全參數(shù),輸出乘法循環(huán)群G,并隨機選擇乘法循環(huán)群G中的兩個 生成元g和h。
[0035] 具體地,可輸入安全參數(shù)A,選擇與安全參數(shù)A對應的橢圓曲線,由橢圓曲線上的點 構(gòu)成階數(shù)為素數(shù)P的乘法循環(huán)群G。一般地,安全參數(shù)A的值越大,構(gòu)成乘法循環(huán)群G的橢圓曲 線上的點越多,乘法循環(huán)群G的階數(shù)p越大。在本發(fā)明的實施例中,可從Pairing-Based Cryptosystems函數(shù)包中調(diào)用隨機數(shù)生成函數(shù),以生成乘法循環(huán)群G中的兩個生成元g和h。 [0036]需要說明的是,本發(fā)明實施例的方法中,可包括可信任權威機構(gòu)、信息持有者和信 息接收者三個實體,該三個實體的連接關系如圖2所示。在本發(fā)明的實施例中,步驟S101可 由可信任權威機構(gòu)執(zhí)行。
[0037] S102,從乘法循環(huán)群G中選擇k個與信息接收者將要獲取的k個信息一一對應的第 一隨機數(shù),信息接收者根據(jù)兩個生成元和k個第一隨機數(shù),利用改進的批處理指數(shù)運算乘積 算法計算請求數(shù)據(jù),并將請求數(shù)據(jù)發(fā)送給信息持有者。
[0038] 在本發(fā)明的一個實施例中,可為每個信息在ZP中選擇其對應的第一隨機數(shù),其中, 4表示集合{1,2,…,p-1}。選擇第一隨機數(shù)的具體過程仍可通過從上述函數(shù)包中調(diào)用隨機 數(shù)生成函數(shù)來實現(xiàn)。在本發(fā)明的實施例中,將要獲取的k個信息可假設為al、a2、…、ak,與將 要獲取的k個信息一一對應的k個第一隨機數(shù)可為rl、r2、…、rk,可利用以下公式計算所述 請求數(shù)據(jù):
[0040] 其中,yi可表示將要獲取第1個信息的請求數(shù)據(jù)。
[0041] 本發(fā)明實施例的改進的批處理指數(shù)運算乘積算法,利用了計算過程中底數(shù)相同的 特點,可重復使用經(jīng)過平方運算得到的數(shù)據(jù),并且便于比較某一列指數(shù)的相同位置的兩位, 與相關技術中每次僅可比較指數(shù)的一位相比,無疑大大較少了乘法運算的次數(shù)。
[0042] S103,從乘法循環(huán)群G中選擇與信息持有者所持有的n個信息分別對應的第二隨機 數(shù),信息持有者根據(jù)請求數(shù)據(jù)和第二隨機數(shù)對n個信息進行加密,得到密文,并將與信息接 收者將要獲取的k個信息對應的密文發(fā)送給信息接收者。
[0043] 在本發(fā)明的一個實施例中,第二隨機數(shù)仍可在ZP中選取,具體的選取方式可參照 第一隨機數(shù)的獲取過程,在此不再贅述。若n個信息為nu、m 2、…、mn,其中,第i個信息nu對應 的第二隨機數(shù)為su,其中,1 < i <n,l < 1 < k,則密文可為:
[0044] cij = (sSiJ?mi(yi / h1 TJ)
[0045] 其中,Cl>1表示n個信息中第i個信息的密文。
[0046] S104,信息接收者根據(jù)第一隨機數(shù)對與將要獲取的k個信息對應的密文進行解密, 以獲取k個彳目息。
[0047] 具體地,若信息接收者將要獲取的k個信息中第1個信息對應的密文為ccajiU, b),根據(jù)第一隨機數(shù)對將要獲取的k個信息對應的密文進行解密,獲取的信息為mcaib/a1^, 1 < 1 <k〇
[0048]根據(jù)本發(fā)明實施例的n取k的不經(jīng)意傳輸方法,信息接收者通過改進的批處理指數(shù) 運算乘積算法計算請求數(shù)據(jù),信息持有者根據(jù)請求數(shù)據(jù)對信息進行加密后,發(fā)送給信息接 收者,信息接收者進行相關的解密過程以得到信息。由此,通過利用改進的批處理指數(shù)運算 乘積算法,能夠降低信息接收者申請信息時的計算開銷,提高了計算速率,從而提高了信息 的