RSA、SHA、DES、MD5、BASE64的可逆性分析

RSA

RSA是由Ron Rivest、AdiShamir和Leonard Adleman的姓氏的首字母组成。RSA是一种公钥密码算法,加密解密采用不同的密钥。发送方的加密密钥PK是接收方的公钥,PK是公开的,解密密钥SK为接受方私有,对其他人保密。明文可以通过加密算法生成密文,密文也可以通过解密算法还原成明文,所以是可逆的。

DES

DES的全称是Data Encryption Standard(数据加密标准)。DES属于对称密钥密码体制,明文可以通过加密算法生成密文,密文也可以通过相同的密钥解密还原成明文,所以是可逆的。DES在加密过程前,把明文按64位的二进制数据为一组的分组方式进行分组,加密后,得到一组组64位的密文。加密过程的密钥占有64位,其中实际长度为56位,8位则用于奇偶校验。同类型的有:

3DES(Triple DES):基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高。

AES(高级加密标准):在AES标准规范中,区块长度是128bit,密钥的长度可以使用128bit,192bit或者256bit。

SHA

SHA的全称是Secure Hash Algorithm(安全哈希算法)。SHA是一种摘要算法,原理是将一段明文以一种不可逆的方式将它转换成一段密文(通常会更小),又称单向散列算法。

MD5

MD5的全称是Message Digest Algorithm(消息摘要算法)。MD5是一种摘要算法,作用是让大容量信息在用数字签名软件签署私人密钥前被"压缩"成一种保密的格式(是不可逆的)。MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。

BASE64

BASE64是一个编码算法,对数据内容进行编码用来传输,虽然是可逆的,但是它的编码方式是公开的,无所谓加不加密。Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。

原文搬运

https://blog.csdn.net/The_best_/article/details/109877405

你可能感兴趣的:(RSA、SHA、DES、MD5、BASE64的可逆性分析)