安全证书

生成chrome识别安全的证书

生来就可爱ヽ(ⅴ<●) 提交于 2019-12-22 09:18:33
开发测试时,一般需要使用安全证书。但是,自己签名的证书总是提示不安全,影响实际测试。 这里提供生成CA证书和服务器证书的脚本。通过以下方法生成的证书,在chrome浏览器打开是安全的,不会出现不安全提醒。生成的服务器证书提供通用格式的pkcs12(后缀用.p12)和java的特有格式keystore(后缀用.jks)。这样,不管是用将j2ee开发的服务器还是nodejs等开发的服务器,都能配置证书。 验证服务器证书前,必须将CA证书导入系统信任的根证书列表。这样,全部用该CA签名的证书都是可信任的。注意,服务器证书不用再导入系统。只要CA是信任的,其它子证书都是信任的。 前提: chrome对于自签名有一定要求。只有按照要求生成,才能被认为是安全的证书。首先,证书需要有CA。也就是说,服务器的证书必须经过CA签名后,才能使用。由于keytool不能创建这种签名的证书,所以需要借助openssl。openssl可以在官网下载对应的系统版本。由于我是在windows下创建,所以下载的是windows版。下载的压缩包里面有share\openssl.cnf文件。这个文件就是配置文件。我们根据自己需要调整里面的内容就可以。如果运行openssl提示无法找到配置文件,那么把配置指向上面的文件就行。 准备: openssl-0.9.8h-1-bin(官网下载就行,我也会在楼下发一份)

为什么HTTPS比HTTP更安全?

风格不统一 提交于 2019-12-21 11:03:24
摘要: 理解HTTPS。 作者: 浪里行舟 Fundebug 经授权转载,版权归原作者所有。 前言 近几年,互联网发生着翻天覆地的变化,尤其是我们一直习以为常的HTTP协议,在逐渐的被HTTPS协议所取代,在浏览器、搜索引擎、CA机构、大型互联网企业的共同促进下,互联网迎来了“HTTPS加密时代”,HTTPS将在未来的几年内全面取代HTTP成为传输协议的主流。 读完本文,希望你能明白: HTTP通信存在什么问题 HTTPS如何改进HTTP存在那些问题 HTTPS工作原理是什么 想阅读更多优质文章请猛戳 GitHub博客 ,一年五十篇优质文章等着你! 一、什么是HTTPS HTTPS是在HTTP上建立SSL加密层,并对传输数据进行加密,是HTTP协议的安全版。现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。 HTTPS主要作用是: (1)对数据进行加密,并建立一个信息安全通道,来保证传输过程中的数据安全; (2)对网站服务器进行真实身份认证。 我们经常会在Web的登录页面和购物结算界面等使用HTTPS通信。使用HTTPS通信时,不再用 http:// ,而是改用 https:// 。另外,当浏览器访问HTTPS通信有效的Web网站时,浏览器的地址栏内会出现一个带锁的标记。对HTTPS的显示方式会因浏览器的不同而有所改变。 二、为什么需要HTTPS

Https协议详解

六月ゝ 毕业季﹏ 提交于 2019-12-20 18:07:39
HTTP 的缺点 到现在为止,我们已了解到 HTTP 具有相当优秀和方便的一面,然而 HTTP 并非只有好的一面,事物皆具两面性,它也是有不足之处的。HTTP 主要有这些不足,例举如下。 1、通信使用明文( 不加密) , 内容可能会被窃听 2、不验证通信方的身份, 因此有可能遭遇伪装 3、无法证明报文的完整性, 所以有可能已遭篡改 这些问题不仅在 HTTP 上出现,其他未加密的协议中也会存在这类问题。 除此之外,HTTP 本身还有很多缺点。而且,还有像某些特定的 Web 服务器和特定的 Web 浏览器在实际应用中存在的不足(也可以说成是脆弱性或安全漏洞),另外,用 Java 和 PHP 等编程语言开发的 Web 应用也可能存在安全漏洞。 通信使用明文可能会被窃听 由于 HTTP 本身不具备加密的功能,所以也无法做到对通信整体(使用 HTTP 协议通信的请求和响应的 内容 )进行加密。即,HTTP 报文使用明文(指未经过加密的报文)方式发送。 TCP/IP 是可能被窃听的网络 如果要问为什么通信时不加密是一个缺点,这是因为,按 TCP/IP 协议族的工作机制,通信内容在所有的通信线路上都有可能遭到窥视。 所谓互联网,是由能连通到全世界的网络组成的。无论世界哪个角落的服务器在和客户端通信时,在此通信线路上的某些网络设备 、光缆、计算机等都不可能是个人的私有物

HTTPS 原理分析——带着疑问层层深入

