功能型密码方案
概览
| 内容主题 | 核心解决问题 | 典型代表方案 |
|---|---|---|
| 同态加密 (HE) | 如何在密文上直接进行计算(隐私计算) | GM, BGN, Paillier, FHE (BGV/CKKS) |
| 标识密码 (IBC) | 如何去除数字证书,用身份作为公钥 | Boneh-Franklin (BF-IBE) |
| 属性基密码 (ABE) | 如何实现“一对多”的灵活访问控制 | Waters CP-ABE (2011) |
| 门限密码 (TE) | 如何分散解密权力,避免单点滥用 | Shoup-Gennaro |
学习目标:了解多种功能型密码的概念与发展趋势,掌握其安全模型、功能及基本应用场景,理解并掌握典型方案的数学原理与构造逻辑。
同态加密(Homomorphic Encryption, HE)
1. 基本概念
- 定义:允许在密文上直接执行特定运算(加或乘),解密结果等于对明文执行相同运算的结果。
- 起源:Rivest 于 1978 年提出,但 RSA 的填充版本破坏了同态性。
- 分类:
- 部分同态(PHE):仅支持加法(如 Paillier)或仅支持乘法(如 RSA)。
- 全同态(FHE):同时支持加法和乘法,可计算任意函数(Gentry, 2009)。
2. 通用模型与安全
- 四算法:
KeyGen,Enc,Dec,Eval(密文计算算法)。 - 正确性:
Dec(Eval(f, Enc(m))) = f(m)。 - 安全性:IND-CPA 安全(通过密文不可区分游戏定义)。
3. 经典部分同态方案
- GM 方案(1982):
- 数学基础:二次剩余问题。
- 同态性:XOR(加法) 同态(密文相乘)。
- 缺点:密文膨胀极大(1 bit → 2048 bit)。
- https://www.cnblogs.com/luminescence/p/20762388
- BGN 方案(2005):
- 数学基础:子群判定问题 + 双线性配对。
- 同态性:任意次加法 + 1次乘法。
- 特点:密文长度恒定,但乘法仅限一次。
- https://www.cnblogs.com/luminescence/p/20762985
- Paillier 方案(1999):
- 数学基础:判定性合数剩余问题(DCR)。
- 同态性:任意次加法同态(密文相乘对应明文相加),支持标量乘法。
- 应用:电子投票、联邦学习、云统计(应用最广泛的加法同态方案)。
- 优化:\(g=n+1\) 简化计算,CRT 加速,打包技术。
- https://www.cnblogs.com/luminescence/p/20763365
4. 全同态加密(FHE)
- Gentry 09:首个 FHE,引入自举(Bootstrapping) 技术降低噪声。
- 代际演进:
- 第二代(BGV, BFV, 2011-2012):层次型 FHE,利用模切换与密钥切换控制噪声。
- 第三代(GSW, TFHE, 2013-2016):基于 LWE,高效自举。
- 第四代(CKKS, 2017):支持浮点数/复数近似运算,适用于机器学习。
标识密码(Identity-Based Cryptography, IBC)
1. 基本概念
- 提出:Shamir, 1984。
- 核心思想:用户的公钥直接由其唯一标识(如邮箱、IP、手机号)决定,无需证书和 PKI 基础设施。
- 系统角色:私钥生成中心(KGC) 负责使用主密钥计算用户私钥。
2. 通用模型(四算法)
Setup:生成公开参数 \(param\) 和主密钥 \(msk\)。Extract:输入用户 \(ID\),输出私钥 \(sk_{ID}\)。Encrypt:使用 \(ID\) 作为公钥加密。Decrypt:使用 \(sk_{ID}\) 解密。
3. 典型方案:Boneh-Franklin (2001)
- 地位:首个实用且可证明安全的 IBE 方案。
- 数学基础:椭圆曲线上的双线性配对(Weil/Tate 配对)与 BDH 问题。
- 构造精要:
- \(Q_{ID} = H_1(ID) \in G\)。
- \(sk_{ID} = Q_{ID}^a\)(\(a\) 为主密钥)。
- 加密:\(C_1 = g^r, C_2 = M \oplus H_2(e(Q_{ID}, g^a)^r)\)。
- 解密:利用配对 \(e(C_1, sk_{ID})\) 消除随机性。
- 安全性:在随机谕言机模型(ROM) 下满足 IND-CPA。可通过 FO 转换提升至 IND-CCA。
https://www.cnblogs.com/luminescence/p/20766431
属性基密码(Attribute-Based Encryption, ABE)
1. 基本概念
- 提出:Sahai 和 Waters, 2005。
- 核心思想:将 IBE 中的单一身份扩展为属性集合,实现“一对多”的灵活访问控制。
2. 两大分类
- CP-ABE(密文策略):策略嵌入密文,用户密钥绑定属性集合。加密者决定谁能解密。
- KP-ABE(密钥策略):策略嵌入用户密钥,密文绑定属性集合。权威机构决定用户能解什么。
3. 形式化定义与安全
- 四算法:
Setup,KeyGen(输入属性集合或策略),Encrypt,Decrypt。 - 访问结构:单调访问结构(属性越多权限越大)。
- 安全模型:抗合谋攻击 + IND-CPA 游戏(敌手询问私钥时不得满足挑战策略)。
- 关键工具:线性秘密共享方案(LSSS) 将逻辑策略转化为线性代数重构(\(\sum \omega_i \lambda_i = s\))。
4. 典型方案:Waters 11' CP-ABE
- 地位:首个标准模型下安全、高效且支持任意单调访问结构的 CP-ABE。
- 困难假设:
q-parallel BDHE问题。 - 特点:利用 LSSS 矩阵生成密文组件 \(C_i = g^{a\lambda_i} h_{\rho(i)}^{-r_i}\),解密时通过配对与拉格朗日插值恢复 \(e(g,g)^{\alpha s}\)。
https://www.cnblogs.com/luminescence/p/20770848
门限密码(Threshold Encryption, TE)
1. 基本概念
- 提出:Desmedt, 1994。
- 核心思想:将私钥分割为 \(n\) 份,至少需要 \(t\)(门限)份合作才能解密。分散权力,增强容错。
2. 形式化定义(5 算法)
与传统加密不同,门限加密特有:
KeyGen:输出公钥 \(pk\)、验证密钥 \(vk\) 和 \(n\) 个私钥份额 \(sk_i\)。ShareDecrypt:单个服务器生成解密份额 \(\mu_i\)。ShareVerify:公开验证份额合法性(防恶意篡改)。ShareCombine:收集至少 \(t\) 个有效份额恢复明文。
3. 正确性与安全模型
- 正确性:1)诚实份额必通过验证;2)任意 \(t\) 个有效份额必能恢复明文。
- 双安全模型:
- IND-CCA 安全:抗外部选择密文攻击(敌手可勾结 \(t-1\) 人,但不可询问挑战密文份额)。
- 解密一致性:抗内部恶意干扰。敌手无法构造两组不同的有效份额却组合出两个不同的明文。
4. 典型方案:Shoup-Gennaro (2002)
- 地位:首个实现 IND-CCA 安全的门限加密方案。
- 困难假设:CDH 问题(计算 Diffie-Hellman)。
- 模型:随机谕言机模型(ROM)。
- 关键技术:利用非交互式零知识证明(NIZK) 保证
log_g u = log_{\bar{g}} \bar{u},从而确保份额的一致性(防止恶意服务器伪造解密分量)。
https://www.cnblogs.com/luminescence/p/20771550
标识加密与普通的公钥加密的区别是什么
标识加密的主要特点是系统中不需要证书,使用用户的标识如姓名、IP地址、电子邮箱地址、手机号码等能唯一标识用户的比特串作为用户公钥。
用户的私钥由密码生成中心(Key Generation Center,KGC)根据系统主密钥和用户标识计算得出。用户的公钥由用户标识唯一确定,从而不需要第三方来保证公钥的真实性。
普通的公钥加密方案的公钥为一串数字,需要证书来保证其真实性。普通的公钥加密算法由私钥生成公钥。
属性基加密方案的分类及特点
属性基加密方案分为两类,一类是密文策略属性基加密,一类是密钥策略属性基加密。
密文策略属性基加密:满足密文上的访问结构,用户正确解密。加密者决定“拥有哪些属性的用户可以解开该密文”
密钥策略属性基加密:满足密钥上的访问结构,用户正确解密。密钥分发机构决定“该用户可以解开具有哪些属性的密文”

浙公网安备 33010602011771号