util.stringToUtf8HexString = (text: any) => { const bytes1 = util.stringToUtf8Bytes(text); const hexStr1 = util.bytesToHexString(bytes1); return hexStr1; }; // d2h, stringToHex : ¹®ÀÚ¿­ hex·Î º¯È¯ util.stringToUtf8Bytes = (text: any) => { const result: any[] = []; if (text == null) return result; for (let i = 0; i < text.length; i++) { const c = text.charCodeAt(i); if (c <= 0x7f) { result.push(c); } else if (c <= 0x07ff) { result.push(((c >> 6) & 0x1f) | 0xc0); // eslint-disable-line no-bitwise result.push((c & 0x3f) | 0x80); // eslint-disable-line no-bitwise } else { result.push(((c >> 12) & 0x0f) | 0xe0); // eslint-disable-line no-bitwise result.push(((c >> 6) & 0x3f) | 0x80); // eslint-disable-line no-bitwise result.push((c & 0x3f) | 0x80); // eslint-disable-line no-bitwise } } return result; }; util.hexToByte = (hexStr: string) => { return parseInt(hexStr, 16); }; util.hexStringToBytes = (hexStr: any) => { const result = []; for (let i = 0; i < hexStr.length; i += 2) { result.push(util.hexToByte(hexStr.substr(i, 2))); } return result; }; util.utf8BytesToString = (arr: any) => { let result: string = ''; let i; while (arr.length !== 0) { i = arr.shift(); if (i <= 0x7f) { // eslint-disable-line no-bitwise result += String.fromCharCode(i); } else if (i <= 0xdf) { let c = (i & 0x1f) << 6; // eslint-disable-line no-bitwise c += arr.shift() & 0x3f; // eslint-disable-line no-bitwise result += String.fromCharCode(c); } else if (i <= 0xe0) { let c = ((arr.shift() & 0x1f) << 6) | 0x0800; // eslint-disable-line no-bitwise c += arr.shift() & 0x3f; // eslint-disable-line no-bitwise result += String.fromCharCode(c); } else { let c = (i & 0x0f) << 12; // eslint-disable-line no-bitwise c += (arr.shift() & 0x3f) << 6; // eslint-disable-line no-bitwise c += arr.shift() & 0x3f; // eslint-disable-line no-bitwise result += String.fromCharCode(c); } } return result; }; util.byteToHex = (byteNum: any) => { const digits = byteNum.toString(16); const rtn = '0'; const rtn2 = rtn + digits; if (byteNum < 16) return rtn2; return digits; }; util.bytesToHexString = (bytes: any) => { let result = ''; for (let i = 0; i < bytes.length; i++) { result += util.byteToHex(bytes[i]); } return result; }; util.utf8HexStringToString = (hexStr1: any) => { const bytes2 = util.hexStringToBytes(hexStr1); const str2: string = util.utf8BytesToString(bytes2); return str2; };