Diffie-Hellman密钥协商算法

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

各类加密算法介绍

目前常用的加密算法主要有:哈希算法(比如MD5、SHA族、Hmac),对称加密算法(比如AES),非对称加密算法(RSA),以及Diffie-Hellman密钥协商算法等等,这几种算法都有各自的特点,适合的场景也不一样,这里只做简单的介绍,想详细了解的话,网上资料很多,可以自行查看相关的资料。

各类算法的特点:

哈希算法:正向快速,不可逆性,即加密后是很难解密出明文的。经常用于数据加密和数据校验。

对称加密算法:AES是一种常用的对称加密算法,其特点是加解密都用同一个密钥。

非对称加密算法RSA:RSA算法是一种非对称加密算法,由一个私钥和一个公钥构成的密钥对,通过私钥加密,公钥解密,或者通过公钥加密,私钥解密。其中,公钥可以公开,私钥必须保密。

Diffie-Hellman密钥协商算法:Diffie-Hellman是一种密钥协商算法(简称DH算法),DH算法基于一种数学原理,能够在双方不泄露密钥的情况下协商出一种密钥来。

场景描述

在客户端向服务器端发送数据的过程中,如果是比较重要的数据(比如密码,敏感数据等),一般需要先在客户端进行加密后再发送,服务器接收到数据后再进行解密得到原始数据。(反过来服务器返回数据给客户端也是一样的道理)

这里假设客户端和服务器端采用AES(对称加密算法)进行加解密传输的数据,AES加密算法有一个特点就是加解密都用同一个密钥(这里把该密钥称作secretKey),所以双方都通过secretKey进行数据加解密。

因此在客户端向服务器第一次传输数据的时候,客户端需要先向服务器端获取secretKey,并且保存在客户端,而这种直接向服务器获取明文secretKey的过程是很容易被第三者拦截的,也就是说这一过程是不安全的。(哈哈,除非是服务器把secretKey写到纸上,亲手偷偷地递给客户端)

因此呢,客户端向服务器获取secretKey的这一过程,也是需要进行加密的。

那么,服务器需要怎么做才能把secretKey安全的送达客户端呢?

目前常

公钥密码--Diffie-Hellman密钥协商算法 公钥密码--Diffie-Hellman密钥协商算法算法过程正确性安全性 博主是初学公钥密码,本意是想整理一些经典的密码系统,加深记忆也方便日后查找;整理成一个系列公钥密码,方便检索。 如果有错,欢迎指正。 Diffie-Hellman密钥协商算法是由Whitfield Diffie,Martin E.Hellman在1976年发表的“New Directions in Cryptography”一文中提出。Diffie-Hellman算法的思想是通过交换信息,来协商出只有双方知道的密钥算法过程 全局公 阅读详情

相关推荐

dh密钥协商算法c语言实现,Diffie-Hellman密钥协商算法-python实现

Boblee人工智能硕士毕业,擅长及爱好python,基于python研究人工智能、群体智能、区块链等技术,并使用python开发前后端、爬虫等。1.Diffie-Hellman密钥协商算法Diffie-Hellman密钥协商算法在1976年在Whitfield Diffie和Martin Hellman两人合著的论文New Directions in Cryptography(Section Ⅲ...

weixin_34757565的博客 3043

信息与网络安全 Diffie-Hellman密匙交换算法 题目练习

信息和网络安全 Diffie-Hellman密钥交换算法的运用

qq_51560277的博客 4018

Diffie-Hellman算法详细讲解 及用java实现一个基于密钥协商的socket通信

diffie-Hellman(DH)算法原理 Diffie-Hellman算法是Whitefield Diffie和Martin Hellman在1976年公布的一种秘钥交换算法,它是一种建立秘钥的方法,而不是加密方法,所以秘钥必须和其他一种加密算法结合使用。这种秘钥交换技术的目的在于使两个用户安全的交换一个秘钥一遍后面的报文加密。 Diffie-Hellman密钥交换算法的有效性依赖于计离散对数的难度。 模型分析 1)由消息发送的一方构建密钥,这里由甲方构建密钥。 2)由构建密钥的一方向对方公布其公钥

梦想不是挂在嘴边炫耀的空气,而是需要认真实践,等到对的风,就展翅翱翔! 2878

【网络安全期末复习3】Diffie-Hellman密钥交换算法

首先,Diffie-Hellman密钥交换算法的主要目的是为了通信双方能够生成一个共同的会话密钥 过程图: 原理: 首先通信双方先协商好两个公共数值,p和g,其中p是一个大素数,g是一个整数,p和g公开,即所有用户均可获取,并未所有用户共有 首先用户A随机生成一个大数a, 用户A计K1=g^a(mod p ),并将此结果传送给用户B 用户B随机生成一个大数b 用户B计K2=g^b(mod p),并将结果传送给用户A 用户计K=(K2)^a(mod p) 用户B计K = (k1)^b(mod p)

feixs1的博客 3389

算法系列】实战篇:Diffie-Hellman算法实现通信秘钥流程

1、Diffie-Hellman算法简介 Diffie-Hellman算法(以下简称为:DH算法),是最早的密钥交换算法之一,它使得通信的双方能在非安全的信道中安全的交换密钥,用于加密后续的通信消息。 起基本流程原理如下: 假定小明和小红期望在一个不安全的网络中协商一个共同的密钥,那么进行如下步骤: 两人先说好大素数(质数)p和它的原始根g。 小明随机产生一个数a,并计A = p^a mod g, 发送给小红。 小红随机产生一个数b,并计......

