对称加密:加密和解密用的是同样的密钥。

非对称加密:使用一对密钥,公钥和私钥,私钥只由一方保管,不能外泄;公钥可以发给任何请求它的人

那么得到公钥的一方怎么确定这个公钥是服务器发过来的呢?

  这个就需要就公钥到第三方认证机构认证,生成数字证书,这个数字证书里面包含有公钥。

现在客户端要向服务器发送消息,服务器怎么知道这个消息是A发过来的而不是B或者C发过来的呢?

  这时客户端也生成一对公钥和私钥,私钥自己保管,公钥向外发布。客户端将数据和数据的数字签名(也叫消息摘要,数据经MD5算法生成的)一起用私钥加密,然后传送给服务器端。

服务器能用公钥打开,说明是A发过来的(不是B或C);再将数据用MD5算法生成消息摘要,与传送过来的消息摘要是一致的说明数据没有被篡改。

对称加密和非对称加密比较

(1) 对称加密加密与解密使用的是同样的密钥,所以速度快,但由于需要将密钥在网络传输,所以安全性不高。

(2) 非对称加密使用了一对密钥,公钥与私钥,所以安全性高,但加密与解密速度慢。

(3) 解决的办法是将对称加密的密钥使用非对称加密的公钥进行加密,然后发送出去,接收方使用私钥进行解密得到对称加密的密钥,然后双方可以使用对称加密来进行沟通。

在实际开发中我们一般将对称加密的密钥使用非对称加密算法来传送过去。

(1) Alice需要在银行的网站做一笔交易,她的浏览器首先生成了一个随机数作为对称密钥。

(2) Alice的浏览器向银行的网站请求公钥。

(3) 银行将公钥发送给Alice。

(4) Alice的浏览器使用银行的公钥将自己的对称密钥加密。

(5) Alice的浏览器将加密后的对称密钥发送给银行。

(6) 银行使用私钥解密得到Alice浏览器的对称密钥。

(7) Alice与银行可以使用对称密钥来对沟通的内容进行加密与解密了。

tomcat配置加密的链接器

使用jdk自带的keytool工具生成密钥库输入:

1,keytool -genkey -alias tomcat -keyalg RSA,接着注意您的名字和姓氏填写网站名如localhost。生成keystore文件。

2,将.keystore文件放到tomcat的conf文件夹下面。

3,在conf文件夹下有一个server.xml文件,配置htttps连接器,加入参数keystoreFile和keystorePass。

如果想将所有请求都转化为https连接,可以将8443端口修改为443端口,同时修改conf文件夹下面的web.xml,在<welcom-list-file/>标签后面加入下面这一段话。

  1. <security-constraint>
  2. <!-- Authorization setting for SSL -->
  3. <web-resource-collection >
  4. <web-resource-name >SSL</web-resource-name>
  5. <url-pattern>/*</url-pattern>
  6. </web-resource-collection>
  7. <user-data-constraint>
  8. <transport-guarantee>CONFIDENTIAL</transport-guarantee>
  9. </user-data-constraint>
  10. </security-constraint>

tomcat配置加密的连接器https的更多相关文章

  1. TOMCAT配置SSL认证为HTTPS协议服务

     1 . 问题概述 很多安全性要求较高的系统,都会使用安全套接字层(SSL)进行信息交换, Sun为了解决在Internet上的实现安全信息传输的解决方案.它实现了SSL和TSL(传输层安全)协议 ...

  2. Tomcat 配置加密的服务器连接器

    先查询API,找到Configuration里面的Connector的HTTP中的SSL(加密连接器) SSL abbr. Security Socket Layer 加密套接字协议层   利用已生成 ...

  3. tomcat 配置http跳转https

    web.xml增加配置 <security-constraint> <web-resource-collection > <web-resource-name >S ...

  4. Tomcat配置https加密连接

    配置https安全连接(ssl加密连接) https连接需要用到数字证书与数字签名(MD5算法),网站https连接首先需要申请数字证书,配置加密连接器,浏览器安装证书. 证书运用到RSA技术,RSA ...

  5. Tomcat----->软件密码学基础配置tomcat http连接器 https

    公钥只能私钥解开,私钥只能公钥解开. 类似于别人给你一个盒子,你用他的盒子和自己盒子加密,他手中有他的钥匙和自己的钥匙,可以解开就既能证明是你发的也能相信内容. 每个数据有自己的数据指纹,数据指纹是由 ...

  6. 单点登录 SSO, 自动登录 , java 加密,ssl原理, Tomcat配置SSL

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha 单点登录的英文简称为SSO(single sign on),单点登录功能使得用户只要登录 ...

  7. nginx,apache,tomcat配置https的阿里提供的文档

    安装证书 ( 1 ) 打开 Nginx 安装目录下 conf 目录中的 nginx.conf 文件,找到 # HTTPS server # #server { # listen 443; # serv ...

  8. Tomcat8配置Https协议,Tomcat配置Https安全访问,Tomcat Https配置

    Tomcat8配置Https协议,Tomcat配置Https安全访问,Tomcat Https配置 ============================== ©Copyright 蕃薯耀 2017 ...

  9. Tomcat 配置Https

    https://www.cnblogs.com/wanghaoyuhappy/p/5267702.html JDK1.8 keytool 生存证书 C:\keys\tomcat.keystore 1: ...

随机推荐

  1. eclipse设置字体

  2. void in javascript是一个指定要计算表达式但不返回值的运算符

    void in javascript是一个指定要计算表达式但不返回值的运算符.void运算符使用格式如下:1.javascript:void(表达式)2.javascript:void表达式表达式是要 ...

  3. 配置Notepad++万能调试

    需求: 正常情况下 使用notepad++编辑修改一些网页或脚本文件,修改之后想要查看效果需要Ctrl+S保存,然后从文件目录中打开查看. 现在我想做的就是简化查看效果的流程,让notepad++实现 ...

  4. /proc/filesystems各字段含义

    /proc/filesystems A text listing of the filesystems which were compiled into the kernel. Incidentall ...

  5. Oracle【多表查询操作(SQL92&SQL99)】

    多表联合查询:需要获取的数据分布在多张表中 SQL92: --笛卡尔积:将多个表的数据进行一一对应,所得的结果为多表的笛卡尔积 select * from emp; select * from dep ...

  6. 给Eclipse安装MinGW

    @2019-06-30 [小记] 安装完Eclipse后Toolchains只有Cross GCC,下载安装MinGW后添加系统环境变量即可

  7. pip命令及虚拟环境的建立

    以下命令是pip命令,是帮助我们安装解决python所需要的环境包 列出已经安装的包 pip list 安装要安装的包 pip install 包名 安装特定版本 pip install django ...

  8. python日志分割(转)

    按文件大小分割:RotatingFileHandler 按时间分割:TimedRotatingFileHandler import logging from logging.handlers impo ...

  9. 分析bug是前端还是后端的

    如何分析一个bug是前端还是后端的? 平常提bug的时候,前端开发和后端开发总是扯皮,不承认是对方的bug 这种情况很容易判断,先抓包看请求报文,对着接口文档,看请求报文有没问题,有问题就是前端发的数 ...

  10. netty-1.从一个最简单的例子开始

    (原) 第一篇,从一个最简单的例子开始 1.netty是干什么,怎么用,这里不作介绍,先从一个例子来了解它, netty 5.0以上的版本被废弃了,以下例子从4.1.10.Final版本开始. 2.一 ...