Class Base32

java.lang.Object
org.miaixz.bus.core.codec.binary.Base32

public class Base32 extends Object
Base32 - encodes and decodes RFC4648 Base32 (see https://datatracker.ietf.org/doc/html/rfc4648#section-6 ) base32就是用32(2的5次方)个特定ASCII码来表示256个ASCII码。 所以,5个ASCII字符经过base32编码后会变为8个字符(公约数为40),长度增加3/5.不足8n用“=”补足。 根据RFC4648 Base32规范,支持两种模式:
  • Base 32 Alphabet (ABCDEFGHIJKLMNOPQRSTUVWXYZ234567)
  • "Extended Hex" Base 32 Alphabet (0123456789ABCDEFGHIJKLMNOPQRSTUV)
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • Base32

      public Base32()
  • Method Details

    • encode

      public static String encode(byte[] bytes)
      编码
      Parameters:
      bytes - 数据
      Returns:
      base32
    • encode

      public static String encode(String source)
      base32编码
      Parameters:
      source - 被编码的base32字符串
      Returns:
      被加密后的字符串
    • encode

      public static String encode(String source, Charset charset)
      base32编码
      Parameters:
      source - 被编码的base32字符串
      charset - 字符集
      Returns:
      被加密后的字符串
    • encodeHex

      public static String encodeHex(byte[] bytes)
      编码
      Parameters:
      bytes - 数据(Hex模式)
      Returns:
      base32
    • encodeHex

      public static String encodeHex(String source)
      base32编码(Hex模式)
      Parameters:
      source - 被编码的base32字符串
      Returns:
      被加密后的字符串
    • encodeHex

      public static String encodeHex(String source, Charset charset)
      base32编码(Hex模式)
      Parameters:
      source - 被编码的base32字符串
      charset - 字符集
      Returns:
      被加密后的字符串
    • decode

      public static byte[] decode(String base32)
      解码
      Parameters:
      base32 - base32编码
      Returns:
      数据
    • decodeString

      public static String decodeString(String source)
      base32解码
      Parameters:
      source - 被解码的base32字符串
      Returns:
      被加密后的字符串
    • decodeString

      public static String decodeString(String source, Charset charset)
      base32解码
      Parameters:
      source - 被解码的base32字符串
      charset - 字符集
      Returns:
      被加密后的字符串
    • decodeHex

      public static byte[] decodeHex(String base32)
      解码
      Parameters:
      base32 - base32编码
      Returns:
      数据
    • decodeStrHex

      public static String decodeStrHex(String source)
      base32解码
      Parameters:
      source - 被解码的base32字符串
      Returns:
      被加密后的字符串
    • decodeStrHex

      public static String decodeStrHex(String source, Charset charset)
      base32解码
      Parameters:
      source - 被解码的base32字符串
      charset - 字符集
      Returns:
      被加密后的字符串