-
-
Save sweetpalma/65797cbbacd12cfa054469605b87e0a9 to your computer and use it in GitHub Desktop.
Export PEM-encoded EC key pair (ECDH, ECDSA)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // (Buffer is available in Node.js as a global, but we require it this way for compatibility) | |
| // See: https://nodejs.org/api/buffer.html#buffer_buffer | |
| const { Buffer } = require('buffer'); | |
| const crypto = require('crypto'); | |
| const keyPair = crypto.createECDH('secp256k1'); | |
| keyPair.generateKeys(); | |
| // Print the PEM-encoded private key | |
| console.log(`-----BEGIN PRIVATE KEY----- | |
| ${Buffer.from(`308184020100301006072a8648ce3d020106052b8104000a046d306b0201010420${keyPair.getPrivateKey('hex')}a144034200${keyPair.getPublicKey('hex')}`, 'hex').toString('base64')} | |
| -----END PRIVATE KEY-----`); | |
| // Print the PEM-encoded public key | |
| console.log(`-----BEGIN PUBLIC KEY----- | |
| ${Buffer.from(`3056301006072a8648ce3d020106052b8104000a034200${keyPair.getPublicKey('hex')}`, 'hex').toString('base64')} | |
| -----END PUBLIC KEY-----`); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment