HTTPS原理我们先来看看黑客是如何盗取客户端和服务端通讯的真实报文的。对称密钥对称密钥是客户端和服务端加解密时共用的一个密钥,因为是共用密钥,必然存在一个密钥传输的过程,黑客可以通过截取报文的方式拿到这个对称密钥,对后续的密文进行解密。非对称密钥非对称密钥是客户端和服务端各保有一对自己的公私钥,并将公钥发送给对方。发送方用对方的公钥加密数据,用自己的私钥签名数据,接收方收到密文后,用对方的公钥验签,用自己的私钥解密数据。由于在双方通讯过程中不存在私钥的传输,黑客就无法轻易地直接从报文中拿到私钥。但也并非无懈可击了,黑客可以在中间通过模拟客户端和服务端,分别对双方进行欺骗,获取到真实报文:首先
文章目录1单例模式回顾2饿汉式单例模式的实现3懒汉式单例模式的实现4单例模式的线程安全问题分析5线程安全的懒汉式实现6总结1单例模式回顾 单例模式是设计模式的一种。而设计模式就是针对我们实际开发中写代码所遇到的不同场景所设立的解决方案。在笔者JavaSE阶段的文章中,我们曾经聊到过单例模式,这里给出文章链接,有兴趣的读者可以自行阅读:单例模式懒汉式与饿汉式的实现,在本文中,笔者也会进行必要的总结。下面,进入正文: 所谓类的单例设计模式,就是采用一定的方法保证在整个软件系统中,对某一个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法。常见的实现方式有两种,懒汉式和饿汉式。 这里的懒
win10操作系统,使用git命令或在idea下checkout项目代码,报权限认证失败问题。使用git进行代码管理,曾使用git命令或在idea下使用https项目地址进行checkout,都是正常的。这次新项目使用大禹进行代码管理,项目权限已正常赋予。但clone项目报认证失败问题,在gitbash中也查看用户与密码,都是正常的,大禹中也设置了https密码。最终在git 命令中,使用“gitclone 项目的https地址” 命令,报错是“https账号或密码错误“,,原来是系统默认了git账号与密码,需要使用大禹中设置的https账号与密码。解决方案: 在win10控制面板-> 用户账
前言最近在折腾内部部署Web服务。通过Vue实现一个H5的内部的管理服务。但在实际部署过程中由于种种原因,必须部署成Https服务。但在部署成Https服务后,由于没有HTTPS证书,每次进入页面都会被浏览器拦截。使用起来非常不便。于是开始各种Google折腾,终于实现了在导入证书的基础上部署HTTPS服务。接下来,和大家一起分享下整个部署过程。前置条件由于HTTPS证书必须和域名关联,所以我们必须有一个公网域名。具体大家就根据在各大域名运营商购买即可。PS:公网域名仅仅是用于申请HTTPS证书。并不是说咱们的服务要部署到公网。大致流程购买公网域名。在域名服务提供商申请免费的HTTPS证书。自
Nginx配置-SSL准备ssl证书配置示例配置强制http访问也走https准备ssl证书可以直接从阿里云控制台申请免费证书(每年20个,每个有一年有效期)也可以使用自签证书,Nginx解决通过openssl自签名证书访问Https报不安全告警的问题配置示例upstreamtomcatserver{server127.0.0.1:8801max_fails=3fail_timeout=3s;server127.0.0.1:8802max_fails=3fail_timeout=3s;}server{listen8888ssl;server_namelocalhost;ssl_certific
一:IP地址IP地址(InternetProtocolAddress)是指互联网协议地址,又译为网际协议地址。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节),如:01100100.00000100.00000101.00000110,通常用“点分十进制”的方式来表示,即a.b.c.d的形式(a,b,c,d都是0~255之间的十进制整数)。如:100.4.5.6。1.1IPv4和IPv6IP协议有两个版本,IPv4和IPv6。此后,凡是提
这个错误通常表示SSL证书有问题,导致无法访问HTTPS的远程仓库。解决这个问题有几种方法:使用SSH协议而非HTTPS协议克隆仓库:gitclonegit@github.com:Geekwaner/vue3-.git这种方式需要先将SSHKey添加到GitHub账户中。忽略SSL证书验证问题(不推荐):gitclone-chttp.sslVerify=falsehttps://github.com/Geekwaner/vue3-.git这种方式会跳过SSL证书的验证,存在一定的风险,不建议在正式环境中使用。更新系统中的根证书:在某些情况下,可能是因为系统中的根证书不完整或过期导致无法验证SS
我一直对将PDF下载到移动设备感到抓狂。这是下一个疯狂,可在Android2.2和2.3上观察到。我无法在iPhone或其他设备上重现此问题,无论是在Firefox还是其他桌面浏览器上。我正在通过HTTP下载PDF,它工作正常。然后我通过HTTPS下载相同的PDF,但下载没有完成(文件名丢失):我正在使用这些HTTPheader(以及其他与此处无关的header):Content-Disposition:attachment;filename="abc.pdf"Content-Type:application/pdf将Content-Disposition更改为inline或完全删除它
ELK大家应该很了解了,废话不多说开始部署kafka在其中作为消息队列解耦和让logstash高可用kafka和zk的安装可以参考这篇文章深入理解Kafka3.6.0的核心概念,搭建与使用-CSDN博客第一步、官网下载安装包需要elasticsearch-8.10.4logstash-8.10.4kibana-8.10.4kafka_2.13-3.6.0apache-zookeeper-3.9.1-bin.tarfilebeat-8.10.4-linux-x86_64.tar第二步:环境配置(每一台都做)创建es用户 useraddes配置主机名、配置IP地址、每台主机配置/etc/hosts
前言现在的SSL的加密算法实际上主要是国际算法,包括JDK,Go等语言也仅支持国际算法加密(毕竟是国外开源项目),hash。随着国密算法的普及,比如openssl就支持国密了,还要新版本的Linux内核也开始支持,以openssl为例:那么如果需要国密证书,或者访问国密https的时候就需要特定的sslsocket的握手算法传输层密码协议(TLCP)TLCP是中国基于TLS1.1和1.2协议定制而成的协议,对应的中国国家标准为:GB/T38636-2020:传输层密码协议该协议与TLS协议的最重大区别,就是要求通信端提供两个证书:认证证书和加密证书。其中认证证书与TLS协议使用的证书功能类似,