作者回复: √
作者回复: 什么错误,说出来看看。
作者回复: 本地证书是用来做双向认证的,服务器用客户端的证书来验证客户端的证书。
通常我们上网是单向认证,只验证服务器的身份,客户端(也就是用户)的身份不用证书验证。
作者回复: √
作者回复: 如果网站是http而不是https,那么浏览器就会认为网站不安全,有风险。
如果证书内容不完善,或者被列入了黑名单,那么浏览器也可以提示用户有危险。
这些的关键都是证书,用证书里的信息,来验证网站的有效性、真实性。
因为证书用来证明网站的身份,就像身份证、学位证一样,如果随便颁发,那么它的可靠性就得不到保证,所以必须要由指定信任的专门机构来颁发,由ca来“背书”,保证证书和它关联的网站是安全可靠的。
作者回复:
1.如果网站的证书不可信(过期、失效、被废除、伪造),那么就可以说明网站是不安全的,而http不能对网站有任何的认证措施。
2.证书有dv、ov、ev三种,能从ca的层面证明网站的所有者。
3.当然,如果网站故意作恶,https也无法制止,它只能证明网站确实是如证书所声明的,不是假冒的。
作者回复:
1.正确。
2.机密性主要用对称加密实现,非对称加密虽然也可以,但是效率太低,不实用。
作者回复: 是的,可能有这个隐患,就跟des一样。
作者回复:
往后看,后面都会讲,有不理解的再问。
作者回复: 这个分层没有统一的定论,ssl/tls在tcp/ip里属于应用层,但不能准确对应到osi的某一层,因为它即有会话功能,又有加解密表示。
我们只要会用、理解就行,不要过于拘泥于学术。
作者回复:
good。
作者回复: GmSSL是OpenSSL的分支,但应用的并不广,nginx、Apache等项目并没有提供官方支持,可能需要比较多的自己开发改造了。
我觉得可以看一下它的官方文档,如何替换OpenSSL。
作者回复: 认真的学习态度!
作者回复: https传输的内容是加密的,所以抓包后看不到明文,是无法窜改数据的。
但xss属于内容攻击,报文本身是合法的,所以它不能防止。
https只能保证数据传输安全,但在链接的两端不能提供保护。
作者回复: sha256保证的是完整性,不能实现机密性。
作者回复: SM系列算法是国产算法,但在国际上用的不多。
作者回复: 可以看一下https的协议栈,它的下面还是tcp/ip。
拿OpenSSL来说,它提供了一系列的接口函数,比如SSL_read、SSL_write,加密后封装成tls记录,再交给tcp传输。
作者回复: 应该在wireshark里看一下这些tcp包的端口、发送方向,应该不是https相关的包,可以过滤一下试试。
https必须在ssl/tls握手之后才能发送http报文。
作者回复: √