public class Hashids
extends Object
implements Encoder<long[],String>, Decoder<String,long[]>
Hashids
协议实现,以实现:
生成简短、唯一、大小写敏感并无序的hash值
自然数字的Hash值
可以设置不同的盐,具有保密性
可配置的hash长度
递增的输入产生的输出无法预测
来自:
https://github.com/davidafsilva/java-hashids
Hashids
可以将数字或者16进制字符串转为短且唯一不连续的字符串,采用双向编码实现,比如,它可以将347之类的数字转换为yr8之类的字符串,也可以将yr8之类的字符串重新解码为347之类的数字。
此编码算法主要是解决爬虫类应用对连续ID爬取问题,将有序的ID转换为无序的Hashids,而且一一对应。
Author:
david
create
public static Hashids create(char[] salt)
Parameters:
salt
- 加盐值
Returns:
Hashids
public static Hashids create(char[] salt,
int minLength)
Parameters:
salt
- 加盐值
minLength
- 限制最小长度,-1表示不限制
Returns:
Hashids