??第⑤部分由L3H_CoLin編寫(xiě),有一些修改。??
5 可搜索對(duì)稱(chēng)加密(SSE)
Song, Dawn Xiaoding, David Wagner, and Adrian Perrig. “Practical techniques for searches on encrypted data.” Proceeding 2000
IEEE Symposium on Security and Privacy. S&P 2000. IEEE, 2000.
5.1 應(yīng)用背景
- 數(shù)據(jù)的安全外包存儲(chǔ)
- 利用密碼算法加密明文數(shù)據(jù),使得云平臺(tái)無(wú)法獲得額外信息
- 解決了數(shù)據(jù)在不可信云平臺(tái)上安全存儲(chǔ)與共享的問(wèn)題
- 安全的弊端
- 用戶(hù)無(wú)法對(duì)數(shù)據(jù)進(jìn)行關(guān)鍵字檢索,因?yàn)榧用苓^(guò)程完全破壞了明文數(shù)據(jù)的語(yǔ)義,使得云平臺(tái)無(wú)法對(duì)密文數(shù)據(jù)檢索
- 將明文數(shù)據(jù)下載到本地,解密后再檢索,這個(gè)過(guò)程開(kāi)銷(xiāo)太大不實(shí)用
- 賦予云平臺(tái)解密數(shù)據(jù)的能力,讓云平臺(tái)能夠根據(jù)明文進(jìn)行檢索,但云平臺(tái)不可信,容易導(dǎo)致數(shù)據(jù)泄露
??簡(jiǎn)而言之,數(shù)據(jù)的外包存儲(chǔ)的對(duì)象都是加密數(shù)據(jù),用戶(hù)無(wú)法對(duì)數(shù)據(jù)進(jìn)行檢索,用戶(hù)一旦想要獲取含特定關(guān)鍵字的文件,只能下載全部密文文件,解密后再檢索出文件。
5.2 SSE的應(yīng)用模型
5.3 最初的SSE方案
??上述方法的不足是效率太低,對(duì)于計(jì)算出來(lái)的T’,需要和每一個(gè)密文逐一比較。
??改進(jìn)方法:為具有相同關(guān)鍵字的可搜索密文構(gòu)造隱藏的鏈?zhǔn)浇Y(jié)構(gòu)。服務(wù)器查詢(xún)時(shí)只需要沿著這條鏈查詢(xún)下去即可,檢索復(fù)雜度可以減小至亞線性級(jí)。但服務(wù)器在收到對(duì)應(yīng)的關(guān)鍵字檢索請(qǐng)求之前不能獲取任何關(guān)于該鏈的信息。
??除此之外,它的安全性也是不能保證的,可以通過(guò)簡(jiǎn)單的頻率攻擊,對(duì)關(guān)鍵字進(jìn)行猜測(cè)。在Song的方案中,每一個(gè)關(guān)鍵字所對(duì)應(yīng)的搜索陷門(mén)是固定的(即關(guān)鍵字和搜索陷門(mén)之間存在簡(jiǎn)單的一一映射的關(guān)系)。在攻擊者眼中,雖然將隨機(jī)數(shù)引入到可搜索加密的算法后能夠保證密文的不可區(qū)分性,但是可搜索加密比常規(guī)加密多一個(gè)檢索陷門(mén)(信息更多),對(duì)于可搜索加密的安全性定義來(lái)說(shuō)是遠(yuǎn)遠(yuǎn)不夠的。
5.4 SSE方案
方案定義
-
Setup
?
\operatorname{Setup}
Setup協(xié)議:
- 輸入:安全參數(shù) λ \lambda λ
- 輸出:私鑰 K ? \operatorname{K} K、本地狀態(tài) σ \sigma σ和加密數(shù)據(jù)庫(kù) EDB ? \operatorname{EDB} EDB,其中私鑰與本地狀態(tài)由客戶(hù)端秘密保存,加密數(shù)據(jù)庫(kù)存放在客戶(hù)端
-
Update
?
\operatorname{Update}
Update協(xié)議:
- 輸入:客戶(hù)端輸入私鑰 K ? \operatorname{K} K、本地狀態(tài) σ \sigma σ、密文操作 op∈(w,id) ? \operatorname{op\in(w,id)} op∈(w,id);服務(wù)器輸入加密數(shù)據(jù)庫(kù) EDB ? \operatorname{EDB} EDB
- 輸出:根據(jù) op ? \operatorname{op} op的值,客戶(hù)端將 (w,id) ? \operatorname{(w,id)} (w,id)對(duì)應(yīng)的可搜索密文添加到 EDB ? \operatorname{EDB} EDB或從 EDB ? \operatorname{EDB} EDB中刪除
-
Search
?
\operatorname{Search}
Search協(xié)議:
- 輸入:客戶(hù)端輸入私鑰 K ? \operatorname{K} K、本地狀態(tài) σ \sigma σ、要檢索的關(guān)鍵字 w ? \operatorname{w} w,服務(wù)端輸入加密數(shù)據(jù)庫(kù) EDB ? \operatorname{EDB} EDB
- 輸出:服務(wù)器返回 EDB ? \operatorname{EDB} EDB中所有與 w ? \operatorname{w} w相匹配的檢索結(jié)果
方案構(gòu)造
5.5 SSE存在的問(wèn)題
- 可搜索密文的刪除問(wèn)題
- 邏輯刪除,易于保證安全性
- 物理刪除,容易破壞安全性
- 多樣化檢索的問(wèn)題
- 模糊檢索、范圍檢索等
- 安全性與效率的博弈
- 現(xiàn)有提出的SSE無(wú)法避免信息泄露
- 無(wú)信息泄露的SSE,也稱(chēng)“隱私信息抽取”,大量地采用了“不經(jīng)意”隨機(jī)訪問(wèn)機(jī)協(xié)議,性能低下
6 可搜索公鑰加密(PEKS)
6.1 PEKS的起源
??2004年,由Boneh等人針對(duì)加密郵件系統(tǒng)的檢測(cè)問(wèn)題提出,成功實(shí)現(xiàn)了在郵件服務(wù)器不可信的條件下以關(guān)鍵字檢索加密郵件,而不泄露郵件和關(guān)鍵字信息。
??PEKS和SSE的關(guān)系,和傳統(tǒng)公鑰密碼與對(duì)稱(chēng)密碼的關(guān)系相近。PEKS具有公鑰密碼體制的特性,能夠?qū)崿F(xiàn)多用戶(hù)之間的密文搜索。
6.2 PEKS的定義
- 初始化算法
S
e
t
u
p
Setup
Setup:
- 輸入:系統(tǒng)安全參數(shù)
- 輸出:一對(duì)公私鑰
- 加密算法
P
E
K
S
PEKS
PEKS:
- 輸入:公鑰和待加密關(guān)鍵字
- 輸出:關(guān)鍵字可搜索密文
- 陷門(mén)生成算法
T
r
a
p
d
o
o
r
Trapdoor
Trapdoor:
- 輸入:私鑰和待檢索關(guān)鍵字
- 輸出:關(guān)鍵字陷門(mén)
- 測(cè)試算法
T
e
s
t
Test
Test:
- 輸入:公鑰、關(guān)鍵字可搜索密文和關(guān)鍵字密文
- 輸出:密文與陷門(mén)是否匹配
雙線性映射的另一種形式
??設(shè)群
G
\mathbb{G}
G和
G
T
\mathbb{G}_T
GT?是階為大素?cái)?shù)
q
q
q的循環(huán)乘法群,雙線性映射
e
^
:
G
×
G
→
G
T
\hat{e}:\mathbb{G}×\mathbb{G}\rightarrow\mathbb{G}_T
e^:G×G→GT?滿足以下條件:
- 雙線性:對(duì) ? U , V ∈ G , a , b ∈ Z q ? \forall U,V\in\mathbb{G},a,b\in Z^*_q ?U,V∈G,a,b∈Zq??,均有 e ^ ( U a , V b ) = e ^ ( U , V ) a b ∈ G T \hat{e}(U^a,V^b)=\hat{e}(U,V)^{ab}\in\mathbb{G}_T e^(Ua,Vb)=e^(U,V)ab∈GT?成立
- 非退化性:若 g g g為群 G \mathbb{G} G的生成元,則 e ^ ( g , g ) \hat{e}(g,g) e^(g,g)是群 G T \mathbb{G}_T GT?的生成元
- 可計(jì)算性:對(duì) ? U , V ∈ G \forall U,V\in\mathbb{G} ?U,V∈G,可在有效時(shí)間內(nèi)計(jì)算 e ^ ( U , V ) \hat{e}(U,V) e^(U,V)
6.3 PEKS實(shí)例化方案
6.4 PEKS存在的問(wèn)題
- 檢索效率問(wèn)題
檢測(cè)時(shí)需要測(cè)試每個(gè)可搜索密文,檢索復(fù)雜度為線性級(jí),效率太低。 - 安全性問(wèn)題
SS-CKA安全性?xún)H考慮了可搜索密文中關(guān)鍵字的語(yǔ)義安全,沒(méi)有考慮陷門(mén)中關(guān)鍵字的保密性,前述方案在實(shí)際應(yīng)用中需要安全信道來(lái)傳遞陷門(mén)。
實(shí)施關(guān)鍵字猜測(cè)攻擊(KGA)可獲得搜索關(guān)鍵字。其中KGA又分為離線KGA和在線KGA。離線KGA指竊聽(tīng)者或惡意服務(wù)器獲取某一特定陷門(mén)后,窮舉所有可能的關(guān)鍵字,依次生成密文進(jìn)行測(cè)試,從而得出該陷門(mén)所含關(guān)鍵字;在線KGA指惡意發(fā)送方猜測(cè)所有可能的關(guān)鍵字,生成密文并上傳,通過(guò)監(jiān)聽(tīng)接收方的搜索結(jié)果來(lái)判斷搜索關(guān)鍵字。
6.5 優(yōu)化方案:SPCHS
起源
??2015年,帶隱藏結(jié)構(gòu)的可搜索公鑰加密(SPCHS)被提出,它首次實(shí)現(xiàn)了檢索復(fù)雜度只取決于包含查詢(xún)關(guān)鍵字的可搜索密文的數(shù)量,而不是所有密文的數(shù)量,大幅度提高了檢索效率。
核心思路
??同一個(gè)關(guān)鍵字的所有可搜索密文間具有隱藏的鏈?zhǔn)浇Y(jié)構(gòu),鏈頭與公共頭部構(gòu)成了一個(gè)隱藏的星型結(jié)構(gòu)。
定義
- 初始化算法
S
y
s
t
e
m
S
e
t
u
p
SystemSetup
SystemSetup:
- 輸入:安全參數(shù)
- 輸出:系統(tǒng)公鑰和系統(tǒng)私鑰
- 結(jié)構(gòu)初始化算法
S
t
r
u
c
t
u
r
e
d
I
n
i
t
a
l
i
z
a
t
i
o
n
Structured Initalization
StructuredInitalization:
- 輸入:系統(tǒng)公鑰
- 輸出:隱藏結(jié)構(gòu)的公有部分和私有部分
- 結(jié)構(gòu)化加密算法
S
t
r
u
c
t
u
r
e
d
E
n
c
r
y
p
t
i
o
n
Structured Encryption
StructuredEncryption:
- 輸入:系統(tǒng)公鑰、關(guān)鍵字和隱藏結(jié)構(gòu)的私有部分
- 輸出:可搜索密文(更新隱藏結(jié)構(gòu)的私有部分)
- 陷門(mén)生成算法
T
r
a
p
d
o
o
r
Trapdoor
Trapdoor:
- 輸入:系統(tǒng)私鑰和關(guān)鍵字
- 輸出:關(guān)鍵字檢索陷門(mén)
- 結(jié)構(gòu)化檢索算法
S
t
r
u
c
t
u
r
e
d
S
e
a
r
c
h
Structured Search
StructuredSearch:
- 輸入:系統(tǒng)公鑰、隱藏結(jié)構(gòu)的公有部分、密文集合和關(guān)鍵字檢索陷門(mén)
- 輸出:滿足條件的密文
實(shí)例化方案
6.6 SPCHS存在的問(wèn)題
- 本地私有狀態(tài)問(wèn)題:為了隱藏結(jié)構(gòu)的生成,用戶(hù)需要存儲(chǔ)和更新私有信息。
- 僅支持關(guān)鍵字的精確查找,快速的模糊搜索、范圍搜索、子集檢索等等不能實(shí)現(xiàn)。
- 學(xué)術(shù)界提出的可搜索加密難以適用于數(shù)據(jù)庫(kù),兩者索引的建立模式截然不同。
6.7 其他問(wèn)題
如何理解可搜索加密至少泄露了1bit的信息
??在第一章的語(yǔ)義安全性的定義中,攻擊者無(wú)法區(qū)分被加密的是
m
0
m_0
m0?還是
m
1
m_1
m1?,即要求加密算法不泄露任何一比特的信息。對(duì)于可搜索加密來(lái)說(shuō),服務(wù)器需要根據(jù)檢索陷門(mén)來(lái)判斷哪個(gè)文件是用戶(hù)所找的文件,服務(wù)器可以知道搜索陷門(mén)與對(duì)應(yīng)文件標(biāo)識(shí)符之間的關(guān)聯(lián)關(guān)系。即:服務(wù)器在獲取到關(guān)鍵字檢索陷門(mén)之后, 可搜索密文可以被服務(wù)器區(qū)分。
??泄露的1bit信息是搜索陷門(mén)與對(duì)應(yīng)文件標(biāo)識(shí)符之間的關(guān)聯(lián)關(guān)系。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-595942.html
可搜索加密必然會(huì)泄露信息,那么它還是安全的嗎
??可搜索加密的安全性需要控制在一個(gè)合理的范圍內(nèi),它有自己的安全性定義方式。我們只需要理解,好的可搜索加密在泄露信息之后,仍然可以證明其安全性。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-595942.html
到了這里,關(guān)于【密碼學(xué)】高級(jí)密碼學(xué)-2的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!