為什麼手機時間如果不對應用就無法使用?


時間戳,對於需要跟伺服器進行通訊的APP來說,是一個重要的驗證參數。

而時間戳,一般是APP讀取的手機系統時間,所以驗證不通過,當然很多就無法使用了。

一個設計良好的通訊請求,一般需要防備各種特殊的連接,例如嗅探、盜鏈等等。假如沒有時間的校驗,那麼一個請求會被在任何時間被無限次的調用,還可以通過更改參數,探取伺服器上的數據。這一方面增加了伺服器的負擔,也增加了信息被盜取的可能。

這種對調用合法性判斷的憑條,一般被稱作token。

一般在在存儲的時候,會把token進行對稱加密,作為參數傳給伺服器,用的時候解開。

然後可以將請求URL、時間戳、token三者進行合併,並加鹽簽名,服務端會有判斷校驗他的有效性。

這是因為,反破解加密解密的簽名演算法比較困難。只要你的私鑰保護得當,不被別人竊取,那麼很難偽造一個通訊請求。

一般時間戳都會跟伺服器上面的時間戳進行對比,如果相差2個小時,都會判斷是錯誤的。這樣你的手機時間差得太遠,自然就無法登陸APP了。

如果覺得不錯,可以關注"小火咕嘟":深度和有趣的科技互聯網行業內容


推薦閱讀:

從手機號使用的時間長短,來看一個人
從麒麟970到710,華為手機產品的奇妙口碑漂流記
OPPO手機記事本如何加密
榮耀Note10液冷管效果是否真那麼有效?
比起愛人,我更想做你的手機

TAG:手機 | 數碼 | 科技 |