Importing crypto nodejs

I tried to import crypto lib but got some errors


inside crypto folder is empty

here is my code

const {subtle} = require('crypto').webcrypto;
//const subtle = require('crypto').webcrypto;

function importRSAKey(keyData, format = 'jwk', hash = 'SHA-1') {
    const key = subtle.importKey(format, keyData, {
      name: 'RSA-OAEP',
    }, false, ['verify']);
    return key;
keystore = {"kty":"RSA","use":"enc","kid":"03tq2Vt99numAuzBc4LI43kRzuRlhozB","n":"ht5RHidiB8PkWvFuwEdVj6UH6qbWVU95g9pZNxUAm61Bmx0bdzatKNF6w-jQbXYAxDgyT5fTQZr21litcICnLS1_h5AMgPsFu6p_OKr7R0hScVnh49LrSqDQra66moHE-XEOOggu6XMfrs9307dhtDAM24M2DqtA3wv_jP-n13cZhm24jgrgge61JxtThcdsnwTdrv_UAKfAVpDcjesE-ZeJ5H2dMscuIJUTMRyHAYFcSFIajtUoSIsQTFy1GIt8C1OWav6dLYhsX1L0QDaHM_Q9QPDC69mcVhJJDlrCOhuYLVoODENPKPAlNzTGBd2JyZW6_hF3Wx9F5rFrkr7Srw","e":"AQAB"}

const e = {
        name: "RSA-OAEP",
        hash: {
            name: "SHA-1"

key = importRSAKey("jwk", keystore, e, !1, ["encrypt"])

copy from this : Web Crypto API | Node.js v16.8.0 Documentation

I think you’re missing npm init before you do npm install

it said crypto is already built-in core

I think you need to ask @Pure about this, I’m not good with node :sweat_smile:

1 Like

crypto.webcrypto was introduced in node v15.0.0.

If you are using the LTS Version from the Node website it is version 14.17.5. It does not include webcrypto.


thanks the problem was solved

I use this lib

Or you could’ve just updated your node, but maybe that was not an option for you

1 Like

i’ll start update when I’m done with migration
Thanks for your concern