跳转到主要内容

概述

Base64Util 是加密通信中的核心编解码工具,主要功能是实现二进制数据与Base64文本之间的相互转换。在API通信中,Base64编码用于确保加密后的二进制数据能够安全地通过HTTP协议传输。

代码实例

import java.util.Base64;

public class Base64Util {
  /**
      * 将字节数组编码为Base64字符串
      *
      * @param bytes 原始二进制数据
      * @return Base64编码后的字符串
      *
      * 使用场景:将加密后的二进制数据转换为可安全传输的文本格式,
      *          适用于HTTP请求参数封装。
      */
      public static String encodeByte(byte[] bytes) {
          return Base64.getEncoder().encodeToString(bytes);
      }
      /**
      * 将Base64字符串解码为字节数组
      *
      * @param str Base64编码的字符串
      * @return 解码后的原始二进制数据
      *
      * 使用场景:将API响应中的Base64数据转换为二进制,
      *          为后续解密操作做准备。
      */
      public static byte[] decodeString(String str) {
          return Base64.getDecoder().decode(str);
      }
  }
/**
* Base64 编码/解码工具类
*
* 提供 Base64 字符串与二进制数据之间的转换功能
*/
class Base64Util {
  /**
   * 将字节数组编码为 Base64 字符串
   * @param {Buffer} bytes - 原始二进制数据
   * @returns {string} Base64 编码后的字符串
   *
   * 使用场景:将加密后的二进制数据转换为可安全传输的文本格式,
   *          适用于 HTTP 请求参数封装。
   */
  static encodeByte(bytes) {
      return bytes.toString('base64');
  }

  /**
   * 将 Base64 字符串解码为字节数组
   * @param {string} str - Base64 编码的字符串
   * @returns {Buffer} 解码后的原始二进制数据
   *
   * 使用场景:将 API 响应中的 Base64 数据转换为二进制,
   *          为后续解密操作做准备。
   */
  static decodeString(str) {
      return Buffer.from(str, 'base64');
  }
}

module.exports = Base64Util;

import base64

class Base64Util:
  # Base64 编码/解码工具类

  @staticmethod
  def encodeByte(data: bytes) -> str:
      # 将字节数据编码为Base64字符串
      # 参数: data - 原始二进制数据 (bytes类型)
      # 返回: Base64编码后的字符串
      # 使用场景: 将加密后的二进制数据转换为可安全传输的文本格式
      return base64.b64encode(data).decode('utf-8')

  @staticmethod
  def decodeString(encoded_str: str) -> bytes:
      # 将Base64字符串解码为字节数据
      # 参数: encoded_str - Base64编码的字符串
      # 返回: 解码后的原始二进制数据 (bytes类型)
      # 使用场景: 将API响应中的Base64数据转换为二进制
      return base64.b64decode(encoded_str.encode('utf-8'))

# 使用示例
if __name__ == "__main__":
  # 编码示例
  binary_data = b"Hello Base64!"
  encoded = Base64Util.encodeByte(binary_data)
  print(f"编码结果: {encoded}")

  # 解码示例
  decoded = Base64Util.decodeString(encoded)
  print(f"解码结果: {decoded}")
  print(f"验证一致性: {binary_data == decoded}")