会话的“秘密”选项是什么?

时间:2011-03-17 17:53:11

标签: node.js session connect

我对密码学一无所知。我想知道会议的秘密是什么。

我看到这样的代码:

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

秘密是什么,我应该改变它吗?

3 个答案:

答案 0 :(得分:73)

是的,你应该改变它。连接中的会话密钥仅用于计算哈希。没有字符串,访问会话基本上将被“拒绝”。看看connect docs,这应该有所帮助。

答案 1 :(得分:19)

秘密用于哈希与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

答案 2 :(得分:-7)

密钥主要用于加密会话中的数据