元气小坏坏 提交于 2019-12-16 10:16:50
HTTPS 随着 HTTPS 建站的成本下降,现在大部分的网站都已经开始用上 HTTPS 协议。大家都知道 HTTPS 比 HTTP 安全,也听说过与 HTTPS 协议相关的概念有 SSL 、非对称加密、 CA证书等,但对于以下灵魂三拷问可能就答不上了: 为什么用了 HTTPS 就是安全的? HTTPS 的底层原理如何实现? 用了 HTTPS 就一定安全吗? 本文将层层深入,从原理上把 HTTPS 的安全性讲透。 HTTPS 的实现原理 大家可能都听说过 HTTPS 协议之所以是安全的是因为 HTTPS 协议会对传输的数据进行加密,而加密过程是使用了非对称加密实现。但其实,HTTPS 在内容传输的加密上使用的是对称加密,非对称加密只作用在证书验证阶段。 HTTPS的整体过程分为证书验证和数据传输阶段,具体的交互过程如下: ① 证书验证阶段 浏览器发起 HTTPS 请求 服务端返回 HTTPS 证书 客户端验证证书是否合法,如果不合法则提示告警 ② 数据传输阶段 当证书验证合法后,在本地生成随机数 通过公钥加密随机数,并把加密后的随机数传输到服务端 服务端通过私钥对随机数进行解密 服务端通过客户端传入的随机数构造对称加密算法,对返回结果内容进行加密后传输 为什么数据传输是用对称加密? 首先,非对称加密的加解密效率是非常低的,而 http 的应用场景中通常端与端之间存在大量的交互

部署SSL证书对解决网站安全问题的重要性

◇◆丶佛笑我妖孽 提交于 2019-12-15 01:29:31
大数据时代,信息在互联网上传播时,信息时极易被获取的,很可能有第三方阅读到这些信息,也有不法分子利用这些信息来谋取利益。但在有SSL安全证书的情况下,只有接收方和发送方之间能够接受到相关信息,从而保证了用户的使用安全。 在今天高速发展网络世界,人们对于网络的依赖越来越强。在今天高度脆弱的网络市场,网络安全尤其重要。 什么是SSL证书? 它是数字证书的一种,类似于驾驶证、护照。由受信任的CA机构颁发,拥有SSL可确保您网站访问者的敏感数据通过安全网络传输。 获得SSL证书的作用: 提供身份验证:受信任的CA机构经过重重严格的身份检查才会颁发SSL证书,所以SSL证书能有效验证服务器身份,有效区别钓鱼网站,防止被冒名顶替。这也说明CA机构非常重要,安信SSL证书建议大家务必选择受信任的CA机构。 加密敏感信息:如果没有SSL证书,你和服务器之间的任何计算机都可以看到你的卡号、用户名和密码及其他敏感信息。而安装SSL证书后,除将信息发送到指定的服务器外,其他任何第三方都无法读取该信息,保护重要信息免受第三者的攻击。 提高网站信任度:安装了SSL证书,网站地址栏会显示https和安全锁图标,或是绿色地址栏,以确保公司网站对客户和合作伙伴的信任程度很高,这在进行现代商业项目时尤其重要。 提高页面加载速度:使用安全高速的HTTPS协议,能够提高网页加载速度,文字、图片、多媒体等加载更快

JDK安全证书的一个错误消息 No subject alternative names present的解决办法

