Chapter 11
1.公钥加密
公钥加密相较于私钥加密的优势
(1)通信各方在通信前不需要秘密共享密钥;
(2)单个接收器可以同时和多个发送者通信,在私钥体系下,双方共享的密钥只能在双方通信之间使用。
公钥加密的缺点
和私钥加密相比,公钥加密要慢2到3个数量级。因此,在智能卡或者射频识别(RFID)标签中实现公钥加密可能比较困难。
2.公钥的安全分发
CPA-security(防止选择明文攻击安全),任何确定性的加密方案都不是CPA安全的。
3.LR-oracle experiment
4.CCA indistinguishability experiment
5.混合式加密和KEM/DEM
(1)混合式加密主要思想是使用公钥加密来获取shared-key
k
k
k,然后使用私钥加密和
k
k
k 来加密消息
m
m
m。
(2)
K
E
M
(
k
e
y
−
e
n
c
a
p
s
u
l
a
t
i
o
n
m
e
c
h
a
n
i
s
m
)
KEM(key-encapsulation mechanism)
KEM(key−encapsulationmechanism)密钥封装机制:首先仍然是使用
G
e
n
Gen
Gen生成公私钥对,然后使用
E
n
c
a
p
s
Encaps
Encaps函数将公钥作为输入,输出密文
c
c
c和密钥
k
k
k,最后使用
D
e
c
a
p
s
Decaps
Decaps函数输入私钥
s
k
sk
sk和密文
c
c
c,输出密钥
k
k
k。
(3)
D
E
M
(
d
a
t
a
−
e
n
c
a
p
s
u
l
a
t
i
o
n
m
e
c
h
a
n
i
s
m
)
DEM(data-encapsulation mechanism)
DEM(data−encapsulationmechanism)数据封装机制:在混合加密中,使用私钥加密体制的称为DEM。
6.基于CDH/DDH的加密方案
El Gamal encryption
(1)在El Gamal加密方案中,是需要共享公共参数的,而RSA不能安全的共享参数;
(2)El Gamal中,消息空间是一个组
G
\mathbb{G}
G,而不是一个特定长度的字符串。
Solution1:可以先将消息
m
∈
{
0
,
1
}
L
m\in\left\{0,1\right\}^\mathscr{L}
m∈{0,1}L编码成
m
^
∈
G
\hat{m}\in\mathbb{G}
m^∈G,然后再使用El Gamal加密
m
^
\hat{m}
m^。
Solution2:选择消息
m
∈
G
m\in\mathbb{G}
m∈G,使用El Gamal加密,然后使用私钥加密方案和
H
(
m
)
H(m)
H(m)加密实际的消息。
7.RSA加密
普通RSA
该方案并不安全,但是是接下来加密方案的重要起点。如果加密的信息m是在一个小范围内,攻击者是能够根据公钥和密文计算出m的,而且RSA加密是固定加密,是不安全的。
接收方将N和e作为它的公钥,d为私钥。
发送方将发送的信息m进行加密:
c
=
m
e
m
o
d
N
c=m^e mod N
c=memodN
接收方解密:
m
=
c
d
m
o
d
N
m=c^d mod N
m=cdmodN
后半部分大多数是一些证明相关的内容,日后需要进行查阅即可。