Socket
Socket
Sign inDemoInstall

selfsigned

Package Overview
Dependencies
2
Maintainers
1
Versions
34
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    selfsigned

Generate self signed certificates private and public keys


Version published
Maintainers
1
Install size
106 kB
Created

Package description

What is selfsigned?

The selfsigned npm package is used to generate self-signed SSL/TLS certificates. It is primarily used for development purposes where trusted certificates are not required. The package allows users to create certificates with various options, such as setting the validity period, adding extensions, and defining subject fields.

What are selfsigned's main functionalities?

Generate a self-signed certificate

This feature allows the generation of a self-signed certificate with a common name of 'contoso.com' and a validity of 365 days. The 'pems' object contains the private key, certificate, and other related PEM-encoded data.

const selfsigned = require('selfsigned');
const attrs = [{ name: 'commonName', value: 'contoso.com' }];
const options = { days: 365 };
selfsigned.generate(attrs, options, function(err, pems) {
  console.log(pems);
});

Generate a certificate with custom extensions

This feature allows the generation of a self-signed certificate with custom extensions, such as marking the certificate as a CA (Certificate Authority). This is useful for creating more complex certificate chains or for specific use cases requiring certain extensions.

const selfsigned = require('selfsigned');
const attrs = [{ name: 'commonName', value: 'contoso.com' }];
const extensions = [{ name: 'basicConstraints', cA: true }];
const options = { days: 365, extensions: extensions };
selfsigned.generate(attrs, options, function(err, pems) {
  console.log(pems);
});

Other packages similar to selfsigned

Readme

Source

Generate a self signed x509 certificate from node.js.

Build Status

Install

npm install selfsigned

Usage

var selfsigned = require('selfsigned');
selfsigned.generate({ subj: '/CN=contoso.com', days: 365 }, function (err, result) {
  console.log('Private Key:', result.privateKey);  
  console.log('Public Key:', result.publicKey);  
});

Will print something like this:

Private Key: -----BEGIN PRIVATE KEY-----
MIIEwAIBADANBgkqhkiG9w0BAQEFAASCBKowggSmAgEAAoIBAQDaj7DZpBhrUxcj
WxI/n3+W8J4hW67kh1WOs1ZjcMmWbRAH/Y79w5YDh+zJ0Y0uUtxWjaVjDRWy9xuH
QRlknLquT0eOxnYT29kXcjsKFBYlDI+6+UL4D/fIDZtXXDfr5IdAWKc/hwZZ9Rxs
L1WpUsGnK6CvKW7cT7hkZzUNdfOIiQLtKUZr11XPNn0m1M1Wsp8c22Hc0iR4BcIk
/KO6+0afxfjQppcRrPe16euZRzCEa25MFS6fcLxk7UpzW9FgZXN4m1ribrMusmWb
m45TQgZoDrliWlz4AS1nm8Ac+NMklW9wNVLCSxaE11j28BrM0LJh2isdJJ2PQU3r
FcNiR3AzAgMBAAECggEBAMBJDrRL1FgIACFQ7FshPiVTiCuc99+C2Vj0mppeDlzT
kvkUsQq9Wmu82CwuumD48XUMpWbhiierk4KJWYfVA8B7a19HZ3bNQs+H5j1Vsq3h
wUokJjEMC1jr77EKJwDYS83msS4I4yOdq+XaNykC7/DdRz8T2r7lPDrJOjmffiSt
lbKEEUuaMhHb4hY8O6mQEsUOVlTvMTJx4+DJp5q8j9g2RQoQyCSsHNx7dbLgCWGf
OaAYlZWVwKsIHScCMeGjiimIxzW8DbjYSEja5xraD3hkFZd+sWMpQb/M4J5N4fM4
tIk5cWbkU6A2PV4ynGmOCVCLHcZLVwqAJ6wrKEzAQWECgYEA7yIZyV1aX0NRlfMK
AyaWgxVZ1+vXKNOxwA/bOk+kTAU/aVMia0puNAzLK26rX0ujj9Z3KK6Y6X6uTQl8
gkDfY6FlBR7BdLK5gnLm1brWEj8CLqE8L3DX8bQ7hmWyB9s2HASfAFlUYYZmQQRw
G6NnF9BsT3UFsL4Kv3pRdhF782sCgYEA6foiV2p8lSsxFZ4Fg2poZ46gk7Qg1CeG
SPNMzCdYY2R2yL8oXD0UuEYdvM7u6iiASD2KG14K74ijmVBWIvbCJ0LeWWTcJDjm
5oK1M2W0ARQjgXDwh+90BB3MnLsg0oKOatP/ac6j6r3pay+aXhHle+u6Nx0plX4X
bCvdFXhTcFkCgYEA7ANyA+WZDjB400/978IkBtgJxivEPU1CP9bmfhSgiU8cmK0u
aUoanlCKLSGbDgCvO4VmMcawsLMRAIN+WWgBkml2NKl4Md87bF5PKV6vbW62jqMf
rYrn9mv1291+6nYWX2zIKSYBPAfT4BOrOfv6Aez5GSrcJOZL4VOuFqOG/GUCgYEA
2hJyU3tCZl19QCKqDNPuPyal70RhnJrCA9gP6e956BlIxM21tlKPrzhamxFbiA77
kVkaEWvTUXHO2SQRREEssB8Y0cS5kWEfhBSrAh52aNL2TLyQ0oGRZgzIGgQnEUzx
pAu28EzSZgVfOrGBdM/FTXxlcNzTVyvQdNdlFY+yZPECgYEAgTBQxIN44PntEKUr
1PjQmxV15vIvV0iPDrma2k80Ape8CwWZoK3ffsJsSF1UzPw4fUf72keyYx/bvm7q
qv5vedVOV6p6BF/2g6agXe19UasR6j24J7/Q/klX8ojqKSBrOWbefNlYHuXrkob+
8AIq2MsctvJk8ADqf/XJHFAao3Y=
-----END PRIVATE KEY-----

