針對加密技術(shù)領(lǐng)域乘法運算的量子邏輯電路的構(gòu)造方法
【專利摘要】本發(fā)明公開了一種針對加密技術(shù)領(lǐng)域乘法運算的量子邏輯電路的構(gòu)造方法,包括以下步驟:構(gòu)造基礎(chǔ)模塊:采用量子邏輯電路中的基本控制非門和交換門作為基礎(chǔ)電路的構(gòu)造門庫,并將構(gòu)造后的基本電路封裝成U器件,實現(xiàn)加法與乘法的運算;搭建高級電路模塊。本發(fā)明采用了可逆邏輯設(shè)計,功耗和電磁場的行為屬性無法都通過傳統(tǒng)方式得到,可以有效防止邊信道攻擊方法的攻擊,大大降低了被非法破取的可能性;加密技術(shù)的加密效果更優(yōu),電路的可逆性可以使加密效果達到2n!的邏輯綜合的優(yōu)點。
【專利說明】
針對加密技術(shù)領(lǐng)域乘法運算的量子還輯電路的構(gòu)造方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明屬于量子信息科學(xué)技術(shù)領(lǐng)域。特別設(shè)及一種針對特定運算的量子邏輯電路 的構(gòu)造方法。
【背景技術(shù)】
[0002] 信息的竊取與保密是信息社會中永恒的話題,如何設(shè)計出加密效果好并且加密成 本少的加密技術(shù)或算法一直是加密技術(shù)領(lǐng)域一直所研究的問題,而通過查閱資料發(fā)現(xiàn),現(xiàn) 在的加密技術(shù),大多是基于數(shù)學(xué)難題,通過增加加密算法的復(fù)雜度,增加破譯的難度和時 間。而如何設(shè)計出加密效果好,或者加密所需時間少的加密算法就成了大家所統(tǒng)一關(guān)屯、的 問題。
[0003] 云計算安全聯(lián)盟(CSA)近期發(fā)布的報告總結(jié)了9種威脅云計算安全的"罪魅禍?zhǔn)?。 在運其中,數(shù)據(jù)泄露、數(shù)據(jù)丟失和數(shù)據(jù)劫持位列前=,成為當(dāng)下,云時代最大的威脅。
[0004] 目前的加密算法面臨著許多威脅,黑客利用邊信道Side-Channel)攻擊方法進行 攻擊。邊信道攻擊方法主要集中在功耗攻擊、電磁場攻擊和時間攻擊。其中功耗攻擊是最強 有力的手段之一,包括簡單功耗分析攻擊(Simple化wer Analysis attacks,SPA)和差分 功耗分析攻擊化ifferential Power Analysis attacks,DPA),與傳統(tǒng)密碼分析學(xué)相比,運 些攻擊手段攻擊效果顯著。邊信道攻擊所需要的設(shè)備成本低、攻擊效果顯著,嚴(yán)重威脅了密 碼設(shè)備的安全性。尤其在云服務(wù)數(shù)據(jù)庫設(shè)計不當(dāng)?shù)那闆r下,安全隱患更大,哪怕某一個用戶 的應(yīng)用程序只存在一個漏桐,都可W讓攻擊者獲取運個用戶的數(shù)據(jù),而且還能獲取其他用 戶的數(shù)據(jù)。
[0005] 量子基本口;
[0006] 1、控制非n (CNOT口):如圖1所示,此為一個最基本的控制非口,有一個控制位和 一個目標(biāo)位。當(dāng)控制位為0時,目標(biāo)位的值保持不變;當(dāng)控制位為1時,目標(biāo)位的值進行翻轉(zhuǎn)。 它的作用可W表達為把|A,B>轉(zhuǎn)換為|a,b?a>d(?為異或運算)。控制非口(n)的符號表 示和真值表如圖1、表1所示:
[0007] 表 1
[000引
[0011]
[0009] 2、交換口(SWAPn):它的作用就是使它作用的量子口的輸出值互換,如圖2所示, 即將輸入值IA〉與IB〉互換,真值表見表2[0010] 表2
[0012]
【發(fā)明內(nèi)容】
[0013] 在下文中給出關(guān)于本發(fā)明的簡要概述,W便提供關(guān)于本發(fā)明的某些方面的基本理 解。應(yīng)當(dāng)理解,運個概述并不是關(guān)于本發(fā)明的窮舉性概述。它并不是意圖確定本發(fā)明的關(guān)鍵 或重要部分,也不是意圖限定本發(fā)明的范圍。其目的僅僅是W簡化的形式給出某些概念,W 此作為稍后論述的更詳細描述的前序。
[0014] 本發(fā)明的目的:為了克服因功耗分析而導(dǎo)致的數(shù)據(jù)泄露問題,基于加密技術(shù)中的 部分運算,提出了采用可逆量子電路進行搭建,由于采用的是可逆邏輯設(shè)計功耗和電磁場 的屬性行為無法通過傳統(tǒng)方式得到,可W有效防止邊信道攻擊方法的攻擊。
[0015] -種針對加密技術(shù)領(lǐng)域乘法運算的量子邏輯電路的構(gòu)造方法,包括W下步驟:
[0016] 首先進行基礎(chǔ)電路模塊的構(gòu)造:采用量子邏輯電路中的基本控制非口和交換口作 為基礎(chǔ)模塊電路的構(gòu)造口庫。
[0017] 1、基礎(chǔ)模塊構(gòu)造
[0018] 采用量子邏輯電路中的基本控制非口和交換口作為基礎(chǔ)電路的構(gòu)造口庫,
[0019] 加密算法中大多數(shù)運算都是基于伽羅瓦域,其中做常見的操作莫過于加法與乘 法,兩個數(shù)的相加即為兩個數(shù)的異或,可W采用量子基本口控制非口來完成,目標(biāo)位的輸出 即為數(shù)據(jù)之間相互異或后的結(jié)果。
[0020] 因為是基于GF(28),所W基礎(chǔ)電路采用8根量子線,令相應(yīng)的二進制輸入數(shù)據(jù)分別 為bybsbsbAbsbsbibo,即該二進制數(shù)為bybsbsbAbsbsbibo,實現(xiàn)定義在GF(2 8)上最基本的乘W 00000010的運算,一定意義上第一步相當(dāng)于循環(huán)左移一位,當(dāng)移位后的結(jié)果最低位為1時, 再和OOOl 1010進行異或運算,可W用如下邏輯表達式表示:
[0021]
[0022] 具體步驟如下:
[0023] Stepl:實現(xiàn)循環(huán)左移操作,利用交換口可W實現(xiàn)數(shù)據(jù)互換運樣的功能,通過多次 使用交換口來實現(xiàn)二進制數(shù)各位依次左移的操作。除最高位外,其余各位依次左移,移動總 頻數(shù)為7,原最高位此時變?yōu)榱俗畹臀唬每刂品强?,控制位?時,目標(biāo)位反轉(zhuǎn),控制位為 O時,目標(biāo)位不變,搭建3個目標(biāo)位基于第2、4、5根線的控制非口,來實現(xiàn)當(dāng)b7=l時,與 OOO11010進行異或,b7 = O時,直接輸出移位后的結(jié)果。至此,基礎(chǔ)電路搭建完畢,見圖4,輸 出結(jié)果C7C6C日C4C3C2C1C0即為一個數(shù)與00000010與bybsb日bAshshibo相乘的結(jié)果。運是最基本 的乘2運算,為了便于后續(xù)高級電路的構(gòu)造算法的描述,我們將此電路封裝成U器件,見圖5; 8 = 676613日64636213113日,〔=。7。6(3日。4。3。2(31(3日,而在后續(xù)的電路搭建中,會頻繁地使用運種電路 器件
[0024] 2、高級電路搭建
[0025] 1):定義兩個輸入數(shù)據(jù)分別為化、比價化與化的大小
[0026] 2):選取其中較小者,記為Dmin,選取其中較大者,記為Dmax,對Dmin進行不斷地模二 取余,轉(zhuǎn)換成二進制數(shù)并寫出該二進制數(shù)對應(yīng)的加權(quán)系數(shù)展開式,即:
[0027] Dmin = dn-iX2n-i+……+diX2^ + d〇X2° (die{〇,l},ieN)
[0028] 3 ):分析研究Dmin的加權(quán)系數(shù)展開式,從Dmin系數(shù)較小值開始,一次進行檢索掃描, 逐步搭建量子電路,若W2為權(quán)的系數(shù)為0,則一定意義上相當(dāng)于沒有進行任何運算,仍是其 本身,直接輸出即可,不需要用到電路器件U,若指數(shù)大于等于1,則需要用到電路器件U,已 知一個U代表最基本的乘二運算,按照指數(shù)由低到高,若系數(shù)為1,則需要一個U,依次類推, 若指數(shù)為n-1,則需要n-1個U
[0029] 4):搭建16根線的量子電路,每8根線做一個封裝,例,如圖6所示,類似運種有規(guī)律 的由控制非口組成的電路,該電路簡化成圖7所示電路,運時,控制位作用于目標(biāo)位,可W實 現(xiàn) =欠 --欠 -(人,/^/^.;欠 -.;欠 -|/:。貨、'、'(,、':.、'、'].、一,、'。的異或操作;
[0030] 5):封裝后的兩根線分別定義為LcontrDl, Ltarget,封裝前的16根量子電路我們分別 定義為li-cDntrDl,li-target,ie{〇,l……,7 },各控制非口的目標(biāo)位與控制位都相應(yīng)地在 li-control和li-target上。在Lcon付。1端我們輸入DmaxJi-target端我們輸入輔助比特|0〉,如圖8是一 個最基本的高級電路圖,在i處的結(jié)果即為DmaxX2,當(dāng)通過控制非口的時候,經(jīng)過控制非口 的作用,會從L *3^61;端輸出比特0與Dmax X 2的異或結(jié)果;
[0031 ]本發(fā)明與現(xiàn)有技術(shù)相比具有W下優(yōu)點:
[0032] 采用了可逆邏輯設(shè)計,功耗和電磁場的行為屬性無法都通過傳統(tǒng)方式得到,可W 有效防止邊信道攻擊方法的攻擊,大大降低了被非法破取的可能性;
[0033] 加密技術(shù)的加密效果更優(yōu),電路的可逆性可W使加密效果達到化!的邏輯綜合,若 非法用戶想通過時間攻擊難上加難。
【附圖說明】:
[0034] 圖1為非口結(jié)構(gòu)示意圖;
[0035] 圖2為交換口結(jié)構(gòu)示意
[0036] 圖3為流程圖;
[0037] 圖4為量子邏輯電路U內(nèi)部結(jié)構(gòu)圖;
[0038] 圖5為U器件符號表示圖;
[0039] 圖6為16線量子電路圖
[0040]圖7為16線簡化量子電路圖 [0041]圖8為最基本的局級電路圖;
[00創(chuàng)圖9為Dmin =14示例圖
【具體實施方式】:
[0043] 為了加深對本發(fā)明的理解,下面將結(jié)合實施例及附圖對本發(fā)明作進一步詳述,該 實施例僅用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明保護范圍的限定。
[0044] 本發(fā)明設(shè)及一種針對加密技術(shù)領(lǐng)域乘法運算的量子邏輯電路的構(gòu)造方法的具體 實施方式,包括W下步驟:
[0045] 1、首先進行基礎(chǔ)電路模塊的構(gòu)造:采用量子邏輯電路中的基本控制非口和交換口 作為基礎(chǔ)模塊電路的構(gòu)造口庫,基礎(chǔ)模塊構(gòu)造:
[0046] 采用量子邏輯電路中的基本控制非口和交換口作為基礎(chǔ)電路的構(gòu)造口庫,加密算 法中大多數(shù)運算都是基于伽羅瓦域,其中做常見的操作莫過于加法與乘法,兩個數(shù)的相加 即為兩個數(shù)的異或,可W采用量子基本口控制非口來完成,目標(biāo)位的輸出即為數(shù)據(jù)之間相 互異或后的結(jié)果,由于是基于GF(2 8),所W基礎(chǔ)電路采用8根量子線,令相應(yīng)的二進制輸入 數(shù)據(jù)分風(fēng)!為bybsbstHbsbsbibo,即該二進制數(shù)為bybsbsbAbsbsbibo,實現(xiàn)定義在GF( 2?)上最基本 的乘W00000010的運算,一定意義上第一步相當(dāng)于循環(huán)左移一位,當(dāng)移位后的結(jié)果最低位 為1時,再和OOOl 1010進行異或運算,可W用如下邏輯表達式表示:
[0047]
[004引具體步驟如下:
[0049] 1):實現(xiàn)循環(huán)左移操作,利用交換口可W實現(xiàn)數(shù)據(jù)互換運樣的功能,通過多次使用 交換口來實現(xiàn)二進制數(shù)各位依次左移的操作。除最高位外,其余各位依次左移,移動總頻數(shù) 為7,原最高位此時變?yōu)榱俗畹臀唬每刂品强?,控制位?時,目標(biāo)位反轉(zhuǎn),控制位為0時, 目標(biāo)位不變,搭建3個目標(biāo)位基于第2、4、5根線的控制非口,來實現(xiàn)當(dāng)b7=l時,與00011010 進行異或,b7 = 0時,直接輸出移位后的結(jié)果。至此,基礎(chǔ)電路搭建完畢,見圖4,輸出結(jié)果 C7C6C5C4C3C2"C0即為一個數(shù)與00000010與bybsbsb&sbsbibo相乘的結(jié)果。運是最基本的乘2運 算,為了便于后續(xù)高級電路的構(gòu)造算法的描述,將此電路封裝成U器件,見圖5;
[0化0] 在此處,B = b7b6b日646362131130,〔=。7。6(3日。4。3。2(31(30,而在后續(xù)的電路搭建中,會頻繁 地使用運種電路器件 [0化1] 2、高級電路搭建:
[0052] 1):定義兩個輸入數(shù)據(jù)分別為化、比價化與化的大小
[0053] 2):選取其中較小者,記為Dmin,選取其中較大者,記為Dmax,對Dmin進行不斷地模二 取余,轉(zhuǎn)換成二進制數(shù)并寫出該二進制數(shù)對應(yīng)的加權(quán)系數(shù)展開式,即
[0054] Dmin = dn-lX2n-l+……+diX2^〇X2° (die{〇,l},ieN)
[0055] 3 ):分析研究Dmin的加權(quán)系數(shù)展開式,從Dmin系數(shù)較小值開始,一次進行檢索掃描, 逐步搭建量子電路,若W2為權(quán)的系數(shù)為0,則一定意義上相當(dāng)于沒有進行任何運算,仍是其 本身,直接輸出即可,不需要用到電路器件U,若指數(shù)大于等于1,則需要用到電路器件U,已 知一個U代表最基本的乘二運算,按照指數(shù)由低到高,若系數(shù)為1,則需要一個U,依次類推, 若指數(shù)為n-1,則需要n-1個U
[0056] 4):搭建16根線的量子電路,每8根線做一個封裝,例,如圖6所示,類似運種有規(guī)律 的由梓制非n紐成的由路,巧由路簡化成閣7所示由路,這時,控制位作用于目標(biāo)位,可W實 現(xiàn)
的異或操作。
[0化7] 5):封裝后的兩根線分別定義為以。血。1山31'如,封裝前的16根量子電路我們分別 定義為li-cDntrDl,li-target,ie{〇,l……,7 },各控制非口的目標(biāo)位與控制位都相應(yīng)地在 li-control和li-target上。在Lcon付。1端我們輸入DmaxJi-target端我們輸入輔助比特|0〉,如圖8是一 個最基本的高級電路圖,在i處的結(jié)果即為DmaxX2,當(dāng)通過控制非口的時候,經(jīng)過控制非口 的作用,會從L *3^61;端輸出比特0與DmaxX 2的異或結(jié)果。
[005引實施例1:令Dmin=H,對14進行模2取余,化為8位二進制數(shù),并給出該二進制數(shù)對 應(yīng)的加權(quán)系數(shù)展開式得出14 = 23 + 22 + 21,從系數(shù)較小者一次進行掃描,首先是DmaxX2l,添 加一個U器件,運時在i處的數(shù)據(jù)就是DmaxX2l,繼續(xù)掃描,檢測到加號,添加控制非口進行異 或操作,此時ii處的結(jié)果仍是DmaxX2l,iii處的結(jié)果此時由0變?yōu)榱?DmaxX2l,繼續(xù)掃描,又發(fā) 現(xiàn)再次添加一個U器件,按照此種方法,依次掃描,直到掃描到最高系數(shù)項,iV處的結(jié)果 是Dmax X 22,V處的結(jié)果為Dmax X 22+Dmax X 21,Vi處的結(jié)果是Dmax X 23,最后再通過一個控制非 口完成各部分的異或操作,Vii處的結(jié)果即為DmaxX23+DmaxX2 2+DmaxX2l,最終的結(jié)果通過 Ltarget端輸出,見圖9。
[0059] 本發(fā)明抽象出了一種量子電路的構(gòu)造方法,對于加密技術(shù)領(lǐng)域中常見的運算進行 了分析與研究,提出了一套針對加密算法中常用運算的電路構(gòu)造算法。
[0060] 本發(fā)明采用了可逆邏輯設(shè)計,功耗和電磁場的行為屬性無法都通過傳統(tǒng)方式得 到,可W有效防止邊信道攻擊方法的攻擊,大大降低了被非法破取的可能性。
[0061 ]此外,相較于目前的加密算法,本發(fā)明的加密技術(shù)的加密效果更優(yōu),眾所周知,任 何傳統(tǒng)的加密算法只要有足夠的時間,都可W被破解掉,尤其在量子計算機出現(xiàn)之后,出于 量子計算機強大的計算能力,傳統(tǒng)意義上的經(jīng)典加密算法將受到嚴(yán)重威脅。運是唯一能與 量子計算機對抗的只有一種技術(shù),量子加密技術(shù)。而此加密算法中乘法運算所設(shè)計出的可 逆量子邏輯電路,電路的可逆性可W使加密效果達到化!的邏輯綜合,若非法用戶想通過時 間攻擊難上加難。
[0062] 基于量子電路的加密技術(shù),由于采用的是可逆邏輯設(shè)計功耗和電磁場的屬性行為 無法通過傳統(tǒng)方式得到,可W有效防止邊信道攻擊方法的攻擊。
[0063] 提出量子邏輯電路的構(gòu)造算法,有效針對云計算數(shù)據(jù)丟失運一威脅,可W隨機生 成有限的量子電路;就本地而言,可W在不同的時間更新電路可W隨機生成有限的量子電 路;就本地而言,可W在不同的時間更新電路。
[0064] 采用量子可逆邏輯電路,可達到化!的邏輯綜合,時間攻擊可望不可即。
[0065] 最后應(yīng)說明的是:雖然W上已經(jīng)詳細說明了本發(fā)明及其優(yōu)點,但是應(yīng)當(dāng)理解在不 超出由所附的權(quán)利要求所限定的本發(fā)明的精神和范圍的情況下可W進行各種改變、替代和 變換。
[0066] 而且,本發(fā)明的范圍不僅限于說明書所描述的過程、設(shè)備、手段、方法和步驟的具 體實施例。
[0067] 本領(lǐng)域內(nèi)的普通技術(shù)人員從本發(fā)明的公開內(nèi)容將容易理解,根據(jù)本發(fā)明可W使用 執(zhí)行與在此所述的相應(yīng)實施例基本相同的功能或者獲得與其基本相同的結(jié)果的、現(xiàn)有和將 來要被開發(fā)的過程、設(shè)備、手段、方法或者步驟。
[0068]因此,所附的權(quán)利要求旨在在它們的范圍內(nèi)包括運樣的過程、設(shè)備、手段、方法或 者步驟。
【主權(quán)項】
1. 一種針對加密技術(shù)領(lǐng)域乘法運算的量子邏輯電路的構(gòu)造方法,其特征在于:包括W 下步驟: 一、 構(gòu)造基礎(chǔ)模塊:采用量子邏輯電路中的基本控制非口和交換口作為基礎(chǔ)電路的構(gòu) 造口庫,由于是基于GF(28),所W基礎(chǔ)電路采用8根量子線,令相應(yīng)的二進制輸入數(shù)據(jù)分別 為bYbsbsbAbsbsbibo,即該二進制數(shù)為bYbsbsbAbsbsbibo,實現(xiàn)定義在GF(28)上最基本的乘W 00000010的運算,第一步相當(dāng)于循環(huán)左移一位,當(dāng)移位后的結(jié)果最低位為1時,再和 00011010進行異或運算,用如下邏輯表達式表示:具體步驟如下: 實現(xiàn)循環(huán)左移操作,利用交換口可W實現(xiàn)數(shù)據(jù)互換運樣的功能,通過多次使用交換口 來實現(xiàn)二進制數(shù)各位依次左移的操作,除最高位外,其余各位依次左移,移動總頻數(shù)為7,原 最高位此時變?yōu)榱俗畹臀?,利用控制非口,控制位?時,目標(biāo)位反轉(zhuǎn),控制位為0時,目標(biāo)位 不變,搭建3個目標(biāo)位基于第2、4、5根線的控制非口,來實現(xiàn)當(dāng)b7=l時,與00011010進行異 或,b7 = 0時,直接輸出移位后的結(jié)果;至此,基礎(chǔ)電路搭建完畢,輸出結(jié)果C7C6C日C4C3C2C1C0即 為一個數(shù)與00000010與b7b6b5b4b3b2bibo相乘的結(jié)果,W上為最基本的乘2運算,為了便于后 續(xù)高級電路的構(gòu)造算法的描述,將此電路封裝成U器件;B = b7b6b5b4b3b2bibo, C = C7C6C已C4C3C2C1C0,; 二、 搭建高級電路模塊: 1)定義兩個輸入數(shù)據(jù)分別為化、比價化與化的大?。? 2 )選取其中較小者,記為Dmin,選取其中較大者,記為Dmax,對Dmin進行不斷地模二取余, 轉(zhuǎn)換成二進制數(shù)并寫出該二進制數(shù)對應(yīng)的加權(quán)系數(shù)展開式,即 Dmin=dn-1 X2。-1+……+dlX2^0X2° (die{〇,l},ieN) 3) 分析研究Dmin的加權(quán)系數(shù)展開式,從Dmin系數(shù)較小值開始,一次進行檢索掃描,逐步搭 建量子電路,若W2為權(quán)的系數(shù)為0,則仍是其本身,直接輸出即可,不需要用到電路器件U, 若指數(shù)大于等于1,則需要用到電路器件U,已知一個U代表最基本的乘二運算,按照指數(shù)由 低到高,若系數(shù)為1,則需要一個U,依次類推,若指數(shù)為n-1,則需要n-1個U; 4) 搭建16根線的量子電路,每8根線做一個封裝,控制位作用于目標(biāo)位,可W實現(xiàn) r-人人人":人的異或操作; 5) 封裝后的兩根線分別定義為^。。*,。1,^3^6*,封裝前的16根量子電路分別定義為 li-control,li-taaet,i e {〇,1……,7 },各控制非口的目標(biāo)位與控制位都相應(yīng)地在1 i-control和 1 i-target上。在Lcontrol端輸入Dmax,1 i-target端我們輸入輔助比特I 0〉,在i處的結(jié)果即為Dmax X 2, 當(dāng)通過控制非口的時候,經(jīng)過控制非口的作用,會從L'target端輸出比特0與DmaxX2的異或結(jié) 果。
【文檔編號】H03K19/20GK105846814SQ201610173780
【公開日】2016年8月10日
【申請日】2016年3月24日
【發(fā)明人】管致錦, 姚林霞, 龔雨濛, 陳昱東, 楊陽, 馬海英, 程學(xué)云, 嚴(yán)楊揚, 李偉文, 顧賀賀
【申請人】南通大學(xué)