色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

token和session區別

林子帆2年前18瀏覽0評論

token和session區別?

登出是指客戶端主動退出登錄狀態。容易想到的方案是,客戶端登錄成功后, 服務器為其分配sessionId, 客戶端隨后每次請求資源時都帶上sessionId。

服務器判斷用戶是否登錄, 完全依賴于sessionId, 一旦其被截獲, 黑客就能夠模擬出用戶的請求。于是我們需要引入token的概念: 用戶登錄成功后, 服務器不但為其分配了sessionId, 還分配了token, token是維持登錄狀態的關鍵秘密數據。在服務器向客戶端發送的token數據,也需要加密。于是一次登錄的細節再次擴展。

客戶端向服務器第一次發起登錄請求(不傳輸用戶名和密碼)。

服務器利用RSA算法產生一對公鑰和私鑰。并保留私鑰, 將公鑰發送給客戶端。

客戶端收到公鑰后, 加密用戶密碼,向服務器發送用戶名和加密后的用戶密碼; 同時另外產生一對公鑰和私鑰,自己保留私鑰, 向服務器發送公鑰; 于是第二次登錄請求傳輸了用戶名和加密后的密碼以及客戶端生成的公鑰。

服務器利用保留的私鑰對密文進行解密,得到真正的密碼。 經過判斷, 確定用戶可以登錄后,生成sessionId和token, 同時利用客戶端發送的公鑰,對token進行加密。最后將sessionId和加密后的token返還給客戶端。

客戶端利用自己生成的私鑰對token密文解密, 得到真正的token。

java生成rsa私鑰,token和session區別