Как создать ключ publi c как двоичный объект, кодированный с помощью Distinguished Encoding Rules (DER) в Node.js? - PullRequest
0 голосов
/ 07 января 2020

Я создаю AWS версию KMS nock и специально работаю над getPublicKey. Здесь мне нужно создать DER-кодированный ключ publi c. Есть ли Node.js способ сделать это? Спасибо.

1 Ответ

0 голосов
/ 08 января 2020
KeyUsage === 'ENCRYPT_DECRYPT'
        ? // eslint-disable-next-line no-sync
        crypto.generateKeyPairSync('rsa', {
          modulusLength: 2048,
          publicKeyEncoding: {
            type: 'spki',
            format: 'der'
          },
          privateKeyEncoding: {
            type: 'pkcs8',
            format: 'der',
            cipher: 'aes-256-cbc',
            passphrase: 'passphrase'
          }
        })
        : // eslint-disable-next-line no-sync
        crypto.generateKeyPairSync('ec', {
          namedCurve: 'P-256',
          publicKeyEncoding: {
            type: 'spki',
            format: 'der'
          },
          privateKeyEncoding: {
            type: 'pkcs8',
            format: 'der',
            cipher: 'aes-256-cbc',
            passphrase: 'passphrase'
          }
        });
...