版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2012年4月8日计算机安全技术与实践
数字签名,密钥管理为了承诺数字签名是密码学发展过程中的最重要的概念之一。数字签名可以提供其他方法难以实现的安全性---抗抵赖。抵抗内部攻击!数字签名DigitalSignature加密报文鉴别数字签名抵制通信双方的抵赖对方(自己)否认发送过或收到过某个报文向对方表明自己的身份数字签名消息认证基于共享秘密,不能防止抵赖只是2方合作抵抗第3方窜改/假冒共享的秘密不具有排他性质双方有同样的不分彼此地能力;因此对某个报文的存在和有效性,每一方都不能证明是自己所为,或者是和自己无关特异性要想实现类似签名的安全能力,必须使每个人使用独有的秘密数字签名:要适应的新变化数字签名
手写签名数字文件
纸版文件 数字小文件
手写字(签章)如何绑定?
同一页纸关于扫描手写字迹、鼠标手写No!手写签名的数字化改造数学支持-签名函数被签署的是文件(大文件)签名生成另外一个文件(小文件)签名过程一定有签署人的身份和某种秘密(别人不知的)参与简单易行 计算/存储签名函数报文(大)报文签名(小)身份和秘密数字签名的一般模型数字签名过程机制无中心数字签名直接使用自己的私钥加密作为签名无中心存在问题声称私钥被偷窃而抵赖。虽然可以给报文添加时间戳,并要求用户必须及时挂失私钥,但是盗用者仍可以伪造较早期的签名。引入中心可以有很多优点,同时也很多缺点。有信任中心帮助的签名优点:可以简化用户的考虑,甚至可以使用对称算法 缺点:中心的安全故障、在线瓶颈、可靠性等问题13.1aPKCS#1V2.1OutlineRSApublickey:(n,e)RSAprivatekey:(n,d) ed≡1modλ(n) 其中λ是n的(素因子-1)的LCMI2OSP(Integer-to-Octet-Stringprimitive)给定正整数x,输出字节串X=X1X2X3… x=2560X1+2561X2+2562X3+…OS2IP(Octet-String-to-Integerprimitive)输入字节串,返回整数值RSAPrimitiveRSAEP((n,e),m) c=memodnRSADP((n,d),c) m=cdmodnRSASP1((n,d),m) s=mdmodnRSAVP1((n,e),s) m=semodnRSAES-OAEPRSAES-OAEP-ENCRYPT((n,e),M,L)Option:HashofhLen-byteMGFmaskgenerationfunction(output,anoctetstring)mLen<=k-2hLen-2Loptionallabeltobeassociatedwiththemessage|L|<=2^61-1octetsforSHA-1EME-OAEPencodingEM=0x00||maskedSeed||maskedDBm=OS2IP(EM)c=RSAEP((n,e),m)C=I2OSP(c,k)RSAES-OAEP-DECRYPT(K=(n,d),C,L)EME-OAEPencodingoperationRSASSA-PSSRSASSA-PSS-SIGN(K=(n,d),M)EM=EMSA-PSS-ENCODE(M,modBits–1)m=OS2IP(EM)
s=RSASP1(K,m)S=I2OSP(s,k)RSASSA-PSS-VERIFY((n,e),M,S)RSASSA-PKCS1-v1_5RSASSA-PKCS1-V1_5-SIGN(K=(n,d),M)EM=EMSA-PKCS1-V1_5-ENCODE(M,k)m=OS2IP(EM)s=RSASP1(K,m)S=I2OSP(s,k)RSASSA-PKCS1-V1_5-VERIFY((n,e),M,S)EncodingmethodsforsignatureswithappendixEMEMSA-PSSEMSA-PKCS1-v1_5EMSA-PSSEMSA-PSS-ENCODE(M,emBits)EMSA-PSS-VERIFY(M,EM,emBits)EMSA-PKCS1-v1_5EMSA-PKCS1-v1_5-ENCODE(M,emLen)EMSA-PSSencodingoperationEMSA-PKCS1-v1_5EMSA-PKCS1-v1_5-ENCODE(M,emLen)Option:HashofhLen-byteemLenatleasttLen+11H=Hash(M)T=HashID+H(ASN.1编码)DigestInfo::=SEQUENCE{ digestAlgorithmAlgorithmIdentifier, digestOCTETSTRING}PS:emLen-tLen-3(8+B)octetswithvalue0xffEM=0x00||0x01||PS||0x00||T
对HASH的ASN.1编码
(inEMSA-PKCS1-v1_5)MD2 reflayman’sguide 3020300c06082a864886f70d020205000410||HMD5 3020300c06082a864886f70d020505000410||HSHA-1 3021300906052b0e03021a05000414||HSHA-256
3031300d060960864801650304020105000420||HSHA-384
3041300d060960864801650304020205000430||HSHA-512
3051300d060960864801650304020305000440||HZp满足离散对数问题难解,α是生成元 设P=Zp*,A=Zp*×Zp-1
K={(p,α,a,β),β=αa(modp)} 私钥是a签名时,取秘密随机数k∈Zp-1*, 定义sig(x,k)=(γ,δ),
=(αkmodp,(x-aγ)k-1mod(p-1))验证 ver(x,(γ,δ)):βγγδ=?αxmodp验证正确性证明如果(x,γ,δ)是真实签名
βγγδ=αaγαkδ=αaγ+kδ 而 δ=(x-aγ)k-1modΦ(p) 即 aγ=x-kδmodΦ(p) 故 βγγδ=αnΦ(p)+x-kδ+kδ
=αnΦ(p)+x
=αnΦ(p)αx
=αxmodp其实δ就是签名时从kδ+aγ=x解出来得验证计算实例p=467,α=2,a=127,β=132 (x,(γ,δ))=(100,(29,51))判断是否:βγγδ=αxmodp事实上
βγγδ=13229×2951=189mod467
αx=2100=189mod467而且,如果(100,(29,51))的任何改变都会导致验证失败数字签名标准DigitalSignatureStandard(DSS) DigitalSignatureAlgorithm(DSA)DSS标准-DSAFIPS186NIST19911993只能签名,不能加密概念对比 RSA:M+Eki(H(M)),ki是私钥 DSS:M+Eki(H(M),k),ki是私钥k是随机数图示RSAvs.DSS
DSA准备素数p,约512+比特;素数q,约160比特,要求是p-1的因子选择g=h^(p-1/q)modp密钥用户私钥x,x<q公钥y,y=g^xmodp签名,对报文M产生随机数k r=(g^kmodp)modqs=k-1(H(M)+xr)modq(r,s)即是签名,连同明文的M验证,测试是否v=r’,其中v=g^u1×y^u2modpmodq u1=H(M’)×s’-1modq
u2=r’×s’-1modqDSAFigure“公开”密钥?这太简单了!错!曾经使用对称密码体制时,一个非常烦人的问题是如何协商会话密钥。公钥体制中只需公开发布公钥(切保守私钥),因此通常被认为是减轻了密钥管理的负担。但当认真考虑如何发布公钥时,你会发现:
原来可靠地发布公钥其实也很难。公钥的发布体制---证书体系(CA),是PKI的核心和基础。事实上,证书体系的过于复杂阻碍了PKI的普及。密钥管理公钥的分配公钥体制用于传统密码体制的密钥分配公钥的分配方法1.临时索要公钥/自由的扩散/PGP的公钥环2.公开的目录服务(在线方式)3.公钥授权(在线中心方式)4.通过证书中心CA(离线中心方式)1.自由方式当要通信时向对方索要其公钥没有先验知识,不能确定对方的身份,不能提供鉴别特性只能用在不究身份时的加密,如萍水相逢的两人之间的防偷听聊天扩散通过可信的朋友之间的辗转交换PGP中即有此种公钥交换机制朋友并不总可信问题:相信阁下的人品,但是不相信阁下的智商2.公开目录公开的目录服务目录的维护得由信得过的机构执行每个用户在目录里有一项{身份信息,其公钥}面对面的审核和注册可以更新或废止提供网络的访问手段,可公开查询目录中心的安全负担太重,也是性能瓶颈3.公钥授权:在线中心有在线中心帮助的公钥交换A请求中心给B的公钥,带时间戳中心用私钥签署的消息,包括:原始请求和时间戳,B的公钥,A用B的公钥加密:自己的身份IDa和会话标识号N1B也如法取得A的公钥B用A的公钥加密:N1和N2A用B的公钥加密N2,以最后确认会话在线中心容易成为单点故障和性能瓶颈公钥授权:在线中心4.证书:离线中心CertificateAuthenticationCA是受信任的权威机构,有一对公钥私钥。每个用户自己产生一对公钥和私钥,并把公钥提交给CA申请证书。CA以某种可靠的方式核对申请人的身份及其公钥,并用自己的私钥“签发”证书。证书主要内容:用户公钥,持有人和签发人的信息,用途,有效期间,签名等。证书在需要通信时临时交换,并用CA的公钥验证。有了经CA签名保证的用户公钥,则可进行下一步的身份验证和交换会话密钥等。CA使用公钥传递会话密钥公钥算法太慢对称算法一般几十兆字节/秒1024位RSA解密约100多次/秒(加密快10倍以上)100*128B=10KB/s只用来传递会话密钥(假设B已经有A的公钥KeA)A发起和B的通信B产生会话密钥Ks,并用KeA加密后传给AA能用自己的私钥KdA解开他人不会知道KsMerkle方案因为B临时获取A的公钥,所以存在“中间人攻击”的问题NEED78方案(事先拥有对方公钥)14.2X.509/CAX509定义了公钥认证服务框架。Certificate证书印象PKI/X.509CAinWin2kEJBCACertificate证书印象证书是可靠发布公钥的载体公钥及其持有人信息其他信息(用途、有效期、)签发人及其签名(对上面信息)X.509分发公钥证书格式内容、格式和编码、签名鉴别协议X509中推荐的协议应用IPSec、SSL/TLS、SET、S/MIME、PGP、…RFC2459从公钥到证书审核证书格式版本序列号签名算法标识 其参数签发者名字不早于,不迟于主题名(持有人名)算法标识 其参数 公钥签发人标识(重名)持有人标识扩展签名算法 参数 签名X509v3扩展V3以可选扩展项的形式体现(扩展名字,值,是否可忽略)密钥标识符密钥用途签名、加密、密钥交换、CA等组合私钥使用期限对应的公钥一般有更长的期限以用于验证策略信息等颁发者和持有人的更多信息证书路径的约束信息证书中心:CACA权威的证书签发者接受请求、审核、(收费)、签发商业CA机构申请证书申请人产生自己的公钥(私钥)提交PKCS#10格式的申请公钥、自己的身份信息,用户自己的签名审核颁发面对面的交涉;代理RA证书发布X500目录;在线交换证书的获得等问题证书是公开的,不需保密这很好信任对证书的信任基于对中心的信任CA是分层次的以减轻负载和压力(尤其是审核)对多个中心的信任分散了风险,也引入了风险证书的自证明和应用前提:已经有CA的公钥CA公钥一般是自签名证书的形式必须可靠的获得,离线手工取得对方的证书证书是公开的,不需保密查目录;在线交换判断证书是否有效验证证书中的签名是否是CA的真实签名(只是说这个证书是有效的)公钥应用加密(PGP);鉴别(SSL)信任关系信任信任CA信任CA的签名信任CA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 雨污分流管网工程施工临时用电专项施工方案
- 雨污分流管网工程技术交底专项施工方案
- 围堰危大工程施工方案
- 售楼部蓝天白云防护施工方案
- 工程竣工验收管理制度
- 城市环卫作业调度管理方案
- 2025-2030中国猫屎咖啡豆市场运行态势及前景动态研究研究报告
- 2025-2030中国铌钽矿资源开发现状与战略价值评估报告
- 2025-2030中国钢结构桥梁建设市场现状与发展潜力研究报告
- 2025-2030中国运动恢复型家纺产品生物力学设计及运动员偏好研究
- V-Z世代养生消费调研报告-20正式版
- 花生的生长发育(花生生产技术课件)
- GB/T 713.7-2023承压设备用钢板和钢带第7部分:不锈钢和耐热钢
- 2023年06月上海华东师范大学教育学部行政管理人员招考聘用笔试历年难、易错考点试题含答案解析
- 多彩贵州,魅力贵州
- CT增强扫描的临床应用演示文稿
- 抗菌药物临床应用指导原则(2015版)
- 新教材人教版2019年高中生物课本课后问题参考答案(全集)
- 海尔集团PIP-绩效改进计划
- GB/T 4338-2006金属材料高温拉伸试验方法
- GB/T 32900-2016光伏发电站继电保护技术规范
评论
0/150
提交评论