鍍金池/ 問答/Java  Linux  網(wǎng)絡安全  HTML/ 密鑰加密的時候使用到『秘鎖』,這個"秘鎖"是服務端存放在哪里

密鑰加密的時候使用到『秘鎖』,這個"秘鎖"是服務端存放在哪里的呢?我們具體在哪里查看到呢?

在閱讀CSRF Token的生成的時候。

token由三部分組成:a).msg b). separator c).signature。
a). msg部分:而msg本身也有兩部分組成:一部分,隨機字符的主體,另一部分是過期時間戳。
b). 分隔符號:用符號分隔msg部分,和加密后生成的signature簽名部分,這里用的是”.“
c). 簽名signature。

token的組成是:

| msg | separator | signature |
------------------------------------------------
| key | timestamp | . | Base64(sha256(msg)) |

這里msg = key + timestamp。關鍵他說后面的token的驗證是:

是對上面提到的msg,按照msg中提到的msg的信息部分,按照特定的秘鎖進行加密。
token = base64(msg)格式化..base64(sha256("秘鎖", msg))

他的意思也就是:

base64(sha256("秘鎖", key)

那么,這里我有一個問題就是,這個"秘鎖"是服務端存放在哪里的呢?我們具體在哪里查看到呢?

回答
編輯回答
寫榮

你可以通過配置文件配置一個靜態(tài)的,也可以在系統(tǒng)啟動的時候隨機生成一個。反正只要這個秘鎖不會被攻擊者猜到就OK。

2017年7月16日 06:18