`
JhonStryker
  • 浏览: 19498 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

客户端服务器非对称加密流程

阅读更多

看了一下午数字证书的内容,总结一下。

 

1.数字证书是数字证书,数字签名是数字签名,两回事。

2.公钥加密,私钥解密;私钥加密,公钥解密;只有这两种情况

3.所谓签名,就是用一个签名算法,把需要签名的内容计算成你不认识的一段字符串,然后附在内容的后边。

4.只要内容改变,签名的字符串就会完全改变。不信的请自己测试“1”和“11”的sha1值。

5.(重点)个人认为整个加密流程的要点是两件事:

a.内容有没有被修改

b.是不是当事人发送的(不管是双方中的哪一方)

6.CA机构颁发证书的时候会用CA机构的私钥加密指纹和指纹算法。而当客户端拿到一个证书的时候,会在windows系统中找到这个CA机构的公钥,并用这个公钥来解密指纹和指纹算法。

 

 

最后,做个举例总结:

 

服务器为了跟别人安全通信,去CA认证机构申请了数字证书。数字证书包括服务器的公钥,认证机构,指纹,指纹算法等信息。客户端向服务器请求通信,服务器把数字证书给了客户端。客户端需要一个可以信任的证书机构,所以客户端在windows系统中查找所获证书的颁发机构,找到后使用系统自带的证书公钥解开指纹和指纹算法,客户端使用获得的指纹算法对证书内容本身进行了计算,使用计算后的指纹和证书中的指纹对比,如果一致则认为证书没有被修改。此时就可确定证书中的公钥确实是服务器的公钥。
客户端用服务器的公钥加密了一个随机字符串发送给服务器,服务器收到后用对应私钥加密,然后将加密的字符串发送给客户端。客户端如果使用证书中得到的公钥成功解密,则认为证书的发送方确实是服务器。此时既确定了证书(实际就是公钥内容)没有被修改,也确定了证书发送方确实是服务器。
此时客户端生成一个对称加密密钥(对称加密无所谓公钥私钥),客户端使用服务端的公钥将对称加密算法和密钥发送给服务端,之后客户端和服务端使用该对称加密密钥进行通讯,至此大功告成。
参考:
分享到:
评论

相关推荐

    RSA非对称加密算法

    RSA 非对称加密算法 RSA 非对称加密算法是一种经典的非对称加密算法,由罗纳德·李维斯特、阿迪·萨莫尔和伦纳德·阿德曼三人于 1977 年共同提出的。该算法的主要思想是基于大素数的乘积和因式分解之间的关系,通过...

    非对称加密算法

    此外,非对称加密的计算复杂度比对称加密高,所以在大量数据加密时,通常会结合使用非对称加密来安全交换对称密钥,然后用对称密钥进行数据加密,这就是所谓的混合加密机制。 在编程实践中,开发者可以利用各种库和...

    非对称TCP加密技术

    非对称TCP加密技术是一种网络安全通信的方法,它结合了非对称加密算法和TCP协议,以确保在互联网上传输的数据的机密性、完整性和身份验证。非对称加密技术的核心在于使用一对密钥,一个公开,称为公钥,另一个私有,...

    非对称加密传输文件相关技术理论浅析

    此外,HTTPS客户端和服务器如curl和nginx也支持非对称加密,它们在底层使用TLS协议来保护数据的传输。 总结来说,非对称加密传输文件技术是一种强大的安全手段,它在网银U盾、SSL/TLS协议、源码实现和各种加密工具...

    rsa非对称加密,内含三个前端能用的加解密js

    总之,RSA非对称加密技术为前端开发提供了安全传输数据的手段,而`security.js`、`jsencrypt.min.js`、`RSAjs`和`encrypt.js`这些JavaScript库则为开发者提供了实现这一技术的便捷工具。在实际开发中,需结合项目...

    数据对称与非对称的加解密

    在Mina框架中,我们可以自定义消息处理器,将对称加密的过程集成到数据发送和接收的环节,确保在客户端(EncryptClient)和服务器端(EncryptServer)间的数据安全传输。 接下来,我们讨论非对称加密。非对称加密...

    非对称加密_分段加密解密.zip

    在给定的“非对称加密_分段加密解密.zip”文件中,我们可以推测内容可能涉及如何在前端(客户端)使用非对称加密算法进行数据加密,然后在后端(服务器端)进行解密,同时确保对中文字符的支持。这里我们将深入探讨...

    非对称加密

    ### 非对称加密知识点解析 #### 一、非对称加密算法概述 非对称加密算法是一种基于密钥对的技术,它涉及到一对密钥:公开密钥(public key)和私有密钥(private key)。这两个密钥是数学上相关的,但彼此独立。...

    RSA.rar_非对称加密_非对称算法

    非对称加密是一种重要的信息安全技术,它在网络安全中扮演着至关重要的角色。RSA算法是其中最著名和广泛使用的非对称加密算法,由Ron Rivest、Adi Shamir和Leonard Adleman在1977年提出,因此得名RSA。这个"RSA.rar_...

    基于Python语言、RSA非对称加密的IRC聊天室客户端源码与应用程序

    基于Python语言、RSA非对称加密的IRC聊天室客户端源码与应用程序 服务器与客户端之间通过IRC协议进行通信,在IRC协议中,用户可以加入到频道Channel中,在频道中发送消息,频道中的所有人都能接收到信息。 但大多数...

    服务器 客户端 aes 加密 解密

    4. **服务器和客户端的加密解密流程**: - **服务器端加密**:服务器接收到需要加密的数据,使用AES算法和预设的16位密钥进行加密,然后将加密后的数据发送给客户端。 - **客户端解密**:客户端接收到加密数据后,...

    源码包含了非对称加密生成json数据.rar

    非对称加密在Android应用开发中的实际应用还包括HTTPS通信,其中服务器提供公钥,客户端使用公钥加密请求,服务器使用私钥解密,反之亦然,以保障网络通信的安全性。此外,本地存储的数据也可以使用非对称加密来保护...

    C#非对称加密_RSA加解密示例.rar

    在IT领域,非对称加密是一种重要的数据保护技术,它基于数学难题,为网络通信提供了安全的数据加密和解密方式。C#编程语言提供了一系列的类库来支持非对称加密,如RSA算法。本示例主要探讨了如何在C#环境中使用RSA...

    security.zip 用于RSA的非对称加密js文件

    RSA是一种广泛应用于网络通信中的非对称加密算法,它的全称是Rivest-Shamir-Adleman,由三位美国科学家在1977年提出。非对称加密技术的核心在于它拥有两个密钥:公钥和私钥。与传统的对称加密不同,非对称加密的公钥...

    基于客户端通信的DES加密的java实现

    DES是一种广泛使用的对称加密算法,以其高效性和安全性在很多应用场景中被采用。 首先,DES加密算法的基本原理是通过一个密钥对明文数据进行操作,将其转换为无法直接识别的密文。在Java中,我们可以利用`javax....

    RSA非对称 C#解密、js加密实现登陆密文传输

    RSA非对称加密算法在IT领域中被广泛用于安全通信,特别是在登录系统中,它能够确保用户信息的安全传输。在给定的上下文中,我们看到一个C#和JavaScript结合的应用,用于实现登录过程中的密码加密和解密。下面将详细...

    Python+PyQt5+RSA非对称加密实现基于IRC协议的多人聊天系统(含服务端和客户端源码).zip

    该压缩包包含的是一个使用Python编程语言,结合PyQt5图形界面库以及RSA非对称加密技术实现的基于IRC(Internet Relay Chat)协议的多人聊天系统。IRC是一种广泛用于实时通信和讨论的协议,常用于建立多用户聊天室。...

    Android 安全加密:非对称加密详解

    非对称加密作为其中的一种加密方式,提供了比对称加密更高级别的安全性,但同时也带来了更高的计算复杂度。非对称加密的核心在于使用一对密钥,即公钥和私钥,它们分别用于加密和解密数据。 1. **非对称加密的基本...

    RSA非对称加密代码包

    **RSA非对称加密技术详解** RSA是一种广泛使用的非对称加密算法,它基于数论中的大数因子分解难题,为数据提供了一种安全的加密和解密方式。在RSA中,存在两个密钥:公钥和私钥。公钥可以公开给任何人,用于加密...

Global site tag (gtag.js) - Google Analytics