Dexus / Dexus/pem

Trouble using pkcs12 with https server

Open
#406 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
573
Forks
126
PR merge metrics
No merged PRs in 30d

Description

Hi, I'm currently trying to upgrade an application from node 10.x to node 22.10.0 and the following now fails for me (when it worked in node 10).

```javascript
const https = require('https')
const pem = require('pem')
const passphrase = 'topsecret';

pem.createPrivateKey((err, privateKey) => {
if (err) {
throw err;
}

pem.createCertificate({days: 1, selfSigned: true, clientKey: privateKey.key}, (err, keys) => {
if (err) {
throw err;
}

pem.createPkcs12(keys.clientKey, keys.certificate, passphrase, (err, pkcs12) => {
if (err) {
throw err;
}

https.createServer({pfx: pkcs12.pkcs12, passphrase: passphrase}, (req, res) => {
res.end('foo');
}).listen(443);
});
});
});
```

The error is thrown at `https.createServer`. Error message:
```
Error: Unsupported PKCS12 PFX data
at configSecureContext (node:internal/tls/secure-context:290:15)
at Object.createSecureContext (node:_tls_common:114:3)
at Server.setSecureContext (node:_tls_wrap:1490:27)
at Server (node:_tls_wrap:1354:8)
at new Server (node:https:80:3)
at Object.createServer (node:https:135:10)
```

Any ideas?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.