NeahFront2/node_modules/@panva/hkdf/dist/node/esm/runtime/hkdf.js
2025-04-08 20:36:59 +02:00

15 lines
525 B
JavaScript

import * as crypto from 'crypto';
import fallback from './fallback.js';
let hkdf;
if (typeof crypto.hkdf === 'function' && !process.versions.electron) {
hkdf = async (...args) => new Promise((resolve, reject) => {
crypto.hkdf(...args, (err, arrayBuffer) => {
if (err)
reject(err);
else
resolve(new Uint8Array(arrayBuffer));
});
});
}
export default async (digest, ikm, salt, info, keylen) => (hkdf || fallback)(digest, ikm, salt, info, keylen);