È sicuro recuperare la chiave pubblica / segreta di GnuPG con fs in Node.js?

2

Quindi c'è un pacchetto Node.js openpgp che è disponibile per la firma di documenti con GPG, ma richiede pubblico / chiave segreta. Sappiamo tutti che inserire la chiave direttamente nel file è pericolosa e non raccomandarla in fase di produzione e useremo solitamente la variabile di envrionment ( process.env ), ma che ne dici di utilizzare nodejs built-in fs ? È sicuro?

Quindi diciamo che abbiamo rilasciato la chiave pubblica / privata in public.key e private.key quindi è sicuro (per la produzione) recuperare la chiave con lo script seguente?

var express = require('express');
var app = express();

var fs = require('fs');

function PublicKey() {
    var publickey;
    fs.readFile('./public.key', (err, data) => {
        (err) => {
            throw err;
        }
        publickey = ddata;
    })
    return publickey;
}

function PrivateKey() {
    var privatekey;
    fs.readFile('./private.key', (err, data) => {
        (err) => {
            throw err;
        }
        privatekey = ddata;
    })
    return privatekey;
}

app.get('/' ,(req, res) => {
    ...
    var gpgkey = {
        public: PublicKey(),
        private: PrivateKey()
    }
    //only save to local variable when needed, which will be cleared when the function finished
    ...
})

Quindi nel mio codice ho usato la funzione per restituire la chiave e memorizzare nella variabile locale. la mia opinione è memorizzare le chiavi nella variabile locale invece che nella variabile globale perché la variabile locale verrà cancellata quando la funzione è terminata.

Quindi il mio codice è sicuro? Il salvataggio delle chiavi nel passaggio aggiuntivo variabile locale? Quale è più consigliato, usando process.env o fs ?

    
posta Andrew-at-TW 09.03.2018 - 12:25
fonte

0 risposte