1 const crypto = require("crypto");
2 const { generateKeyPair } = require("crypto");
4 const TAG = '[DeviceHome][security.js]';
6 module.exports.Security = class Security {
10 getKeyPairPromise(pincode) {
11 console.log(`${TAG} getKeyPairPromise`);
12 return new Promise((resolve, reject) => {
13 console.log(`${TAG} Generating key will take some time..`);
14 generateKeyPair("rsa", {
24 }, (err, publicKey, privateKey) => {
25 // Handle errors and use the generated key pair.
28 privateKey: privateKey
35 return this.getKeyPairPromise(req).then(r => {
36 req.session.serverPrivateKey = r.privateKey;
37 req.session.serverPublicKey = r.publicKey;
38 console.log(`${TAG}[awaitKeyPair] RSA keys are generated`);
40 console.log(`${TAG} Error : ${err}`);