Что такое «секретный» вариант сеанса? - PullRequest
98 голосов
/ 17 марта 2011

Я ничего не знаю о криптографии. Мне интересно, в чем секрет сеанса.

Я вижу такой код:

app.use(express.session({
  store: mongoStore({
    url: app.set('db-uri')
  }),
  secret: 'topsecret'
}));

В чем секрет, и стоит ли мне его менять?

Ответы [ 3 ]

74 голосов
/ 17 марта 2011

Да, вы должны изменить это. Секрет сеанса в соединении просто используется для вычисления хеша . Без строки доступ к сеансу по сути будет «запрещен». Взгляните на connect docs , это должно немного помочь.

19 голосов
/ 18 марта 2011

Секрет используется для хеширования сеанса с HMAC:

https://github.com/senchalabs/connect/blob/master/lib/middleware/session.js#L256

Затем сеанс защищается от перехвата сеанса путем проверки отпечатка пальца на хеш с секретом:

https://github.com/senchalabs/connect/blob/master/lib/middleware/session.js#L281-L287

0 голосов
/ 04 апреля 2017

секретный ключ, в основном используемый для шифрования данных в сеансе

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