Public Key: -----BEGIN CERTIFICATE-----
MIIC/zCCAeegAwIBAgIJAJZEhtho8PEYMA0GCSqGSIb3DQEBBQUAMBYxFDASBgNV
BAMMC2NvbnRvc28uY29tMB4XDTEzMDMxMTIzNTg0NVoXDTE0MDMxMTIzNTg0NVow
FjEUMBIGA1UEAwwLY29udG9zby5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
ggEKAoIBAQDaj7DZpBhrUxcjWxI/n3+W8J4hW67kh1WOs1ZjcMmWbRAH/Y79w5YD
h+zJ0Y0uUtxWjaVjDRWy9xuHQRlknLquT0eOxnYT29kXcjsKFBYlDI+6+UL4D/fI
DZtXXDfr5IdAWKc/hwZZ9RxsL1WpUsGnK6CvKW7cT7hkZzUNdfOIiQLtKUZr11XP
Nn0m1M1Wsp8c22Hc0iR4BcIk/KO6+0afxfjQppcRrPe16euZRzCEa25MFS6fcLxk
7UpzW9FgZXN4m1ribrMusmWbm45TQgZoDrliWlz4AS1nm8Ac+NMklW9wNVLCSxaE
11j28BrM0LJh2isdJJ2PQU3rFcNiR3AzAgMBAAGjUDBOMB0GA1UdDgQWBBSPTBV5
aOMsnOww0eWk5ocKKVPrXTAfBgNVHSMEGDAWgBSPTBV5aOMsnOww0eWk5ocKKVPr
XTAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQBbfcwClLUg+eD7Yfue
20LaMVipDgjiqrkyp8/YfUyUB/gsPNEAUZ/EVjYYpaptJ9l2wbYJDKblNAbXy0d0
A30h4nzGXPnKZiUAWMY5fjucPnuVlupF7+QUG1t5YWE4UEwYwGxJQ4s4Vz+UFcYg
b9kPYaNeNZOTQlb1+OdY5zDdZyYcck4AacUtzCa5qnCSJpVYmV4S9VchVIigNBQg
DpVl5LJ9AdvAu5KwOsHSzY5F32EUIRNmWOilyEQ6roXensUoKPLjUZ6u4d0USRkJ
MpDY/fUya5bjEFnNX+9NJiakTr3MKg8M4dckKphY42hMsUjWGoXxSVTVXhnisTV/
W750
-----END CERTIFICATE-----

License

MIT

Keywords

FAQs

Last updated on 12 Mar 2013

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc