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

Https流程(简单认识)

 
阅读更多
最经看了一些关于https的东西,比较乱,现在做个总结(不一定正确,而且很多细节没挖掘,只是目前的一个粗浅认识)

Https流程图



从这个图我们可以看出:

由于浏览器和服务器之间对数据传输进行了对称加密,从而保证了数据的安全性,但是现在有一个问题,如何保证浏览器生成的随机数(对称加密的密钥)能安全的传递给服务器端?
如果这把密钥被第三方窃取,那么浏览器和服务器之间传递的数据就能被轻而易举的解密,进而造成危险.

我们可以这么做:
采用非对称加密的方式,让浏览器安全的把对称加密的密钥传送给服务器. 那什么是非对称加密呢? 假如有两把钥匙一个叫公钥,一个叫私钥,用公钥加密的数据只有私钥才能解开,那么只要服务器存留一份私钥,把公钥发个浏览器,就可以安全传输数据.
问题似乎完美的解决了,但是不要忘记,服务器需要把它的公钥传递给浏览器,所以服务器如何保证它能正确的传递公钥呢(这问题像这样推倒下去,就没完没了,变成鸡和蛋的哲学问题了)? 

好吧,我们来个终结者:CA证书.
CA证书是由权威机构颁发(意味着你可以信任他),证书的内容包含多种信息,其中就包括服务器的公钥,还包括证书有效期等等。
通过它建立我们的信任基点,就可以保证服务器公钥被正确的传递给浏览器,然后浏览器可以使用它安全的把对称加密的密钥传递给服务器,之后以此密钥加密需要传递的信息,保证了数据的安全性

可能到这里,你会有疑问,为什么我们不直接采用非对称加密加密数据,而先是使用非对称加密传送对称加密的密钥,之后传递数据使用对称加密?
这里的原因很简单,非对称加密的计算效率远远不如对称加密;
整个https流程实际上是: 使用非对称加密算法保证对称加密密钥的安全传递,然后使用对称加密来保证数据传输过程中的安全性








  • 大小: 68.9 KB
分享到:
评论

相关推荐

    SAP 业务流程大全(2)

    因此,个人以为,在实施SAP系统时,应该花更多的精力专注于端到端(End-to-End)业务流程地设计和优化上,尽可地消除业务流程中非增值的活动,而不是简单地用配置和二次开发来满足用户体验或无关大局的功能。...

    SAP 业务流程大全(1)

    因此,个人以为,在实施SAP系统时,应该花更多的精力专注于端到端(End-to-End)业务流程地设计和优化上,尽可地消除业务流程中非增值的活动,而不是简单地用配置和二次开发来满足用户体验或无关大局的功能。...

    SAP 业务流程大全(3)

    因此,个人以为,在实施SAP系统时,应该花更多的精力专注于端到端(End-to-End)业务流程地设计和优化上,尽可地消除业务流程中非增值的活动,而不是简单地用配置和二次开发来满足用户体验或无关大局的功能。...

    机器人工程专业的认识和感想.docx

    低起点高发展的程序编译环境:有针对初学者的图形化编程环境,完全按照流程图方式生成程序,也有适合高年段交互式c语言的编程环境。积木化产品设计,贴近实际生活的搭建方式,更能锻炼学生的实际操作与动手能力。...

    SOP的制作流程学习讲义资料

    认识SOP,了解其目的和含义、从细节处发现不同,从简单到复杂。

    Struts2+hibernate+Ext 流程管理系统

    这个系统用到的框架有hibernate ,struts2,ext,mysql,这是一个简单的框架,做了简单的增加,里面有建表语句,和说明,能帮助你对hibernate struts2,json,ext,有一个基本认识

    认识计算机硬件教学设计.docx

    学情分析 学生此前已认识信息及信息技术,具备一定的信息意识,生活中能应用计算机做一些简单的操作,并能了解计算机的简单组成,本节课的"认识计算机的硬件"起到承上启下的作用,学好本节知识要点,有利于今后信息...

    简易操作系统源码 类linux的

    我们参照Linux系统的代码组织结构来开发一个小小的操作系统(准确地说它不是操作系统,它仅仅走了一个简易的系统启动流程),它能带你进入保护模式,完成一些系统需要的初始化工作,然后能给你一个启动后通常能见到...

    [详细完整版]认识实习报告.doc

    北京化工大学北方学院 认识实习报告 专 业:__ 软件工程 班 级:_ 软件0804 学 号:__ 080203088 姓 名:__ 指导教师:__ _ 2011年 10 月 28 日 "实习目的 " "主要填写对实习的目的和要求 " "本次实习,是...

    对于大数据的认识.pdf

    对于⼤数据的认识 对⼤数据的简单认识 ⼤家好我是皈⼼,是个刚刚⾛上⼤数据这个领域的标题萌新,希望各位⼤佬多多指教。 这是我的第⼀个博客来说说⾃⼰对⼤数据的认识,对⼤数据创意环境的构想以及⾃⼰在第⼀次实训中...

    贴装基本工艺流程

    为了便于对SMT贴装生产线有直观的认识,以环球仪器(UIC)的贴装生产线为例,图1~图3,从这几幅 图片中,我们可以直观地看到贴片生产线的基本组成单元包括:丝印机+接驳台+高速机(或多功能机) +接驳台+多功能...

    信息技术基础第三章第2节的内容

    这是课堂上使用的ppt教案 一、教学目标 1. 知识技能:初步认识程序代码,了解并...难点:剖析程序,了解结构组成和具体作用,认识计算机程序设计的基本流程 三、教学方法 讲授法、演示法、讨论法、实践法、探究法等

    简单分析推荐系统(python)

    通过python实现一个简单的movie推荐系统的流程分析,初步认识相似度的实现,推荐的核心思想

    activiti-学习第一天

    简单认识工作流基础知识,附有代码

    链表的简单应用(为什么写的代码不尽如人意)

    链表的认识以及反转链表的流程图

    绘声绘影X5会声会影(入门到精通视频教程)

    第四讲 会声会影x5工作流程.flv 第五讲 详解文件菜单.flv 第六讲 详解编辑菜单.flv 第七讲 工具菜单和设置菜单的讲解.flv 第八讲 素材库面板的认识.flv 第九讲 时间线面板的认识.flv 第十讲 转场效果的应用.flv 第十...

    RNN算法推导过程及代码.zip

    对循环神经网络的简单认识及一些主要数学过程的推导的文档和应用matlab代码编写一个简单的循环神经网络进行预测的一个matlab程序。

    深入理解Android中View绘制的三大流程

    最近对Android中View的绘制机制有了一些新的认识,所以想记录下来并分享给大家。View的工作流程主要是指measure、layout、draw这三大流程,即测量、布局和绘制,其中measure确定View的测量宽高,layout根据测量的宽...

    大牛写的压缩感知的OMP算法(绝对简单,与大家分享)

    压缩感知的稀疏重构中广泛应用的正交匹配追踪(OMP)算法matlab程序,该算法由香港大学电子工程系 沙威老师开发,代码注释详细,便于读者理解。...读者通过代码可以加深对该算法以及压缩感知、稀疏重构的认识。

    简单猜数游戏

    这是一个C#猜数游戏,适合初学者,认识C#,熟悉到操作

Global site tag (gtag.js) - Google Analytics