Install:
npm install csr-helper
Usage:
var api = ;
Example:
var api = ;apicreate;
Key Generation
- nodejs => local installation of openssl
- browser => web crypto API (http://caniuse.com/#feat=cryptography)
API:
- create
- keypair(keylength) : promise.<keypair>
- p12(<forge private key> privateKey, <forge pkcs7> pkcs7, (optional) <string> friendlyName, (optional) <string> password) : <forge p12>
- csr
- serverpass(<serverPassData>, <forge private key> privateKey, <forge public key> publicKey) : <forge csr>
- email(<emailData>, <forge private key> privateKey, <forge public key> publicKey) : <forge csr>
- display
- csr(<forge csr>) : <object> // object contains filtered data from the csr for displaying usage
- export
- keypair
- privateKey(<forge private key> privateKey, (optional) <string> password) : <(encrypted) pem private key>
- publicKey(<forge public key> publicKey) : <pem public key>
- csr(<forge csr> csr) : <pem csr>
- p12(<forge p12> p12) : <der p12>
- bulk(<bulk> bulk, <string> type) : jszip/generateAsync({type:type})
- keypair
- import
- keypair(<forge private key> privateKey, (optional) <string> password) : <keypair>
- csr(<pem csr> csr) : <forge csr>
- p7(<pem/der pkcs7> pkcs7) : <forge pkcs7>
- bulk(<csv content> csv, <string> ou1, <string> ou2) : <bulk>
- hasNativeCrypto() : <boolean> // check if the script is running on the browser and web crypto is available
All functions except api.create.keypair (promise rejection) and api.import.bulk (exception, examples/bulk.js) will return false if the input is invalid.
keypair = // <keypair>privateKey : <forge private key>publicKey : <forge pkcs7>
serverPassData = // <serverPassData>CN : <string>L : <string>O : <string>C : <string>optional OU1 : <string>optional OU2 : <string>optional OU3 : <string>optional OU4 : <string>optional OU5 : <string>optional streetAddress : <string>optional postalCode : <string>
emailData = // <emailData>O : <string>C : <string>firstname : <string>lastname : <string>emails : <array 1-4 e-mails>OU1 : <string>OU2 : <string>optional OU3 : <string>
<csv content> => examples/bulk/bulk-template.csv