IND-CPA PKE

Algorithm1

SCloudCPAPKE.KeyGen

  • Input: None
  • Output: (pk, sk)
    1. : 选择随机种子 seed_A
    2. : 使用随机种子生成随机矩阵 A ← Gen(seed_A) ∈ ℤ_q^{n×n}
    3. : 生成满足高斯分布的矩阵 S, E ← χ^{n×ñ}
    4. : 计算 B = AS + E
    5. : 返回公钥 pk ← (seed_A, B), 以及私钥 sk ← S

Algoithm2

SCloudCPAPKE.Enc

  • Input: 消息m ∈ ℤ^{l_{e} } , 公钥 pk = (seed_A, B)
  • Output: 密文 c
    1. : 使用随机种子生成随机矩阵 A ← Gen(seed_A) ∈ ℤ_q^{n×n}
    2. : 生成满足高斯分布的矩阵S’, E’ ← X^{\bar{m}\times n } , E’’ ←X^{\bar{m}\times \bar{n} }
    3. : 计算 B’ = S’A + E’ 以及 V = S’B + E’’ + Encode(m)
    4. : 返回密文 c ← (B’, V)

Algorithm3

SCloudCPAPKE.Dec

  • Input: 密文 c = (B’, V) ∈ ℤ_q^{\bar{m}\times n } × ℤ_q^{\bar{m}\times \bar{n} }, 私钥 sk = S ∈ ℤ_q^{n\times \bar{n} }
  • Output: 解密消息 m
  1. : 计算 D = V - B’S
  2. : 返回消息 m = Decode(D)
  • 10
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值