Socket
Socket
Sign inDemoInstall

@smithy/md5-js

Package Overview
Dependencies
Maintainers
2
Versions
37
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@smithy/md5-js - npm Package Compare versions

Comparing version 2.0.18 to 2.1.0

7

dist-cjs/constants.js

@@ -1,6 +0,1 @@

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.INIT = exports.DIGEST_LENGTH = exports.BLOCK_SIZE = void 0;
exports.BLOCK_SIZE = 64;
exports.DIGEST_LENGTH = 16;
exports.INIT = [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476];
module.exports = require("./index.js");

335

dist-cjs/index.js

@@ -1,167 +0,206 @@

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Md5 = void 0;
const util_utf8_1 = require("@smithy/util-utf8");
const constants_1 = require("./constants");
class Md5 {
constructor() {
this.reset();
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// src/index.ts
var src_exports = {};
__export(src_exports, {
Md5: () => Md5
});
module.exports = __toCommonJS(src_exports);
var import_util_utf8 = require("@smithy/util-utf8");
// src/constants.ts
var BLOCK_SIZE = 64;
var DIGEST_LENGTH = 16;
var INIT = [1732584193, 4023233417, 2562383102, 271733878];
// src/index.ts
var _Md5 = class _Md5 {
constructor() {
this.reset();
}
update(sourceData) {
if (isEmptyData(sourceData)) {
return;
} else if (this.finished) {
throw new Error("Attempted to update an already finished hash.");
}
update(sourceData) {
if (isEmptyData(sourceData)) {
return;
}
else if (this.finished) {
throw new Error("Attempted to update an already finished hash.");
}
const data = convertToBuffer(sourceData);
let position = 0;
let { byteLength } = data;
this.bytesHashed += byteLength;
while (byteLength > 0) {
this.buffer.setUint8(this.bufferLength++, data[position++]);
byteLength--;
if (this.bufferLength === constants_1.BLOCK_SIZE) {
this.hashBuffer();
this.bufferLength = 0;
}
}
const data = convertToBuffer(sourceData);
let position = 0;
let { byteLength } = data;
this.bytesHashed += byteLength;
while (byteLength > 0) {
this.buffer.setUint8(this.bufferLength++, data[position++]);
byteLength--;
if (this.bufferLength === BLOCK_SIZE) {
this.hashBuffer();
this.bufferLength = 0;
}
}
async digest() {
if (!this.finished) {
const { buffer, bufferLength: undecoratedLength, bytesHashed } = this;
const bitsHashed = bytesHashed * 8;
buffer.setUint8(this.bufferLength++, 0b10000000);
if (undecoratedLength % constants_1.BLOCK_SIZE >= constants_1.BLOCK_SIZE - 8) {
for (let i = this.bufferLength; i < constants_1.BLOCK_SIZE; i++) {
buffer.setUint8(i, 0);
}
this.hashBuffer();
this.bufferLength = 0;
}
for (let i = this.bufferLength; i < constants_1.BLOCK_SIZE - 8; i++) {
buffer.setUint8(i, 0);
}
buffer.setUint32(constants_1.BLOCK_SIZE - 8, bitsHashed >>> 0, true);
buffer.setUint32(constants_1.BLOCK_SIZE - 4, Math.floor(bitsHashed / 0x100000000), true);
this.hashBuffer();
this.finished = true;
}
async digest() {
if (!this.finished) {
const { buffer, bufferLength: undecoratedLength, bytesHashed } = this;
const bitsHashed = bytesHashed * 8;
buffer.setUint8(this.bufferLength++, 128);
if (undecoratedLength % BLOCK_SIZE >= BLOCK_SIZE - 8) {
for (let i = this.bufferLength; i < BLOCK_SIZE; i++) {
buffer.setUint8(i, 0);
}
const out = new DataView(new ArrayBuffer(constants_1.DIGEST_LENGTH));
for (let i = 0; i < 4; i++) {
out.setUint32(i * 4, this.state[i], true);
}
return new Uint8Array(out.buffer, out.byteOffset, out.byteLength);
this.hashBuffer();
this.bufferLength = 0;
}
for (let i = this.bufferLength; i < BLOCK_SIZE - 8; i++) {
buffer.setUint8(i, 0);
}
buffer.setUint32(BLOCK_SIZE - 8, bitsHashed >>> 0, true);
buffer.setUint32(BLOCK_SIZE - 4, Math.floor(bitsHashed / 4294967296), true);
this.hashBuffer();
this.finished = true;
}
hashBuffer() {
const { buffer, state } = this;
let a = state[0], b = state[1], c = state[2], d = state[3];
a = ff(a, b, c, d, buffer.getUint32(0, true), 7, 0xd76aa478);
d = ff(d, a, b, c, buffer.getUint32(4, true), 12, 0xe8c7b756);
c = ff(c, d, a, b, buffer.getUint32(8, true), 17, 0x242070db);
b = ff(b, c, d, a, buffer.getUint32(12, true), 22, 0xc1bdceee);
a = ff(a, b, c, d, buffer.getUint32(16, true), 7, 0xf57c0faf);
d = ff(d, a, b, c, buffer.getUint32(20, true), 12, 0x4787c62a);
c = ff(c, d, a, b, buffer.getUint32(24, true), 17, 0xa8304613);
b = ff(b, c, d, a, buffer.getUint32(28, true), 22, 0xfd469501);
a = ff(a, b, c, d, buffer.getUint32(32, true), 7, 0x698098d8);
d = ff(d, a, b, c, buffer.getUint32(36, true), 12, 0x8b44f7af);
c = ff(c, d, a, b, buffer.getUint32(40, true), 17, 0xffff5bb1);
b = ff(b, c, d, a, buffer.getUint32(44, true), 22, 0x895cd7be);
a = ff(a, b, c, d, buffer.getUint32(48, true), 7, 0x6b901122);
d = ff(d, a, b, c, buffer.getUint32(52, true), 12, 0xfd987193);
c = ff(c, d, a, b, buffer.getUint32(56, true), 17, 0xa679438e);
b = ff(b, c, d, a, buffer.getUint32(60, true), 22, 0x49b40821);
a = gg(a, b, c, d, buffer.getUint32(4, true), 5, 0xf61e2562);
d = gg(d, a, b, c, buffer.getUint32(24, true), 9, 0xc040b340);
c = gg(c, d, a, b, buffer.getUint32(44, true), 14, 0x265e5a51);
b = gg(b, c, d, a, buffer.getUint32(0, true), 20, 0xe9b6c7aa);
a = gg(a, b, c, d, buffer.getUint32(20, true), 5, 0xd62f105d);
d = gg(d, a, b, c, buffer.getUint32(40, true), 9, 0x02441453);
c = gg(c, d, a, b, buffer.getUint32(60, true), 14, 0xd8a1e681);
b = gg(b, c, d, a, buffer.getUint32(16, true), 20, 0xe7d3fbc8);
a = gg(a, b, c, d, buffer.getUint32(36, true), 5, 0x21e1cde6);
d = gg(d, a, b, c, buffer.getUint32(56, true), 9, 0xc33707d6);
c = gg(c, d, a, b, buffer.getUint32(12, true), 14, 0xf4d50d87);
b = gg(b, c, d, a, buffer.getUint32(32, true), 20, 0x455a14ed);
a = gg(a, b, c, d, buffer.getUint32(52, true), 5, 0xa9e3e905);
d = gg(d, a, b, c, buffer.getUint32(8, true), 9, 0xfcefa3f8);
c = gg(c, d, a, b, buffer.getUint32(28, true), 14, 0x676f02d9);
b = gg(b, c, d, a, buffer.getUint32(48, true), 20, 0x8d2a4c8a);
a = hh(a, b, c, d, buffer.getUint32(20, true), 4, 0xfffa3942);
d = hh(d, a, b, c, buffer.getUint32(32, true), 11, 0x8771f681);
c = hh(c, d, a, b, buffer.getUint32(44, true), 16, 0x6d9d6122);
b = hh(b, c, d, a, buffer.getUint32(56, true), 23, 0xfde5380c);
a = hh(a, b, c, d, buffer.getUint32(4, true), 4, 0xa4beea44);
d = hh(d, a, b, c, buffer.getUint32(16, true), 11, 0x4bdecfa9);
c = hh(c, d, a, b, buffer.getUint32(28, true), 16, 0xf6bb4b60);
b = hh(b, c, d, a, buffer.getUint32(40, true), 23, 0xbebfbc70);
a = hh(a, b, c, d, buffer.getUint32(52, true), 4, 0x289b7ec6);
d = hh(d, a, b, c, buffer.getUint32(0, true), 11, 0xeaa127fa);
c = hh(c, d, a, b, buffer.getUint32(12, true), 16, 0xd4ef3085);
b = hh(b, c, d, a, buffer.getUint32(24, true), 23, 0x04881d05);
a = hh(a, b, c, d, buffer.getUint32(36, true), 4, 0xd9d4d039);
d = hh(d, a, b, c, buffer.getUint32(48, true), 11, 0xe6db99e5);
c = hh(c, d, a, b, buffer.getUint32(60, true), 16, 0x1fa27cf8);
b = hh(b, c, d, a, buffer.getUint32(8, true), 23, 0xc4ac5665);
a = ii(a, b, c, d, buffer.getUint32(0, true), 6, 0xf4292244);
d = ii(d, a, b, c, buffer.getUint32(28, true), 10, 0x432aff97);
c = ii(c, d, a, b, buffer.getUint32(56, true), 15, 0xab9423a7);
b = ii(b, c, d, a, buffer.getUint32(20, true), 21, 0xfc93a039);
a = ii(a, b, c, d, buffer.getUint32(48, true), 6, 0x655b59c3);
d = ii(d, a, b, c, buffer.getUint32(12, true), 10, 0x8f0ccc92);
c = ii(c, d, a, b, buffer.getUint32(40, true), 15, 0xffeff47d);
b = ii(b, c, d, a, buffer.getUint32(4, true), 21, 0x85845dd1);
a = ii(a, b, c, d, buffer.getUint32(32, true), 6, 0x6fa87e4f);
d = ii(d, a, b, c, buffer.getUint32(60, true), 10, 0xfe2ce6e0);
c = ii(c, d, a, b, buffer.getUint32(24, true), 15, 0xa3014314);
b = ii(b, c, d, a, buffer.getUint32(52, true), 21, 0x4e0811a1);
a = ii(a, b, c, d, buffer.getUint32(16, true), 6, 0xf7537e82);
d = ii(d, a, b, c, buffer.getUint32(44, true), 10, 0xbd3af235);
c = ii(c, d, a, b, buffer.getUint32(8, true), 15, 0x2ad7d2bb);
b = ii(b, c, d, a, buffer.getUint32(36, true), 21, 0xeb86d391);
state[0] = (a + state[0]) & 0xffffffff;
state[1] = (b + state[1]) & 0xffffffff;
state[2] = (c + state[2]) & 0xffffffff;
state[3] = (d + state[3]) & 0xffffffff;
const out = new DataView(new ArrayBuffer(DIGEST_LENGTH));
for (let i = 0; i < 4; i++) {
out.setUint32(i * 4, this.state[i], true);
}
reset() {
this.state = Uint32Array.from(constants_1.INIT);
this.buffer = new DataView(new ArrayBuffer(constants_1.BLOCK_SIZE));
this.bufferLength = 0;
this.bytesHashed = 0;
this.finished = false;
}
}
exports.Md5 = Md5;
return new Uint8Array(out.buffer, out.byteOffset, out.byteLength);
}
hashBuffer() {
const { buffer, state } = this;
let a = state[0], b = state[1], c = state[2], d = state[3];
a = ff(a, b, c, d, buffer.getUint32(0, true), 7, 3614090360);
d = ff(d, a, b, c, buffer.getUint32(4, true), 12, 3905402710);
c = ff(c, d, a, b, buffer.getUint32(8, true), 17, 606105819);
b = ff(b, c, d, a, buffer.getUint32(12, true), 22, 3250441966);
a = ff(a, b, c, d, buffer.getUint32(16, true), 7, 4118548399);
d = ff(d, a, b, c, buffer.getUint32(20, true), 12, 1200080426);
c = ff(c, d, a, b, buffer.getUint32(24, true), 17, 2821735955);
b = ff(b, c, d, a, buffer.getUint32(28, true), 22, 4249261313);
a = ff(a, b, c, d, buffer.getUint32(32, true), 7, 1770035416);
d = ff(d, a, b, c, buffer.getUint32(36, true), 12, 2336552879);
c = ff(c, d, a, b, buffer.getUint32(40, true), 17, 4294925233);
b = ff(b, c, d, a, buffer.getUint32(44, true), 22, 2304563134);
a = ff(a, b, c, d, buffer.getUint32(48, true), 7, 1804603682);
d = ff(d, a, b, c, buffer.getUint32(52, true), 12, 4254626195);
c = ff(c, d, a, b, buffer.getUint32(56, true), 17, 2792965006);
b = ff(b, c, d, a, buffer.getUint32(60, true), 22, 1236535329);
a = gg(a, b, c, d, buffer.getUint32(4, true), 5, 4129170786);
d = gg(d, a, b, c, buffer.getUint32(24, true), 9, 3225465664);
c = gg(c, d, a, b, buffer.getUint32(44, true), 14, 643717713);
b = gg(b, c, d, a, buffer.getUint32(0, true), 20, 3921069994);
a = gg(a, b, c, d, buffer.getUint32(20, true), 5, 3593408605);
d = gg(d, a, b, c, buffer.getUint32(40, true), 9, 38016083);
c = gg(c, d, a, b, buffer.getUint32(60, true), 14, 3634488961);
b = gg(b, c, d, a, buffer.getUint32(16, true), 20, 3889429448);
a = gg(a, b, c, d, buffer.getUint32(36, true), 5, 568446438);
d = gg(d, a, b, c, buffer.getUint32(56, true), 9, 3275163606);
c = gg(c, d, a, b, buffer.getUint32(12, true), 14, 4107603335);
b = gg(b, c, d, a, buffer.getUint32(32, true), 20, 1163531501);
a = gg(a, b, c, d, buffer.getUint32(52, true), 5, 2850285829);
d = gg(d, a, b, c, buffer.getUint32(8, true), 9, 4243563512);
c = gg(c, d, a, b, buffer.getUint32(28, true), 14, 1735328473);
b = gg(b, c, d, a, buffer.getUint32(48, true), 20, 2368359562);
a = hh(a, b, c, d, buffer.getUint32(20, true), 4, 4294588738);
d = hh(d, a, b, c, buffer.getUint32(32, true), 11, 2272392833);
c = hh(c, d, a, b, buffer.getUint32(44, true), 16, 1839030562);
b = hh(b, c, d, a, buffer.getUint32(56, true), 23, 4259657740);
a = hh(a, b, c, d, buffer.getUint32(4, true), 4, 2763975236);
d = hh(d, a, b, c, buffer.getUint32(16, true), 11, 1272893353);
c = hh(c, d, a, b, buffer.getUint32(28, true), 16, 4139469664);
b = hh(b, c, d, a, buffer.getUint32(40, true), 23, 3200236656);
a = hh(a, b, c, d, buffer.getUint32(52, true), 4, 681279174);
d = hh(d, a, b, c, buffer.getUint32(0, true), 11, 3936430074);
c = hh(c, d, a, b, buffer.getUint32(12, true), 16, 3572445317);
b = hh(b, c, d, a, buffer.getUint32(24, true), 23, 76029189);
a = hh(a, b, c, d, buffer.getUint32(36, true), 4, 3654602809);
d = hh(d, a, b, c, buffer.getUint32(48, true), 11, 3873151461);
c = hh(c, d, a, b, buffer.getUint32(60, true), 16, 530742520);
b = hh(b, c, d, a, buffer.getUint32(8, true), 23, 3299628645);
a = ii(a, b, c, d, buffer.getUint32(0, true), 6, 4096336452);
d = ii(d, a, b, c, buffer.getUint32(28, true), 10, 1126891415);
c = ii(c, d, a, b, buffer.getUint32(56, true), 15, 2878612391);
b = ii(b, c, d, a, buffer.getUint32(20, true), 21, 4237533241);
a = ii(a, b, c, d, buffer.getUint32(48, true), 6, 1700485571);
d = ii(d, a, b, c, buffer.getUint32(12, true), 10, 2399980690);
c = ii(c, d, a, b, buffer.getUint32(40, true), 15, 4293915773);
b = ii(b, c, d, a, buffer.getUint32(4, true), 21, 2240044497);
a = ii(a, b, c, d, buffer.getUint32(32, true), 6, 1873313359);
d = ii(d, a, b, c, buffer.getUint32(60, true), 10, 4264355552);
c = ii(c, d, a, b, buffer.getUint32(24, true), 15, 2734768916);
b = ii(b, c, d, a, buffer.getUint32(52, true), 21, 1309151649);
a = ii(a, b, c, d, buffer.getUint32(16, true), 6, 4149444226);
d = ii(d, a, b, c, buffer.getUint32(44, true), 10, 3174756917);
c = ii(c, d, a, b, buffer.getUint32(8, true), 15, 718787259);
b = ii(b, c, d, a, buffer.getUint32(36, true), 21, 3951481745);
state[0] = a + state[0] & 4294967295;
state[1] = b + state[1] & 4294967295;
state[2] = c + state[2] & 4294967295;
state[3] = d + state[3] & 4294967295;
}
reset() {
this.state = Uint32Array.from(INIT);
this.buffer = new DataView(new ArrayBuffer(BLOCK_SIZE));
this.bufferLength = 0;
this.bytesHashed = 0;
this.finished = false;
}
};
__name(_Md5, "Md5");
var Md5 = _Md5;
function cmn(q, a, b, x, s, t) {
a = (((a + q) & 0xffffffff) + ((x + t) & 0xffffffff)) & 0xffffffff;
return (((a << s) | (a >>> (32 - s))) + b) & 0xffffffff;
a = (a + q & 4294967295) + (x + t & 4294967295) & 4294967295;
return (a << s | a >>> 32 - s) + b & 4294967295;
}
__name(cmn, "cmn");
function ff(a, b, c, d, x, s, t) {
return cmn((b & c) | (~b & d), a, b, x, s, t);
return cmn(b & c | ~b & d, a, b, x, s, t);
}
__name(ff, "ff");
function gg(a, b, c, d, x, s, t) {
return cmn((b & d) | (c & ~d), a, b, x, s, t);
return cmn(b & d | c & ~d, a, b, x, s, t);
}
__name(gg, "gg");
function hh(a, b, c, d, x, s, t) {
return cmn(b ^ c ^ d, a, b, x, s, t);
return cmn(b ^ c ^ d, a, b, x, s, t);
}
__name(hh, "hh");
function ii(a, b, c, d, x, s, t) {
return cmn(c ^ (b | ~d), a, b, x, s, t);
return cmn(c ^ (b | ~d), a, b, x, s, t);
}
__name(ii, "ii");
function isEmptyData(data) {
if (typeof data === "string") {
return data.length === 0;
}
return data.byteLength === 0;
if (typeof data === "string") {
return data.length === 0;
}
return data.byteLength === 0;
}
__name(isEmptyData, "isEmptyData");
function convertToBuffer(data) {
if (typeof data === "string") {
return (0, util_utf8_1.fromUtf8)(data);
}
if (ArrayBuffer.isView(data)) {
return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);
}
return new Uint8Array(data);
if (typeof data === "string") {
return (0, import_util_utf8.fromUtf8)(data);
}
if (ArrayBuffer.isView(data)) {
return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);
}
return new Uint8Array(data);
}
__name(convertToBuffer, "convertToBuffer");
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
Md5
});
{
"name": "@smithy/md5-js",
"version": "2.0.18",
"version": "2.1.0",
"scripts": {
"build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
"build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
"build:cjs": "node ../../scripts/inline md5-js",
"build:es": "yarn g:tsc -p tsconfig.es.json",

@@ -25,4 +25,4 @@ "build:types": "yarn g:tsc -p tsconfig.types.json",

"devDependencies": {
"@smithy/util-base64": "^2.0.1",
"@smithy/util-hex-encoding": "^2.0.0",
"@smithy/util-base64": "^2.1.0",
"@smithy/util-hex-encoding": "^2.1.0",
"@tsconfig/recommended": "1.0.1",

@@ -37,4 +37,4 @@ "@types/node": "^14.14.31",

"dependencies": {
"@smithy/types": "^2.8.0",
"@smithy/util-utf8": "^2.0.2",
"@smithy/types": "^2.9.0",
"@smithy/util-utf8": "^2.1.0",
"tslib": "^2.5.0"

@@ -41,0 +41,0 @@ },

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc