mirror of
https://github.com/SukkaW/Surge.git
synced 2026-01-29 01:51:52 +08:00
Chore: a hash collision test
This commit is contained in:
@@ -43,4 +43,15 @@ export function fnv1a52(str: string) {
|
||||
);
|
||||
}
|
||||
|
||||
export function fnv1a(s: string) {
|
||||
let h = 0x81_1C_9D_C5;
|
||||
|
||||
for (let i = 0, l = s.length; i < l; i++) {
|
||||
h ^= s.charCodeAt(i);
|
||||
h += (h << 1) + (h << 4) + (h << 7) + (h << 8) + (h << 24);
|
||||
}
|
||||
|
||||
return (h >>> 0);
|
||||
}
|
||||
|
||||
export const stringHash = (payload: string) => fnv1a52(payload).toString(36) + payload.length.toString(36);
|
||||
|
||||
Reference in New Issue
Block a user