Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error during encryption. Original error: Error: error:0306E06C:bignum routines:BN_mod_inverse:no inverse #191

Open
Astewart1510 opened this issue Mar 16, 2021 · 0 comments

Comments

@Astewart1510
Copy link

Hi there,
I keep getting this error. I am relatively new to this so please excuse me if I am making an obvious mistake.

Error during encryption. Original error: Error: error:0306E06C:bignum routines:BN_mod_inverse:no inverse

My code is as follows:

var key = new NodeRSA();

const keyData =
    "-----BEGIN RSA PUBLIC KEY-----\n" +
    "MIIBiQKCAYB92KVSt43gkxw5BFtUuhJYjWwXcaF3igEUxiC8IjdkJF2RZnIaWt43\n" +
    "YdooJXrCX8WjiEA6cBX8dkFf6WRaeG6svkWy3FQeqOANnBOe8TVsbT0W0R/VJNWv\n" +
    "n0UVg6QBMvYXR6uiposlGaBCDCsMtlptsxo+gIUgFVw3CPLTQ+PgDvR8MYW61d/J\n" +
    "4VoMhQ3WlVLlrhSUz66JE+H/4QIPNYqqaaQsmTjWxt66Y+ybffpcKxK2O9tgXIVZ\n" +
    "ZDrtXpaMpMdLIPznMePNHMhcxAlz3n5viUBn62id8X6OewRSJnZlpOpNty+DcD8z\n" +
    "PAZwmsW/odR7Sk3alXWpo7dwYuLqs0AfctzuGiYcs+fWAjsG7LbROlz1XTW0IXKs\n" +
    "PKAOfSgEvswbFbQHNnD8glvgMqHDkXCZKaQ+qKR9D3zSUD39AA//4vpPPeYwCIRl\n" +
    "qlrY79DL+SQG953GwX08baBy5Dj9s1NL7v5f7/hXAJM9ZmRpMfX2CGdjs64bW6yA\n" +
    "MUhr/XwSZZICAwEAAQ==\n" +
    "-----END RSA PUBLIC KEY-----";

  key.importKey(keyData, "pkcs1-public");
  const encrypted = key.encrypt("Test@1234", "base64");

I am unsure what I am doing wrong.
To give context, I previously created a rsa 3072 bit public key on a separate application and have recreated it in my javascript app into into a pem file using its modulous and exponent (default). The code is below.
I tried to then encrypt a random text using your package but it keeps throwing the error.

var getPem = require('rsa-pem-from-mod-exp');
//modulus should be a base64/base64Url string
var modulus =  "fdilUreN4JMcOQRbVLoSWI1sF3Ghd4oBFMYgvCI3ZCRdkWZyGlreN2HaKCV6wl/Fo4hAOnAV/HZBX+lkWnhurL5FstxUHqjgDZwTnvE1bG09FtEf1STVr59FFYOkATL2F0eroqaLJRmgQgwrDLZabbMaPoCFIBVcNwjy00Pj4A70fDGFutXfyeFaDIUN1pVS5a4UlM+uiRPh/+ECDzWKqmmkLJk41sbeumPsm336XCsStjvbYFyFWWQ67V6WjKTHSyD85zHjzRzIXMQJc95+b4lAZ+tonfF+jnsEUiZ2ZaTqTbcvg3A/MzwGcJrFv6HUe0pN2pV1qaO3cGLi6rNAH3Lc7homHLPn1gI7Buy20Tpc9V01tCFyrDygDn0oBL7MGxW0BzZw/IJb4DKhw5FwmSmkPqikfQ980lA9/QAP/+L6Tz3mMAiEZapa2O/Qy/kkBvedxsF9PG2gcuQ4/bNTS+7+X+/4VwCTPWZkaTH19ghnY7OuG1usgDFIa/18EmWS";

//exponent should be base64/base64url
var exponent = "AQAB";

var pem = getPem(modulus, exponent);

Any help will be seriously appreciated!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant