随机预言机与UCE:构建确定性公钥加密方案
1. 确定性公钥加密与UCE
确定性公钥加密方案与常规公钥加密方案类似,但加密算法是确定性的,使用相同密钥对相同消息加密两次会得到相同密文。长期以来,在标准模型下实现最强安全形式的构造一直未知。而与计算不可预测源相关的UCE(不可区分混淆扩展)足够强大,可以构建确定性公钥加密方案。
1.1 加密哈希构造(EwH)
EwH构造从常规(随机化)公钥加密方案PKE和哈希函数H构建确定性公钥加密方案。其思路是通过对要加密的消息和公钥进行哈希运算,确定性地生成加密所需的随机性。以下是EwH[PKE, H]的伪代码:
EwH[PKE, H].KGen(1λ)
1 :
hk ←$ H.KGen(1λ)
2 :
(pk, sk) ←$ PKE.KGen(1λ)
3 :
return ((pk, hk), sk)
EwH[PKE, H].Enc((pk, hk), m)
r ←H(hk, pk∥m)
c ←PKE.Enc(pk, m; r)
return c
EwH[PKE, H].Dec(sk, c)
m ←PKE.Dec(sk, c)
return m
1.2 IND安全概念
确定性公钥加密方案的最强安全形式是IND安全,考虑一个两阶段对手A = (A1, A2)。首先A1输出两个相同长度的不可预测消息向量,然后根据隐藏位b对其中一个向量进行加密,并将其提供给第二阶段对手A2,A2的任务是猜测哪个向量被加密。以下是确定性公钥加密方案DPKE的安全实验伪代码:
超级会员免费看
订阅专栏 解锁全文
99

被折叠的 条评论
为什么被折叠?



