[node.js] 세션의 “비밀”옵션은 무엇입니까?

나는 암호화에 대해 아무것도 모른다. 세션 비밀이 무엇인지 궁금합니다.

다음과 같은 코드가 표시됩니다.

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

비밀은 무엇이며 변경해야합니까?



답변

예, 변경해야합니다. connect의 세션 비밀은 단순히 해시계산하는 데 사용됩니다 . 문자열이 없으면 세션에 대한 액세스는 본질적으로 “거부”됩니다. 약간 도움이 될 연결 문서를 살펴보십시오 .


답변

비밀은 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


답변

기본적으로 세션의 데이터를 암호화하는 데 사용되는 비밀 키


답변