首页 > 学院 > 开发设计 > 正文

移动终端 Web版 密码控件实现方式

2019-11-06 06:36:41
字体:
来源:转载
供稿:网友
一、概要      基于 JS+CSS,采用服务端控制客户端输入逻辑的 Web 版安全输入组件,采用这种机制,可大幅度提高手机、平板系统浏览器中输入密码的安全性。 组件特点: 1、用户输入的密码信息在客户端中不会有任何残留,可有效防止恶意程序通过接口,内存查看等方式获取用户密码; 2、采用 RSA 加密算法对输入内容进行加密,避免恶意程序对通讯链路中的数据进行拦截分析; 3、可自适应现有主流屏幕分辨率。 二、实现流程1、 页面初始化,请求服务端根据规则生成相应的html(密码控件)并返回给前端2、 用户使用返回的html(密码控件),输入相应的密码3、 前端将输入的密码通过js RSA算法加密并提交到服务端4、 服务端根据规则解密后并进行业务逻辑的后续处理三、实现细节1、 密码键盘分为数字键盘、字母键盘(含大小写)和全键盘2、 如果是数字键盘:生成随机安全随机数 0 ~ 9,根据 SecureRandom.nextInt()方法3、 如果是字母键盘:生成随机26个英文字母,根据chars(97 + i)4、 如果是全键盘:则是2 、3点的组合5、 创建一个NumberPassWordImageMaker类,用于将数字按照设定的规则转换成图片 ImageInfo 类6、 创建一个AlphabetPasswordImageMaker类,用于将字母(含大小写)按照设定的规则转换成图片 ImageInfo 类7、 创建一个HTMLMaker类,用于将生成的图片转换成DIV8、 将DIV中对应的KeyIdnex保存在Httpsession中,用于后续比较9、 将生成的DIV通过约定的方式返回给前端
上一篇:Add Two Numbers

下一篇:PAT 1069

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表