空扰寡人 提交于 2019-12-14 09:34:42
我使用Java消费某网站一个Restful API时,遇到这个错误: 21:31:16.383 [main] DEBUG org.springframework.web.client.RestTemplate - Created GET request for " https://127.0.0.1:5031/commerce/product " 21:31:16.388 [main] DEBUG org.springframework.web.client.RestTemplate - Setting request Accept header to [text/plain, application/json, application/ +json, /*] Exception in thread "main" org.springframework.web.client.ResourceAccessException: I/O error on GET request for " https://127.0.0.1:5031/commerce/product ": java.security.cert.CertificateException: No subject alternative names present; nested exception is javax.net

网站安全证书出现问题提示,如何解决以正常浏览该网页?

时间秒杀一切 提交于 2019-12-09 19:33:02
在浏览器上面浏览某些网页时,突然会被提示此网站的安全证书有问题,导致无法正常浏览。其实我们都遇到过这种问题,那么遇到这种问题该如何解决?又是什么原因触发这种问题的出现? 下面介绍一下网站为何会出现安全证书有问题以及该如何解决。 1.网站证书不是由受信任的证书颁发机构颁发的 出现“SSL证书错误”还有一种情况是证书不在浏览器厂商的受信任的列表中。可通过手动添加证书安装到浏览器的“信任列表”。受信任的根证书需嵌入到流行的浏览器中,如IE、Firefox、Chrome、Apple等,如果浏览器遇到未由其中一个根签名的证书,则表明它不受信任,访问者将看到网页证书错误的消息。建议使用权威CA机构颁发的SSL证书。 2.证书名称“不匹配” 当服务器提供的SSL证书上列出的域名与浏览器连接的域名不匹配时,会出现“证书名称不匹配”,导致网页证书错误。要开始HTTPS连接,证书上的域名必须与浏览器地址栏中的域名完全匹配。 建议安装部署SSL证书时正确填写域名信息,另外浏览网页时检查输入的地址是否正确。 3.SSL证书已过期或还未生效 当出现“SSL证书错误”时,首先一定要确认好证书是否在有效期,也有可能是电脑系统日期错误。可通过查看该证书信息的有效起止日期,确定证书是否在有效期内,如在的话需查看电脑日期是否正确。否则就是第二种原因,SSL证书不在有效期内,需尽快联系证书颁发CA,进行续费。 4

HTTP与HTTPS区别、nginx配置

可紊 提交于 2019-12-06 09:40:56
协议层了解: 概念描述: SSL层是如何加密的,我们都知道非对称加密,一般网站如果希望支持https就需要向权威机构购买证书,证书包含一个公钥和私钥对,公钥发送给客户端,客户端使用这个公钥进行加密,服务端使用私钥进行解密,那么有人会问了,为什么还要向权威机构申请呢,自己构造一个得了呗,可以的, 如果你只是自己使用,但是如果你想让很多人都使用,这些人又不认识你,怎么办呢?你怎么证明你是你呢?这个时候权威机构就派上用场了,我们安装的 浏览器默认都是信任一些主流的权威机构 的,他给你发了证书,你就可以证明你是你了 工作流程的简单描述: HTTP 缺省工作在TCP协议80端口,用户访问网站http:// 打头的都是标准HTTP服务, HTTP所封装的信息是明文的 ,通过抓包工具可以分析其信息内容,如果这些信息包含有你的银行卡帐号、密码,你肯定无法接受这种服务,那有没有可以加密这些敏感信息的服务呢?那就是HTTPS! HTTPS缺省工作在TCP协议443端口,它的工作流程一般如以下方式: 1) 完成TCP三次同步握手 2) 客户端验证服务器数字证书,通过,进入步骤3 3) DH算法协商对称加密算法的密钥、hash算法的密钥 4) SSL安全加密隧道协商完成 5)网页以加密的方式传输,用协商的对称加密算法和密钥加密,保证数据机密性;用协商的hash算法进行数据完整性保护,保证数据不被篡改

http和https的区别

混江龙づ霸主 提交于 2019-12-06 04:59:26
本文链接:https://www.cnblogs.com/hello-web/p/10394178.html 一句话:HTTP+加密+认证+完整性保护=HTTPS 用https方式访问的前提是网站部署了SSL证书,如超真SSL、超安SSL等。 Https方式访问,客户端到服务器端传输的数据是加密的,即使被截获也没法破解,安全性很高;http方式访问,账户密码是明文传输的,极易泄露 http是HTTP协议运行在TCP之上。所有传输的内容都是明文,客户端和服务器端都无法验证对方的身份。 https是HTTP运行在SSL/TLS之上,SSL/TLS运行在TCP之上。所有传输的内容都经过加密,加密采用对称加密,但对称加密的密钥用服务器方的证书进行了非对称加密。此外客户端可以验证服务器端的身份,如果配置了客户端验证,服务器方也可以验证客户端的身份。 http是HTTP协议运行在TCP之上。所有传输的内容都是明文,客户端和服务器端都无法验证对方的身份。 https是HTTP运行在SSL/TLS之上,SSL/TLS运行在TCP之上。所有传输的内容都经过加密,加密采用对称加密,但对称加密的密钥用服务器方的证书进行了非对称加密。此外客户端可以验证服务器端的身份,如果配置了客户端验证,服务器方也可以验证客户端的身份。 作者:法号桑菜 链接:https://www.zhihu.com/question

HTTPS 原理分析——带着疑问层层深入

余生长醉 提交于 2019-12-06 01:53:49
HTTPS 随着 HTTPS 建站的成本下降,现在大部分的网站都已经开始用上 HTTPS 协议。大家都知道 HTTPS 比 HTTP 安全,也听说过与 HTTPS 协议相关的概念有 SSL 、非对称加密、 CA证书等,但对于以下灵魂三拷问可能就答不上了: 为什么用了 HTTPS 就是安全的? HTTPS 的底层原理如何实现? 用了 HTTPS 就一定安全吗? 本文将层层深入,从原理上把 HTTPS 的安全性讲透。 HTTPS 的实现原理 大家可能都听说过 HTTPS 协议之所以是安全的是因为 HTTPS 协议会对传输的数据进行加密,而加密过程是使用了非对称加密实现。但其实,HTTPS 在内容传输的加密上使用的是对称加密,非对称加密只作用在证书验证阶段。 HTTPS的整体过程分为证书验证和数据传输阶段,具体的交互过程如下: ** ① 证书验证阶段** 浏览器发起 HTTPS 请求 服务端返回 HTTPS 证书 客户端验证证书是否合法,如果不合法则提示告警 ** ② 数据传输阶段** 当证书验证合法后,在本地生成随机数 通过公钥加密随机数,并把加密后的随机数传输到服务端 服务端通过私钥对随机数进行解密 服务端通过客户端传入的随机数构造对称加密算法,对返回结果内容进行加密后传输 为什么数据传输是用对称加密? 首先,非对称加密的加解密效率是非常低的,而 http