密码学学习笔记(八):Public-Key Encryption - 公钥加密1

简介

公钥加密也被称为非对称加密。下面是一个例子:

  • Bob生成一个密钥对,发布他的公钥𝑃𝐾𝐵, 保管密钥𝑆𝐾𝐵 私有的
  • Alice使用𝑃𝐾𝐵 加密明文M,得到密文C,并将其发送给Bob
  • 假设:𝑃𝐾𝐵 是真实的
  • Bob使用𝑆𝐾𝐵 解密密文C得到M
  • 目标:保密

密钥生成算法生成的密钥对由两部分组成,即允许公开的公钥和必须保密的私钥。

IND-CPA安全

加密方案有3种算法:

  • 对手被给予𝑝𝑘
  • 它可以运行𝐸𝑛𝑐, 即免费的加密查询(不同于对称加密)
  • 不可区分性:对手获胜的概率与偶然获胜的概率相差可忽略不计,比如二分之一。确定性PKE不能是IND-CPA。

IND-CCA安全

  • 对手被给予𝑝𝑘 以及访问解密预言机
  • 它可以运行𝐸𝑛𝑐 它本身
  • 它可以要求解密除质询密文之外的任何密文
  • 不可区分性:对手获胜的概率与偶然获胜的概率相差可忽略不计,比如二分之一。
  • IND-CCA相当于非延展性,即能够为相关明文找到密文。

ElGamal加密

ElGamal加密方案

  • 密钥生成:随机选取𝑥, 设置ℎ = g^{x}

  • 随机选取𝑦, 将密文计算为:

  • 解密:给定一个密文𝑐 = (𝑐1,𝑐2) ,将明文恢复为:

最终式:

NIST ElGamal密钥大小建议

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值