HTTPS通讯说明
- 格式:docx
- 大小:259.83 KB
- 文档页数:10
HTTPS那些协议:TLS,SSL,SNI,ALPN,NPN1、肉鸡:所谓“肉鸡”是一种很形象的比喻,比喻那些可以随意被我们控制的电脑,对方可以是WINDOWS系统,也可以是UNIX/LINUX系统,可以是普通的个人电脑,也可以是大型的服务器,我们可以象操作自己的电脑那样来操作它们,而不被对方所发觉。
2、木马:就是那些表面上伪装成了正常的程序,但是当这些被程序运行时,就会获取系统的整个控制权限。
有很多黑客就是热中与使用木马程序来控制别人的电脑,比如灰鸽子,黑洞,PcShare等等。
3.网页木马:表面上伪装成普通的网页文件或是将而已的代码直接插入到正常的网页文件中,当有人访问时,网页木马就会利用对方系统或者浏览器的漏洞自动将配置好的木马的服务端下载到访问者的电脑上来自动执行。
4、挂马:就是在别人的网站文件里面放入网页木马或者是将代码潜入到对方正常的网页文件里,以使浏览者中马。
5、后门:这是一种形象的比喻,入侵者在利用某些方法成功的控制了目标主机后,可以在对方的系统中植入特定的程序,或者是修改某些设置。
这些改动表面上是很难被察觉的,但是入侵者却可以使用相应的程序或者方法来轻易的与这台电脑建立连接,重新控制这台电脑,就好象是入侵者偷偷的配了一把主人房间的要是,可以随时进出而不被主人发现一样。
通常大多数的特洛伊木马(Trojan Horse)程序都可以被入侵者用语制作后门(BackDoor)6、rootkit:rootkit是攻击者用来隐藏自己的行踪和保留root(根权限,可以理解成WINDO WS下的system或者管理员权限)访问权限的工具。
通常,攻击者通过远程攻击的方式获得root访问权限,或者是先使用密码猜解(破解)的方式获得对系统的普通访问权限,进入系统后,再通过,对方系统内存在的安全漏洞获得系统的root权限。
然后,攻击者就会在对方的系统中安装rootkit,以达到自己长久控制对方的目的,r ootkit与我们前边提到的木马和后门很类似,但远比它们要隐蔽,黑客守卫者就是很典型的rootkit,还有国内的ntroorkit等都是不错的rootkit工具。
• 1 安装及下载client 端• 2 什么是SVN(Subversion)?• 3 为甚么要用SVN?• 4 怎么样在Windows下面建立SVN Repository?• 5 建立一个Working目录• 6 新增档案及目录到Repository中•7 更新档案及目录•8 更新至特定版本•9 复制档案及目录•10 制作Tag或是Release•11 快速参考o11.1 取得(Checkout)Repositoryo11.2 更新(Update)档案或目录o11.3 新增(Add)档案或目录o11.4 提交(Commit)修改过的档案或目录o11.5 Copy/Tag/Branch/Release档案或目录安装及下载client 端1.下载Windows 端程序:/downloads。
一般而言,如果是32-bit的Windows XP 应该使用TortoiseSVN-1.4.x.xxxx-win32-svn-1.4.x.msi 这个档案。
如果是64-bit 的操作系统,则应该使用TortoiseSVN-1.4.x.xxxx-x64-svn-1.4.x.msi 这个档案。
2.执行下载回来的TortoiseSVN 安装程序,就会进行TortoiseSVN 的安装。
正确安装后,应该进行一次的重开机,以确保TortoiseSVN 的正确无误。
3.安装成功后,在档案管理员内按下鼠标右键,应该可以看到如下的画面:大部分的TortoiseSVN的操作都是透过档案管理员及鼠标右键就可以完成了。
如果您之前使用过TortoiseCVS,应该会对这种操作方式感到十分亲切。
什么是SVN(Subversion)?有一个简单但不十分精确比喻:SVN = 版本控制 + 备份服务器简单的说,您可以把SVN当成您的备份服务器,更好的是,他可以帮您记住每次上传到这个服务器的档案内容。
并且自动的赋予每次的变更一个版本。
通常,我们称用来存放上传档案的地方就做Repository。
网页浏览端口https端口号是多少
网页浏览端口https端口号是多少?由于有些网站其网址前面是https开头,而不是普通的http,那么,https的端口号是多少?针对此问题,小编就为大家介绍一下吧!
具体内容:
https端口号是多少?
https端口:443
服务项目:Https
网页浏览端口,能提供加密和通过安全端口传输的另一种HTTP,简单来说,就是HTTP安全版,打开的网页中,如果网址前缀为https,则说明该网站开启了
https安全访问。
说明:443端口用于网页浏览,关闭电脑443端口,将会导致https网页无法正常打开。
——类似端口,HTTP
80端口
服务:HTTP
说明:用于网页浏览,关闭电脑80端口,将会导致无法打开网页。
HTTPS安全超文本传输协议,它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换信息。
https和http 最大区别在于前者通过安全加密,更安全。
二层网管交换机TL-SG3109/TL-SL3452用户手册Rev2.0.21910040113声明Copyright © 2010 深圳市普联技术有限公司版权所有,保留所有权利未经深圳市普联技术有限公司明确书面许可,任何单位或个人不得擅自仿制、复制、誊抄或转译本书部分或全部内容。
不得以任何形式或任何方式(电子、机械、影印、录制或其他可能的方式)进行商品传播或用于任何商业、赢利目的。
为深圳市普联技术有限公司注册商标。
本文档提及的其他所有商标或注册商标,由各自的所有人拥有。
本手册所提到的产品规格和资讯仅供参考,如有内容更新,恕不另行通知。
除非有特殊约定,本手册仅作为使用指导,本手册中的所有陈述、信息等均不构成任何形式的担保。
目录物品清单 (1)WEB界面用户手册 (2)第1章开始 (4)1.1使用TP-LINK内置WEB界面前所需的配置 (4)1.2启用TP-LINK内置WEB界面 (6)1.3理解TP-LINK内置WEB界面 (7)1.3.1设备表示 (8)1.3.2使用内置WEB界面管理按钮 (8)1.4页面和表单的使用 (9)1.4.1添加配置信息 (9)1.4.2修改配置信息 (9)1.4.3删除配置信息 (10)1.5设备复位 (10)1.6从设备上注销登录 (11)第2章配置设备信息 (12)第3章配置系统时间 (13)3.1配置夏令时时间 (13)3.2配置SNTP (17)3.2.1SNTP概述 (17)3.2.1.1检测单播时间信息 (18)3.2.1.2检测任意播时间信息 (18)3.2.1.3检测广播时间信息 (18)3.2.2定义SNTP全局设置 (18)3.2.3配置SNTP认证 (19)3.2.4定义SNTP服务器 (21)3.2.5定义SNTP接口设置 (22)第4章配置系统日志 (24)4.1定义一般日志属性 (24)4.2查看内存日志 (25)4.3查看闪存日志 (26)4.4定义系统日志服务器 (27)第5章设备安全配置 (29)5.1管理安全配置 (29)5.1.1认证方法配置 (29)5.1.1.1定义访问配置文件 (29)5.1.1.2定义配置文件规则 (32)5.1.1.3定义认证配置文件 (34)5.1.1.4映射认证配置文件 (36)5.1.1.5TACACS+主机设置 (38)5.1.1.6RADIUS服务器设置 (40)5.1.2密码配置 (42)5.1.2.1设定本地用户 (42)5.1.2.2设定连接密码 (43)5.1.2.3设定启用密码 (44)5.2网络安全配置 (45)5.2.1网络安全概述 (45)5.2.1.1基于端口的认证 (45)5.2.1.2基于端口的高级认证 (45)5.2.2定义网络认证属性 (46)5.2.2.1定义端口认证属性 (47)5.2.2.2配置多台主机 (49)5.2.2.3定义认证主机 (50)5.2.3配置流量控制 (51)5.2.3.1管理端口安全 (51)5.2.3.2启用风暴控制 (53)第6章定义IP地址 (55)6.1定义IP地址 (55)6.1.1定义IP地址 (55)6.1.2定义默认网关 (57)6.1.3定义DHCP地址 (57)6.1.4设定ARP (58)6.2定义域名系统 (60)6.2.1定义DNS服务器 (60)6.2.2配置主机映射 (62)第7章接口配置 (63)7.1配置端口 (63)7.2配置链路聚合组(LAG) (66)7.2.1定义LAG成员 (66)7.2.2配置LACP (68)7.3配置VLAN (69)7.3.1定义VLAN属性 (70)7.3.2定义VLAN成员组 (71)7.3.3定义VLAN接口 (73)7.3.4GARP配置 (74)7.3.5定义GVRP (76)第8章定义传输数据库 (78)8.1静态地址配置 (78)第9章配置生成树协议 (81)9.1经典STP配置 (81)9.1.1定义STP属性 (81)9.1.2STP接口设置 (83)9.2快速STP配置 (85)9.3多重STP配置 (88)9.3.1定义MSTP属性 (88)9.3.2配置MSTP实例 (89)9.3.3配置MSTP VLAN实例 (90)9.3.4配置MSTP接口 (91)第10章配置组播转发 (94)10.1启用IGMP侦听 (94)10.2定义组播组 (96)10.3定义全部组播发送属性 (98)第11章配置SNMP管理 (100)11.1SNMP版本1和版本2c (100)11.2SNMP版本3 (100)11.3定义SNMP安全性 (101)11.3.1定义SNMP全局参数 (101)11.3.2定义SNMP视图 (102)11.3.3定义SNMP组 (103)11.3.4定义SNMP组成员 (104)11.3.5定义SNMP团体 (107)11.3.5.1SNMP团体基本表 (107)11.3.5.2SNMP团体高级表 (108)11.4.1定义SNMP报告属性 (109)11.4.2定义报告过滤 (110)11.4.3定义报告接收 (111)11.4.3.1SNMPv1,2通知接收设备 (111)11.4.3.2SNMPv3通知接收设备 (112)第12章配置服务质量 (114)12.1服务质量概述 (114)12.1.1映射到队列 (115)12.1.2QoS模式 (116)12.1.2.1基本QoS模式 (116)12.1.2.2高级QoS模式 (117)12.2启用服务质量 (117)12.2.1启用服务质量 (117)12.2.2定义队列 (119)12.3队列映射 (119)12.3.1映射CoS值到队列 (120)12.3.2映射QoS值到队列 (120)第13章管理系统文件 (122)13.1下载系统文件 (122)13.1.1下载类型 (123)13.1.2Firmware下载 (123)13.1.3配置下载 (123)13.2上传系统文件 (124)13.2.1上传类型 (124)13.2.2软件文件上传 (124)13.2.3配置上传 (125)13.3使用映像文件 (125)13.4复制系统文件 (126)第14章设备诊断 (127)14.1配置端口镜像 (127)14.2查看所有电缆测试 (129)14.3查看光收发器 (129)第15章查看统计信息 (131)15.1查看接口统计信息 (131)15.1.1查看接口统计信息 (131)15.1.2查看以太网类统计信息 (132)15.1.3查看GVRP统计信息 (134)15.1.4查看EAP统计信息 (135)15.2RMON统计的管理 (137)15.2.1查看RMON统计信息 (137)15.2.2配置RMON历史记录 (139)15.2.2.1定义RMON历史记录控制 (139)15.2.2.2查看RMON历史记录表 (140)15.2.3配置RMON事件 (142)15.2.3.1设置RMON事件控制 (142)15.2.3.2查看RMON事件日志 (143)15.2.4定义RMON警报 (144)附录术语表 (147)交换机初始配置指南 (157)第1章交换机初始配置 (158)1.1配置终端 (158)1.2安装步骤 (158)1.3启动交换机 (159)1.4配置总览 (160)1.4.1初始配置 (161)1.4.1.1静态IP与子网掩码 (161)1.4.1.2给默认VLAN分配静态IP地址 (162)1.4.1.3用户名 (163)1.4.1.4SNMP团体名称 (164)1.5高级配置 (165)1.5.1从DHCP服务器上获取IP地址 (165)1.5.2从BOOTP服务器获取IP地址 (166)1.5.3安全管理和密码设置 (167)1.5.3.1设置安全密码 (167)1.5.3.2设置初始控制台(Console)密码 (167)1.5.3.3设置初始Telnet密码 (167)1.5.3.4设置初始SSH密码 (168)1.5.3.5设置初始HTTP密码 (168)1.5.3.6设置初始HTTPS密码 (168)1.6使用启动菜单 (169)1.6.1软件下载 (170)1.6.1.1通过TFTP服务器来下载软件 (170)1.6.1.2通过Xmodem协议来下载软件 (172)1.6.2擦除闪存文件[选项2] (173)1.6.3密码恢复[选项3] (173)1.6.4进入诊断模式[选项4] (174)1.6.5设置终端波特率[选项5] (174)物品清单小心打开包装盒,检查包装盒里应有的配件:¾一台交换机¾一根交流电源线¾带有DB-9连接器的串口线¾一套《用户手册》及光盘¾一张保修卡¾两个用来将交换机固定在机架上的L型支架及其它配件如果发现包装箱内有任何物品的缺失或损坏,请立即与销售该产品的经销商或者与最近的本公司的销售人员联系。
声明服务修订:●本公司保留不预先通知客户而修改本文档所含内容的权利。
有限责任:●本公司仅就产品信息预先说明的范围承担责任,除此以外,无论明示或默示,不作其它任何担保,包括(但不限于)本手册中推荐使用产品的适用性和安全性、产品的适销性和适合某特定用途的担保。
●本公司对于您的使用或不能使用本产品而发生的任何损害不负任何赔偿责任,包括(但不限于)直接的、间接的、附加的个人损害或商业损失或任何其它损失。
版权信息:●任何组织和个人对本公司产品的拥有、使用以及复制都必须经过本公司书面的有效授权。
网神信息技术(北京)股份有限公司目录一、概述 (1)二、安全网关硬件描述 (1)三、安全网关安装 (2)1.安全使用注意事项 (2)2.检查安装场所 (3)2.1 温度/湿度要求 (3)2.2 洁净度要求 (4)2.3 抗干扰要求 (4)3.安装 (4)4.加电启动 (5)四、通过CONSOLE口的命令行方式进行管理 (5)1.选用管理主机 (5)2.连接安全网关 (6)3.登录CLI界面 (7)4.命令行快速配置向导 (8)五、通过WEB界面进行管理 (16)1.选用管理主机 (16)2.安装认证驱动程序 (16)3.安装USB电子钥匙 (16)4.连接管理主机与安全网关 (17)5.认证管理员身份 (17)6.登录安全网关WEB界面 (18)7.许可证导入 (19)8.WEB界面配置向导 (20)六、常见问题解答FAQ (26)一、概述SecGate 3600安全网关缺省支持两种管理方式:(1) 通过CONSOLE口的命令行管理方式(2) 通过网口的WEB(https)管理方式CONSOLE口的命令行管理方式适用于对安全网关操作命令比较熟悉的用户。
WEB 方式更直观方便,为保证安全,WEB方式连接之前需要对管理员身份进行认证。
要快速配置使用安全网关,推荐采用CONSOLE口命令行方式;日常管理监控安全网关时,WEB方式则是更方便的选择。
HTTPS原理解析及应用实例HTTPS(Hypertext Transfer Protocol Secure)是一种通过加密和身份验证来保护网络通信的安全协议。
它是在HTTP协议基础上添加了SSL/TLS协议,通过使用SSL/TLS协议对数据进行加密,确保数据在传输过程中的安全性。
本文将对HTTPS的原理进行解析,并通过一些应用实例来说明其在实际场景中的应用。
一、HTTPS的原理解析HTTPS的原理主要基于SSL/TLS协议,它通过以下几个步骤来实现数据的安全传输:1. 客户端发起HTTPS请求:当用户在浏览器中输入一个以https://开头的网址时,浏览器会向服务器发送一个HTTPS请求。
2. 服务器发送数字证书:服务器接收到HTTPS请求后,会将自己的数字证书发送给客户端。
数字证书中包含了服务器的公钥。
3. 客户端验证数字证书:客户端收到服务器的数字证书后,会对其进行验证。
验证包括检查证书的合法性、是否过期以及证书颁发机构的可信度等。
4. 客户端生成会话密钥:如果数字证书验证通过,客户端会生成一个随机的会话密钥,并使用服务器的公钥进行加密,然后发送给服务器。
5. 服务器解密会话密钥:服务器收到客户端发送的加密的会话密钥后,使用自己的私钥进行解密,得到会话密钥。
6. 客户端与服务器建立安全连接:客户端和服务器使用会话密钥进行对称加密,保证数据在传输过程中的机密性和完整性。
二、HTTPS的应用实例HTTPS的应用广泛,下面将通过一些实际场景来说明其应用:1. 网络购物:在进行网络购物时,用户需要输入个人敏感信息,如信用卡号码等。
使用HTTPS协议可以保证这些信息在传输过程中的安全性,防止被黑客窃取。
2. 网上银行:网上银行是一个对安全性要求非常高的应用场景,使用HTTPS协议可以保证用户在网上银行操作过程中的安全性,防止被恶意攻击者篡改或窃取信息。
3. 社交媒体:社交媒体平台中,用户会上传和分享大量的个人照片、视频等敏感信息。
InHand IR300系列工业级路由器用户手册资料版本:V1.1—2022.08声明首先非常感谢您选择本公司产品!在使用前,请您仔细阅读本用户手册。
非本公司书面许可,任何单位和个人不得擅自摘抄、复制本书内容的部分或全部,并不得以任何形式传播。
由于不断更新,本公司不能承诺该资料与实际产品一致,同时也不承担由于实际技术参数与本资料不符所导致的任何争议,任何改动恕不提前通知。
本公司保留最终更改权和解释权。
版权所有©北京映翰通网络技术股份有限公司及其许可者版权所有,保留一切权利。
本手册图形界面约定技术支持联络信息北京映翰通网络技术股份有限公司(总部)地址:北京市朝阳区紫月路18号院3号楼5层电话:(8610)6439 1099 传真:(8610)8417 0089成都办事处电话:************地址:四川省成都市高新区府城大道西段399号,天府新谷10栋1406室广州办事处电话:************地址:广州市天河区棠东东路5号远洋新三板创意园B-130单元武汉办事处电话:************地址:湖北省武汉市洪山区珞瑜东路2号巴黎豪庭11栋2001室上海办事处电话:************地址:上海市普陀区顺义路18号1103室目录一、设备简介 (1)1.1概述 (1)1.2包装清单 (1)1.2.1 适用于IR300设备系列 (1)1.3面板介绍 (2)1.3.1 适用IR300设备系列 (2)1.4状态指示灯说明 (3)1.4.1 适用于IR300设备系列 (3)二、设备安装 (4)2.1安装设备 (4)2.2SIM/UIM卡安装 (5)2.3天线安装 (5)2.4保护地接地安装 (5)2.5供电电源安装 (5)2.6访问设备 (5)2.6.1自动获取IP 地址(推荐使用) (6)2.6.2设置静态IP 地址 (6)2.6.3取消代理服务器 (7)2.6.4 登录/退出Web设置页面 (7)三、基本配置 (8)3.1系统 (8)3.1.1 基本设置 (8)3.1.2 系统时间 (9)3.1.3 管理控制 (9)3.1.4 系统日志设置 (11)3.1.5 配置管理 (12)3.1.6 计划任务 (13)3.1.7 系统升级 (13)3.1.8 重启系统 (13)3.1.9 退出系统 (13)3.2网络 (13)3.2.1 Cellular (13)3.2.2 WAN/LAN切换 (16)3.2.3 LAN 端口 (18)3.2.4 WLAN模式切换 (19)3.2.5 WLAN客户端(AP模式) (19)3.2.6 WLAN客户端(STA模式) (20)3.2.7 链路备份 (20)3.2.8 VRRP (21)3.2.9 IP Passthrough (22)3.2.10 静态路由 (23)3.3服务 (23)3.3.1 DHCP服务 (24)3.3.2 域名服务器 (24)3.3.3 DNS转发 (25)3.3.4 动态域名 (26)3.3.5 设备远程管理平台 (27)3.3.6 SNMP(简单网络管理协议) (28)3.3.7 SNMP TRAP (28)3.3.8 I/O (29)3.3.9 DTU (29)3.3.10 短信 (31)3.3.11 流量管理 (31)3.3.12 告警设置 (32)3.3.13 用户体验计划 (32)3.4防火墙 (33)3.4.1 基本设置 (33)3.4.2 访问控制 (33)3.4.3 内容过滤 (34)3.4.4 端口映射 (34)3.4.5 虚拟IP映射 (35)3.4.6 DMZ设置 (36)3.4.7 MAC-IP绑定 (36)3.4.8 NAT (36)3.5带宽管理 (37)3.5.1 IP限速 (37)3.6VPN设置 (38)3.6.1 IPSec基本参数 (39)3.6.2 IPSec隧道配置 (40)3.6.3 GRE隧道配置 (42)3.6.4 L2TP客户端配置 (43)3.6.5 PPTP客户端配置 (45)3.6.6 OpenVPN配置 (46)3.6.7 OpenVPN高级配置 (47)3.6.8 证书管理 (48)3.7工具 (49)3.7.1 PING探测 (49)3.7.2 路由探测 (50)3.7.3 网速测试 (50)3.8行业应用 (50)3.8.1 Smart ATM (50)3.8.2 Status Report (51)3.8.3 Smart-EMS (52)3.9状态 (53)3.9.1 系统状态 (53)3.9.2 Modem状态 (53)3.9.3 流量状态 (53)3.9.4 告警状态 (53)3.9.5 WLAN状态 (53)3.9.6 网络连接 (54)3.9.7 设备管理平台 (54)3.9.8 路由状态 (54)3.9.9 设备列表 (54)3.9.10 系统日志 (54)附录A 故障处理 (55)附录B 命令行指令说明 (56)一、设备简介1.1 概述IR300系列产品,是集3G/4G网络、虚拟专用网等技术于一体的物联网无线路由器产品。
对称加密特点:对称加密的特点是加密和解密通过一个相同的密钥。
比如,我们要加密一组数字一组数字:12345密钥:10算法:原数字乘于密钥加密后的结果:123450解密的人也是通过密钥10,拿123450除以10 就得到了原来的数字12345,当然算法和密钥都不会这么简单。
缺点:对称加密的一个不便之处就是密钥的分发,因为当A发一封加密的信给B的时候,B要想读这封信,就必须知道密钥,但是怎么传递密钥呢?如果通过一封没有加密的信传递密钥,那么很容易就被截取了。
常见的对成加密算法: DES ,3DES, RC5非对称加密非对成加密有一对密钥,私钥和公钥,当使用其中一个来加密的时候,必须用另外一个来解密。
这样就把密钥分发的问题解决了,公钥可以随便分发,公钥是大家都知道的,私钥只有私钥持有人才有。
当 A 需要发信给 B 的时候,就使用 B 的公钥把这封信加密,然后发送给B,只有B有私钥,所以只有B能够读取这封信。
这样即使别人也知道公钥,但是却看不到信的内容。
但是非对称加密有个缺点,就是需要复杂的计算,这要耗费很多CPU,并且一般非对称加密的密钥都很长,1024 bit 或者2048 bit。
所以一般不会用非对称加密算法来数据,只用来加密密钥(对称加密的密钥),实际的加密过程还是使用对称加密。
常见的对成加密算法:Diffie-Hellman,RSARSA算法是很常用的算法,硬件解码的话,DES对称算法要比RSA 快1000倍。
在Exchange 2007 中,当使用New-ExchangeCertificate 来申请证书的时候,可以使用参数KeySize, 这个参数可以指定与要创建的证书关联的RSA 公钥的大小(位)。
可接受的值是4096、2048 和1024。
默认值为2048。
下图中可以看到,证书的公钥使用RSA算法,公钥长度1024 bits来进行加密的哈希哈希是用来保证一段数据不被更改,保证数据的完整性。
HTTPS通讯说明一、常见加解密算法MD5/SHA/BASE64/urlEncodeMD5消息摘要算法-5(Message Digest Algorithm)SHA安全散列算法(Secure Hash Algorithm)Base64Base64编码要求把3个8位字节(3*8=24)转化为4个6位的字节(4*6=24),之后在6位的前面补两个0,形成8位一个字节的形式。
如果剩下的字符不足3个字节,则用0填充,输出字符使用'=',因此编码后输出的文本末尾可能会出现1或2个'='。
例如:“baidu and google” ==》“YmFpZHUgYW5kIGdvb2dsZQ==”urlEncodeurlEncode用于解决url参数中的特殊字符、中文等问题。
以上4中算法严格意义上说,不属于加解密算法的范畴。
只是使用比较广泛的格式转换、摘要计算方法而已。
BASE64/urlEncode属于格式转换,MD5/SHA属于摘要计算。
DES/DES3/AES这三种算法都属于对称加解密算法,DES3是DES的升级版算法,AES是DES3的升级版本算法。
目前使用比较广泛的是DES3和AES。
这两个算法虽然有新老版本之分,但是还是有性能和适用场景的区别。
算法说明:使用密钥K1+算法S1对明文进行加密,生成密文。
使用密钥K1+算法S1对密文进行解密(再一次加密),生成明文。
整个过程中,使用的密钥相同,算法相同。
RSA属于非对称加解密算法,也是最复杂的一种算法。
非对称加解密衍生出两种认证场景。
一种是签名,一种是加密。
加密的流程示意图:算法说明:使用密钥PK+算法S1对明文进行加密,生成密文。
使用密钥SK+算法S1对密文进行解密(再一次加密),生成明文。
整个过程中,使用的密钥不相同,算法相同。
这种加密的流程中,只能做到数据的加密,不可被获取(获得明文),但是无法确保不被篡改。
签名的流程示意图:假设A要想B发送消息,A会先计算出消息的消息摘要,然后使用自己的私钥加密这段摘要加密,最后将加密后的消息摘要和消息一起发送给B,被加密的消息摘要就是“签名”。
B收到消息后,也会使用和A相同的方法提取消息摘要,然后使用A的公钥解密A发送的来签名,并与自己计算出来的消息摘要进行比较。
如果相同则说明消息是A发送给B的,同时,A也无法否认自己发送消息给B的事实。
数字签名的作用是保证数据完整性,机密性和发送方角色的不可抵赖性。
如果甲想给乙发一个安全的保密的数据,那么应该甲乙各自有一对公私钥,甲先用乙的公钥加密这段数据,再用自己的私钥加密这段加密后的数据,最后再发给乙。
这样确保了内容即不会被读取,也不会被篡改。
算法名称密钥类型是否可逆MD5/SHA 无不可逆BASE64/urlEncode 无可逆DES/DES3/AES 一个密钥可逆RSA 一对密钥可逆加密盐和碰撞因子二、证书及CA介绍公钥、私钥、证书一个公钥对应一个私钥。
密钥对中,让大家都知道的是公钥,不告诉大家,只有自己知道的,是私钥。
为什么需要用证书来替代公钥?答:在上面的加密签名等过程中,我们都忽略了一点,那就是如何确保我们获取的公钥是正确的。
第三者很容易制作一个公钥来冒充我们的交互目标,我们没法凭借这个公钥来确认对方的身份。
在这样的情况下,证书就诞生了,证书是一个包装了公钥的实体,他里面包含了公钥,机构名称,证书有效期,ca签名等信息。
这样我们获取证书后,就可以通过证书里面对机构的描述来确认对方的身份。
证书中的ca是什么意思?答:其实上面对证书的描述并没有完全解决我们提出的问题,第三者完全可能制作一个证书,而证书里的机构信息也是伪造的。
那么ca就在这种情形下出现了。
ca是证书颁发机构(certification authority)。
ca是第三方的,为数不多的,可信赖的机构,我们可以在其官网上获取他的公钥,用他的公钥来解析ca签名,就能够唯一的验证这个证书是由这个ca机构颁发的。
ca机构会维护自己的publickey库,比如公司“通联支付”去ca申请证书后,那第三者就无法再以“通联支付”的名字来申请证书了。
那么也就能验证这个证书不是由第三者假冒的了。
Ca的分级认证模式假设C证书信任A和B;然后A信任A1和A2;B信任B1和B2。
则它们之间构成如下的一个树形关系(一个倒立的树)。
处于最顶上的树根位置的那个证书,就是“根证书”。
除了根证书,其它证书都要依靠上一级的证书,来证明自己。
而根证书自己证明自己,或者换句话说,根证书是不需要被证明的。
浏览器如何识别证书的有效性?浏览器默认会导入当地比较大的ca机构签发的二级证书。
当用户访问https网站时,浏览器通过ssl 协议首先下载网站的证书,然后通过本地的ca二级证书对网站的证书进行验签。
如果验签不通过,则一般都会出现警告弹窗。
证书和CA的出现,旨在解决公钥的准确性,进而确保RSA算法进行加密和签名的可靠性。
三、HTTPS详细介绍https认证分为单向认证和双向认证,单向认证适用与互联网大众用户;双向认证适用与企业内部,集群内部。
单向认证:客户端无证书,客户端认证服务端发送过来的证书,从而认证服务端。
后续通过ssl握手,建立对称加密通讯。
双向认证:客户端有证书,客户端认证服务器发送过来的证书,服务端认证客户端发送过来的证书,互相认证。
后续通过ssl握手,建立对称加密通讯。
交互流程(一个加密通信过程的演化)我们来看一个例子,现在假设“服务器”和“客户”要在网络上通信,并且他们打算使用RSA(参看前面的RSA简介)来对通信进行加密以保证谈话内容的安全。
由于是使用RSA这种公钥密码体制,“服务器”需要对外发布公钥(算法不需要公布,RSA的算法大家都知道),自己留着私钥。
“客户”通过某些途径拿到了“服务器”发布的公钥,客户并不知道私钥。
“客户”具体是通过什么途径获取公钥的,我们后面再来说明,下面看一下双方如何进行保密的通信:2.1 第一回合:“客户”->“服务器”:你好“服务器”->“客户”:你好,我是服务器“客户”->“服务器”:我的账号和密码是...因为消息是在网络上传输的,有人可以冒充自己是“服务器”来向客户发送信息。
例如上面的消息可以被黑客截获如下:“客户”->“黑客”:你好// 黑客在“客户”和“服务器”之间的某个路由器上截获“客户”发给服务器的信息,然后自己冒充“服务器”“黑客”->“客户”:你好,我是服务器因此“客户”在接到消息后,并不能肯定这个消息就是由“服务器”发出的,某些“黑客”也可以冒充“服务器”发出这个消息。
如何确定信息是由“服务器”发过来的呢?有一个解决方法,因为只有服务器有私钥,所以如果只要能够确认对方有私钥,那么对方就是“服务器”。
因此通信过程可以改进为如下:2.2 第二回合:“客户”->“服务器”:你好“服务器”->“客户”:你好,我是服务器“客户”->“服务器”:向我证明你就是服务器“服务器”->“客户”:你好,我是服务器{你好,我是服务器}[私钥|RSA]// 注意这里约定一下,{} 表示RSA加密后的内容,[ | ]表示用什么密钥和算法进行加密,后面的示例中都用这种表示方式,例如上面的{你好,我是服务器}[私钥|RSA] 就表示用私钥对“你好,我是服务器”进行加密后的结果。
为了向“客户”证明自己是“服务器”,“服务器”把一个字符串用自己的私钥加密,把明文和加密后的密文一起发给“客户”。
对于这里的例子来说,就是把字符串“你好,我是服务器”和这个字符串用私钥加密后的内容{你好,我是服务器}[私钥|RSA] 发给客户。
“客户”收到信息后,她用自己持有的公钥解密密文,和明文进行对比,如果一致,说明信息的确是由服务器发过来的。
也就是说“客户”把{你好,我是服务器}[私钥|RSA] 这个内容用公钥进行解密,然后和“你好,我是服务器”对比。
因为由“服务器”用私钥加密后的内容,由并且只能由公钥进行解密,私钥只有“服务器”持有,所以如果解密出来的内容是能够对得上的,那说明信息一定是从“服务器”发过来的。
假设“黑客”想冒充“服务器”:“黑客”->“客户”:你好,我是服务器“客户”->“黑客”:向我证明你就是服务器“黑客”->“客户”:你好,我是服务器{你好,我是服务器}[???|RSA] //这里黑客无法冒充,因为他不知道私钥,无法用私钥加密某个字符串后发送给客户去验证。
“客户”->“黑客”:我的账号和密码是...由于“黑客”没有“服务器”的私钥,因此它发送过去的内容,“客户”是无法通过服务器的公钥解密的,因此可以认定对方是个冒牌货!到这里为止,“客户”就可以确认“服务器”的身份了,可以放心和“服务器”进行通信,但是这里有一个问题,通信的内容在网络上还是无法保密。
为什么无法保密呢?通信过程不是可以用公钥、私钥加密吗?其实用RSA的私钥和公钥是不行的,我们来具体分析下过程,看下面的演示:2.3 第三回合:“客户”->“服务器”:你好“服务器”->“客户”:你好,我是服务器“客户”->“服务器”:向我证明你就是服务器“服务器”->“客户”:你好,我是服务器{你好,我是服务器}[私钥|RSA]“客户”->“服务器”:{我的帐号是aaa,密码是123,把我的余额的信息发给我看看}[公钥|RSA]“服务器”->“客户”:{你的余额是100元}[私钥|RSA]注意上面的的信息{你的余额是100元}[私钥],这个是“服务器”用私钥加密后的内容,但是我们之前说了,公钥是发布出去的,因此所有的人都知道公钥,所以除了“客户”,其它的人也可以用公钥对{你的余额是100元}[私钥]进行解密。
所以如果“服务器”用私钥加密发给“客户”,这个信息是无法保密的,因为只要有公钥就可以解密这内容。
然而“服务器”也不能用公钥对发送的内容进行加密,因为“客户”没有私钥,发送个“客户”也解密不了。
这样问题就又来了,那又如何解决呢?在实际的应用过程,一般是通过引入对称加密来解决这个问题,看下面的演示:2.4 第四回合:“客户”->“服务器”:你好“服务器”->“客户”:你好,我是服务器“客户”->“服务器”:向我证明你就是服务器“服务器”->“客户”:你好,我是服务器{你好,我是服务器}[私钥|RSA]“客户”->“服务器”:{我们后面的通信过程,用对称加密来进行,这里是对称加密算法和密钥}[公钥|RSA] //蓝色字体的部分是对称加密的算法和密钥的具体内容,客户把它们发送给服务器。
“服务器”->“客户”:{OK,收到!}[密钥|对称加密算法]“客户”->“服务器”:{我的帐号是aaa,密码是123,把我的余额的信息发给我看看}[密钥|对称加密算法]“服务器”->“客户”:{你的余额是100元}[密钥|对称加密算法]在上面的通信过程中,“客户”在确认了“服务器”的身份后,“客户”自己选择一个对称加密算法和一个密钥,把这个对称加密算法和密钥一起用公钥加密后发送给“服务器”。