snyk-docker-plugin
Version:
Snyk CLI docker plugin
26 lines • 918 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.bufferToSha1 = void 0;
const crypto = require("crypto");
const types_1 = require("./types");
const HASH_ENCODING = "hex";
async function bufferToSha1(buffer) {
const hash = crypto.createHash(types_1.HashAlgorithm.Sha1);
const chunkSize = 100 * 1024 * 1024; // 100 MB
return new Promise((resolve, reject) => {
try {
for (let offset = 0; offset < buffer.length; offset += chunkSize) {
const end = Math.min(offset + chunkSize, buffer.length);
const chunk = buffer.slice(offset, end);
hash.update(chunk);
}
const digest = hash.digest(HASH_ENCODING);
resolve(digest);
}
catch (err) {
reject(err);
}
});
}
exports.bufferToSha1 = bufferToSha1;
//# sourceMappingURL=buffer-utils.js.map
;