写给小白的常见三种加密方式:MD5,对称非对称加密

本文旨在帮助初学者理解常见的三种加密方式:MD5加密、对称加密和非对称加密(RSA)。MD5是一种不可逆且抗修改的散列算法,但存在安全风险。对称加密如DES、3DES和AES速度快但需共享密钥。非对称加密如RSA安全但速度慢,常用于密钥交换。

我们在做数据类传输产品或测试的过程中,总会听到开发说数据要加密,然后使用各种加密方式,那么希望通过本文,能够让大家对一些常见的加密方式有一些更加深入的了解,理解其中的底层逻辑。

今天介绍三种常见的加密方式:

  1. MD5加密
  2. 对称加密
  3. 非对称加密

1,MD5加密

MD5算法的原理可简要的叙述为:MD5码以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值

总体流程如下图所示,每次的运算都由前一轮的128位结果值和当前的512bit值进行运算。
在这里插入图片描述

MD5加密的特点:

不可逆运算

对不同的数据加密的结果是定长的16个字节(不管文件多大都一样)

对相同的数据加密,得到的结果是一样的(也就是复制)。

抗修改性 : 信息“指纹”,对原数据进行任何改动,哪怕只修改一个字节,所得到的 MD5 值都有很大区别.

弱抗碰撞 : 已知原数据和其 MD5 值,想找到一个具有相同 MD5 值的数据(即伪造数据)是非常困难的.

强抗碰撞: 想找到两个不同数据,使他们具有相同的 MD5 值,是非常困难的

MD5安全吗?

加解密尝试:https://www.cmd5.com/

2,对称加密

对称加密算法又称传统加密算法。加密和解密使用同一个密钥。

加密解密过程:明文->密钥加密->密文,密文->密钥解密->明文。

在这里插入图片描述

示例:
密钥:X
加密算法:每个字符+X
明文:Hello
密钥为 1时 加密结果:Ifmmp
密钥为 2时 加密结果:Jgnnq

优缺点:
算法公开,计算量小,加密速度快,加密效率高
双方使用相同的钥匙,安全性得不到保证

注意事项:
密钥的保密工作非常重要
密钥要求定期更换

经典对称加密算法有三种:

  1. DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合。
  2. 3DES:基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高。
  3. AES(Advanced Encryption Standard):高级加密标准,目前美国国家安全局使用的,苹果的钥匙串访问采用的就AES加密。是现在公认的最安全的加密方式,是对称密钥加密中最流行的算法。

3,非对称加密RSA

对称加密算法又称现代加密算法。

非对称加密是计算机通信安全的基石,保证了加密数据不会被破解。

非对称加密算法需要两个密钥:公开密钥(publickey) 和私有密(privatekey)

公开密钥和私有密钥是一对

如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密。

如果用私有密钥对数据进行加密,只有用对应的公开密钥才能解密。

在这里插入图片描述

特点:
算法强度复杂,安全性依赖于算法与密钥。
加密解密速度慢。

与对称加密算法的对比:
对称加密只有一种密钥,并且是非公开的,如果要解密就得让对方知道密钥。
非对称加密有两种密钥,其中一个是公开的。

RSA应用场景:
由于RSA算法的加密解密速度要比对称算法速度慢很多,在实际应用中,通常采取:
数据本身的加密和解密使用对称加密算法(AES)。
用RSA算法加密并传输对称算法所需的密钥。

扩展:

数字签名:
http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值