网站安全登录 web应用安全登录 密码 防截获

声明:我对这一块非常不熟悉,这里提出的方案只是小弟一个想法而已,希望各方高手帮忙指出问题所在。

难题:

平时web应用,网站,一般都有用户登录这个功能,那么登录的话,肯定涉及到密码。怎么保证用户的密码不会被第三方不法之徒获取到呢?

不法之徒的途径肯定多了,高级点的,直接挂马啊,客户端木马啊。但这里不考虑这么多,就假设网页和客户端都是安全的,那么怎么防止网络中被截获呢?

原始方法:

一般如果是企业内部应用,没什么安全要求,就直接不管了。账号和明文密码发送~~了事~~

安全方法1:

post之前,先把密码用DES加密,到服务器解密。

问题:一旦被截获了key,很可能密码还是被人解密出来~~~

安全方法2:

数据库存的是密码的MD5散列值,每次post前先MD5散列。这样就可以避免被人解密密码了。

问题:好吧,我不解密你密码了。我直接重放攻击,你发什么给服务器,我就发什么到服务器,还不一样可以假冒你登陆。

安全方法3(暂时我想到比较安全的):

1、数据库存的是密码的MD5散列值(防止被人直接通过数据库入手)

2、每次打开登陆页面,随机给用户一个RSA公钥(为了保证效率,可以先生成几百个KEY对)

3、用户post密码前,用公钥加密。(即使被截获了公钥,密文也无法破解,数学证明的~~~嘿嘿。同时,即使不法者重放攻击,发送同样的密文到服务器,因为每次的公钥不一样,所以还是无法登陆)

4、由于只有几百个KEY,为了防止不法者不断的尝试,也许会碰巧遇上同一个公钥。那么还需要加入5次登陆失败就封账号30分钟的措施~~~(嘿,看你怎么试。当然,如果可以保证每次key都不一样,那么这里也可以跳过了)

5、服务器拿到公钥加密后的密码密文,用私钥解密,再散列,匹配数据库的密码MD5值~~完成·~

一些可用资源:

http://www.jcryption.org/

http://www.michalfranc.com/articles/jcryption.html

搞掂~~

参考一下HTTPS的原理:(http://zhenggm.iteye.com/blog/558785)

HTTPS通信过程的时序图如下:

图3 HTTPS通信时序图

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏walterlv - 吕毅的博客

Git 更安全的强制推送,--force-with-lease

发布于 2018-05-07 11:16 更新于 2018-09...

482
来自专栏北京马哥教育

如何用两个小时入门 Docker?

最初的2小时,你会爱上Docker,对原理和使用流程有个最基本的理解,避免满世界无头苍蝇式找资料。本人反对暴风骤雨式多管齐下狂轰滥炸的学习方式,提倡迭代学习法,...

840
来自专栏bdcn

CoreOS那些事之Rkt容器尝鲜(下) 转

2015年是各种容器技术与名词扎堆的一年,Docker的出现使得“应用容器”的实施变得易如反掌的同时,也带动了它的许多竞争者。其中一个比较有趣的看点就在于“容器...

1112
来自专栏Crossin的编程教室

【Git 第5课】 Git工作流

上次课中,我们创建了自己的Git仓库,并向其中添加了一个readme.txt的文件。在继续深入介绍Git的使用方法之前,有必要先来讲一讲Git的工作流。 在你...

2848
来自专栏蓝天

加密通讯协议SSL编程周立发

编译程序用下列命令: gcc -Wall ssl-client.c -o client gcc -Wall ssl-server.c -o server 运行...

813
来自专栏上善若水

055 警告: 未提供 -tsa 或 -tsacert, 此 jar 没有时间戳。

将签名命令上加一段话: -digestalg SHA1 -sigalg MD5withRSA 加上后就可以了

1134
来自专栏云加新鲜事儿

腾讯云系统镜像和使用镜像创建云主机

镜像:服务器调试好一台制作镜像,其他机器使用镜像安装,避免重复调试,快速上线下线机器。进入腾讯云的控制台,选择用于制作镜像的机器==>更多 ==> 选择机器 =...

4.4K0
来自专栏农夫安全

【干货】骚姿势破解后台管理员密码

骚姿势破解后台管理员密码 0x01 前言 该文为admin原创文章 当你某个时候通过注入得到了admin的密码,然后把他放到md5解密的时候,激动不已的等待着结...

3246
来自专栏Python爬虫与算法进阶

学习Git(一)起步

什么是Git 在Git官网上找到这样一段描述 Git is a free and open source distributed version control...

3186
来自专栏角落的白板报

在Ubuntu 16.04环境下安装Docker-CE(附视频教程)

大纲 Docker的介绍 Ubuntu下安装Docker 快速体验Docker 利用Docker搭建个人博客 利用Docker搭建开源版本控制利器-GitLa...

3226

扫码关注云+社区