Class Sha3Hash

java.lang.Object
cloud.opencode.base.crypto.hash.Sha3Hash
All Implemented Interfaces:
HashFunction

public final class Sha3Hash extends Object implements HashFunction
SHA-3 family hash function implementation - Secure Hash Algorithm 3 (SHA3-224, SHA3-256, SHA3-384, SHA3-512) SHA-3 系列哈希函数实现 - 安全哈希算法 3(SHA3-224、SHA3-256、SHA3-384、SHA3-512)

Features | 主要功能:

  • SHA3-224, SHA3-256, SHA3-384, SHA3-512 algorithms - SHA3-224、SHA3-256、SHA3-384、SHA3-512 算法
  • Hex and Base64 output encoding - 十六进制和 Base64 输出编码

Usage Examples | 使用示例:

Sha3Hash sha3 = Sha3Hash.sha3_256();
String hex = sha3.hashHex("data");

Security | 安全性:

  • Thread-safe: Yes - 线程安全: 是
  • Null-safe: Yes - 空值安全: 是

Performance | 性能特性:

  • Time complexity: O(n) - 时间复杂度: O(n),n为数据长度
  • Space complexity: O(1) - 空间复杂度: O(1)
Since:
JDK 25, opencode-base-crypto V1.0.0
Author:
Leon Soo www.LeonSoo.com
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    Get the hash algorithm name 获取哈希算法名称
    int
    Get the digest length in bytes 获取摘要长度(字节数)
    byte[]
    hash(byte[] data)
    Compute hash of byte array 计算字节数组的哈希值
    byte[]
    hash(String data)
    Compute hash of string (UTF-8 encoded) 计算字符串的哈希值(使用 UTF-8 编码)
    hashBase64(byte[] data)
    Compute hash and return as Base64 string 计算哈希值并返回 Base64 字符串
    hashHex(byte[] data)
    Compute hash and return as hexadecimal string 计算哈希值并返回十六进制字符串
    Compute hash of string and return as hexadecimal string 计算字符串哈希值并返回十六进制字符串
    static Sha3Hash
    Create SHA3-224 hash function (224-bit digest) 创建 SHA3-224 哈希函数(224 位摘要)
    static Sha3Hash
    Create SHA3-256 hash function (256-bit digest) 创建 SHA3-256 哈希函数(256 位摘要)
    static Sha3Hash
    Create SHA3-384 hash function (384-bit digest) 创建 SHA3-384 哈希函数(384 位摘要)
    static Sha3Hash
    Create SHA3-512 hash function (512-bit digest) 创建 SHA3-512 哈希函数(512 位摘要)

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • sha3_224

      public static Sha3Hash sha3_224()
      Create SHA3-224 hash function (224-bit digest) 创建 SHA3-224 哈希函数(224 位摘要)
      Returns:
      SHA3-224 hash function instance
    • sha3_256

      public static Sha3Hash sha3_256()
      Create SHA3-256 hash function (256-bit digest) 创建 SHA3-256 哈希函数(256 位摘要)
      Returns:
      SHA3-256 hash function instance
    • sha3_384

      public static Sha3Hash sha3_384()
      Create SHA3-384 hash function (384-bit digest) 创建 SHA3-384 哈希函数(384 位摘要)
      Returns:
      SHA3-384 hash function instance
    • sha3_512

      public static Sha3Hash sha3_512()
      Create SHA3-512 hash function (512-bit digest) 创建 SHA3-512 哈希函数(512 位摘要)
      Returns:
      SHA3-512 hash function instance
    • hash

      public byte[] hash(byte[] data)
      Description copied from interface: HashFunction
      Compute hash of byte array 计算字节数组的哈希值
      Specified by:
      hash in interface HashFunction
      Parameters:
      data - input data to hash
      Returns:
      hash digest as byte array
    • hash

      public byte[] hash(String data)
      Description copied from interface: HashFunction
      Compute hash of string (UTF-8 encoded) 计算字符串的哈希值(使用 UTF-8 编码)
      Specified by:
      hash in interface HashFunction
      Parameters:
      data - input string to hash
      Returns:
      hash digest as byte array
    • hashHex

      public String hashHex(byte[] data)
      Description copied from interface: HashFunction
      Compute hash and return as hexadecimal string 计算哈希值并返回十六进制字符串
      Specified by:
      hashHex in interface HashFunction
      Parameters:
      data - input data to hash
      Returns:
      hash digest as lowercase hex string
    • hashHex

      public String hashHex(String data)
      Description copied from interface: HashFunction
      Compute hash of string and return as hexadecimal string 计算字符串哈希值并返回十六进制字符串
      Specified by:
      hashHex in interface HashFunction
      Parameters:
      data - input string to hash
      Returns:
      hash digest as lowercase hex string
    • hashBase64

      public String hashBase64(byte[] data)
      Description copied from interface: HashFunction
      Compute hash and return as Base64 string 计算哈希值并返回 Base64 字符串
      Specified by:
      hashBase64 in interface HashFunction
      Parameters:
      data - input data to hash
      Returns:
      hash digest as Base64 string
    • getDigestLength

      public int getDigestLength()
      Description copied from interface: HashFunction
      Get the digest length in bytes 获取摘要长度(字节数)
      Specified by:
      getDigestLength in interface HashFunction
      Returns:
      digest length in bytes
    • getAlgorithm

      public String getAlgorithm()
      Description copied from interface: HashFunction
      Get the hash algorithm name 获取哈希算法名称
      Specified by:
      getAlgorithm in interface HashFunction
      Returns:
      algorithm name