2.1.0 • Published 7 years ago

csr-helper v2.1.0

Weekly downloads
78
License
MIT
Repository
github
Last release
7 years ago

npm version

Install:

npm install csr-helper

Usage:

var api = require('csr-helper');

Example:

var api = require('csr-helper');
api.create.keypair(2048).then(function(keypair){
  var csr1 = api.create.csr.ServerPass({
    CN : 'test.de',
    L : 'UnknownCity',
    O : 'testOrganization',
    C : 'DE'
  },keypair.privateKey, keypair.publicKey);

  console.log(api.export.csr(csr1));

  var csr2 = api.create.csr.Email({
    O : 'T-Systems',
    C : 'DE',
    OU1 : 'TeleSecTest-ShortTerm',
    OU2 : 'Test-1ke',
    OU3 : 'test',
    firstname : 'Max',
    lastname : 'Example',
    emails : [
      'test1@example.com',
      'test2@example.com',
      'test3@example.com',
      'test4@example.com'
    ]
  },keypair.privateKey, keypair.publicKey);

  console.log(api.export.csr(csr2));
},function(err){
  console.error(err);
});

Key Generation

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})
  • 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

2.1.0

7 years ago

2.0.2

8 years ago

2.0.1

9 years ago

2.0.0

9 years ago

1.0.3

9 years ago

1.0.2

9 years ago

0.1.16

9 years ago

0.1.15

9 years ago

0.1.14

9 years ago

0.1.13

9 years ago

0.1.12

10 years ago

0.1.10

10 years ago

0.1.9

10 years ago

0.1.8

10 years ago

0.1.7

10 years ago

0.1.6

10 years ago

0.1.5

10 years ago

0.1.4

10 years ago

0.1.3

10 years ago

0.1.2

10 years ago

0.1.1

10 years ago

0.1.0

10 years ago

0.0.17

10 years ago

0.0.16

10 years ago

0.0.15

10 years ago

0.0.14

10 years ago

0.0.13

10 years ago

0.0.12

10 years ago

0.0.11

10 years ago

0.0.10

10 years ago

0.0.9

10 years ago

0.0.8

10 years ago

0.0.7

10 years ago

0.0.6

10 years ago

0.0.5

10 years ago

0.0.4

10 years ago

0.0.3

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago