数字签名与鉴别协议.ppt

上传人:za****8 文档编号:6851778 上传时间:2020-03-06 格式:PPT 页数:44 大小:280.51KB
返回 下载 相关 举报
数字签名与鉴别协议.ppt_第1页
第1页 / 共44页
数字签名与鉴别协议.ppt_第2页
第2页 / 共44页
数字签名与鉴别协议.ppt_第3页
第3页 / 共44页
点击查看更多>>
资源描述
第10章数字签名和鉴别协议 数字签名鉴别协议数字签名标准 DSS 1 数字签名 报文鉴别示例 1 数字签名 报文鉴别示例的安全性分析 可用来保护通信双方免受任何第三方的攻击 无法用来防止通信双方的互相攻击 无法解决通信双方可能存在多种形式的争执 原因 接收方可能伪造并声称它来自发送方 接收方只要简单地生成一个报文 并附加使用由发送方和接收方所共享的密钥生成的鉴别码即可 发送方可以否认发送过该报文 因为接收方伪造一个报文是可能的 无法证明发送方发送过该报文这一事实 1 数字签名 解决方案 由于发方和收方之间存在欺骗或抵赖 因此除了采用防止第三方攻击的鉴别之外还需要采用防止当事双方相互攻击的手段 最吸引人的解决方案是笔迹签名的模拟 数字签名 数字签名必须拥有的基本性质 必须能证实作者签名和签名的日期和时间 在签名时必须能对内容进行鉴别 签名必须能被第三方证实以便解决争端 1 数字签名 密码学上对数字签名的需求 签名必须是依赖于要签名报文的比特模式 签名必须使用对发送者来说是惟一的信息 以防伪造和抵赖 数字签名的产生必须相对简单 数字签名的识别和证实必须相对简单 伪造一个数字签名在计算上是不可行的 无论是通过对已有的数字签名来构造新报文 还是对给定的报文构造一个虚假的数字签名 保留一个数字签名的备份在存储上是现实可行的 数字签名的方法 直接的需仲裁的 1 数字签名 直接数字签名方案实施涉及通信方 发方和收方密码方案 非对称密码学使用前提 收方知道发方的公开密钥签名实施 可以通过使用发方的私有密钥对整个报文进行加密 或通过使用发方的私有密钥对报文的散列码进行加密来形成 保密方案 可通过对整个报文和签名进行更进一步的加密来实现 可采用收方的公用密钥 公开加密 或采用双方共享的密钥 常规加密 来进行加密 实施关键收方应假定发方对私有密钥的完全控制 1 数字签名 直接数字签名实施示例 1 数字签名 直接数字签名方案弱点方案的有效性依赖于发方私有密钥的安全性 弱点分析发方若想否认发送过某个报文 则可以声称该私有密钥丢失或被盗用 且伪造了他 她 的签名 X的私有密钥真的可能在时间T被盗 获得该密钥的人便能发送带有X的签名报文并附上小于等于T的时间戳 1 数字签名 需仲裁的数字签名方案实施每个从X发往收方Y的签名报文首先被送给仲裁者A 仲裁者A对该报文和它的签名进行一系列的测试以检验它的出处和内容 然后对报文注明日期 附上一个已经经过仲裁证实属实的说明后发给Y A的存在解决了直接签名方案所面临的问题 X可能否认发送过该报文 实施关键所有通信方必须充分信任仲裁机构 1 数字签名 需仲裁的数字签名方案示例 a 常规加密 仲裁能看到报文内容X A M EKxa IDx H M A Y EKay IDx M EKxa IDx H M T b 常规加密 仲裁不能看到报文内容X A IDX EKxy M EKxa IDX H EKxy M A Y EKay IDX EKxy M EKxa IDX H EKxy M T c 公开密钥加密 仲裁不能看到报文内容X A IDX EKRx IDX EKUy EKRx M A Y EKRa IDX EKUy EKRx M T 1 数字签名 需仲裁的数字签名方案示例讨论方案 a 和 b 存在的问题X必须确信A不会泄露Kxa 也不会产生虚假的签名 仲裁能和收方结成联盟来伪造发方的签名 Y必须确信A只有在散列码正确且确是X签名的情况下才发送 仲裁能和发方结成联盟来否认一个签名报文 双方必须确信A能公平地解决争端 仲裁作用 方案 c 的优点通信前各方没有共享任何信息 可防止结盟欺骗的发生 假定KRa是安全的 即使KRx已不安全 日期不对的报文不会被发送 从X发给Y的报文内容对A和其他任何人都是保密的 2 鉴别协议 主要涉及内容在报文鉴别的基础上 进行更深层次的通信对象和通信内容有效性的鉴别 相互鉴别单向鉴别 2 鉴别协议 相互鉴别相互鉴别的必要性通信对象的确认 通信各方相互证实对方的身份信息交换的机密性 防止信息的篡改和泄漏信息交换的时效性 防止报文重放的威胁报文重放威胁的表现最好情况 一个成功的重放会通过为通信方提供用似是而非的报文而打乱正常的操作 最差情况 可能允许对手获取会话密钥或成功地假扮为通信的另一方 2 鉴别协议 相互鉴别重放攻击的常用方法示例简单重放 对手简单地拷贝一个报文并在后来重放 能被日志记录的重复 对手可以在有效的时间窗口内重放有时间戳的报文 能被日志记录的重复 对手可以在有效的时间窗口内重放有时间戳的报文 没有修改的退回重放 这是一种报文返回发方的重放 如果使用常规加密 这种攻击是可能的 并且发方不容易依据内容识别发送过的报文与收到的报文间的不同 2 鉴别协议 相互鉴别对付重放攻击的常用方法为每个用来鉴别交换的报文分配一个序号 新的报文只有在它的序号满足一种正确的次序时才被接收 这种方法的难点在于它需要通信各方记录已处理的最近一个序号 因为有这种负担 序号一般不用于鉴别和密钥交换 时间戳 A方接收一个报文 只有当报文包含的时间戳 经A判断后 与A了解的当前时间足够接近 才认为报文是新的 这种方法的难点在于它需要通信各方的时钟保持同步 首先 需要某种协议来维持不同处理机时钟的同步 这个协议还必须是容错的和安全的 即要能对付网络的故障和恶意的攻击 其次 如果暂时失去同步会导致一方的时钟机制出错 那攻击成功的机率将大为增加 最后 因为网络时延的可变性和不可预知性 很难期望分布时钟能保持精确的同步 因此 任何基于时间戳的过程必须申请足够大的时间窗口以适应网络时延 同时又要使时间窗口足够小以使攻击成功的机率最小 盘问 响应 若A方期望从B接收一个新近的报文 就先要向B发送一个现时报文 nonce 即盘问 然后要求随后从B接收的报文 即响应 包含正确的现时值 这种方法不大适合面向无连接的应用 因为在任何无连接传输之前它需要有握手的负担 这将在很大程度上丢失无连接传输的主要特征 2 鉴别协议 相互鉴别相互鉴别的常规加密原始方案示意图 2 鉴别协议 相互鉴别相互鉴别的常规加密原始方案过程描述A KDC IDA IDB N1KDC A EKa Ks IDB N1 EKb Ks IDA A B EKb Ks IDA B A EKs N2 A B EKs f N2 相互鉴别的常规加密原始方案可能存在的攻击模式简单地对第3步进行观察 记录并重放 加重通信负担 假定X是一个对手 已经获得了一个旧的会话密钥 则X可冒充A 使用旧密钥通过简单的重放第3步就可以欺骗B 除非B一直牢记所有与A的会话密钥 否则B无法确定这是一个重放 2 鉴别协议 相互鉴别相互鉴别的常规加密原始方案改进1过程描述A KDC IDA IDBKDC A EKa Ks IDB T EKb Ks IDA T A B EKb Ks IDA T B A EKs N1 A B EKs f N1 相互鉴别的常规加密原始方案改进1的防重发机制增加时间戳T 它能向A和B确保该会话密钥是刚产生的 这样 A和B双方都知道这个密钥分配是一个最新的交换 A和B通过验证下式来证实时效性 Clock T t1 t2其中 t1是估计的KDC时钟与本地时钟 A或B 的正常偏差 t2是预期的网络时延 每个结点可参照某些标准参考源设置自己的时钟 时间戳T是用主密钥加密的 即使对手获得旧的会话密钥 由于步骤3的重放将会被B检测出不及时而不会成功 2 鉴别协议 相互鉴别相互鉴别的常规加密原始方案改进1存在的危险分布时钟由于阴谋破坏或同步时钟 同步机制的故障变得不同步 当发方的时钟快于预想的收方时钟时 这个问题就会发生 在这种情况下 对手可截获发自A的报文 当报文中的时间戳变成收方的当前时间时就重放该报文 这种重放可导致不可预料的结果 这样的攻击被称为抑制 重放攻击 相互鉴别的常规加密原始方案改进1的可能改进加强通信各方定期与KDC时钟的校准 避免时钟同步的需求 依赖使用现时的握手 依然会带来其它问题 其原因是因为收方选择的现时对发送方是不可预测的 2 鉴别协议 相互鉴别相互鉴别的常规加密改进方案A B IDA NaB KDC IDB Nb EKb IDA Na Tb KDC A EKa IDB Na Ks Tb EKb IDA Ks Tb NbA B EKb IDA Ks Tb EKs Nb 相互鉴别的常规加密改进方案的优点信任状的过期时间Tb是相对于B的时钟 这样 这个时间戳不需要同步时钟 因为B只检查自身产生的时间戳 A和B分别检查各自生成的现时Na和Nb 确保不是重放 信任状的过期时间Tb的使用使得在有效时间内A又想与B建立新的会话时 双方不必重复多次与鉴别服务器联系的必要 2 鉴别协议 相互鉴别相互鉴别的常规加密改进方案建立新会话的方案A B EKb IDA Ks Tb N aB A N b EKa N a A B EKa N b 建立新会话的方案的安全保障信任状的过期时间Tb验证报文中的票据没有过期 新产生的现时N a和N b将向每方保证这不是重放攻击 2 鉴别协议 相互鉴别相互鉴别的公开密钥加密原始方案A AS IDA IDBAS A EKRas IDA KUa T EKRas IDB KUb T A B EKRas IDA KUa T EKRas IDB KUb T EKUb EKRa Ks T 相互鉴别的公开密钥加密原始方案特点中心系统被称为鉴别服务器 AS 因为实际上它并不负责密钥的分配 AS实际上提供公开密钥证书 会话密钥的选择和加密由A完成 因此没有AS泄漏密钥的危险 时间戳防止危及密钥安全的重放攻击 但需要时钟的同步 2 鉴别协议 相互鉴别相互鉴别的公开密钥加密改进方案1A KDC IDA IDBKDC A EKRauth IDB KUb A B EKUb Na IDA B KDC IDB IDA EKUauth Na KDC B EKRauth IDA KUa EKUb EKRauth Na Ks IDB B A EKUa EKRauth Na Ks IDB Nb A B EKs Nb 相互鉴别的公开密钥加密改进方案1特点使用现时 不需要时钟的同步 会话密钥由KDC代表B产生 存在安全漏洞 步骤5 2 鉴别协议 相互鉴别相互鉴别的公开密钥加密改进方案1的改进A KDC IDA IDBKDC A EKRauth IDB KUb A B EKUb Na IDA B KDC IDB IDA EKUauth Na KDC B EKRauth IDA KUa EKUb EKRauth Na Ks IDA IDB B A EKUa EKRauth Na Ks IDA IDB Nb A B EKs Nb 2 鉴别协议 单向鉴别单向鉴别的必要性通信对象的确认 通信的接收方证实发送方的身份信息交换的机密性 防止信息的篡改和泄漏 2 鉴别协议 单向鉴别单向鉴别的常规加密方案过程描述A KDC IDA IDB N1KDC A EKa Ks IDB N1 EKb Ks IDA A B EKb Ks IDA EKs M 单向鉴别的常规加密方案可能存在的攻击模式无法防止重放攻击 由于潜在的时延 即使采用时间戳 其作用也有限 假定X是一个对手 已经获得了一个旧的会话密钥及相应的EKb Ks IDA 则X就可以简单地进行信息伪造 2 鉴别协议 单向鉴别单向鉴别的公开密钥加密方案示意图 2 鉴别协议 单向鉴别单向鉴别的公开密钥加密方案描述关心机密性A B EKUb Ks EKs M 方案优点这种方法比简单地用B的公开密钥对整个报文进行加密的方法高效得多 方案缺点无法确认信息M来自于A 2 鉴别协议 单向鉴别单向鉴别的公开密钥加密方案描述关心鉴别A B M EKRa H M 方案优点保证A随后无法否认发送过该报文 方案缺点1 难以防止用户X对信息M的剽窃 X B M EKRx H M 2 要求B知道A的公开密钥 并确信它并未过时 2 鉴别协议 单向鉴别单向鉴别的公开密钥加密方案描述鉴别和加密A B EKUb M EKRa H M A B EKUb Ks EKs M EKRa H M 方案优点保证A随后无法否认发送过该报文 保证信息的安全性 方案缺点要求B知道A的公开密钥 并确信它并未过时 2 鉴别协议 单向鉴别单向鉴别的基于数字证书的公开密钥加密方案描述鉴别A B M EKRa H M EKRas T IDA KUa 方案优点通过鉴别服务器的数字签名确认发方的公开密钥并验证它是可信的 方案缺点难以防止用户X对信息M的剽窃 X B M EKRx H M EKRas T IDX KUx 3 数字签名标准 DSS 算法由来美国国家标准技术研究所 NIST 已经公布了联邦信息处理标准FIPSPUB86 即所谓的数字签名标准 DSS DSS利用了安全散列算法 SHA 并提出了一种新的数字签名技术 即数字签名算法 DSS最早发表于1991年 并根据公众对该体制安全性担心的反应在1993年进行了修改 1996年又进行了更进一步的小修改 算法特征DSS使用一个算法 该算法设计用来提供惟一的数字签名函数 不像RSA 它不能用作加密或密钥交换 然而 它是一种公开密钥技术 3 数字签名标准 DSS DSS签名算法与RSA签名算法使用的差异除了采用散列函数和私有密钥外 还需要下述2个参数 每个报文需要一个随机数k全局公开密钥KUG 2 签名值为两个数r和s 3 数字签名标准 DSS 密钥选择全局公开密钥选定选择一个160bit的素数q 选择一个素数p 要求长度在512到1024bit之间且 p l 能被q整除 选择g等于h p 1 qmodp 其中h是大于1小于 p l 的整数 要求g大于l 私有密钥选定1到 p l 之间的随机数或伪随机数 公开密钥计算y gxmodp每个报文的密数k选择0 k q的随机或伪随机整数 3 数字签名标准 DSS 算法描述签名算法r gkmodp modqs k 1 H M xr modq验证算法w s 1modqu1 H M w modqu2 r wmodqv gu1yu2 modp modq验证 v r 其中 M s r 接收到的M s和r版本 3 数字签名标准 DSS 算法描述等价框图签名算法示意图验证算法示意图 3 数字签名标准 DSS 数字签名算法的证明对任何整数t 若g h p 1 qmodp 则gtmodp gtmodqmodp证明 gnqmodp h p 1 qmodp nqmodp h p 1 q nqmodpmodp h p 1 nmodpmodp h p 1 modp nmodp因此 对非负整数n和z 有 gnq zmodp gnqgz modp gnqmodp gzmodp modp gzmodp由于任意非负整数t可惟一表示为t nq z 其中n和z是非负整数 且0 z q 因此z tmodq 因而结论成立 3 数字签名标准 DSS 数字签名算法的证明对非负的整数a和b g amodq bmodq modp g a b modqmodp证明 由于gtmodp gtmodqmodp 因此g amodq bmodq modp g amodq bmodq modqmodp g a b modqmodpy nw modqmodp g xnw modqmodp证明 由于y gxmodp 那么 y nw modqmodp gxmodp nw modqmodp gx nw modq modp g x nw modq modqmodp g xnw modqmodp 3 数字签名标准 DSS 数字签名算法的证明 H M xr w modq k证明 由于s k 1 H M xr modq 此外 由于q是素数 任何小于q的非负整数存在一个逆元 因此 kk 1 modq l ks modq k k 1 H M xr modq modq k k 1 H M xr modq k k 1 H M xr modq kk 1 modq H M xr modq H M xr modq根据定义 w s 1modq ws modq 1 因此 H M xr w modq H M xr modq wmodq modq ks modq wmodq modq ksw modq kmodq ws modq modq kmodq k 3 数字签名标准 DSS 数字签名算法的证明v r证明 v gu1yu2 modp modq g H M w modqy nw modq modp modq g H M w modqg xnw modq modp modq g H M w modq xnw modq modp modq g H M w xnw modq modp modq g H M xn w modq modp modq gkmodp modq r 3 数字签名标准 DSS 算法特点r的值不依赖于报文 r是k和三个全局公开密钥分量的函数 签名时要计算 gkmodp modq 因为这个值不依赖于要签名的报文 可预先计算出来 因此 用户可以预先计算出许多r值以备用于文档的签名 另一个需要完成的工作只是确定逆元k 1 这个值也可预先算出 算法安全性公开密钥由私有密钥经过y gxmodp计算得出 给定x计算y是很简单的 然而 给定公开密钥y 要确定x 即y以g为底数模p的离散对数 据信这在计算上是安全的 根据计算离散对数的难度 对手通过r恢复出k 或通过s恢复出x都是难以办到的 3 数字签名标准 DSS 对DSA算法的反对评论DSA不能用于加密和密钥分发DSA由NSA设计 算法中可能会有陷门DSA比RSA慢RSA是事实上的标准DSA中的选择处理不公开 这给分析提供了充足的时间DSA可能侵犯其它专利密钥太短 3 数字签名标准 DSS DSA素数生成NIST推荐了一种生成二个素数p和q的方法 用q除p 1 其中素数p为512至1024比特并是64比特的倍数 素数q为160比特 令L 1 n 160 b 其中L为p的长度 n和b为二个数 选择一个至少160比特的任意序列 称之为S 设g为S的比特数计算U SHA S XORSHA S 1 mod2g 把U的最高位和最低位设置为1而得到q检验q是否为素数如果q不是素数 回到1设C 0和N 2对于k 0 1 n 设Vk SHA S N k mod2g 设W V0 V1 2160 Vn 1 2 n 1 16 Vnmod2b 2n 160X W 2L 1注意X为2L比特的数设p X Xmod2q 1 注意p模2q同余于1如果p 2L 1 转13检验p是否为素数如果p为素数 转15令C C 1和N N 1如果C 4096 则转1 否则转7保存用于生成q和q的S值和C值 习题 如何将相互鉴别的公开密钥加密改进方案1的改进中的7个步骤改为5个步骤 这5个步骤的顺序是 A B B KDC KDC B B A A B 说明在每一步中传递的报文 提示 在这个协议中最后的报文内容与原协议的相同 用DSS 因为每个签名将产生不同的k值 因此即使分别在不同的场合对相同的报文签名 产生的签名也不相同 RSA签名是不能这样的 这样的不同有什么实际意义
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!