пароль https ssl в узле js 0.4 - PullRequest
       8

пароль https ssl в узле js 0.4

1 голос
/ 05 апреля 2011

узел 0.2.6 в пути:

var credentials = crypto.createCredentials({ "key": SSLKey, "cert": SSLCert, "ca": Ca, "password": SSLKeyPass })
var client = http.createClient(apiPort, host, true, credentials)


    node 0.4 way:
    var options = {
        host: apiHost,
        port: apiPort,
        method: 'GET',
        path: uri,
        headers: {host: host},
        key:SSLKey,
        cert:SSLCert,
        ca:Ca,
        password:SSLKeyPass
    }

    var request = https.request(options, function (response) {

Как вы видите, нужен пароль, я не знаю, куда должен идти пароль в узле 0.4.

Куда SSLKeyPass переходит на узел 0.4?

Ответы [ 2 ]

2 голосов
/ 14 июня 2011

Таким образом, даже в исходном коде узла 0.2.6 модуль crypto.js не ищет свойство password в объекте, который вы передаете createCredentials. Вот источник createCredentials из узла 0.2.6 . В версии 0.4.8 до сих пор нет упоминания слова password в модуле crypto.js. Ваш код 0.2.6 действительно работал?

В качестве общего комментария используйте openssl для расшифровки вашего закрытого ключа, сохраните его на диске и попросите код вашего узла прочитать этот файл. Кажется, это наиболее часто используемый вариант. Другие варианты: A) приходится вручную вводить парольную фразу для расшифровки вашего закрытого ключа каждый раз, когда вы запускаете сервер узлов (почти никто этого не делает) или B) хранить вашу парольную фразу в виде открытого текста на диске, которая ничем не отличается от простого сохранения открытого текста закрытый ключ на диске, так что AFAIK это тоже весьма необычное решение проблемы безопасности закрытого ключа.

Вы можете расшифровать свой закрытый ключ с помощью командной строки openssl, например:

openssl rsa -in your_encrypted_private.ekey -out your_private.key

openssl предложит вам ввести пароль в интерактивном режиме.

1 голос
/ 17 декабря 2012

Для записи вы можете предоставить пароль при создании объекта Credentials в Node.js.В этом разделе документации Node.js о криптомодуле говорится, что можно предоставить опцию passphrase для личного ключа или файла PFX.Вам не нужно хранить свой закрытый ключ открытым текстом на диске где-то для узла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...