转载自:http://www.chinaz.com/web/2012/0612/257136.shtml

随着网络的全面普及,网络安全问题也日趋严峻。暨著名的技术交流社区CSDN爆出600余万用户明文密码暴露事件之后,天涯社区4000万用户明文密码也泄漏于世,紧跟着人人网、开心网、猫扑等,甚至京东商城、当当网、支付宝这样的电商网站都相继爆出密码泄露问题,几百万上千万的用户资料赤裸裸的暴露在公开的网络平台之上,让我们不由的担心起网络日益严峻的安全问题。

现如今,很多电商及银行的网站都采用了动态密码服务,大大的保障了用户的信息和资金安全,主要方式有:

1、动态口令卡:类似于刮刮卡形式,通过横竖两个指标来确定当前密码。

常见:银行口令卡等;

缺点:需要随身携带,且容易被复制或拍照记下,安全性相对不高,并且有限次使用。

2、硬件令牌:根据专门的算法(一般为时间算法)生成一个不可预测的随机数字组合,每个密码只能使用一次,或类似于U盾一类的需插入硬件进行数据比对。

常见:U盾、QQ令牌等;

缺点:需要随身携带,使用较为繁琐,并且要花费不少硬件成本;

3、手机口令:一种是通过软件来实现动态口令的生成,另一种较为简单,通过短信获取验证码来确认身份;

常见:QQ手机令牌,支付宝付款手机验证码等;

缺点:需要和手机绑定,如遇更换手机号则较为麻烦,有时还会遇到延时或无法接收,网站需部署短信平台,大量短信需要不少成本;

以上各种方式各有其优点,但都有一个很大的问题,就是不适合中小网站部署,都需要耗费大量的时间成本和资金成本,且给用户增加了很多负担;那么有没有一种更为方便快捷并且无需成本的安全口令解决方案呢?

笔者通过多年的网络建设经验,总结并发明了一种简单并行之有效的动态口令实施方案,且适用各类语言编写的网站,中小网站均可快速部署。

中小网站用户登录常用的方式为:“用户名+密码” 或 “用户名+密码+验证码”;即便采用了MD5加密,也无法保证客户密码不会泄露,因为密码的输入过程有可能被旁边的人看到,或者电脑后台的木马记录,如果要解决这个问题,那只有一个办法,让看到的人或监听密码的木马上当,也就是说,他们看到或者记录到的密码并不是真正的密码,因为密码随时都在变化!

具体解决方法:原有的“用户名+密码”的选项可以继续保留(验证码完全可以取消),增加一栏动态密码框,验证需要三项结果匹配才能登陆。

下面就来重点解释一下如何设计动态密码框:笔者采用的方式是利用“时间算法”来生成动态口令,因为时间是每分每秒都在变化的,用时间来做算法,可以确保动态口令的时效性,即:上一秒的密码在下一秒就失效了。举例,现在时间是“14:28分54秒”,则动态密码可以设定为“142854”,后台获取当前时间设为“A”,输入框的值为“B”,当输入“142854”时,则“B=A” 验证通过!为了避免输入的时间差,可以在前台把时间直接赋值给“A”,然后在后台进行比对。

当然,在实际运用中,我们不可能直接把时间作为动态口令,这样不但太过简单,而且无法多人共用这个体系,因此,我们要在“时间”的基础上来做文章,即设定每个人特定的算法。还是以上面的时间“14:28分54秒”为例,我们现在进行拆分,并加强算法,为了便于记忆,我将时间分为三个部分“14、28、54”,并以数字“365”作为附加口令,算式如下:“14×3、28+6、54+5”,即最终动态密码实际为“423459”,除了你之外,别人根本无法得知“423459”是从何而来,如果被别人不小心看到或者木马记录下了这个数字,那也无需担心,因为,这个密码下一秒便失效了,别人没有你的算法,也就无法得知当前的动态密码是什么。如果希望更加的安全,我们设置可以在此基础上不断的变化,比如引入“+-×÷”,附加口令也可以是任意自己易记的数字,如生日、身份证号等,“时间+附加码”通过特定算法随意组合。

OK,大功告成!这样的密码除了设定者本人以外,任谁也想不到是如何得来的,而且每秒都在变化,最关键的是,对于程序员来说,只需短短10分钟便可部署完毕!

如果您对本文还有疑问或者部署中遇到问题,可以与作者联系(QQ:622569)。

