开始之前,我们先模拟三个人物,三个机构
三个人物分别是张先生,杨小姐,hacker
三个术语 CA机构,数字证书,数字签名
互联网有两种加密方式
1、对称加密数据
张先生给杨小姐发送一段数据
使用对称加密
即张先生发送的数据后经加密算法加密成一段密文,杨小姐接收数据后用相同的密码进行解密,
这时加密的密码和解密的密码是一致的,嗯,这种加密方式方便简单,数据传输时相当于包了一层隐藏膜,无法直接看到真实信息,
但是,我们的hacker捕获了这串密文,并用相同的密码对其进行解密,这时候真实的信息就暴露出来了,此时hacker再用相同的密码加密密文发送给杨小姐,会引发信息传递的缺失或扭曲,极其不安全
2、非对称加密
这就涉及到公钥和私钥,
公钥可以解密私钥加密的数据,私钥可以解密公钥加密的数据
但是,公钥不能解密公钥,私钥不能解密私钥
杨小姐在接收数据前,先给张先生发送一个公钥,张先生在接收公钥后,用公钥加密数据发送给杨小姐
杨小姐再用私钥解密数据,这是就能获取到真实的信息
如果hacker获取到了公钥,那么他就不能用杨小姐的公钥去解密张先生发送的信息
但是,hacker很聪明,啊不,应该说狡诈
当hacker拦截到杨小姐给的公钥后,hacker自己生成了一个公钥发送给张先生
张先生误以为他接收到的公钥是杨小姐发送给他的
所以张先生就用hacker的公钥发送信息(密文)给杨小姐
如果杨小姐直接接收到了张先生的密文,将无法用她的私钥解开密文,造成信息的缺失
或者杨小姐接收到了hacker给她的用杨公钥加密的信息,也会造成信息的扭曲
这怎么办呢?
此时就要由第三方权威作为担保人,来证明公钥的合法性
这就是CA(Certificate Authority)证书授权中心
杨小姐在发送数据前,先向CA发送自己的公钥并申请CA担保,经过层层认证,例如有没有黑历史什么的
CA会回馈给杨小姐一个数字证书,这个数字证书是CA将杨小姐的公钥经过包装、标记和加密而生成的
这时,杨小姐就会发这个数字证书发送给张先生,同样,hacker也会拦截到这个证书并向张先生发送hacker的数字证书,这不是和上一个情形一样吗?别急
张先生接收到数字证书后,会向CA发送他接收到的数字证书是不是属于杨小姐的,如果属于杨小姐,张先生才使用这个数字证书加密数据
但是,你有张良计,我有过墙梯
hacker也会截取到杨小姐的数字证书,并拦截张先生加密后的密文,再自己发送数据给杨小姐
为了解决这个问题
杨先生在发送密文前,会向CA发送自己的私钥,CA同样会回馈张先生一个密码,这个密码称之为数字签名
张先生会先把数字签名和密文发送给杨小姐,
杨小姐收到后会向CA获取数字签名所属,
如果数字签名属于张先生,那么这个密文的可信度就会大大增加了
虽然说hacker也可以做移花接木的同坐,但是hacker在获取数字证书和数字签名的难度会大大增加,在一定程度上保证了信息的加密
PS:说起来好长,其实这只是毫秒级的东西,并且所有的操作都是由计算机完成的
信息的安全不是绝对的,没有说有不能解密的信息,毕竟,你用锁把信息锁上了,在用个保险柜把他进一步锁上,还是会有开锁的钥匙,我们只能保证我们的信息尽可能加密,用更加优秀的加密技术提高信息的安全性,给hacker添堵,就算最终信息泄露了,也能恶心一下hacker不是吗?
为了配置https连接
我们在开发网站时,要先给自己的网站配置数字证书
java自带一个工具,具体代码如下
keytool -genkey -alias tomcat -keyalg RSA
cmd运行即可
名词解释
keytool -- java自带的工具包
genkey -- 产生键值对
alias tomca t-- 取个别名
keyalg RSA -- 采用RSA算法加密
接下来配置tomcat,是tomcat能使用主机配的数字证书
地址如下:
E:\JavaWebTool\apache-tomcat-8.0.46-windows-x64\apache-tomcat-8.0.46\conf\service.xml
代码如下
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" keystoreFile = "数字证书文件路径" keystorePass = "密码"/>
配置成功后重启apache
进入浏览器通过相应的端口打开localhost
记住一定要是https协议
能打开就成功了
PS:一般浏览器会提示数字证书有问题,因为你的数字证书并没有得到CA的承认,但如果强行访问,还是可以的

