Diffie-Hellman算法

发布时间:2021-10-23 23:41:59

Diffie-Hellman算法是Whitefield Diffie和Martin Hellman在1976年公布的一种秘钥交换算法,它是一种建立秘钥的方法,而不是加密方法,所以秘钥必须和其他一种加密算法结合使用。这种秘钥交换技术的目的在于使两个用户安全的交换一个秘钥一遍后面的报文加密。


Diffie-Hellman密钥交换算法的有效性依赖于计算离散对数的难度。


简言之,可以如下定义离散对数:


首先定义一个素数p的原根a,a的各次幂从1 到p-1产生所有整数根,也就是说,如果a是素数p的一个原根,那么数值


? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?a mod p, a2 mod p,…,ap-1 mod p


是各不相同的整数,并且以某种排列方式组成了从1到p-1的所有整数。


对于一个整数b和素数p的一个原根a,可以找到惟一的指数i,使得


? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?b=a^i?mod p, 0<=i<=p-1


指数i称为b的以a为基数的模p的离散对数或者指数。该值被记为inda ,p(b)。


基于此背景知识,可以定义Diffie-Hellman密钥交换算法。该算法描述如下:


?



1、有两个全局公开的参数,一个素数q和一个整数a,a是q的一个原根。


2、假设用户A和B希望交换一个密钥,


用户A选择一个作为私有密钥的随机数XA

类似地,用户B选择一个私有的随机数XB

3、用户A产生共享秘密密钥的计算方式是K = (YB)^XA mod q。


同样,用户B产生共享秘密密钥的计算是K = (YA)^XB mod q。


这两个计算产生相同的结果:


??????????????K = (YB)XA modq


????????????????= (aXB modq)XA mod q


????????????????= (aXB)XA modq??????????????????(根据取模运算规则得到)


????????????????= aXBXA modq


????????????????= (aXA)XB modq


????????????????= (aXA modq)XB mod q


????????????????= (YA)XB modq


所以 (YB)XA modq = K =(YA)XB modq


因此相当于双方已经交换了一个相同的秘密密钥。


4、因为XA和XB是保密的,一个敌对方可以利用的参数只有q、a、YA和YB。因而敌对方被迫取离散对数来确定密钥。例如,要获取用户B的秘密密钥,敌对方必须先计算


???????????????XB = inda ,q(YB)


然后再使用用户B采用的同样方法计算其秘密密钥K。


Diffie-Hellman密钥交换算法的安全性依赖于这样一个事实:虽然计算以一个素数为模的指数相对容易,但计算离散对数却很困难。对于大的素数,计算出离散对数几乎是不可能的。

相关文档

  • 企业微信小程序 开发与调试步骤
  • 百度阿里腾讯最常考的Java面试题精选9--9.为什么重写equals时必须重写hashcode方法?
  • 哺乳期吃蜂蜜需要注意什么问题?
  • IDEA 导入web 项目并运行(非maven)
  • swagger2隐藏在API文档显示某些参数
  • html5 canvas 不兼容safari浏览器_面试押题(1) -- HTML5
  • 切开的西瓜怎么保存?
  • 简易版万能求职信模板
  • C#实现Windows 服务的制作安装和删除
  • 家族祭祖讲话稿
  • 北师大小学四年级语文下册教案
  • 隶书书法作品图片_隶书书法作品欣赏
  • OSPF+ACL大型综合实验
  • 黑枸杞为什么是蓝色?花青素的原因
  • 我家的“军人”
  • 校园***500字初一作文
  • 处女座男生的专一度
  • 好听超拽的经典句子
  • 有趣逗女孩玩的脑筋急转弯题目
  • 查找学习方面的谚语
  • 统计工作自查报告
  • springcloud集成Oauth2权限项目-token存入redis(九)
  • CSS动画+3d实现立方体旋转
  • 3年级小摄影师续写
  • 怎么让婴儿把痰咳出来
  • tomcat的协议http和nginx反向代理的协议https不一致解决方案
  • 向妈妈写检讨书
  • infinix是什么手机
  • 经济管理专业就业方向|经济管理专业学生自荐信
  • 阳台桌椅组合品牌排行榜前十名
  • 猜你喜欢

  • 生活万花筒四年级第五单元作文400字以上
  • (通用版)中考数学总复*第六章基本图形(二)第23讲圆的基本性质(讲本)课件
  • 2017年中国电热杯制造行业投资策略研究及发展建议咨询
  • 【最新文档】怀念奶奶作文-实用word文档 (2页)
  • 【小初高学*】通用版2017届高考数学考前3个月知识方法专题训练第一部分知识方法篇专题10数学思想第
  • 山东适城市2016_2017学年七年级数学下学期第一次3月月考试题扫描版无答案
  • 浅谈初中化学教学中创新能力的培养
  • 两岸三通
  • 基于nRF2401的无线USB串口转换模块
  • 2019年1-7月中国2-糠醛(29321200)进出口统计报告
  • 88-北京市5岁以下儿童死亡评审规范
  • xml有哪些解析技术?区别是什么?
  • 食品安全员业务能力考核试题C卷 附答案
  • 销售部年终总结 ppt
  • 2016年锂电池产业市场咨询分析报告(word版)
  • 企业社会责任与财务管理变革_基于利益相关者理论的研究
  • 对初中语文阅读教学中设疑提问的若干思考
  • 压敏电阻检验标准
  • SpringCloud 中文官网链接
  • 范本:2018年12月县粮食局个人工作总结和2019年工作计划
  • 2018年秋七年级语文山西专用期末专题复习课件:专题3 小语段阅读 (共13张PPT)
  • 北师大版七年级数学下册第一章 整式的乘除复*(第二课时)(共26张PPT)
  • 2014年安全教育日活动总结
  • 智能化与人性化排课算法的研究与实现
  • 网络中心的工作总结
  • 最新人教新目标八年级英语上册 Unit 7 Will people have robots?(第5课时)精品课件(1)
  • 财务管理常用表单
  • 东莞市东城康诺健康咨询服务部企业信息报告-天眼查
  • 气象仪表项目可行性研究报告(可编辑)
  • 2020年快乐的万圣节初二周记500字范文合集
  • 2019精品教育北师大版数学六年级下册《圆柱的表面积》PPT课件之二
  • 关于爱情的故事超感动_有关于爱情的故事
  • 【最新文档】怀念奶奶作文-实用word文档 (2页)
  • 最新黑段子精选大全
  • 高考政治(全国通用)考前三个月配套文档:第二部分 专
  • 维克森林大学与爱荷华大学哪个好
  • 伊拉克气候特点属于哪种类型的气候
  • 《3D数学基础:图形与游戏开发》 学习笔记(一)
  • 最新人教版四年级下册数学期中试卷15套(新审定部编)
  • 得了痛风不能吃什么东西
  • 上海泽迪投资中心(有限合伙)企业信用报告-天眼查
  • 感谢老师的教导之恩祝福语
  • 电脑版