可證明安全性、IBE、PRE
- 安全的定義:安全是基于信任構建的標準“可滿足性”;基于信任而不是基于試驗的原因是(試驗的成本過高)

- 信任源具有動態性,信任源是否可信可能隨著時間和環境而發生變化,

-
密碼學的信任源是數學難題,
-
安全的定義在密碼學中的具體形式化是語意安全或者是可證明安全

-
語意安全性定義了攻擊者的計算能力、定義了攻擊目標,
Q1:語意安全性為什么能夠作為定義密碼演算法安全性的標準?
因為語意安全性將攻擊者的攻擊能力最大化,攻擊目標最小化,并不考慮攻擊者的攻擊形式(這樣的好處是既不會陷于某種攻擊方式而喪失普遍性,又構造了最有利于攻擊者的情況,若仍能夠說明密碼演算法的安全,則密碼演算法是真的安全)
Q2:如何定義攻擊者的能力,和攻擊目標?
假設攻擊者能夠獲得最強的資訊獲取能力,獲得所有的公開資訊(例如演算法的公開引數和演算法等);計算能力的最大上限(一般考慮能夠具有解決多項式的問題的能力)
攻擊目標限定于只要能夠獲得1bit的資訊,(可以參考語意安全性的游戲理解)

- 語意安全性的游戲:

-
什么是安全引數?
RSA 具有1024位的加密密鑰,這可以通過量化安全性進行證明,在密碼學原理的課程中,我們有了解到 2 80 2^{80} 280破解復雜度是一個密碼演算法安全性的分水嶺,超過這個復雜度的演算法才具有實用的安全性,而加密密鑰的長度(N=1024)可以直接影響破解的復雜度,越長的加密密鑰帶來越高的破解復雜度,但同時會帶來更大的計算開銷,
安全引數是量化安全性的重要依據,所有可證明安全的密碼演算法都有量化安全性,
-
為什么亂數對加密演算法的安全性至關重要?
從資訊論的角度首先理解,對于任何一個函式,函式的輸入熵一定大于等于函式的輸出熵,加密演算法也不例外,確定性演算法無法增加輸出的熵,但密碼演算法要做到安全性,必須要是輸出滿足一定的隨機性(即熵夠大),亂數則作為一個橋梁,引入亂數(高熵)可以增加輸入熵,在理論上符合資訊論的觀點,
-
為什么完善保密性(密碼學原理中前兩章的內容)中沒有引入亂數?
因為完善保密性要求明文盡可能滿足均勻分布(輸入滿足高熵);要求密鑰也是隨機的(采用一次一密的方法),從這兩點我們也可以看出完善保密性在現實中并不具有實用性,

