Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
MR414N-ID
GitHub Repository: MR414N-ID/botku2
Path: blob/master/node_modules/@bochilteam/scraper/lib/cjs/encryptions/crypto.js
1126 views
1
"use strict";
2
var __importDefault = (this && this.__importDefault) || function (mod) {
3
return (mod && mod.__esModule) ? mod : { "default": mod };
4
};
5
Object.defineProperty(exports, "__esModule", { value: true });
6
exports.createHash = exports.randomBytes = exports.randomUUID = void 0;
7
const crypto_1 = __importDefault(require("crypto"));
8
function randomUUID(opts) {
9
if (typeof crypto_1.default.randomUUID === 'function') {
10
return crypto_1.default.randomUUID(opts);
11
}
12
const rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate
13
let poolPtr = rnds8Pool.length;
14
if (poolPtr > rnds8Pool.length - 16) {
15
crypto_1.default.randomFillSync(rnds8Pool);
16
poolPtr = 0;
17
}
18
// eslint-disable-next-line prefer-const
19
let rnds = rnds8Pool.slice(poolPtr, (poolPtr += 16));
20
rnds[6] = (rnds[6] & 0x0f) | 0x40;
21
rnds[8] = (rnds[8] & 0x3f) | 0x80;
22
return serializeUUID(rnds);
23
}
24
exports.randomUUID = randomUUID;
25
function randomBytes(size) {
26
return crypto_1.default.randomBytes(size).toString('hex');
27
}
28
exports.randomBytes = randomBytes;
29
function createHash(algorithm /* 'md4' | 'md5' | 'sha1' | 'sha256' | 'sha512 */, data) {
30
return crypto_1.default.createHash(algorithm).update(data).digest('hex');
31
}
32
exports.createHash = createHash;
33
const kHexBytes = [];
34
for (let i = 0; i < 256; ++i) {
35
kHexBytes.push((i + 0x100).toString(16).substr(1));
36
}
37
function serializeUUID(buf, offset = 0) {
38
return (kHexBytes[buf[offset]] +
39
kHexBytes[buf[offset + 1]] +
40
kHexBytes[buf[offset + 2]] +
41
kHexBytes[buf[offset + 3]] +
42
'-' +
43
kHexBytes[buf[offset + 4]] +
44
kHexBytes[buf[offset + 5]] +
45
'-' +
46
kHexBytes[(buf[offset + 6] & 0x0f) | 0x40] +
47
kHexBytes[buf[offset + 7]] +
48
'-' +
49
kHexBytes[(buf[offset + 8] & 0x3f) | 0x80] +
50
kHexBytes[buf[offset + 9]] +
51
'-' +
52
kHexBytes[buf[offset + 10]] +
53
kHexBytes[buf[offset + 11]] +
54
kHexBytes[buf[offset + 12]] +
55
kHexBytes[buf[offset + 13]] +
56
kHexBytes[buf[offset + 14]] +
57
kHexBytes[buf[offset + 15]]).toLowerCase();
58
}
59
//# sourceMappingURL=crypto.js.map
60