26 lines
748 B
TypeScript
26 lines
748 B
TypeScript
import * as crypto from 'crypto';
|
|
|
|
export function hashLevels(levels : any[]) : string {
|
|
let c = levels.map(lvl => `${lvl.id.toString()[0]}${lvl.id.toString().slice(-1)}${lvl.stars}0`).join('');
|
|
|
|
let shasum = crypto.createHash('sha1');
|
|
shasum.update(c + 'xI25fpAapCQg');
|
|
return shasum.digest('hex');
|
|
}
|
|
|
|
export function hashLevel(level : string) : string {
|
|
let data = '';
|
|
let l = Math.floor(level.length / 40);
|
|
for (let i = 0; i < 40; i++)
|
|
data += level[i * l];
|
|
|
|
let shasum = crypto.createHash('sha1');
|
|
shasum.update(data + 'xI25fpAapCQg');
|
|
return shasum.digest('hex');
|
|
}
|
|
|
|
export function hashSolo2(data : string) : string {
|
|
let shasum = crypto.createHash('sha1');
|
|
shasum.update(data + 'xI25fpAapCQg');
|
|
return shasum.digest('hex');
|
|
} |