UNPKG

otpauth

Version:

One Time Password (HOTP/TOTP) library for Node.js, Deno and browsers

34 lines (27 loc) 695 B
/** * Converts a Latin-1 string to an ArrayBuffer. * @param {string} str Latin-1 string. * @returns {ArrayBuffer} ArrayBuffer. */ const latin1ToBuf = (str) => { const buf = new ArrayBuffer(str.length); const arr = new Uint8Array(buf); for (let i = 0; i < str.length; i++) { arr[i] = str.charCodeAt(i) & 0xFF; } return buf; }; /** * Converts an ArrayBuffer to a Latin-1 string. * @param {ArrayBuffer} buf ArrayBuffer. * @returns {string} Latin-1 string. */ const latin1FromBuf = (buf) => { const arr = new Uint8Array(buf); let str = ''; for (let i = 0; i < arr.length; i++) { str += String.fromCharCode(arr[i]); } return str; }; export { latin1ToBuf, latin1FromBuf };