Skip to content

Instantly share code, notes, and snippets.

@selvagsz
Created December 13, 2017 03:21
Show Gist options
  • Save selvagsz/4a1482a1bc0470f5eebc2951bdf7c9a2 to your computer and use it in GitHub Desktop.
Save selvagsz/4a1482a1bc0470f5eebc2951bdf7c9a2 to your computer and use it in GitHub Desktop.
PEM to XML
var fs = require('fs');
var path = require('path')
var NodeRSA = require('node-rsa');
var builder = require('xmlbuilder');
var pem = fs.readFileSync(path.join(__dirname, 'publicKey.pem'))
var key = new NodeRSA(pem);
var exportedPem = key.exportKey('components-public-pem');
var xml = builder.create('RSAKeyValue')
.ele('Modulus', exportedPem.n.toString('base64')).up()
.ele('Exponent', exportedPem.e)
.end({ pretty: true});
console.log(xml);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment