Internet History, Technology, and Security(week9)——Web Security
Secure Web Connections:
Security Public/Private Key - Secure Sockets

凯撒密码容易被破解,后来人们发明了公钥和私钥,由于私钥一定是要发送方和接收方两方私有的,担心在网络传输中被破解,进而又出现了Public-key cryptography(公钥加密系统)。这套系统最早由Diffie和Hellman在1976年提出。最基本的概念是这样:公钥加密系统会有两个密钥,一个是公开的,另一个是私有的。公钥用来加密,私钥用来解密。公钥体系的密钥是非对称的。

公钥系统的设计来源于大数字的因式分解的困难。主要原理如下:先挑选两个比较大的素数a与b,然后将其相乘,得到一个结果c。此时c便是公钥,a、b便是私钥。当我们已知c的时候,由于c的数字很大,很难求出它的因子。但如果我们已知c以及一个因子b,我们就很容易求出另一个因子a。
对于分解大素数之积,如果已知一个因子,那么知道另一个因子会相当容易。但是如果只想通过积来得出两个因子,那会相当困难。这就是公钥加密安全性能的理论:公司保存私钥,用来解密。用网络传递公钥给用户,用户用公钥加密,用户不需要解密,所以不需要了解私钥。

TLS(Transport Layer Security,传输层安全协议)也被称作SSL(Secure Sockets Layer,安全套接层协议),由Netscape研发,可以被看作传输层和应用层之间额外协议层,基于公钥加密系统,为网络信息安全服务。
TLS的功能:
连接具有保密性
连接具有完整性
过去的通信记录不会被可能在未来被泄露的密钥所解密
支持多种方法来处理分享密钥、加密数据和消息完整性检查,因此可以根据需要来配置不同的安全参数
数据是否被加密对IP和TCP等底层协议来说是未知且无影响的
Identity on the Web

CA(Certificate Authority,证书授权机构)是能够证明公钥所属和所有人身份并生成证书的组织或机构,其中既有有国际性组织和政府设立的组织,也有通过提供认证服务来盈利的组织,如Verisign。
举个例子:网站服务器提供公钥给Verisign,Verisign用自己的私钥给网站的公钥加密(两者非配对),生成数字签名。最后Verisign把公钥,数字签名,附加一些服务器信息整合在一起,生成证书发回网站,这样别的人就很难去伪造它。
小结:

Internet History, Technology, and Security(week9)——Web Security的更多相关文章
- Coursera-Note: Internet History, Technology and Secure (1st week to 9th week)
目录 Coursera-Note: Internet History, Technology and Secure 第一周 第二周 数据交换: Packet switching技术: 第三周 创造ht ...
- Spring Security(一):官网向导翻译
原文出自 https://spring.io/guides/topicals/spring-security-architecture Spring Security Architecture ...
- Internet History,Technology,and Security - History Through Supercomputing(Week2)
时间飞逝,一周又过去了,这周我们来到了Internet History, Technology and Security (Week 2)的学习,从标题就可以看出,这周主要是介绍“互联网”雏形的诞生. ...
- Internet History, Technology and Security (Get Started)
Abstract 课程名称:互联网的历史.技术和安全 coursera地址 制作方:密歇根大学(University of Michigan) 教师:Charles Severance, Associ ...
- Internet History,Technology and Security
Internet History,Technology and Security(简单记录) First Week High Stakes Research in Computing,and Comm ...
- Spring Security(08)——intercept-url配置
http://elim.iteye.com/blog/2161056 Spring Security(08)--intercept-url配置 博客分类: spring Security Spring ...
- Java Spring Boot VS .NetCore (九) Spring Security vs .NetCore Security
Java Spring Boot VS .NetCore (一)来一个简单的 Hello World Java Spring Boot VS .NetCore (二)实现一个过滤器Filter Jav ...
- Spring Security(三)
Spring Security(三) 个性化用户认证流程 自定义登录页面 在配置类中指定登录页面和接收登录的 url @Configuration public class BrowserSecuri ...
- Spring Security(二)
Spring Security(二) 注:凡是源码部分,我已经把英文注释去掉了,有兴趣的同学可以在自己项目里进去看看.:-) 定义用户认证逻辑 用户登录成功后,用户的信息会被 Security 封装在 ...
随机推荐
- js函数的定义和调用
函数的定义 函数使用function 声明,后跟一组参数以及函数体,语法如下: function functionName([age0,age1,......argn]){ statements } ...
- .Net Core - 使用Supervisor进行托管部署
环境 CentOS 7 x64,详见 安装CentOS7虚拟机 .Net Core 2.1.801 详见 CentOS 7 下安装.NET Core SDK 2.1 ftp 详见 CentOS7 ...
- express接受ajax的发送post请求
两种常用的方式: $.ajax({ type: "POST", url: '/everdayPost', // data: JSON.parse({cont:data}),注意: ...
- golang 一个字符串表达式替换的函数
package util import ( "fmt" "reflect" "regexp" "strconv" &qu ...
- A广搜
<span style="color:#330099;">/* A - 广搜 基础 Time Limit:2000MS Memory Limit:65536KB 64b ...
- Css网页样式设计
第一章 概述 一.CSS简介1.CSS是Cascading Style Sheets(层叠样式表单)的简称.通常所称的CSS是指CSS1,即层叠样式表单1级. 2.编辑CSS文档:与编辑HTML的方法 ...
- js中的Math对象
绝对值Math.abs() console.log(Math.abs(-25)); console.log(Math.abs('-25'));//存在隐式转换可以求绝对值 co ...
- python之 yield --- “协程”
在编程中我们经常会用到列表,以前使用列表时需要声明和初始化,在数据量比较大的时候也需要把列表完整生产出来,例如要存放1000给数据,需要准备长度1000的列表,这样计算机就需要准备内存放置这个列表,在 ...
- Linux架构之Nginx 高可用
第53章 Nginx之高可用Keepalived 一.Keepalived高可用基本概述 1.1)什么是高可用 一般是指2台机器启动着完全相同的业务系统,当有一台机器down机了,另外一台服务器就能快 ...
- python--线程锁,队列
#线程数据安全处理--同步锁 import time def sub(): global num print("ok") lock.acquire()#获取这把锁--->只有 ...