tls协议

HTTPs协议

冷暖自知 提交于 2019-11-27 01:32:31
https://segmentfault.com/a/1190000009002353 TLS 协议可用于保护正常运行于 TCP 之上的任何应用协议的通信,如 HTTP、 FTP 、SMTP 或 Telnet 等高层的应用协议的通信,最常见的是用 TLS 来保护 HTTP 的通信。 TLS 协议的优点在于它是与应用层协议无关的 。 高层的应用协议能透明地建立于 TLS协议之上 。 SSL/TLS及证书概述 每次配置HTTPS或者SSL时,都需要指定一些cacert,cert,key之类的东西,他们的具体作用是什么呢?为什么配置了他们之后通信就安全了呢?怎么用openssl命令来生成它们呢?程序中应该如何使用这些文件呢? 本篇以TLS 1.2作为参考,只介绍原理,不深入算法的细节 SSL和TLS的关系 SSL(Secure Sockets Layer)和TLS(Transport Layer Security)的关系就像windows XP和windows 7的关系,升级后改了个名字而已。下面这张表格列出了它们的历史: 协议 创建时间 创建者 RFC 注释 SSL1.0 n/a Netscape n/a 由于有很多安全问题,所以网景公司没有将它公之于众 SSL2.0 1995 Netscape n/a 这是第一个被公众所了解的SSL版本 SSL3.0 1996 Netscape

OAuth 2.0: Bearer Token Usage

橙三吉。 提交于 2019-11-27 00:44:46
  Bearer Token ( RFC 6750 ) 用于OAuth 2.0授权访问资源,任何Bearer持有者都可以无差别地用它来访问相关的资源,而无需证明持有加密key。一个Bearer代表授权范围、有效期,以及其他授权事项;一个Bearer在存储和传输过程中应当防止泄露,需实现Transport Layer Security (TLS);一个Bearer有效期不能过长,过期后可用Refresh Token申请更新。 一. 资源请求    Bearer实现 资源请求有三种方式:Authorization Header、Form-Encoded Body Parameter、URI Query Parameter,这三种方式优先级依次递减 Authorization Header :该头部定义与Basic方案类似 GET /resource HTTP/1.1 Host: server.example.com Authorization: Bearer mF_9.B5f-4.1JqM Form-Encoded Body Parameter : 下面是用法实例 POST /resource HTTP/1.1 Host: server.example.com Content-Type: application/x-www-form-urlencoded access_token=mF

nginx配置多个TLS证书,以及TLS SNI简介

Deadly 提交于 2019-11-26 23:36:38
背景 原来申请的正式域名备案通过,TLS证书也申请了。之前使用的临时域名和证书作为测试环境使用。于是要在单个ECS主机上配置nginx多个证书和多个域名。 实践 nginx部署多个TLS证书很简单,在不同的virtual host分别配置证书就搞定了。比如我有 a.com 和 b.com 两个域名,在 nginx.conf 分别配置2个server就可以了 123456789101112131415161718192021 server { listen 443 ssl http2; server_tokens off; server_name a.com; ssl_certificate cert/a.com.pem; #将domain name.pem替换成您证书的文件名。 ssl_certificate_key cert/a.com.key; #将domain name.key替换成您证书的密钥文件名。 # more config}server { listen 443 ssl http2; server_tokens off; server_name b.com; ssl_certificate cert/b.com.pem; #将domain name.pem替换成您证书的文件名。 ssl_certificate_key cert/b.com.key; #将domain