Secure Web Connections:

  • Security Public/Private Key - Secure Sockets

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

公钥系统的设计来源于大数字的因式分解的困难。主要原理如下:先挑选两个比较大的素数ab,然后将其相乘,得到一个结果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。

举个例子:网站服务器提供公钥给VerisignVerisign用自己的私钥给网站的公钥加密(两者非配对),生成数字签名。最后Verisign公钥数字签名,附加一些服务器信息整合在一起,生成证书发回网站,这样别的人就很难去伪造它。

小结:

Internet History, Technology, and Security(week9)——Web Security的更多相关文章

  1. Coursera-Note: Internet History, Technology and Secure (1st week to 9th week)

    目录 Coursera-Note: Internet History, Technology and Secure 第一周 第二周 数据交换: Packet switching技术: 第三周 创造ht ...

  2. Spring Security(一):官网向导翻译

    原文出自  https://spring.io/guides/topicals/spring-security-architecture Spring Security Architecture   ...

  3. Internet History,Technology,and Security - History Through Supercomputing(Week2)

    时间飞逝,一周又过去了,这周我们来到了Internet History, Technology and Security (Week 2)的学习,从标题就可以看出,这周主要是介绍“互联网”雏形的诞生. ...

  4. Internet History, Technology and Security (Get Started)

    Abstract 课程名称:互联网的历史.技术和安全 coursera地址 制作方:密歇根大学(University of Michigan) 教师:Charles Severance, Associ ...

  5. Internet History,Technology and Security

    Internet History,Technology and Security(简单记录) First Week High Stakes Research in Computing,and Comm ...

  6. Spring Security(08)——intercept-url配置

    http://elim.iteye.com/blog/2161056 Spring Security(08)--intercept-url配置 博客分类: spring Security Spring ...

  7. Java Spring Boot VS .NetCore (九) Spring Security vs .NetCore Security

    Java Spring Boot VS .NetCore (一)来一个简单的 Hello World Java Spring Boot VS .NetCore (二)实现一个过滤器Filter Jav ...

  8. Spring Security(三)

    Spring Security(三) 个性化用户认证流程 自定义登录页面 在配置类中指定登录页面和接收登录的 url @Configuration public class BrowserSecuri ...

  9. Spring Security(二)

    Spring Security(二) 注:凡是源码部分,我已经把英文注释去掉了,有兴趣的同学可以在自己项目里进去看看.:-) 定义用户认证逻辑 用户登录成功后,用户的信息会被 Security 封装在 ...

随机推荐

  1. 深入理解java:1.1. 类加载器

    从java的动态性到类加载机制   我们知道,Java是一种动态语言. 那么怎样理解这个“动态”呢? 或者说一门语言具备了什么特性,才能称之为动态语言呢? 对于java,我是这样理解的. 我们都知道J ...

  2. 只需要2个工具,百度云盘大文件就能用迅雷和IDM下载

    不会代码,不懂脚本,没关系 ,能找到一座通往它们的桥梁,照样能到达彼岸. 这里以360极速浏览器为例. 在浏览器地址框输入以下地址直接到达浏览器安装扩展插件的地方(偷个懒,复制网址吧),https:/ ...

  3. [19/09/02-星期一] 基础知识_Python入门

    一.计算机基础 用户界面:TUI-文本交互界面: GUI-图形化交互界面 命令行:就是一种文本交互界面,可以使用一个一个的指令来操作计算机.任何计算机的操作系统都包含命令行(Windows.Linux ...

  4. (3.4)常用知识-char与varchar的选择

    1.char与varchar的比较 (1)数据存储开销 [1]varchar列需要2个额外的字节来记录存储数据的长度 [2]每个可为null的char列,需要一些字节(空位图)来反应数据的为空性 [3 ...

  5. [BZOJ 2006] [NOI 2010]超级钢琴(贪心+ST表+堆)

    [BZOJ 2006] [NOI 2010]超级钢琴(贪心+ST表+堆) 题面 给出一个长度为n的序列,选k段长度在L到R之间的区间,一个区间的值等于区间内所有元素之的和,使得k个区间的值之和最大.区 ...

  6. 6.float类型 和 char 类型

    float32  float64 package main import "fmt" func main() { var xxx float32 var xxxx float64 ...

  7. 利用CSS的translate属性或利用CSS实现图片居中的效果

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Python字符串中添加、插入特定字符

    分析 我们将添加.插入.删除定义为: 添加: 在字符串的后面或者前面添加字符或者字符串 插入: 在字符串之间插入特定字符 在Python中,字符串是不可变的.所以无法直接删除.插入字符串之间的特定字符 ...

  9. JSP中九大内置对象及其作用

    jsp中有九大内置对象分别为:request,response,session,application,out,pageContext,page,config,exception. request:请 ...

  10. JS全选的操作

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...