Yangy的博客 3625

16、Diffie-Hellman密钥交换协议

Diffie-Hellman密钥交换协议 在对称加密体系中,双方要协商秘钥,Diffle-Hellman用于密钥协商,是基于离散对数困难问题的,但是他有可能遭受到中间人攻击。

安全学习笔记 2231

密钥协商算法Diffie-Hellman的Java实现

本文的思路是这样的:先了解Diffie-Hellman的流程原理,然后将其流程和Java的实现对应起来;理解了原理和Java实现的流程,再写应用代码进一步辅助验证,最后走一走源码流程中的相关细节,做最终验证;最后,再了解一下性能更好、安全性更高的ECDH(基于椭圆曲线来实现的Diffie-Hellman

厚积薄发者,轻舟万重山 4896

Diffie-Hellman密钥协商算法原理及实现

Diffie-Hellman密钥协商算法原理及实现

公羽向阳的博客 1万+

Diffie-Hellman密钥协商算法探究

DiffieHellman密钥协商是一种安全协议。它可以让双方在完全没有对方任何预先信息的条件下通过不安全信道创建起一个密钥。这个密钥可以在后续的通讯中作为对称秘钥讯内容。

lihui49的博客 1164

加密与安全_探索密钥交换算法_Diffie-Hellman算法

对称加密算法解决了数据加密的问题,例如AES加密可以有效地保护文件的安全性。然而,一个关键的挑战是如何在不安全的通信信道上安全地传输密钥。假设小明需要向路人甲发送一个加密文件,他可以先生成一个AES密钥,使用该密钥对文件进行加密,然后将加密后的文件发送给对方。但是,问题在于对方需要密钥才能解密文件,因此密钥的传输必须是安全的。在传统的密钥传输方法中,密钥通常通过不同的方式发送,如口头告知、书面传递或者其他安全信道。

小工匠 8204

DiffieHellman 算法-秘钥协商

PSK 即“Pre-Shared Key”的缩写,就是预先让通信双方共享一些秘钥,这些秘钥通常是对称加密的秘钥,所谓的预先是指这些秘钥在双方尚未构建TSL协议之前,就已经部署在双方的系统之内了。既然双方已经有共享的秘密(这个“秘密”可能已经是一个密钥,也可能只是某个密码/password),只需要根据某种生成算法,就可以让双方产生相同的密钥(并且密钥长度可以任意指定)对于一个旁观者(偷窥者),虽然能看到 p,g,A,B,但是无法推出 a 和 b(旁观者无法推出双方的私钥),自然也无法推出 k。

ZhangJiqun&191cm&85kg 446

密钥协商的原理

密钥协商原理 群组密钥协商(Group Key Agreement), 这种方法是基于分布式的思想,它的特点是:1)群组的多个成员一起参与密钥生成 2) 群组中的密钥是由每个成员提供的参数以及密钥生成算法共同决定的 3) 群组中任何成员均不能事先确定密钥。 有几种流行的的群组密钥协商及分配方法,包括CKD(Centralized Group Key Distribution),BD(Bu

渔夫 4050

Diffie-HellmanRSA

特性RSA核心功能密钥交换/协商加密和数字签名数学难题离散对数问题大整数质因数分解问题密钥对用途临时生成,用于一次会话通常是长期使用的静态密钥前向保密支持不支持(除非用作临时密钥)计效率通常比RSA加密快加密/解密较慢典型应用SSL/TLS的密钥交换阶段SSL/TLS的证书验证、加密会话密钥、代码签名。

qq_39980997的博客 718

DH的作业

个人作业

weixin_54157504的博客 1301

Diffie-Hellman 密钥交换技术(内含多方密钥交换)

Diffie-Hellman 密钥交换技术 文章目录Diffie-Hellman 密钥交换技术描述大体介绍加解密解释 英文名Diffie-Hellman key exchange(简称DH)。 Diffie-Hellman密钥交换是一个在公共渠道安全交换加解密密钥的方法。DH是加解密领域最早的公钥交换实际应用的例子之一。 传统上,双方之间的安全加密通信要求他们首先通过一些安全的物理渠道来交换密钥。...

Chenglin(Ben) Yu's Miracle 1万+

Diffie-Hellman密钥交换算法

Diffie-Hellman密钥交换是一种安全交换密钥的方法,可以让双方在不泄漏密钥的情况下,德出一个密钥。以Whitfield Diffie和Martin Hellman的名字共同命名。 Diffie-Hellman密钥交换是Ralph Merkle构想的第一个公钥协议之一,由 DiffieHellman 于 1976 年出版,这是最早提出私钥和相应公钥概念的公开著作。可以让双方在不泄漏密钥的情况下协商出一个密钥来传统上,两方之间的安全加密通信要求他们首先通过某种安全的物理方式交换密钥,例如由受信任

weixin_43211186的博客 8011
上一篇: 基于ionic4、cordova搭建android开发环境
下一篇: 基于js对观察订阅者模式的一些体会和应用场景
SimpleCXD
博客等级 码龄12年 11粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值