给你的网站“加把锁” 动态口令轻松实现相关推荐

  1. php 一次性动态口令,网站商务通开通动态口令功能

    网站商务通开通动态口令功能 过去一段时间发生过商务通数据被盗事件同时由于某些客户对资料保密不够好导致账号外泄,为此我们前面推出了商务通绑定MAC地址和商务通绑定IP地址等功能,这样即便您的账号外泄商务 ...

  2. 为您的Office文档加把锁-ADRMS的安装

    为您的Office文档加把锁-ADRMS的安装  如今不少企业越来越重视自己KM(知识管理系统)的建立对于KM的建立实施虽然可以有效地解决企业在知识管理上的问题对于一些具有商业利益关系的机密文件(例如 ...

  3. 并发加对象锁_通用并发对象池

    并发加对象锁 在本文中,我们将介绍如何在Java中创建对象池. 近年来,JVM的性能成倍增加,大多数类型的对象几乎都变得多余,从而提高了对象池的性能. 从本质上讲,对象的创建不再像以前那样昂贵. 但是 ...

  4. 如何优化网站加载时间

    一.背景 我们要监测网站的加载情况,可以使用 window.performance 来简单的检测. window.performance 是W3C性能小组引入的新的API,目前IE9以上的浏览器都支持 ...

  5. java面试题6 牛客:哪个关键字可以对对象加互斥锁?

    哪个关键字可以对对象加互斥锁?() A synchronized B volatile C serialize D static synchronized的4种用法 1.方法声明时使用,放在范围操作符 ...

  6. 网页速度很慢优化方案:如何提高网页加载速度,提升网站加载速度

    网站加载速度的快慢,直接影响用户的去留.这里为大家持续更新我的经验,帮你解决网页速度很慢,慢在哪里,该怎么优化的问题.希望对你有所帮助! 1.  网站空间要好:网站需要一个稳定的服务器或者虚拟机,可以 ...

  7. iis服务器响应缓慢,IIS网站加载缓慢怎么办?如何处理?

    您的IIS网站加载缓慢吗?我们可以帮助您修复它. 一个慢速的网站将永远赶走您的有效访问者. IIS网站的运行缓慢通常可以通过更改某些IIS功能来解决. 在Bobcares,我们收到客户的请求,以使II ...

  8. 网站加载速度影响因素以及如何增强

    网站打开速度是用户体验和 SEO 营销的要点之一.许多研究已经证明,当网页加载时间超过 3 秒,超过 50% 的用户会关闭网页.网站打开过慢会造成负面用户体验,增加跳出率,导致你的网站在搜索结果页的位 ...

  9. 【学习总结】Apsara Clouder云计算技能认证:网站建设:简单动态网站搭建+思维导图

    [学习总结]Apsara Clouder云计算技能认证:网站建设:简单动态网站搭建 网站搭建的类型 网站的主要分类 静态网站 动态网站 动态网站的实现方式 动态网站搭建涉及的内容: 动态网站的常见实现 ...

最新文章

  1. 英伟达收购Mellanox接近尾声,将成英伟达史上最大收购案
  2. mysql 两个数据库指定表同步_mysql从2个数据库中同步两个表
  3. html5遍历集合数据,HTMLCollection集合能打印出来值,但是无法获取每一个值。
  4. 正高变副高!高校实施“职称退步”?
  5. 第十二届 2021年1月 蓝桥杯青少年组省赛C++组 第1题--第3题(scratch实现)
  6. java中各种时间格式的转化
  7. tomcat 运行报错 JRE_HOME
  8. 初识NodeJS,一个基于GoogleV8引擎的Javascript运行环境
  9. Monad B2 For Dotnet Framework 2.0 RC/RTM Released!
  10. ]MySQL操作命令语句实例
  11. Component 初识组件
  12. 理解算法中的时间复杂度,O(1),O(n),O(log2n),O(n^2)
  13. 服务器固态盘装系统,怎么把固态硬盘设置为系统盘
  14. HDU 4461 The Power of Xiangqi
  15. DVI-A、DVI-D、DVI-I接口定义、DVI接口图和DVI接口标准介绍
  16. 安装ruby1.9.3-p0及redmon来监控redis
  17. 对行场、带宽很好解析的一文章
  18. 用Python快速分析和预测股票价格
  19. 安装nginx遇到C compiler cc is not fount问题
  20. 启动牛市的密钥藏宝计划(TPC),火热来袭!

热门文章

  1. 糟糕 安装失败 错误代码0xa0430721 解决方案
  2. js鼠标移入移出连续闪烁问题
  3. Python遍历列表获取列表中的索引值
  4. 使用python进行字频统计和词频统计
  5. 微信页面发动短信,拨号功能
  6. 乌合之众-大众心理研究(十九)
  7. 17日或迎抢票高峰 百度卫士抢票宝类软件遭热议
  8. 无刷电机换相-六步换向-两两导通与三三导通
  9. hdu1263 水果
  10. 测试手机双摄的软件,盘点主流单双摄手机,实际测试哪一款拍照更成熟?