INNER CODE UNIT · TypeScript

Webserver

jonasstrehle/supercookie · server/main.ts:126

class Webserver {
    public static routes: Array<string> = createRoutes(CACHE_IDENTIFIER, N).map((value: string) => `${CACHE_IDENTIFIER}:${value}`);
    
    public static getVector(identifier: number): Array<string> {
        const booleanVector: Array<boolean> = (identifier >>> 0).toString(2)
            .padStart(this.routes.length, '0').split('')
            .map((element: '0' | '1') => element === '1')
            .reverse();
        const vector = new Array<string>();
        booleanVector.forEach((value: boolean, index: number) => value ? vector.push(this.getRouteByIndex(index)) : void 0);
        return vector;
    }
    public static getIdentifier(vector: Set<string>, size: number = vector.size): number {
        return parseInt(this.routes.map((route: string) => vector.has(route) ? 0 : 1)
            .join('').slice(0, size).split('').reverse().join(''), 2);
    }
    public static hasRoute(route: string): boolean {
        return this.routes.includes(route);

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…