mirror of
https://github.com/tobspr/shapez.io.git
synced 2025-12-11 09:11:50 +00:00
Drop support for SHA1 checksums
Also remove an unused function and switch to crypto.randomUUID() for savegame ID generation.
This commit is contained in:
parent
bbde68df23
commit
67f7babd09
@ -28,7 +28,6 @@
|
||||
"debounce-promise": "^3.1.2",
|
||||
"howler": "^2.1.2",
|
||||
"lz-string": "^1.4.4",
|
||||
"rusha": "^0.8.13",
|
||||
"semver": "^7.3.5"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
@ -9,7 +9,7 @@ import { IS_DEBUG, globalConfig } from "./config";
|
||||
import { ExplainedResult } from "./explained_result";
|
||||
import { createLogger } from "./logging";
|
||||
import { compressX64, decompressX64 } from "./lzstring";
|
||||
import { CRC_PREFIX, computeCrc, sha1 } from "./sensitive_utils.encrypt";
|
||||
import { computeCrc } from "./sensitive_utils.encrypt";
|
||||
|
||||
import debounce from "debounce-promise";
|
||||
|
||||
@ -109,9 +109,7 @@ export class ReadWriteProxy {
|
||||
const checksum = decompressed.substring(0, 40);
|
||||
const jsonString = decompressed.substr(40);
|
||||
|
||||
const desiredChecksum = checksum.startsWith(CRC_PREFIX)
|
||||
? computeCrc(jsonString + salt)
|
||||
: sha1(jsonString + salt);
|
||||
const desiredChecksum = computeCrc(jsonString + salt);
|
||||
|
||||
if (desiredChecksum !== checksum) {
|
||||
// Checksum mismatch
|
||||
@ -198,11 +196,9 @@ export class ReadWriteProxy {
|
||||
|
||||
// Compare stored checksum with actual checksum
|
||||
const checksum = decompressed.substring(0, 40);
|
||||
const jsonString = decompressed.substr(40);
|
||||
const jsonString = decompressed.slice(40);
|
||||
|
||||
const desiredChecksum = checksum.startsWith(CRC_PREFIX)
|
||||
? computeCrc(jsonString + salt)
|
||||
: sha1(jsonString + salt);
|
||||
const desiredChecksum = computeCrc(jsonString + salt);
|
||||
|
||||
if (desiredChecksum !== checksum) {
|
||||
// Checksum mismatch
|
||||
|
||||
@ -1,15 +1,4 @@
|
||||
import { createHash } from "rusha";
|
||||
import crc32 from "crc/crc32";
|
||||
import { decompressX64 } from "./lzstring";
|
||||
|
||||
export function sha1(str) {
|
||||
return createHash().update(str).digest("hex");
|
||||
}
|
||||
|
||||
// Window.location.host
|
||||
export function getNameOfProvider() {
|
||||
return window[decompressX64("DYewxghgLgliB2Q")][decompressX64("BYewzgLgdghgtgUyA")];
|
||||
}
|
||||
|
||||
// Distinguish legacy crc prefixes
|
||||
export const CRC_PREFIX = "crc32".padEnd(32, "-");
|
||||
|
||||
@ -1,12 +1,10 @@
|
||||
import { globalConfig } from "../core/config";
|
||||
import { ExplainedResult } from "../core/explained_result";
|
||||
import { createLogger } from "../core/logging";
|
||||
import { ReadWriteProxy } from "../core/read_write_proxy";
|
||||
import { globalConfig } from "../core/config";
|
||||
import { Savegame } from "./savegame";
|
||||
const logger = createLogger("savegame_manager");
|
||||
|
||||
import Rusha from "rusha";
|
||||
|
||||
/**
|
||||
* @typedef {import("./savegame_typedefs").SavegamesData} SavegamesData
|
||||
* @typedef {import("./savegame_typedefs").SavegameMetadata} SavegameMetadata
|
||||
@ -217,9 +215,7 @@ export class SavegameManager extends ReadWriteProxy {
|
||||
* Helper method to generate a new internal savegame id
|
||||
*/
|
||||
generateInternalId() {
|
||||
return Rusha.createHash()
|
||||
.update(Date.now() + "/" + Math.random())
|
||||
.digest("hex");
|
||||
return self.crypto.randomUUID();
|
||||
}
|
||||
|
||||
// End
|
||||
|
||||
@ -8580,11 +8580,6 @@ run-parallel@^1.1.9:
|
||||
dependencies:
|
||||
queue-microtask "^1.2.2"
|
||||
|
||||
rusha@^0.8.13:
|
||||
version "0.8.14"
|
||||
resolved "https://registry.yarnpkg.com/rusha/-/rusha-0.8.14.tgz#a977d0de9428406138b7bb90d3de5dcd024e2f68"
|
||||
integrity sha512-cLgakCUf6PedEu15t8kbsjnwIFFR2D4RfL+W3iWFJ4iac7z4B0ZI8fxy4R3J956kAI68HclCFGL8MPoUVC3qVA==
|
||||
|
||||
rx-lite@^3.1.2:
|
||||
version "3.1.2"
|
||||
resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user