Java 加密解密 对称加密算法 非对称加密算法 MD5 BASE64 AES RSA

Posted mthoutai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 加密解密 对称加密算法 非对称加密算法 MD5 BASE64 AES RSA相关的知识,希望对你有一定的参考价值。

【前言】

本文简单的介绍了加密技术相关概念,最后总结了java中现有的加密技术以及用法和样例

【最简单的加密】

1.简单的概念

明文:加密前的信息

密文:机密后的信息

算法:加密或解密的算法

密钥:算法使用的钥匙(读作miyao。正确应该是miyue,可是大家都读miyao)


2.简单的样例

将123456每位数字都加1后得到234567,

当中123456就是明文。234567就是密文。加密密钥就是1,加密算法是每位加


3.对称加密和非对称加密

以上为例。

123456-->234567的加密密钥就是1,加密算法是每位+

234567-->123456的解密密钥也是1,解密算法是每位-

当中加密算法(+)和解密算法(-)相对称,这样的加密算法就称作对称加密,

相同,假设加密算法和解密算法不正确称就称之为非对称加密。


4.算法举例

对称加密算法:DES算法。3DES算法,TDEA算法。Blowfish算法。RC5算法,IDEA算法,AES算法

非对称加密算法:RSA、Elgamal、背包算法、Rabin、D-H、ECC。

经典的哈希算法:MD2、MD4、MD5 和 SHA-1(目的是将随意长输入通过算法变为固定长输出,且保证输入变化一点输出都不同,且不能反向解密)


5.经典的算法
AES(对称)。RSA(非对称),MD5,SHA-1(哈希)

【算法举例】

1.base64

不是加密算法,是一种编码方式,因为加密后都是byte[],为了可读性。一般将byte[]转为base64编码

样例:Java 加密 base64 encode 

2.md5

也不是算法。是消息摘要算法第五版,是一种哈希算法,一般用于单向加密

样例:Java 加密 MD5 

3.AES

对称加密算法,DES的代替者

样例:Java 加密 AES 对称加密算法 

4.RSA

待更新













以上是关于Java 加密解密 对称加密算法 非对称加密算法 MD5 BASE64 AES RSA的主要内容,如果未能解决你的问题,请参考以下文章

非对称加密算法-RSA算法

非对称加密算法的主要算法

加密技术对称与非对称加密简介

什么是ElGamal非对称加密算法?

对称加密算法以及使用方法

对称加密算法和非对称加密算法