资源描述:
《第10 讲 数字签名》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第八章数字签名《信息安全技术》8.1概述数字签名DS(DigitalSignature)──用于防伪造和抗抵赖的二进制编码序列注:实物签名的扫描件不是数字签名@8.1.1数字签名的特殊性数字签名是由需签名的消息和签名者的私钥按特定规则计算而产生的数字签名基于两条基本假设:私钥的安全性──只有私钥的合法拥有者才能获得该私钥产生途径的唯一性──数字签名只能由签名者的私钥产生数字签名的性质依赖性──数字签名必需依赖于所签名的消息(确保无法将对消息甲的签名挪到消息乙上去)唯一性──只有签名者才能生成该签名(确保签名者无法抵赖)时效性──具有时间特征
2、(确保签名不会被非法重用)8.1.2对数字签名的要求验证者能够核实签名者对消息的签名签名者事后不能抵赖对消息的签名验证者不能伪造对消息的签名必须能够认证签名时刻签名必须能够被第三方验证,以解决争议签名必须依赖于被签名消息签名必须使用某些对签名者是唯一的信息签名必须相对容易生成必须相对容易识别和验证该签名伪造该数字签名在计算复杂性意义上是不可行性的保存一个数字签名副本是可行的8.1.3数字签名方案描述签名方案设:P是消息的有限集合(明文空间),S是签名的有限集合(签名空间),K是密钥的有限集合(密钥空间),则:签名算法是一个映射:验证算法也是
3、一个映射:五元组{P,S,K,sig,ver}称为一个签名方案用对称密码体制实现“准”数字签名用加密实现签名用解密实现验证也可用重新加密实现验证此方案的前提是双方有共享密钥k,并且都知道消息此方案只能用于抗击第三者对消息进行伪造,并不能防止通信双方之间的欺骗或抵赖(双方均可产生对方的签名)因不满足唯一性故并非严格意义上的数字签名用非对称密码体制实现数字签名用私钥加密实现签名用公钥解密实现验证属于严格意义上的数字签名本质上是公钥加密体制的逆用数字签名的种类直接数字签名(通信双方为签名方与验证方)需仲裁的数字签名(通信三方为签名方、仲裁者与接受
4、方)8.1.4直接数字签名特点:仅涉及通信双方,无需公证方有效性依赖于私钥的安全性简单数字签名──直接对消息进行签名A→B:M+EKRa[M]兼有信息完整性认证的作用任何人可以验证签名签名过程会因消息长而费时对消息本身没有保密功能仅需要签名者的“公钥-私钥”对过程如下:消息M加密EM私钥KR合并解密DMEKR(M)公钥KUM’比较签名验证带保密功能的数字签名──签名后再加密A→B:EK[M+EKRa[M]]兼有信息完整性认证的作用签名过程会因消息长而更费时对消息本身有保密功能除了需要签名者的“公钥-私钥”外,双方还需有共享密钥过程如下(图略
5、)快速的数字签名──仅对消息的散列值进行签名运算A→B:M+EKRa[H(M)]兼有信息完整性认证的作用任何人可以验证签名签名过程不会因消息长而费时对消息本身无保密功能仅需要签名者的“公钥-私钥”对常用RSA算法来实现过程如下消息M加密EH(M)私钥KR合并解密DMEKR(H(M))公钥KUH(M)比较散列H散列H签名验证全能的数字签名──对消息的散列值进行签名,再将其与消息一起加密A→B:EK[M+EKRa[H(M)]]兼有信息完整性认证的作用签名过程会因消息长而费时对消息本身有保密功能除了需要签名者的“公钥-私钥”外,双方还需有共享密钥
6、过程如下(图略)选择充分大的素数p,使得在Zp={0,1,2,…,p-1}上求离散对数是困难的选择Zp*的某个本原元g针对某用户任意选择x∈Zp*={1,2,…,p-1},计算y=gx(modp),以形成公钥(p,g,y)和私钥x,记Key=(p,g,x,y)补充:ElGamal数字签名体制签名──SigKey(M,k)=(r,s):签名方先算出消息明文M的散列值H(M)∈Zp*,然后随机选取与(p-1)互素的正整数k,计算r=gk(modp)和s=(H(M)-xr)k-1(mod(p-1)),从而得到签名(r,s)验证──VerKey(M
7、,r,s)=(rsyr==gH(M)(modp))?True:False:验证方由接收到的M重算散列值H(M),然后与同时收到的签名(r,s)进行验证计算,如果rsyr=gH(M)(modp),则认定签名有效,否则认定无效例子:设素数p=11,则Z11={0,1,2,…,10},Z11*={1,2,…,10},可以验证g=7是Z11*的本原元:71=7、72=5、73=2、74=3、75=10、76=4、77=6、78=9、79=8、710=1;针对某用户选择x=3∈Z11*,计算得y=gx=73=2(mod11),故形成公钥(p,g,y)
8、=(11,7,2)和私钥x=3;假设H(M)=6∈Z11*,随机选取与10互素的正整数k=7,由签名变换计算得r=gk=77=6(mod11),s=(H(M)-xr)k-1(mo