sha256-universal
Advanced tools
Comparing version 1.2.0 to 1.2.1
{ | ||
"name": "sha256-universal", | ||
"version": "1.2.0", | ||
"version": "1.2.1", | ||
"description": "Sha256 hashing algorithm in both WASM and pure JS", | ||
@@ -9,2 +9,3 @@ "main": "index.js", | ||
"dependencies": { | ||
"b4a": "^1.0.1", | ||
"sha256-wasm": "^2.2.1" | ||
@@ -11,0 +12,0 @@ }, |
@@ -1,5 +0,3 @@ | ||
if (btoa == null) var btoa = buf => require('buf' + 'fer')['Buf' + 'fer'].from(buf).toString('base64') | ||
if (atob == null) var atob = buf => new Uint8Array(require('buf' + 'fer')['Buf' + 'fer'].from(buf, 'base64')) | ||
const assert = require('nanoassert') | ||
const b4a = require('b4a') | ||
@@ -172,6 +170,3 @@ module.exports = Sha256 | ||
if (typeof enc === 'string') { | ||
if (enc === 'hex') return hexSlice(resultBuf, 0, resultBuf.length) | ||
if (enc === 'utf8' || enc === 'utf-8') return new TextEncoder().encode(resultBuf) | ||
if (enc === 'base64') return btoa(resultBuf) | ||
throw new Error('Encoding: ' + enc + ' not supported') | ||
return b4a.toString(resultBuf, enc) | ||
} | ||
@@ -192,7 +187,7 @@ | ||
this.pad = Buffer.alloc(64) | ||
this.pad = b4a.alloc(64) | ||
this.inner = Sha256() | ||
this.outer = Sha256() | ||
const keyhash = Buffer.alloc(32) | ||
const keyhash = b4a.alloc(32) | ||
if (key.byteLength > 64) { | ||
@@ -231,17 +226,4 @@ Sha256().update(key).digest(keyhash) | ||
function hexSlice (buf, start = 0, len) { | ||
if (!len) len = buf.byteLength | ||
var str = '' | ||
for (var i = 0; i < len; i++) str += toHex(buf[start + i]) | ||
return str | ||
} | ||
function toHex (n) { | ||
if (n < 16) return '0' + n.toString(16) | ||
return n.toString(16) | ||
} | ||
function formatInput (input, enc) { | ||
var result = input instanceof Uint8Array ? input : strToBuf(input, enc) | ||
var result = b4a.from(input, enc) | ||
@@ -251,16 +233,2 @@ return [result, result.byteLength] | ||
function strToBuf (input, enc) { | ||
if (enc === 'hex') return hex2bin(input) | ||
else if (enc === 'utf8' || enc === 'utf-8') return new TextDecoder().decode(input) | ||
else if (enc === 'base64') return atob(input) | ||
else throw new Error('Encoding: ' + enc + ' not supported') | ||
} | ||
function hex2bin (str) { | ||
if (str.length % 2 !== 0) return hex2bin('0' + str) | ||
var ret = new Uint8Array(str.length / 2) | ||
for (var i = 0; i < ret.length; i++) ret[i] = Number('0x' + str.substring(2 * i, 2 * i + 2)) | ||
return ret | ||
} | ||
function bswap (a) { | ||
@@ -267,0 +235,0 @@ var r = ((a & 0x00ff00ff) >>> 8) | ((a & 0x00ff00ff) << 24) |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
0
7740
2
221
+ Addedb4a@^1.0.1