福哥答案2020-01-06:
知乎答案:
首先,Token 一般放在 Header 或者 Cookies 中,Http 是明文传输,Https 是密文传输。可以一定程度防止Token 截获。
第二,Token 一般会和 Ip,MAC地址,或者 DeviceID 进行绑定。如果服务端检测这些发生了变化,可以将 Token 失效让用户重新登录。
第三,Token 可以加密,例如AES对称加密,客户端与服务端先交换对称秘钥之后用对称秘钥将 Token + 当前时间戳 对称加密后发往服务端解密验证 Token 和时间戳都有效。或者直接通过 RSA 公钥加密。增加了截取成本。
第四,敏感操作一般要求二次安全验证,例如支付的时候,需要支付密码,或者验证手机短信验证码等等。


评论