Base64编码、MD5消息摘要、对称加密、非对称加密

本文详细介绍了Base64编码的基本概念和核心代码,强调其并非加密算法而是编码方式。接着,讨论了MD5消息摘要的特性,包括在数据完整性和密码加密上的应用。对于对称加密,如DES、3DES和AES,文章阐述了它们的加密解密原理。最后,探讨了非对称加密的特性,如RSA算法,以及其在实际开发中的应用流程和安全性。
摘要由CSDN通过智能技术生成

一、 Base64编码

(一)、要点

  1. 可对传输中的数据进行简单处理,使之不易被辨认
  2. Base64并不是一种加密算法,它只是一种编码方式

(二)、核心代码

1.编码

//Base64编码,第一个参数表示要编码的字符串
//第二个参数表示编码后字符串的格式等属性全部采用默认值
String s = Base64.encodeToString(srcStr.getBytes("UTF-8"), Base64.DEFAULT);

2.解码

//Base64解码
//第一个参数表示要解码的字符串
byte[] decode = Base64.decode(s, Base64.DEFAULT);

二、 MD5消息摘要

介绍:在平时开发过程中,MD5加密是一个比较常用的算法,最常见的使用场景就是在帐号注册时,用户输入的密码经md5加密后,传输至服务器保存起来.
数字签名也是MD5的另一个使用场景.

(一)、要点

1.使用MD5加密可以保证数据的完整性
2.不管多长的数据都可以生产固定长度的消息摘要
3.不可逆,不可以由消息摘要推出数据正文
4.MD5一般可以用在密码加密处理上

(二)、核心代码

生成消息摘要:

//创建消息摘要实例,MD5表示生成消息摘要的算法名称
MessageDigest messageDigest = MessageDigest.getInstance("md5");
byte[] digest = messageDigest.digest(srcEt.getText().toString().getBytes("UTF-8"));
//用16进制显示生成的消息摘要
StringBuffer result = new StringBuffer();
for (byte b : digest) {
    result.append(String.format("%02x", b));
}
showMd5.setText(result.toString());

三、 对称加密

(一)、要点

1.加密和解密的密钥相同,解密只是加密的逆运算
2.常用的对称加密算法有DES,3DES,AES三种,这三种加密算法对应的密钥长度分别是8位、24位以及32位

(二)、核心代码

1.DES加/解密

/**
 * @param src  要加密/解密的字符串
 * @param key  密钥
 * @
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值