Java 实现 Base64 加密&解密方法

本文详细介绍了Base64加密算法,包括标准和非标准变体,并讲解了如何在Java中使用apache.commons-codec和Java8的内置库进行Base64加解密。此外,还探讨了图片的Base64编码转换,包括字符串转图片和图片转字符串的过程。
摘要由CSDN通过智能技术生成

1. Base64 加密算法

1.1 标准 Base64 算法

Base64 编码是程序开发中比较常用的一种编码算法,是常用来存储或传输一些二进制数据的方法,也是 MIME(多用途互联网邮件扩展)中的一种编码方法 。

Base64 可以实现将任何数据转换为可打印字符表示的字符串,避免数据在传输过程中失真,Base64 最开始用来在邮件发送中将非 ASCLL 字符内容转换为 ASCLL字符。

标准 Base64 是一种用于传输 8Bit 字节码的编码方式之一,基于 64 个可打印字符来表示二进制数据,使用的可打印字符包括有:A-Z、a-z、0-9、+、/ 共 64 个。

1.2 非标准 Base64 算法

UrlBase64

标准 Base64 算法中使用了 + 和 / 字符,这与 URL 以及文件系统中存在冲突,因此延伸出了一种 UrlBase64 算法,该算法中将标准 Base64 的 + 和 / 替换成为了 - 和 _ 字符。

MIME Base64

MIME Base64 算法是一种更加友好的编码格式,其定义了每行只能输出 76 个字符,如果长度超出 76,会进行换行并在行末尾增加换行符号 \r\n , 最后一行字符长度即时不足 76,也同样会增加回车换行符号。

3. Java 实现 Base64 加解密

3.1 apache.commons-codex 包

apache.commons-codex 包中提供了的 Base64 等许多编码格式转换,可以通过其进行实现。

import org.apache.commons.codec.binary.Base64;
public class Base64Util {

    //ba
  • 11
    点赞
  • 72
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值