- 数字签名:
摘要算法,对任意长度的数据,计算出固定长度的16进制字符。
MD5 : 128bit,32位十六进制
SHA1 : 160bit,40位十六进制
用途:校验数据的完整性,密码的传输和保存。 - 对称加密:加密算法,加密和解密时使用相同的密钥(或是使用两个可以简单互相推算的密钥)
常见的算法:DES,AES,3DES,Blowfish,IDEA,RC5,RC6.
优点 :加密解密速度快,对资源消耗小
缺点 :无法保证密钥传输过程的安全性 - 非对称加密
加密算法,加密解密由公钥+私钥完成,公钥是公开出去的,私钥是自己保存的。
常见的算法:RSA
*包含:
a. KeyGen :密钥生成算法,PK,SK-KeyGen()
b. Encrypt :加密算法,X=Encrypt(PK,M)
c. Decrypt :解密算法,M=Decrypt(SK,X)
d. Sign :签名算法,sign=Sign(SK,M)
e. Verify :验证算法,b=Verify(Pk,Sign,M)
* 注 :PK :公钥。SK :密钥。 M:明文。X:密文。Sign:明文的签名
* 用途
公钥加密,私钥解密。用于传输数据的加密
私钥加密,公钥解密。用于传输数据的完整性校验。
* 优点:
加密解密使用不同的密钥
* 缺点:
加密解密速度慢,资源消耗大
- 服务端与客户端用于加密信息的传递
- 服务端先生成公钥和密钥,然后将公钥发送给客户端。(非对称密钥用来给传送对称密钥)
- 客户端生成对称密钥,然后用公钥进行加密,发送给服务端
- 服务端拿到加密密钥,用非对称密钥将其解密,得到对称密钥
- 以后服务端与客户端传送数据就用对称密钥进行加密。
- 缺点:缺乏身份认证机制,容易受到中间人攻击。
- CA :证书管理机构,负责发放证书,确保证书申请者的身份和合法性等。
(百度百科)证书中绑定了公钥数据、和相应私钥拥有者的身份信息,并带有CA的数字签名。-
-证书中也包含了CA的名称(图中为LOIS CA),以便于依赖方找到CA的公钥、验证证书上的数字签名。 - SSL :安全套接字层,处于传输层和应用层之间,对Socket进行加密。由网景公司开发,只做到3.0版本后,网景公司被回收。
- TLS:传输层安全协议,IEEF(国际互联网工程任务组)基于SSL3.0的标准化,前身为SSL.
用途:在传输层对数据进行加密,定义传输规则。 - https: http+SSL/TLS的外壳,用来保证数据传输的安全性,端口为443。
- OpenSSL :市场占有率很高,实现了SSL/TLS协议包含的加密算法,密码库等相关开发工具的软件开发包。
- 开源的 SSH:IETF制定,应用层和传输层基础上的安全协议,端口号是22
- 作用:常用于远程登陆和其他相关网络服务通讯的安全通道的建立,说白了,验证客户端的合法性。
- 技术:客户端与服务端为了安全做的校验操作基本跟SSL 类似,采用非对称与对称加密算法通讯,多了一个流程就是服务端验证客户端的合法性操作。
- 验证方式:账号密码登录
a. 客户端个服务端发送登陆请求,服务器会返回器公钥。
b. [询问是否信任该服务器]客户端如果选择信任,则将公钥保存到本地known_hosts
c. [输入密码登录],数据会被服务器的公钥加密传输。 d)服务端收到数据解密后验证密码成功,建立登陆会话。
- 缺点:
每次登陆需要输入口令,冰倩服务器的公钥的合法性不容易验证。(不像SSL一样有CA证书。)
- 缺点:
- 公钥登陆(一般用于登陆本地服务器,以后不需要一直输入密码)
a)客户端本地生成公钥私钥,将私钥上传到服务器端,保存到公钥列表authorized_key。
b)客户端请求登陆时带着公钥请求服务器验证,服务器去公钥列表查看是否匹配
c)如果匹配,则将随机生成的数据用该公钥加密后发送给客户端。
d)客户端将受到的密文用私钥解密后发送会服务器 e)服务器验证数据是否正确,如果正确则建立登陆会话。 缺点:登陆时间验证较长。
- 验证方式:账号密码登录
- OpenSSH :SSH协议的开源实现包。跟OpenSSL角色类似,但是毛关系没有。
- VPN:虚拟专用网络,在公网上通过VPN技术相关协议建立虚拟网络,同时加密压缩传输 数据。
1.VPN服务器公网IP为1.1.1.1,建立VPN网关192.168.0.1
2.客户端连接配置服务器公网IP,通过账号密码连接到VPN网关。
3.VPN网关给客户端分配ip 192.168.0.101,此时客户端就相当于处于VPN服务器 算在的内网 常用于员工出彩通过VPN访问公司内网资源。 缺点:只能访问公司的内网资源,不能访问Internet。
数据加密详解笔记
最新推荐文章于 2023-04-29 18:22:37 发布