就我理解如果在web网站上,向服务器发送用户名密码,无论怎么加密,或者SHA1算法,但凡被截获,然后攻击者将这个截获后的数据发给服务器,那么攻击者就等于登录了我的账户,怎么保证登陆过程中的安全?
还有移动客户端获取token是如何处理的,也是将用户名密码发给服务器,然后响应一个token吗?怎么保证再发送用户名密码的时候不被截获?或者截获后无法使用?
保障传输安全的只有加密通道.你说的问题是会话劫持.不是登录时帐号密码加密.https加密是用的随机密钥的desc加密的.每次通信密钥是不一样的.截取密文是没有意义的.
如果你自己在js端实现帐号密码加密算法,要保证,用rsa传输随机密钥到客户端,然后通过随机密钥加密帐号密码
比如说我向服务器发送用户名密码,被别人嗅探截获了我的请求,他把这个请求同样发给服务器,他是不是也就登陆了?
@飘花千夜雪: 如果你没有做加密的话,是的,人家都拿到你的帐号密码了.当然想什么时候登录就什么时候登录.
如果攻击者拿到的是密文,那你需要好好看我上面的回答.
@吴瑞祥: 我是初学,不是特别理解。如果拿到密文,直接将密文发送给服务器,这样是不是也就登陆了?在不是用https的情况下?
@飘花千夜雪: 我上面已经说清楚这个事情了...
@吴瑞祥: 不好意思,不是特别理解,RSA传输随机密钥,这个如果是私钥加密岂不是谁都可以拿到这个随机密钥?如果是公钥加密那客户端的私钥又是从哪得到的呢?
还有一个问题就是,现在移动客户端访问的服务多是无状态的,产生的随机密钥在服务器中应该存在哪呢?
@飘花千夜雪: 这边能讲完的是:https能解决你的问题.如果你的项目没法使用https,就去看下https他是怎么保障通讯安全的.照着做.
不是有免费的证书吗 干嘛不用https 研究这么多并没有什么卵用
不使用Https加密的情况下保证数据传输安全常用的方法就是 将传输数据做非对称加密,在传输过程中就算被截获了请求,内容也是一串密文,对于截获者来说也是没有任何意义的
将数据本地加密然后再传输咯