2017-05-03 78 views
2

我發現下面的文章和代碼是否json_token比會話更好/更安全/更快?什麼意味着被篡改,因此無法使用?

https://coderwall.com/p/8wrxfw/goodbye-php-sessions-hello-json-web-tokens

https://github.com/rmcdaniel/angular-codeigniter-seed/blob/master/api/application/helpers/jwt_helper.php

什麼意思的話If the token has been tampered with then $token will be empty there will not be an id available. The JWT class makes sure that invalid data is never made available. If the token is tampered with, it will be unusable.。 ?有沒有一些技術,如果smbd別人讀取令牌,它會變成?

使用令牌比會話更好嗎?

已經意識到,這

(1)如果服務器發送的隱藏領域的一些關鍵,

這是由業主改變的JavaScript的時間,並在Ajax調用,重定向或發佈的情況下,使用一些規則取決於存在於所述鍵和其他paramters像計數器時間簽名,

(2)然後服務器不期望的關鍵是相同的,

但大約可以按時間簽名客串的值和其他一些限定對米,

(3)因而如果它得到相同的密鑰,則意味着黑客發送密鑰:

JWT令牌是令牌,該令牌功率是,它是不可能改變它,任何更改破壞令牌。

但是黑客通常不會更改密鑰,他們會嘗試識別併發送密鑰。因此,安全密鑰是時間變化的關鍵。

Gogin實施一個,寫一些文章。

你知道這種安全類型嗎?

+0

https://medium.com/myplanet-musings/what-is-a-json-web-token-2193f383e963 - 這解釋了很多目的,但我stil沒有說明什麼意思'如果你篡改它將是空的'這是如何實現的? – olga

+0

是否有可能製作一種JavaScript,如果某些其他JavaScript讀取數據,會檢測隱藏字段中的令牌? – olga

+0

似乎我必須使用beforeunload和unload事件,https://developer.mozilla.org/en-US/docs/Web/Events/beforeunload – olga

回答

0

這意味着已經用服務器端保存的密鑰編碼的令牌不能用相同的密鑰解碼,如果它以任何方式被改變的話。因此,任何解碼嘗試都將返回一個空值而不是無效標記。

這當然要求祕密密鑰保密(如果沒有,那麼手頭會有更大的問題,我會說)。

+0

但通常沒有人更改密鑰,通常他們通過某種方式讀取,並且退回不變。密鑰的更改不是安全問題。我改變了一下帖子,我意識到安全鑰匙是時間變化的鑰匙:) – olga

相關問題