基础密码学与https配置相关推荐

  1. Spring Cloud Alibaba基础教程:Nacos配置的多环境管理

    <Spring Cloud Alibaba基础教程>连载中,关注我一起学期!前情回顾: <使用Nacos实现服务注册与发现> <支持的几种服务消费方式> <使 ...

  2. Openstack基础环境交换机常用配置(CISCO 3750G为例).md

    Openstack基础环境交换机常用配置(CISCO 3750G为例) 文章目录 Openstack基础环境交换机常用配置(CISCO 3750G为例) 基础操作 初始化配置 备份原交换机配置 交换机 ...

  3. 五分钟搞定 HTTPS 配置,二哥手把手教

    01.关于 FreeSSL.cn FreeSSL.cn 是一个免费提供 HTTPS 证书申请.HTTPS 证书管理和 HTTPS 证书到期提醒服务的网站,旨在推进 HTTPS 证书的普及与应用,简化证 ...

  4. http升级到https配置

    为什么要使用 HTTPS ? 首先来说一下 HTTP 与 HTTPS 协议的区别吧,他们的根本区别就是 HTTPS 在 HTTP 协议的基础上加入了 SSL 层,在传输层对网络连接进行加密.简单点说在 ...

  5. 动态主机配置协议服务器不能提供,计算机网络基础课程—动态主机配置协议(Dhcp)...

    原标题:计算机网络基础课程-动态主机配置协议(Dhcp) DHCP(RFC 2131,2132)是对BOOTP的扩展,这种扩展体现在两个方面: 能在一个DHCP消息中为客户提供所有的网络配置信息,如I ...

  6. 计算机网络基础ios指令,蔡少云——计算机网络实验:IOS命令基础及交换机基本配置.doc...

    <计算机网络实验>实验报告 学 院 管理学院 专 业 电子商务 年级班别 2013级1班 学 号 3213004774 学生姓名 蔡少云 指导教师 黄益民 成 绩_____________ ...

  7. CAS_SSO单点登录实例详细步骤(转)、Tomcat ssl(https) 配置

    CAS_SSO单点登录实例详细步骤(转).Tomcat ssl(https) 配置 博客分类: SSO&CAS&Identity Java.Tomcat 0, 从CAS官网下载最新版本 ...

  8. HTTPS配置全记录

    HTTPS配置全记录 环境 常见的部署环境和条件有以下几种情况组合: Apache+自签名证书 Apache+免费或商业证书 Nginx+自签名证书 Nginx+免费或商业证书 免费证书和商业证书本质 ...

  9. Maven - 基础入门与安装配置

    Maven - 基础入门与安装配置 [1]Maven基础入门 Maven的核心程序中仅仅定义了抽象的生命周期,但是具体的工作必须由特定的插件来完成.而插件本身并不包含在Maven的核心程序中. 当我们 ...

最新文章

  1. 系统遇到并发瓶颈时的优化方向
  2. GitHub/GitLab/Gitee中项目互拷贝后仍保留历史提交记录的方法
  3. Bloom Filter 大规模数据处理利器
  4. hibernate的中文问题的解决方案
  5. Spark 1.1.1 Programing Guide
  6. 使用Code First Migrations依据代码更新数据库结构
  7. 网站添加页面热力图--百度统计
  8. Android 5.0有哪些变化
  9. Oracle统计信息锁,oracle 由于impdp 引起的表统计信息被锁 ORA-20005: object statistics are locked...
  10. 标量、向量、矩阵、张量
  11. paip.租房宝付房租功能抓包总结
  12. ARP攻击实战以及防御手段
  13. 前端面试-面试官常见问题
  14. Java实现论坛系统
  15. killer杀手网卡linux,板载四块Killer网卡,微星Z370 GODLIKE GAMING主板实物图赏
  16. 如何将mkv转换mp4格式?
  17. html中版权怎么写,html版权符号代码怎么打?通过什么方式输入?
  18. jenkins+maven+jmeter.修改jmeter.results.shanhe.me.xsl文件,显示响应信息,请求头等信息.
  19. 黑群晖Apache Http Server 启动失败错误
  20. 股票 市盈率(PE)

热门文章

  1. python自动点赞功能
  2. LINUX sbd stonith
  3. php验证身份证是否正确
  4. 第五章BIOS设置与硬盘分区
  5. linux安装mysql四种方式
  6. 解决springboot报错:OTS parsing error: incorrect file size in WOFF header
  7. 浏览器本地存储-localStorage的介绍和使用
  8. win驱动移植linux,LCD移植 - 基于Tiny210v2的Linux-3.9.6内核驱动移植_Linux编程_Linux公社-Linux系统门户网站...
  9. 跳出多层循环: C++输入一个面积,求长和宽,要求长宽尽量相等
  10. 使用ExecuteReader时报错“阅读器关闭时尝试调用Read无效”的解决办法