网站做登录认证怎么做?

用户名  验证码 点击登录。

后台 验证 验证码 是否正确,如果ok ,返回给前端一个cookie ,cookie 里面可以存储用户的登录状态。

原来我以为 只要存储个 简单类似  status=1 就ok 了,

实际上不是的。


如果这样存储,任何一个登录模拟器 都可以模拟了,只要添加一个cookie 就可以登陆了,

所以我们返回的cookie 要加密处理,而且这个cookie 要存到缓存里,让其他用户不可以轻易模仿。

登录状态 可以是  用户id  手机号 时间戳,甚至加密处理后的字符串。


这样其他用户想模仿就难了,首先他要知道是怎么样组合的,最后还要我们的缓存里有才行。

所以一般就模仿不了了。



我在想,我登录的时候 用户名验证码会不会被拦截,服务器返回的cookie 会不会被拦截,

实际上是可以被拦截的,但是我可以做什么呢?

我不能阻止黑客拦截我的数据,我只做的是他拦截了我的数据,但是读不懂我的数据。

但是他依然可以 拿到服务器返回的数据去登录我的账号,是的,他可以。

返回的数据他也可以拦截,这样他就可以直接看到返回的数据是什么了。


那怎么办?

https 

https 是什么,他是在双方发消息之前,建立了一条安全通道,怎么就安全了?

双方协商出了一个加密用的秘钥,而这个秘钥 中间人获取不到,所以 即使中间人获取到了加密后的登录数据然后去登录了,但是他解析不了服务器返回的数据,

所以对他来说都是没有用的数据。


那这个密钥是怎么协商出来的呢?

具体看https 


使用https 和http 对比:

我用AFN访问http下的httpbin.org/image/png
然后用Charles抓一下包,可以看到传输的图片
http的数据
然后访问HTTPS下的https://httpbin.org/image/png
再抓包,看到数据是乱码,这就是加密过后的数据
https的数据




要使用Python来开发一个网站,你可以按照以下步骤进行: 1. 安装Python:首先,你需要在你的计算机上安装Python。你可以从Python官方网站(https://www.python.org)下载并安装最新版本的Python。 2. 选择一个Web框架:Python有很多流行的Web框架可供选择,例如Django、Flask、Bottle等。根据你的需求和技术水平,选择一个适合你的框架。 3. 创建项目:使用所选框架提供的命令行工具,创建一个新的项目。这将为你创建一个基本的项目结构和配置文件。 4. 定义路由:在项目中定义URL路由,将请求映射到相应的处理函数。通过定义路由,你可以指定当用户访问特定URL时要执行的代码。 5. 编写视图函数:编写处理请求的视图函数。这些函数将接收请求并返回响应,可以包含业务逻辑和数据处理。 6. 设计模板:使用模板引擎创建网页模板。模板允许你将动态数据动态插入到静态网页中。 7. 连接数据库:如果你的网站需要使用数据库存储数据,你可以选择一个适合的数据库,并使用相应的库来连接和操作数据库。 8. 部署网站:一旦你完成了网站的开发,你需要将其部署到一个Web服务器上,使其可以被公开访问。你可以选择使用各种云服务提供商(如AWS、Azure、Heroku等)来部署你的网站。 以上只是一个基本的概述,实际开发中可能还涉及到其他方面,比如用户认证、安全性等。我建议你选择一个具体的Web框架,并参考它的官方文档和教程来深入了解如何使用Python开发网站
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值