SSL原理
http://blog.csdn.net/terryzero/article/details/5921791SSL的原理以前一直很模糊,看了下面这篇文章后清楚了许多,为了方便以后的回顾,所以转载下
RSA的公用密钥密码系统广泛地应用于计算机工业的认证和加密方面。
1,B 会偷偷的告诉 A 他的公钥(如何偷偷的,马上再说)。
* A --> B rand-msg
B --> A A, This is B!{Digest[A, This is B!]}b-private-key
上面我们提到过,在一开始 B “偷偷的” 发送了一个 public-key 给 A(否则任何人都可以是 B 了),为了解决这个问题,标准化组织发明了一个叫做证书的咚咚,一个证书主要包含如下信息:
* 发行证书的组织
* 标题(主题)的公钥
* 邮戳
2,B-->A Hi, 兄弟,我是 B, 看,这是我的证书 b-certificate
3,A-->B 别以为你有了 B 的证书 b-certificate,我就真的以为你是 B 了,证明你是 B
4,B-->A A, This Is B{Digest[A, This Is B] }b-private-key
====> 交流秘密
下面终于可以进入 A 的家门了,B 好辛苦啊,但是下面的交流还是秘密啊,不能被旁人看到,那可是国家机密哦:)
当然,A 之后发送的消息就是只有 B 才能解码的消息了,如下:
B --> A Hi, I'm B, b-certificate
A --> B prove it
B --> A A, This Is b{ digest[A, This Is B] } b-private-key
A --> B ok b, here is a secret {secret} b-public-key // A 传了一个 secret
B --> A {some message}secret-key
M-->B hello
B-->M Hi, I'm B, B-certificate
M-->A Hi, I'm B, B-certificate
A-->M prove it
M-->B prove it
B-->M A, This Is B{ digest[A, This Is B] } B-private-key
M-->A A, This Is B{ digest[A, This Is B] } B-private-key
A-->M ok B, here is a secret {secret} B-public-key
M-->B ok B, here is a secret {secret} B-public-key
B-->M {最近国际形势不太乐观啊!}secret-key
M-->A Garble[ {最近国际形势不太乐观啊!}secret-key ] // 如果 M 够 “幸运” 的话,可能变成了 “你这个大笨蛋!”
可以看到这个 Hacker 好坏,他一直等到 A 和 B 开始交流机密了,然后通过改变 B 发送给 A 的机密的方式开始作梗,而此时 A 已经相信这是 B 的机密了(可能变成了: 你这个大笨蛋!:P ),结果悲剧再一次上演... ...
B --> A 嗨,我是 B,b-certificate
A --> B prove it
B --> A {digest[A, 我是 B] } b-private-key
A --> B ok B, here is a secret {secret}b-public-key
B --> A {some message,MAC}secret-key
SSL原理的更多相关文章
- SSL 原理及 https 配置
目录 1. SSL 原理 1.1. SSL 简介 1.2. 主要概念 1.3. 建立安全连接的过程 2. https 配置 (以 nginx 为例) SSL 原理 SSL 简介 SSL (Secure ...
- nginx负载均衡、nginx ssl原理及生成密钥对、nginx配制ssl
1.nginx负载均衡 新建一个文件:vim /usr/local/nginx/conf/vhost/load.conf写入: upstream abc_com{ip_hash;server 61.1 ...
- Nginx负载均衡、SSL原理、生成SSL密钥对、Nginx配置SSL
6月12日任务 12.17 Nginx负载均衡12.18 ssl原理12.19 生成ssl密钥对12.20 Nginx配置ssl扩展 针对请求的uri来代理 http://ask.apelearn.c ...
- Linux centosVMware Nginx负载均衡、ssl原理、生成ssl密钥对、Nginx配置ssl
一.Nginx负载均衡 vim /usr/local/nginx/conf/vhost/load.conf // 写入如下内容 upstream qq_com { ip_hash; 同一个用户始终保持 ...
- 浅析HTTPS与SSL原理
版权声明:本文由盛旷 原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/134 来源:腾云阁 https://www.qclo ...
- 单点登录 SSO, 自动登录 , java 加密,ssl原理, Tomcat配置SSL
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 单点登录的英文简称为SSO(single sign on),单点登录功能使得用户只要登录 ...
- ssl原理及应用
今天学习网络通信,看到使用ssl(Secure Sockets Layer)进行加密,由于对ssl只是有些概念上的了解,对于具体应用原理.过程和如何使用不慎了解,于是学习了一番,总结如下: 1. 为什 ...
- ssl 原理简介
要想弄明白SSL认证原理,首先要对CA有有所了解,它在SSL认证过程中有非常重要的作用.说白了,CA就是一个组织,专门为网络服务器颁发证书的,国际知名的CA机构有VeriSign.Symantec,国 ...
- ssl 原理和建立连接过程
ssl ("Secure Sockets Layer")加密原理 和https的关系https = http + ssl ssl 位置: SSL握手 证书主要作用是在SSL握手中, ...
- ssl原理,非对称加密握手,对称加密传输
SSL的基本思想是用非对称加密来建立链接(握手阶段),用对称加密来传输数据(传输阶段).这样既保证了密钥分发的安全,也保证了通信的效率. SSL握手,单方服务器认证(一般的浏览器上网) SSL握手,双 ...
随机推荐
- Objective-C:深复制(拷贝)
深复制:复制对象时,如果对象中包含对象类型的实例变量,要对对象类型的实例变量也要做对象复制.新对象中的对象类型实例变量和旧对象中的对象类型实例变量指的是不同的对象.不管任何一方实例变量对对象做修改,都 ...
- C语言:用字符读取流和输出流来读写入数据。(文本文件)
/* 文件的几种操作模式: r:只读 w:只写 rw:可读可写 文件的分类: t:文本文件(字符文件) b:二进制文件(字节文件) 注意: 采用只读方式打开文件时,如果源文件不存在,打开文 ...
- UNIX域套接字——UNIX domain socket(DGRAM)
#define UNIX_PATH_MAX 108 #include <sys/types.h> #include <sys/socket.h> #include <sy ...
- C语言存储类型
看c专家编程,有说存储类型一直不太清楚.看到一篇文章讲解c的存储类型,讲解了c语言中的各种变量的存储类型,而且是从进程.内存的角度讲解的,以前从没有这样理解过,觉得挺有用的,在这里转载过来. 首先要来 ...
- Candy leetcode java
题目: There are N children standing in a line. Each child is assigned a rating value. You are giving c ...
- (转)Overview : Writing Scripts in C# 使用C#书写脚本
Apart from syntax, there are some differences when writing scripts in C# or Boo. Most notable are: 除 ...
- 一个用于发送HTML格式邮件的类
以下类是在网上孙钰佳的版本上改写而来,主要变化了三点:1.去掉了附件部分:2.形式从纯Java类改成可注入方式:3.to,cc和bcc都变成了一堆人,以前是一个人. 以下是Java类的代码: impo ...
- listView/GridView getChild获取不到的解决方法
在onCreate或onResume中调用了getChildAt()方法,这时候adapter中的Item还没有放入到AdapterView中去.... 解决方法,当activity获得焦点事件的时候 ...
- Android:子线程向UI主线程发送消息
在Android里,UI线程是不同意被堵塞的.因此我们要将耗时的工作放到子线程中去处理. 那么子线程耗时处理后要如何通知UI线程呢? 我们能够在UI主线程中创建一个handler对象,然后通过重写其h ...
- 玩转oracle学习第五天
1.上节回想 2.维护数据的完整性 3.管理索引 4.管理权限和角色 1.掌握维护oracle数据完整性的技巧 2.理解索引的概念,会建立索引 3.管理oracle的权限和角色 介绍:维 ...