代密码学第十一讲:基于身份的密码体制
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
30
一轮通信的3方密钥协商协议
多方密钥协商 1轮3方密钥协商: A: 发送 aQ,计算e(bQ,cQ)^a; B: 发送 bQ,计算e(aQ,cQ)^b; C: 发送 cQ,计算e(aQ,bQ)^c; 共享密钥:e(Q,Q)^{abc}
猜想:若存在n次线性对,则存在1轮n方密钥协商
31
IBC的应用
16
Boneh-Franklin IBE Scheme
效率 加密: 1 scalar multiplication in G1 1 map-to-point hash operation, 1 pairing operation, 1 group exponent in G2, 1 hash (H2) operation, and 1 XOR operation.
29
K= e(QA,QB)s =e(g,g)sAB
M
Scott IB Key Agreement
效率(单个用户的计算复杂度) 1 pairing operation, 1 map-to-point hash function (H), 1 group addition in G1 2 group exponentiations in G2. 安全性:基于BDHP的困难性.
Stanford 和Shamus图书馆开发使用 C/C++. 似乎还没有Java implementation of IBE
32
IBC的应用
现实应用中,Voltage Security 开发了包含 IBE的 email 系统,它为Outlook, pine, hotmail, and Yahoo提供插件. Hewlett Packard Lab (布里斯托尔Bristol,UK) 的研究员开发健康保健信息系统使用了IBE 系统.
24
Scott IB Key Agreement
密钥协商: 1. A 选取一个随机数 a < r, 计算 TA = e(sA,QB)^a; 把 TA发送给 B. 2. B选取一个随机数 b < r,计算 TB = e(sB,QA)^b; 把 TB发送给 A. 3. A 计算 KAB = TB^a,同样地,B计算KBA = TA^b 如果A和B正确执行协议,他们将计算出共享的密钥: KAB = KBA = e(QA,QB)^{sab}
输入: 安全参数 t 输出: 系统参数params和主密钥master-key
提取私钥( Extract )
输入: 系统参数params和主密钥master-key 用户身份 ID∈{0,1}* 输出: 用户私钥dID
18
基于身份的签名体制
签名( Sign )
输入: 系统参数params,消息M∈M, 签名者的私钥dID. 输出: 签名σ∈S 输入: 系统参数params, 签名σ∈S ,签名者公 钥(身份)ID∈{0,1}*,消息M∈M. 输出: “Accept” 或者 “Reject”.
23
密钥协商( Key Agreement )
Scott IB Key Agreement
(基于Weil对 和Tate 对) 初始化: PKG 选取一个满足 p = 3 mod 4且 p + 1=c*r, 其中c, r亦为素数;选取一个将0-1数据映射到椭 圆曲线上点的hash函数H : {0, 1}∗ → G1.;选取 一个随机数 s ∈ Fq 作为主密钥. params: <G1,G2, e, P, q,H>; master-key: s 提取私钥: 设用户 A 的身份是 IDA, PKG 计算他的私钥 QA = H(IDA).;SA = sQA.
是否存在 中间人攻击
25
Scott IB Key Agreement
A e(sA,QB)a B e(sB,QA)b
e(QA,QB)abs
e(QA,QB)abs
26
Scott IB Key Agreement
A e(QA,QB)ma e(sA,QB)a B
e(sB,QA)b
e(QA,QB)m
e(QA,QB)asm
11
解密
双线性映射
e : G1× G1 → G2
G1 和 G2 是阶为p的循环群
任给 x, y ∈ G1 和任意整数 a, b ∈ Zp e(ax,by) = e(x,y)ab
双线性映射
非退化性(Non-Degenerate)
存在 x,y ∈ G1 使得 e(x,y) ≠ 1G2
Scott IBS方案
IBC的应用 公开问题
5
基于身份的密码体制
IBC是一种非对称密码体系,与以往公钥密 码系统的不同在于任意的字符串可以作为用 户的公钥,例如每个人的身份标识,email 地址,电话号码等。 不需要CA系统将用户的身份和用户的公钥 绑定。
6
基于身份的密码体制
使用公钥加密邮件 “alice@hotmail.com”
安全性假设: BDHP 是困难的
13
Boneh-Franklin IBE Scheme
初始化 (t)
用 t 生成一个素数 q 生成阶为q的循环群 G1, G2, 及一个双线性映射e: G1×G1 → G2 任意选取一个生成元 g∈G1 选取一个随机数 s∈Zq* 令 P= sg 选取两个密码学hash函数: H1:{0,1}* →G1* 和 H2:G2 → {0,1}n
9
基于身份的加密体制
初始化
输入: 安全参数 t 输出: 系统参数params和主密钥master-key
提取私钥
输入: 系统参数params和主密钥master-key 用户身份 ID∈{0,1}* 输出: 用户私钥dID
10
基于身份的加密体制
加密
输入: 系统参数params,明文M∈M, 明文接收者公钥(身份)ID∈{0,1}*, 输出: 密文C 输入: 系统参数params,密文C ∈C ,接收者私 钥dID, 输出: 明文M
33
IBC的应用
IEEE P1363.3的基于标识的密码技术工作组正在 进行相关算法的标准化工作 。 ISO/IEC已经标准化了两个基于身份的签名算法。 2007年,国家密码局组织了国家标识密码体系IBC 标准规范( Identity-Based Cryptograph)的编写和 评审工作。由五位院士和来自党政军、科研院所 的密码专家组成了评审组,对该标准规范在安全 性、可靠性、实用性和创新性等方面进行了多次 严格审查, 2007年12月16日国家IBC标准正式通过 了评审。
8
基于身份的加密体制
1984年以色列科学家Shamir提出了基于身份的密 码系统的概念(IBC)。 2001年,D. Boneh和M. Franklin , R. Sakai, K. Ohgishi 和 M. Kasahara利用椭圆曲线上的双线性 对设计了基于身份的加密算法。 2001年C. Cocks利用平方剩余难题设计了基于身 份的加密算法。 D. Boneh和M. Franklin提出的IBC (BF-IBC)的安全 性可以证明并且有较好的效率,所以引起了极大 的反响。
20
Shamir IBS Scheme
签名: A 用私钥 g 签署消息 m: 1. 选取随机整数 r,计算t = r^e mod n 2. 计算s = g*r^h(t,m) mod n Signature: σ = <s, t>∈ Zn × Zn. 验证: 验证者收到签名 σ = <s’, t’> ,消息m’和签名者 的公钥(身份ID),验证下式是否成立 s’^e= ID*t’ ^h(t’,m’) mod n.
可计算性(Computable)
对于任意给定的 x,y ∈ G1,计算 e(x,y)是容易的
12
安全性假设
Bilinear Diffie-Hellman 问题(BDHP) 阶为q的循环群G1, G2, 群上的双线性映射e
给定G1上的一个生成元 g 和其上的任意三个元 素 ag, bg, cg ∈ G1 ,其中 a, b, c ∈ Zp, 计算 e(g,g)abc
是否可以像PKI系统, 由用户自己生成私钥? 基于IBC的安全电子邮件系统
CA/PKG
master-key
7
基于身份的密码体制
私钥生成(PKG) 系统的PKG中心拥有一对主密钥(master key),它公布主密钥中的公钥,自己保存 私钥; PKG中心输入自己的私钥和用户的公钥,得到 用户的公钥,并安全传回给用户; 用户输入这个私钥和PKG中心的公钥,检查收 到的私钥是否正确。
《现代密码学》第十一章
基于身份的密码体制
1
精品课程网站测试
http://study.nesdu.com 用户名:student1,…,student9 密码111111
2
作业
5月31日之前,作业提交 作业提交名单查询 6月10日之前,作业补交,之后提交作业不 再记录
3
上节主要内容
效率 解密: 1 pairing operation, 1 hash operation (H2) 1 XOR operation.
安全性假设:BDHP困难: C,P,H(ID),求(g,g)^rst,其中 C=rg,P=sg,H(ID)=tg,
17
基于身份的签名体制
初始化(Setup)
19
验证( Verify )
Shamir IBS Scheme
Shamir提出了一个采用RSA算法的IBS算法。 初始化: 1. 选取两个大素数p,q,计算它们的乘积n;选 取与Φ(n)互素的整数 e ; 选取一个单向函数h. 参数: n, e, h; 主密钥: n 的因子. 提取私钥: 给定用户的 ID, PKG计算用户的私钥 g ,满足 g^e =ID mod n.
22
基于身份的密钥协商体制
初始化(Setup)
输入: 安全参数 t 输出: 系统参数params和主密钥master-key
提取私钥( Extract )
输入: 系统参数params和主密钥master-key 用户身份 ID∈{0,1}* 输出: 用户私钥dID 输入: 系统参数params和用户私钥dID 输出:会话密钥K
21
Shamir IBS Scheme
效率 签名和验证分别需要 2 integer exponentiations, 1 integer multiplication and 1 hash operation. 安全性:分解因子问题困难Integer Factorization Problem (IFP).
Boneh和Franklin的团队的努力, IBE 被应用 于 Debian GNU/Linux.
source code is available at http : //crypto.stanford.edu/ibe/download.html
Shamus Software 也开发了包含 BF-IBE 的 密码文库,称为 “MIRACL”
身份鉴别的定义 口令认证协议 挑战应答协议 对身份识别协议的攻击和对策
4
本讲主要内容
基于身份的密码系统(IBC)的提出 基于身份的加密体制(IBE)的定义
Boneh-Franklin IBE方案 Shamir IBS方案
基于身份的签名体制(IBS)的定义
基于身份的密钥协商(IBKA)的定义
加密 (M)
选取随机数 r∈Zq* R=rg, M⊕H2(e(H1(ID),P)r)
解密(C=(U, V))
V ⊕ H2(e(dID,U))
正确性证明 H2(e(dID,U)) =H2(e(sH1(ID), rg) )= H2(e(H1(ID), g)sr =H2(e(H1(ID), sg)r )= H2(e(H1(ID),P)r)
M
27
Scott IB Key Agreement
A e(g,QB)sma e(sA,QB)a B
e(sB,QA)b
e(பைடு நூலகம்,QB)m
M发送其它值 是否可行?
e(QA,QB)asm
M
28
Scott IB Key Agreement
A QA,P sA 求e(sA,QB) QA,QB,P B QB,P sB 求e(sB,QA) 求e(QA,QB)s
14
Boneh-Franklin IBE Scheme
初始化(t)
M = {0,1}n C = G1* × {0,1}n
params = q, G1, G2, e, n, g, P, H1, H2 master-key = s
私钥生成(ID)
dID=s H1(ID)
15
Boneh-Franklin IBE Scheme