react-native-quick-crypto
Version:
A fast implementation of Node's `crypto` module written in C/C++ JSI
24 lines (23 loc) • 751 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.timingSafeEqual = timingSafeEqual;
var _reactNativeNitroModules = require("react-native-nitro-modules");
var _conversion = require("./conversion");
let utils;
function getNative() {
if (utils == null) {
utils = _reactNativeNitroModules.NitroModules.createHybridObject('Utils');
}
return utils;
}
function timingSafeEqual(a, b) {
const bufA = (0, _conversion.abvToArrayBuffer)(a);
const bufB = (0, _conversion.abvToArrayBuffer)(b);
if (bufA.byteLength !== bufB.byteLength) {
throw new RangeError('Input buffers must have the same byte length');
}
return getNative().timingSafeEqual(bufA, bufB);
}
//# sourceMappingURL=timingSafeEqual.js.map