基于身份加密(IBE)
前言:首先認識到傳統公鑰密碼體制和公鑰基礎設施PKI的不足,發掘本質問題,萌生IBE的思想,演算法遠沒有思想重要,比如你來設想一個場景,海王楊師傅如果要給他的一千個女朋友發送520的情書,這時候他就得詢問PKI一千次關于女朋友公鑰,得到PKI的詢問之后,他才能將情書發出去(必須等待PKI的回應,因為如果其中一個女朋友的公鑰失效了,她就可能解不開情書,她就會生氣!!!后果不堪設想,這樣消耗的時間和精力太多,這對于楊師傅來說,是絕對不可能允許產生的,
- 公鑰基礎設施存在的問題

-
產生問題的本質原因
公鑰是隨機生成的,與用戶沒有天然的系結關系,CA的存在就是通過一種外力人為地將公鑰和用戶身份進行系結,

-
IBE的思想

-
IBE演算法的唯一重點
生成用戶私鑰的身份資訊是什么?(郵件系統中是用戶的郵箱地址)
-
雙線性映射

考點一、非常重要
T1 證明雙線性映射的結合律
e
^
(
a
,
b
+
c
)
=
e
^
(
a
,
b
)
?
e
^
(
a
,
c
)
\hat{e}(a,b+c)=\hat{e}(a,b)*\hat{e}(a,c)
e^(a,b+c)=e^(a,b)?e^(a,c)
已
知
b
,
c
屬
于
加
法
群
,
不
妨
設
g
為
生
成
元
,
b
=
r
g
,
c
=
s
g
,
e
^
(
a
,
b
+
c
)
=
e
^
(
a
,
(
r
+
s
)
g
)
=
e
^
(
a
,
g
)
(
r
+
s
)
=
e
^
(
a
,
g
)
r
?
e
^
(
a
,
g
)
s
=
e
^
(
a
,
b
)
?
e
^
(
a
,
c
)
=
e
^
(
a
,
b
)
?
e
^
(
a
,
c
)
已知b,c屬于加法群,不妨設g為生成元,b=rg,c=sg,\hat{e}(a,b+c)=\hat{e}(a,(r+s)g)=\hat{e}(a,g)^{(r+s)}=\hat{e}(a,g)^r*\hat{e}(a,g)^s=\hat{e}(a,b)*\hat{e}(a,c)=\hat{e}(a,b)*\hat{e}(a,c)
已知b,c屬于加法群,不妨設g為生成元,b=rg,c=sg,e^(a,b+c)=e^(a,(r+s)g)=e^(a,g)(r+s)=e^(a,g)r?e^(a,g)s=e^(a,b)?e^(a,c)=e^(a,b)?e^(a,c)
T2 運用雙線性映射證明密文的可解密性

H
2
(
e
^
(
d
I
D
,
U
)
)
=
H
2
(
e
^
(
H
1
(
I
D
)
,
P
s
)
r
)
H_2(\hat{e}(d_{ID},U))=H_2(\hat{e}(H_1(ID),P_s)^r)
H2?(e^(dID?,U))=H2?(e^(H1?(ID),Ps?)r)
H
2
(
e
^
(
d
I
D
,
U
)
)
=
H
2
(
e
^
(
s
H
1
(
I
D
)
,
r
P
)
)
=
H
2
(
e
^
(
H
1
(
I
D
)
,
s
P
)
r
)
=
H
2
(
e
^
(
H
1
(
I
D
)
,
P
s
)
r
)
H_2(\hat{e}(d_{ID},U))=H_2(\hat{e}(sH_1(ID),rP))=H_2(\hat{e}(H_1(ID),sP)^r)=H_2(\hat{e}(H_1(ID),P_s)^r)
H2?(e^(dID?,U))=H2?(e^(sH1?(ID),rP))=H2?(e^(H1?(ID),sP)r)=H2?(e^(H1?(ID),Ps?)r)
- IBE小結

代理重加密
前言:如果機智的小王將一份通知檔案上傳到了云服務器中,這時候檔案在云端是加密的(使用的私鑰是 S k 王 Sk_{王} Sk王?),但這個時候,他要把這個檔案分享給小袁,懶惰的小王不想從云端將檔案下載下來, 然后解密,然后用小袁的公鑰進行加密,然后再發給她,有沒有一種辦法能夠將這個檔案直接從云端以密文的形式直接發給小袁,而且小袁能夠用 s k 袁 sk_{袁} sk袁?進行解密的呢???
PRE就是一種解決密文安全共享的技術,這個思想與我們之前學習的DES、AES、RSA、EIGamal、IBE等實作密文安全傳輸有很大不同,
- PRE是什么?
有沒有一種辦法能將檔案下載-檔案解密-檔案再加密結合呢,PRE就是在云端完成了發送發密鑰加密的密文到接收方密鑰加密的密文的轉化,
- PRE實作方法?
直接的思路:先解密再加密,存在兩個問題:1、云端不知道解密密鑰,2、云端在解密程序中知道了明文資訊,
- PRE是如何做到無泄漏的安全性的呢(思想,具體見演算法)?
PRE將脫密程序和再加密程序合二為一,不泄露中間結果,同時要注意保證解密密鑰的安全
- PRE演算法的核心

-
PRE演算法和IBE演算法的異同點:
1)關注 H 2 H_2 H2?哈希函式(不同)
2)私鑰的生成方式(相同)加法群到乘法群的映射,和乘法群到乘法群的映射沒有本質區別,
3)密文 C C C的第二部分,去掉了 H 2 H_2 H2?哈希函式,為什么?為了更好的進行后續計算,如果使用會導致無法重加密
4)密文 C C C的第二部分和密文的解密程序,采用代數運算代替異或運算,保留密文的可計算性質,
-
證明PRE重加密密文的可解密性

利用雙線性映射的結合律
驗證解密的程序 M e ^ ( p r , H 2 ( x ) ) = C 2 e ^ ( C 1 , R 3 ) M\hat{e}(p^r,H_2(x))=C_2\hat{e}(C_1,R_3) Me^(pr,H2?(x))=C2?e^(C1?,R3?)
C 2 e ^ ( C 1 , R 3 ) = M ? e ^ ( P s , H 1 ( i d 1 ) r ) ? e ^ ( p r , s k i d ? 1 ? H 2 ( x ) ) = M ? e ^ ( P s , H 1 ( i d 1 ) r ) ? e ^ ( P r , s k i d ? 1 ) ? e ^ ( P r , H 2 ( x ) ) = M ? e ^ ( P s , H 1 ( i d 1 ) r ) ? e ^ ( P r , H 1 ( i d ) ? s ) ? e ^ ( P r , H 2 ( x ) ) = M ? e ^ ( P r , H 2 ( x ) ) C_2\hat{e}(C_1,R_3)=M*\hat{e}(P_s,H_1(id_1)^r)*\hat{e}(p^r,sk^{-1}_{id}*H_2(x))= \\ M*\hat{e}(P_s,H_1(id_1)^r)*\hat{e}(P^r,sk^{-1}_{id})*\hat{e}(P^r,H_2(x))=\\ M*\hat{e}(P^s,H_1(id_1)^r)*\hat{e}(P^r,H_1(id)^{-s})*\hat{e}(P^r,H_2(x))=\\ M*\hat{e}(P^r,H_2(x)) C2?e^(C1?,R3?)=M?e^(Ps?,H1?(id1?)r)?e^(pr,skid?1??H2?(x))=M?e^(Ps?,H1?(id1?)r)?e^(Pr,skid?1?)?e^(Pr,H2?(x))=M?e^(Ps,H1?(id1?)r)?e^(Pr,H1?(id)?s)?e^(Pr,H2?(x))=M?e^(Pr,H2?(x))
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/376965.html
標籤:其他
