数据传输的加密过程

本文涉及的产品
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
简介: 加密技术是为了保护敏感数据在网络传输中的安全,就像日常生活中使用的淘宝、支付宝、微信等等软件,如果涉及到金额的数据在网络中不加密传输,那是极易被别人窃取、篡改的,通信中的数据加密技术就显得尤为重要。各类加密工具的原理都是大同小异,这里对常见加密原理进行解读。

加密技术是为了保护敏感数据在网络传输中的安全,就像日常生活中使用的淘宝、支付宝、微信等等软件,如果涉及到金额的数据在网络中不加密传输,那是极易被别人窃取、篡改的,通信中的数据加密技术就显得尤为重要。各类加密工具的原理都是大同小异,这里对常见加密原理进行解读。

img_978a5cbb7f0b5d78a19fe96a4782b4eb.png
***

一、对称加密

加密数据与解密数据使用相同的密钥,这种加密方法称为对称加密

  • 特点
  • 加密与解密使用相同密钥,加密解密速度快
  • 将原始数据进行切块,逐个进行加密。
  • 缺点
  • 每一个通信的对象都有一把密钥,如果通信对象过多导致密钥过多。
  • 密钥分发问题,如何保证密钥不被窃取

img_fd65648fdbd3878d2deb0fdfa4b58b33.png


二、非对称加密

加密数据与解密数据使用一堆不相同的密钥,公钥公开给所有人,私钥自己保存。使用公钥加密的数据只有自己的私钥可以解开。

  • 特点
  • 用公钥加密数据,只能使用配对的私钥进行解密。
  • 用私钥加密的数据,只能使用配对的私钥进行解密
  • 缺点
  • 加密解密速度慢、时间长,不适用于对大数据进行加密解密。

三、单项散列

单项散列又称为hash算法,把任意长度的数据、字符加密后得到一个固定长度的特征码。

  • 特点
  • 加密后输出的特征码长度固定
  • 加密后的特征码只跟数据内容有关,与数据名称无关
  • 可以用作数据的指纹
  • 得到数据的特征码无法推算出原数据的内容

  • 缺点
  • 相同内容的文件加密后的结果相同
  • 通常随数据一同发出,极易被窃取

img_b3e1924c48790f36950e07d1c1814e40.png


四、加密通信的综合应用

以上三种如果单独使用任何一种对数据进行数据加密的话都是不安全的,那么现在在互联网中的数据时如何传输的呢?其实数据在互联网中并不会使用单一加密技术,往往都是各类技术混合使用,互补优缺点使数据的传输更加安全。

  1. 首先通过TCP三次握手进行连接,然后客户端发送hello包到服务端,服务端回应一个hello包,如果客户端需要再次发送数字证书, 则发送数字证书到客户端。
  2. 客户端得到服务器的证书后通过CA服务验证真伪、验证证书的主体与访问的主体是否一致,验证证书是否在吊销证书列表中。如果全部通过验证则与服务器端进行加密算法的协商。
  3. 然后是用证书中服务器的公钥加密【对称秘钥】发送给服务器端,【对称秘钥】只能用服务器的私钥进行解密,当服务器通过私钥解密【对称秘钥】后。使用对称秘钥将客户端请求的数据发送到客户端,客户端在用对称秘钥进行解密,从而得到想要的数据。

注:对称秘钥非长期有效,每隔一段时间甚至每一次数据的传输都使用不同的对称秘钥。

img_07a87712cfede697c9c6d66db984c813.png

目录
相关文章
|
4天前
|
算法 安全 中间件
中间件数据传输加密算法选择
选择中间件数据传输的加密算法需考虑安全性、性能、兼容性和成本。常用算法包括:对称加密的AES和DES,非对称的RSA和ECC,以及哈希算法SHA-256和MD5。AES和ECC提供高效安全的加密,RSA适合密钥交换,SHA-256用于数据完整性验证。DES和MD5安全性较低,应谨慎使用。综合考虑各种因素,并结合其他安全措施构建全面的安全体系。
19 3
|
8月前
|
算法 数据安全/隐私保护
国家专用加密数据传输之rsa,3des加密方法
国家专用加密数据传输之rsa,3des加密方法
81 0
|
9月前
|
开发框架 前端开发 JavaScript
SpringBoot集成数据传输加密
近期在对开发框架安全策略方面进行升级优化,提供一些通用场景的解决方案,本文针对前后端数据传输加密进行简单的分享,处理流程设计如下图所示,本加密方法对原有项目兼容性较好,只需要更换封装好的加密Ajax请求方法,后端统一拦截判断是否需要解密即可
76 0
SpringBoot集成数据传输加密
|
存储 运维 网络安全
RH236GlusterFS-数据传输加密(练习)
RH236GlusterFS-数据传输加密(练习)
103 0
RH236GlusterFS-数据传输加密(练习)
|
存储 运维 安全
RH236GlusterFS-数据传输加密(理论)
RH236GlusterFS-数据传输加密(理论)
142 0
RH236GlusterFS-数据传输加密(理论)
|
算法 安全 数据安全/隐私保护
Android网络数据传输安全——AES加密解密(ECB模式)
Android网络数据传输安全——AES加密解密(ECB模式)
687 0
|
安全 Java 数据安全/隐私保护
Android网络数据传输安全——实现RSA公钥加密私钥解密
Android网络数据传输安全——实现RSA公钥加密私钥解密
537 0
Android网络数据传输安全——实现RSA公钥加密私钥解密
|
Java 数据安全/隐私保护
Java实现最电话号码的简单加密源码
Java实现最电话号码的简单加密源码
18 0
|
2月前
|
存储 安全 算法
【接口加密】Java中的接口加密实践
【接口加密】Java中的接口加密实践
|
2月前
|
算法 安全 Java
Java 实现 RSA 非对称加密算法-加解密和签名验签
Java 实现 RSA 非对称加密算法-加解密和签名验签