标签墙

CA

理解 HTTPS 原理,SSL/TLS 协议

###为什么要使用 HTTPS 当我们使用 HTTP 协议时,传输的数据是不安全的,因为所有在客户端和服务端往来的数据都是明文: * 第三方可以获取到真实数据 * 第三方可以篡改数据 * 第三方可以冒充服务端或客户端 为了解决这些问题,需要在 HTTP 协议中加入一个安全机制,由此并产生了 HTTPS,我们可以认为 HTTPS = HTTP + TLS/SSL。TLS/SSL 的引入解决了安全问题,而上层应用协议还是 HTTP。 ###历史 SSL(Secure Sockets Layer)中文称作“安全套接层”,TLS(Transport Layer Security),中文称作“传输层安全协议”。 1. 1994 年,网景(NetScape)公司设计了 SSL 1.0 2. 1995 年,SSL 2.0,存在严重漏洞 3. 1996 年,SSL 3.0,得到大规模应用 4. 1999 年,IETF 对 SSL 进行标准化,发布了 TLS 1.0 5. 2006 年和 2008 年,TLS 进行了两次升级,分别为 TLS 1.1 和 TLS 1.2 在应用层,我们习惯将两者并称 TL....

More...

Windows 通过命令行安装根证书

背景 有的时候我们需要在用户机器上将自制的 CA 证书安装到“受信任的根证书颁发机构”下,这样就能使用该 CA 颁发自签名的证书了,以便后续完成一些安全相关的操作。 工具 在命令行安装证书需要用到证书管理器 certmgr.exe,这个二进制可执行文件在 Win10 中 大概 这个路径下,C:\Program Files (x86)\Windows Kits\8.1\bin\x86\certmgr.exe,建议把这个二进制打在程序的发布包中,或者让程序从网络上拉取到本地。 不带参直接运行的话会弹出一个简单的图形界面: 另外,还有个证书管理器 certmgr.msc,看上去功能更多一些,不过这个是纯图形界面的: certmgr.exe 可以通过该工具实现证书的管理操作: D:>certmgr.exe /? Usage: CertMgr [options][-s [-r <location>][SourceStoreName] [-s [-r <location>][DestinationStoreName] Options: -add Add cert....

More...