Linux iad1-shared-b7-18 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64
Apache
: 67.205.6.31 | : 216.73.216.47
Cant Read [ /etc/named.conf ]
8.2.29
fernandoquevedo
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
share /
nodejs /
webpack /
lib /
util /
[ HOME SHELL ]
Name
Size
Permission
Action
LazyBucketSortedSet.js
5.58
KB
-rw-r--r--
Queue.js
940
B
-rw-r--r--
Semaphore.js
1007
B
-rw-r--r--
SetHelpers.js
1.34
KB
-rw-r--r--
SortableSet.js
3.16
KB
-rw-r--r--
StackedSetMap.js
2.79
KB
-rw-r--r--
TrackingSet.js
537
B
-rw-r--r--
cachedMerge.js
1.07
KB
-rw-r--r--
cleverMerge.js
2.12
KB
-rw-r--r--
createHash.js
3.31
KB
-rw-r--r--
deterministicGrouping.js
7
KB
-rw-r--r--
identifier.js
3.45
KB
-rw-r--r--
objectToMap.js
405
B
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : createHash.js
/* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ "use strict"; const AbstractMethodError = require("../AbstractMethodError"); const BULK_SIZE = 1000; class Hash { /** * Update hash {@link https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding} * @param {string|Buffer} data data * @param {string=} inputEncoding data encoding * @returns {this} updated hash */ update(data, inputEncoding) { throw new AbstractMethodError(); } /** * Calculates the digest {@link https://nodejs.org/api/crypto.html#crypto_hash_digest_encoding} * @param {string=} encoding encoding of the return value * @returns {string|Buffer} digest */ digest(encoding) { throw new AbstractMethodError(); } } exports.Hash = Hash; /** @typedef {typeof Hash} HashConstructor */ class BulkUpdateDecorator extends Hash { /** * @param {Hash} hash hash */ constructor(hash) { super(); this.hash = hash; this.buffer = ""; } /** * Update hash {@link https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding} * @param {string|Buffer} data data * @param {string=} inputEncoding data encoding * @returns {this} updated hash */ update(data, inputEncoding) { if ( inputEncoding !== undefined || typeof data !== "string" || data.length > BULK_SIZE ) { if (this.buffer.length > 0) { this.hash.update(this.buffer); this.buffer = ""; } this.hash.update(data, inputEncoding); } else { this.buffer += data; if (this.buffer.length > BULK_SIZE) { this.hash.update(this.buffer); this.buffer = ""; } } return this; } /** * Calculates the digest {@link https://nodejs.org/api/crypto.html#crypto_hash_digest_encoding} * @param {string=} encoding encoding of the return value * @returns {string|Buffer} digest */ digest(encoding) { if (this.buffer.length > 0) { this.hash.update(this.buffer); } var digestResult = this.hash.digest(encoding); return typeof digestResult === "string" ? digestResult : digestResult.toString(); } } /** * istanbul ignore next */ class DebugHash extends Hash { constructor() { super(); this.string = ""; } /** * Update hash {@link https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding} * @param {string|Buffer} data data * @param {string=} inputEncoding data encoding * @returns {this} updated hash */ update(data, inputEncoding) { if (typeof data !== "string") data = data.toString("utf-8"); this.string += data; return this; } /** * Calculates the digest {@link https://nodejs.org/api/crypto.html#crypto_hash_digest_encoding} * @param {string=} encoding encoding of the return value * @returns {string|Buffer} digest */ digest(encoding) { return this.string.replace(/[^a-z0-9]+/gi, m => Buffer.from(m).toString("hex") ); } } /** * Creates a hash by name or function * @param {string | HashConstructor} algorithm the algorithm name or a constructor creating a hash * @returns {Hash} the hash */ module.exports = algorithm => { if (typeof algorithm === "function") { return new BulkUpdateDecorator(new algorithm()); } switch (algorithm) { // TODO add non-cryptographic algorithm here case "debug": return new DebugHash(); default: return new BulkUpdateDecorator(require("crypto").createHash(algorithm)); } };
Close