| Server IP : 173.236.223.38 / Your IP : 216.73.216.33 Web Server : Apache System : Linux vps62975 6.8.0-83-generic #83~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Sep 9 18:19:47 UTC 2 x86_64 User : invmicvps ( 6727287) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/share/nodejs/pbkdf2/lib/ |
Upload File : |
var Buffer = require('safe-buffer').Buffer
function swapBytes(buf, size) {
var bytes = new Uint8Array(buf.slice());
var len = bytes.length;
var holder;
if (size == 2) {
//16 bit
for (var i = 0; i<len; i+=2) {
holder = bytes[i];
bytes[i] = bytes[i+1];
bytes[i+1] = holder;
}
} else if (size == 4) {
//32 bit
for (var i = 0; i<len; i+=4) {
holder = bytes[i];
bytes[i] = bytes[i+3];
bytes[i+3] = holder;
holder = bytes[i+1];
bytes[i+1] = bytes[i+2];
bytes[i+2] = holder;
}
} else if (size == 8) {
//32 bit
for (var i = 0; i<len; i+=8) {
holder = bytes[i];
bytes[i] = bytes[i+7];
bytes[i+7] = holder;
holder = bytes[i+1];
bytes[i+1] = bytes[i+6];
bytes[i+6] = holder;
holder = bytes[i+2];
bytes[i+2] = bytes[i+5];
bytes[i+5] = holder;
holder = bytes[i+3];
bytes[i+3] = bytes[i+4];
bytes[i+4] = holder;
}
}
return Buffer.from(bytes);
}
function checkEndian() {
var arrayBuffer = new ArrayBuffer(2);
var uint8Array = new Uint8Array(arrayBuffer);
var uint16array = new Uint16Array(arrayBuffer);
uint8Array[0] = 0xAA; //set first byte
uint8Array[1] = 0xBB; //set second byte
if(uint16array[0] === 0xBBAA) return false;
if(uint16array[0] === 0xAABB) return true;
}
module.exports = function (thing, encoding, name) {
if (Buffer.isBuffer(thing)) {
return thing
} else if (typeof thing === 'string') {
return Buffer.from(thing, encoding)
} else if (ArrayBuffer.isView(thing)) {
return checkEndian() ? swapBytes(thing.buffer,thing.BYTES_PER_ELEMENT) : Buffer.from(thing.buffer);
} else {
throw new TypeError(name + ' must be a string, a Buffer, a typed array or a DataView')
}
}