public class HashKits extends Object
copy from vipshop VJTools(com.vip.vjtools.vjkit.text.HashUtil) and made some changes.
| 限定符和类型 | 字段和说明 |
|---|---|
static int |
MURMUR_SEED |
| 构造器和说明 |
|---|
HashKits() |
| 限定符和类型 | 方法和说明 |
|---|---|
static int |
crc32AsInt(byte[] input)
对输入字符串进行crc32散列返回int, 返回值有可能是负数.
|
static int |
crc32AsInt(String input)
对输入字符串进行crc32散列返回int, 返回值有可能是负数.
|
static long |
crc32AsLong(byte[] input)
对输入字符串进行crc32散列,与php兼容,在64bit系统下返回永远是正数的long
Guava也有crc32实现, 但返回值无法返回long,所以统一使用JDK默认实现
|
static long |
crc32AsLong(String input)
对输入字符串进行crc32散列,与php兼容,在64bit系统下返回永远是正数的long
Guava也有crc32实现, 但返回值无法返回long,所以统一使用JDK默认实现
|
static byte[] |
generateSalt(int numBytes)
用SecureRandom生成随机的byte[]作为salt.
|
static byte[] |
md5File(InputStream input)
对文件进行md5散列,被破解后MD5已较少人用.
|
static byte[] |
messageDigestHash(byte[] input,
byte[] salt,
int iterations,
String digest)
使用JDK的MessageDigest进行散列编码
|
static byte[] |
messageDigestHash(String input,
String salt,
int iterations,
String digest)
使用JDK的MessageDigest进行散列编码
|
static long |
murmur128AsLong(byte[] input)
对输入字符串进行murmur128散列, 返回值可能是负数
|
static long |
murmur128AsLong(String input)
对输入字符串进行murmur128散列, 返回值可能是负数
|
static int |
murmur32AsInt(byte[] input)
对输入字符串进行murmur32散列, 返回值可能是负数
|
static int |
murmur32AsInt(String input)
对输入字符串进行murmur32散列, 返回值可能是负数
|
static byte[] |
sha1File(InputStream input)
对文件进行sha1散列.
|
public static final int MURMUR_SEED
public static byte[] messageDigestHash(byte[] input,
byte[] salt,
int iterations,
String digest)
input - 要进行散列的内容salt - 盐iterations - 带盐迭代次数digest - 算法(MD2,MD5,SHA-1,SHA-224,SHA-256,SHA-384,SHA-512)public static byte[] messageDigestHash(String input, String salt, int iterations, String digest)
input - 要进行散列的内容salt - 盐iterations - 带盐迭代次数digest - 算法(MD2,MD5,SHA-1,SHA-224,SHA-256,SHA-384,SHA-512)public static byte[] generateSalt(int numBytes)
numBytes - salt数组的大小public static byte[] sha1File(InputStream input) throws IOException
IOExceptionpublic static byte[] md5File(InputStream input) throws IOException
IOExceptionpublic static int crc32AsInt(String input)
Guava也有crc32实现, 但返回值无法返回long,所以统一使用JDK默认实现
public static int crc32AsInt(byte[] input)
Guava也有crc32实现, 但返回值无法返回long,所以统一使用JDK默认实现
public static long crc32AsLong(String input)
Guava也有crc32实现, 但返回值无法返回long,所以统一使用JDK默认实现
public static long crc32AsLong(byte[] input)
Guava也有crc32实现, 但返回值无法返回long,所以统一使用JDK默认实现
public static int murmur32AsInt(byte[] input)
public static int murmur32AsInt(String input)
public static long murmur128AsLong(byte[] input)
public static long murmur128AsLong(String input)
Copyright © 2019. All rights reserved.