iOS 开发

登陆界面模型

2016-08-24  本文已影响40人  介是阿姐

服务器判断用户是否登陆完全依赖于sessionID,而sessionI'D一旦被截获,黑客就能够模拟用户的请求,后果不堪设想,于是我们引入token的概念.用户登陆成功后,服务器不但为其分配了sessionID还分配了token,token是维持登陆状态的关键秘密数据.在服务器向客户端发送的token数据,也需要加密.于是一次的登陆细节再次扩展.

1.客户端第一次发起登陆请求(不传输用户名和密码),服务器利用RSA算法产生一对公钥和私钥.保留私钥,将公钥发送给客户端.
2.客户端将受到公钥后,将用户密码加密,向服务器发送用户名和加密后的用户密码,同时另外产生一对公钥和私钥,自己保留私钥,将公钥发送给服务器.于是,第二次登陆请求传输了用户名和加密后的密码以及客户端生成的公钥.
3.服务器利用保留的私钥对用户的密码解密,得到真正的密码,经过判断,确定用户可以登陆后,生成sessionID和token,同时利用客户端发送的公钥对token加密,最后将sessionID 和加密后的token返回给客户端.
4.客户端利用自己的生成的私钥对token解密,得到真正的token.
上一篇下一篇

猜你喜欢

热点阅读