《基于鼠标行为的密码容错方法.pdf》由会员分享,可在线阅读,更多相关《基于鼠标行为的密码容错方法.pdf(14页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 104281795 A (43)申请公布日 2015.01.14 CN 104281795 A (21)申请号 201410499054.7 (22)申请日 2014.09.25 G06F 21/31(2013.01) (71)申请人 同济大学 地址 200092 上海市杨浦区四平路 1239 号 (72)发明人 蒋昌俊 陈闳中 闫春钢 丁志军 谭正 (74)专利代理机构 上海天协和诚知识产权代理 事务所 31216 代理人 叶凤 (54) 发明名称 基于鼠标行为的密码容错方法 (57) 摘要 本发明涉及互联网身份认证技术领域, 一种 基于鼠标行为的密码容错方法, 其。
2、特征在于, 基于 用户登陆时的鼠标行为数据, 通过采集并处理用 户鼠标的日常行为数据, 得到可以判断用户身份 的身份认证模式, 并在每次用户登陆时, 比较本次 登陆数据与用户登陆模式的相似度, 最终实现用 户登陆过程的密码容错。分别对系统 UI 界面、 系 统软件模块流程以及系统数据库操作进行相应设 计。 本发明改善用户体验, 同时为用户提供有效的 身份认证保障。 (51)Int.Cl. 权利要求书 1 页 说明书 7 页 附图 5 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书1页 说明书7页 附图5页 (10)申请公布号 CN 104281795 A CN 10。
3、4281795 A 1/1 页 2 1. 一种基于鼠标行为的密码容错方法, 其特征在于, 基于用户登陆时的鼠标行为数据, 通过采集并处理用户鼠标的日常行为数据, 得到可以判断用户身份的身份认证模式, 并在 每次用户登陆时, 比较本次登陆数据与用户登陆模式的相似度, 最终实现用户登陆过程的 密码容错。分别对系统 UI 界面、 系统软件模块流程以及系统数据库操作进行如下设计, 所述的UI界面:为系统前端界面, 用以实现引导用户输入、 认证结果的展示, 主要包括 登陆界面、 注册界面以及虚拟键盘三个界面, 以及各类提示窗口 ; 登陆界面及注册界面提供 登陆器的基础功能, 虚拟键盘是为了采集到更多的用。
4、户鼠标信息 ; 所述的软件模块的流程 : 包括特征选择、 数据采集、 模式建立以及密码容错四个步骤组 成, 特征选择是为了选取可以判断用户身份的鼠标特征, 选择到适当的特征后, 对所需要的 数据进行采集和处理, 得到用户的身份认证模式, 并最终使用该模式进行身份认证, 实现密 码容错 ; 所述的数据库 : 其操作主要是配合软件模块流程中的 4 个步骤, 记录用户的用户名、 密 码、 鼠标身份认证模式数据以及登陆数据等, 并根据软件模块要求进行数据处理和更新。 权 利 要 求 书 CN 104281795 A 2 1/7 页 3 基于鼠标行为的密码容错方法 技术领域 0001 本发明涉及互联网身。
5、份认证技术领域。 背景技术 0002 随着计算机与网络技术的飞速发展, 人类在问题处理、 信息传递等方面都获得了 巨大的便利, 但与此同时, 我们在计算机与网络的安全性方面也面临着巨大的挑战, 针对网 络账户的恶意攻击, 利用系统漏洞的非法入侵等种种危害, 都给我们的个人隐私和财产带 来危险, 因此, 针对不同的威胁类型, 我们拥有了加密性保护、 完整性保护、 存取控制保护等 种种安全防卫措施。其中, 对于计算机及网络系统来说, 存取控制保护是最必要的保护之 一。 0003 存取控制的主要目的是为不同的用户分配不同的权限, 使得每个用户都在自己适 当的权限下对系统进行操作。为了实现存取控制, 。
6、第一步也是最为重要的一步便是用户身 份认证, 只有系统确定了用户的身份, 才能为用户分配正确的权限, 继而进行后续操作。目 前主要的用户身份认证依据包括三种 : (1) 用户记忆信息, 如用户名 / 密码 ; (2) 辅助设备, 如密保卡、 银行卡等 ; (3) 用户生物特征信息, 如指纹等。三种方法各有优点, 但缺点也很明 显, 用户名 / 密码的方式较为简便, 但密码遗忘、 密码泄露等问题使得其安全性和用户体验 都不能令人满意 ; 辅助设备的方式安全性较高, 但相关辅助设备丢失或被盗时, 用户信息同 样存在泄露的风险 ; 由此出现了利用生物信息的认证方法, 这种方法安全性和可靠性都较 高,。
7、 但需要额外的设备支持。 0004 在现有的三种方法中, 第一种方法, 即用户名 / 密码的使用是最广泛的, 但在广为 使用的同时, 其缺点也显而易见, 在安全性方面, 一旦密码泄露, 非法用户也可以通过身份 验证, 该模式将不能为用户数据提供任何防护, 在用户体验方面, 若用户不能正确地输入密 码, 即使是合法用户也不能通过验证。 其安全性问题需要用户妥善保管自己的密码, 并经常 性的更改密码, 因此在安全性问题上, 需要用户的配合, 用户名 / 密码模式本身已经很难改 进, 但用户体验问题却可以从模式的缺点入手, 提升用户体验, 所以本发明将主要针对用户 体验的改善。 发明内容 0005 。
8、基于上述论述, 本发明希望找到新的身份认证方法, 以期对现有的方法做出有效 地补充和改进, 为存取控制提供身份认证保障。 0006 为了对用户体验做出改进, 本发明提出了密码容错的概念, 希望即使在用户无法 提供正确的密码时, 也可以通过其他数据来确认用户的身份。 为达到这个目标, 目前主要有 两种方法。 第一种方法是要求用户提供更多的身份认证信息, 例如有关用户隐私的问题等, 第二种方法是使用用户的生物特征例如虹膜、 指纹等特征进行用户身份认证。这两种方法 在解决问题的同时也各自有着缺点, 第一种方法需要用户进行额外的操作, 增加了用户的 操作量, 而第二种方法需要额外的设备才可以完成身份认。
9、证。 说 明 书 CN 104281795 A 3 2/7 页 4 0007 为了克服现行的方法中所存在的问题, 本发明选择了基于用户行为特征进行用户 身份认证和密码容错的方案。 用户的行为特征主要是指用户在使用计算机时, 对鼠标、 键盘 等输入设备的操作特征, 根据相关文献和实验证实, 这些特征可以在一定程度上确认用户 的身份。而近些年来, 随着图形化界面的发展, 鼠标已经成为人机交互的主要输入设备。基 于这个原因, 本发明将设计一个可以实现基于用户行为特征的密码容错方法, 利用采集用 户的鼠标特征数据, 结合原有的用户名 / 密码验证方式, 分析出用户是否为合法用户, 实现 密码的容错功能。
10、。 0008 为此, 本发明给出的技术方案 : 0009 一种基于鼠标行为的密码容错方法, 其特征在于, 基于用户登陆时的鼠标行为数 据, 通过采集并处理用户鼠标的日常行为数据, 得到可以判断用户身份的身份认证模式, 并 在每次用户登陆时, 比较本次登陆数据与用户登陆模式的相似度, 最终实现用户登陆过程 的密码容错。为实现所预想的系统功能, 需要对 UI 界面、 软件流程以及数据库操作进行设 计。 0010 所述的 UI 界面 : 系统前端界面用以实现引导用户输入、 认证结果的展示, 主要包 括登陆界面、 注册界面以及虚拟键盘三个界面, 以及各类提示窗口。 登陆界面及注册界面提 供登陆器的基础。
11、功能, 虚拟键盘是为了采集到更多的用户鼠标信息。例如利用 C+Builder 所提供的图形化设计能力完成前端界面的设计。 0011 所述的软件主体流程 : 主要由特征选择、 数据采集、 模式建立以及密码容错四个步 骤组成。 特征选择是为了选取可以判断用户身份的鼠标特征, 选择到适当的特征后, 对所需 要的数据进行采集和处理, 得到用户的身份认证模式, 并最终使用该模式进行身份认证, 实 现密码容错。 0012 所述的数据库 : 其操作主要是配合软件流程中的 4 个步骤, 记录用户的用户名、 密 码、 鼠标身份认证模式数据以及登陆数据等, 并根据软件要求进行数据处理和更新。 0013 经过一段时。
12、间的用户信息数据采集、 数据处理之后, 系统将成功地为用户建立起 独特的身份认证模式, 并在用户无法正确提供密码时, 使用该模式进行密码容错。 0014 与现有技术相比, 本发明的创新点 : 0015 1) 面对用户忘记密码的问题, 现阶段主要解决方法是使用辅助信息来验证用户身 份, 包括由用户提供隐私信息, 或验证用户的生物特征, 这些方法增加了用户操作量, 需要 额外的设备支持。而本发明所采用的方法不需要额外的操作和设备, 直接利用用户在登陆 时的鼠标特征验证用户身份。 0016 2) 选择了在登录时更有代表性和区分性的鼠标特征数据。 0017 本发明改善用户体验, 同时为用户提供有效的身。
13、份认证保障。 附图说明 0018 图 1 软件模块流程图 0019 图 2 用户误识率测试 0020 图 3 用户误拒率测试 0021 图 4 数据采集流程 0022 图 5 密码容错的神经网络模式 说 明 书 CN 104281795 A 4 3/7 页 5 0023 图 6 登陆交互流程 0024 图 7 注册流程图 具体实施方式 0025 ( 案例 ) 0026 一、 软件流程 0027 图 1 所示为软件运行的流程图, 特征选择、 数据采集、 模式建立以及密码容错过程 将在下面进行详细介绍。 0028 1、 特征选择 0029 为了实现用户行为特征的数据采集, 建立身份认证模式, 首先。
14、要确定我们需要采 集的用户鼠标特征信息。 鼠标特征信息主要包括两类, 一类称作用户生理层特征, 指的是用 户在使用鼠标时的独特特征, 与应用环境没有关系, 包括鼠标的单击频率、 双击频率、 移动 方向频率、 平均速度等特征量 ; 第二类为用户对话层特征, 指的是用户在某个特定的应用环 境下的鼠标特征, 包括鼠标瞬时移动速度、 鼠标移动瞬时移动方向等。 在这里有两点需要注 意, 首先对于本软件所要实现的用户登陆与密码容错功能来说, 双击操作是基本用不到的, 因此双击频率无需采集, 其次, 鼠标的瞬时移动速度与瞬时移动方向共同组成了鼠标的瞬 时移动向量, 在附加时间戳之后, 连续时间内的鼠标移动向。
15、量可描述出鼠标在一段时间内 的运行轨迹, 因此这两个数据将作为一个整体进行操作。面对选取出的 5 种数据, 本系统对 它们的身份认证性能分别作了测试。测试邀请了 4 名用户, 在对每位用户的 5 种数据进行 训练之后, 计算使用每种数据进行用户身份认证的误识率与误拒率。误识率即对于非法的 用户登陆, 系统经过密码容错使其通过验证的概率。误识率如下图 2 所示。 0030 误拒率指对于合法的用户登陆, 系统经过密码容错拒绝其通过验证的概率。误拒 率如下图 3 所示。 0031 由测试结果可以看出, 鼠标轨迹、 鼠标平均移动速度以及鼠标移动方向频率对用 户身份的辨识率更高, 因此在本系统的软件模块。
16、中将选取这三个数据作为用户身份认证与 密码容错的依据。 0032 2、 数据采集 0033 经过上述分析后, 我们得到了所要采集的数据类型, 数据采集的流程如图 4 所示, 接下来将详细解释该过程。我们设在用户使用鼠标的过程中, 软件每隔 100ms 记录一次鼠 标坐标, 得到的坐标记为 (x1,y1), (x2,y2), (x3,y3).(xn,yn)。 0034 (1) 鼠标瞬时移动角度 0035 对于连续采集的两个鼠标轨迹点o和a, 连接两点, 其与水平线的夹角就是用户 鼠标瞬时移动角度, 而这个角度便是某一时刻鼠标的瞬时移动角度, 设角度为 , 以 (x1, y1)(x2, y2) 之。
17、间的角度为例 ; 0036 0037 0038 根据 (1)(2) 求得角度的 cos 与 sin 值, 再依据 arcsin( ) 和 arcos( ) 计算出角 说 明 书 CN 104281795 A 5 4/7 页 6 度值。 0039 (2) 鼠标瞬时移动速度 0040 这个速度是某一时刻鼠标的瞬时移动速度, 以 (x1, y1)(x2, y2) 之间的速度为例 ; 0041 0042 (3) 时间戳 0043 以程序开始运行时记为 0 时 0044 t n*0.1 (4) 0045 前三项数据采集完成后, 可建立起用户鼠标的瞬时向量 (, v, t), 用于描述用户 鼠标轨迹。 0。
18、046 (4) 鼠标平均移动速度 0047 根据步骤 2 计算出的鼠标瞬时移动速度 v1,v2,.,vn 0048 0049 (5) 鼠标移动方向频率 0050 根据步骤 1 计算得到的角度值, 计算角度落在 (-180, -90)(-90,0)(0,90) 及 (90,180) 四个区域的百分比。 0051 通过分析可以发现, 所需要的五种数据均可由鼠标轨迹坐标计算得到, 因此我们 需要采集并记录用户鼠标移动轨迹的坐标。在系统的软件模块启动后, 通过调用 API 函数, 每隔 100ms 采集一次鼠标坐标, 并连同时间戳存入数据库的数组中, 这样当一次用户登录 行为完成, 我们的数据库中便记。
19、录下了本次的用户鼠标轨迹。 0052 3、 模式建立 0053 表 1 用户身份认证模式 0054 0055 说 明 书 CN 104281795 A 6 5/7 页 7 0056 身份认证模式是每位用户所特有的模式, 主要包括我们所选择的三项数据以及用 户名、 密码等信息, 如表 1 所示。在用户登陆时, 系统会将身份认证模式与本次登陆的数据 进行比较, 以确定密码容错的结果。 0057 (1) 生理层数据处理 0058 用户生理层数据包括鼠标平均移动速度以及鼠标移动方向频率, 对于一次训练来 说, 将会得到一个平均速度以及鼠标在 4 个方向的移动的百分比。 0059 记录平均移动速度为角度。
20、范围内移动次数为 An, 90,180 角度范围 内移动次数为 Bn, (-180,-90) 角度范围内移动次数为 Cn, -90, 0) 角度范围内移动次数为 Dn, 其中 n 表示第 n 次训练。对 n 组训练数据取平均值, 可得到用户的生理层特征数据。 0060 (2) 对话层数据处理 0061 用户的对话层数据指的是鼠标轨迹特征, 由用户的鼠标瞬时速度、 鼠标瞬时角度 以及时间戳共同组成。在系统的软件模块中, 每次采集到的鼠标轨迹数据包括 100 组数据, 我们为这三个数据分别定义符号。定义鼠标瞬时角度为 m_n, 鼠标瞬时速度为 Vm_n, 时间戳 为 tm_n, 其中 m 表示第 。
21、m 组训练数据, n 表示本组数据的时间顺序。将多次采集到的数据中 相同时间戳所对应的瞬时速度与瞬时角度求平均数, 最终得到用户的对话层特征数据。 0062 将生理层特征数据与对话层特征数据组合起来, 便构成了用户身份认证模式。 0063 4、 密码容错 0064 (1) 登陆模式建立 0065 在用户登陆时, 系统的软件模块会使用用户本次的登录数据为用户建立起与身份 认证模式相对应的登陆模式。 0066 (2) 数据比较 0067 依次比较本发明所选择的三项数据在登陆模式与身份认证模式中的相似度, 鼠标 轨迹相似度的比较主要是对鼠标矢量的比较, 平均速度与方向频率的相似度主要采用了相 对误差。
22、计算的方法。 0068 (3) 密码容错 0069 如图 5 所示。输入数据 r, q, p 为上一步计算得到的三项数据的相似度, w1、 w2、 w3 为权值, 加权求和后便可得到登陆模式与用户身份认证模式的相似度 Uk。其中求和函数 说 明 书 CN 104281795 A 7 6/7 页 8 Sum 为 0070 uk rw1+qw2+pw3 (6) 0071 在获得相似度之后, 如何才能确定本次身份认证是否通过呢?在这里我们定义新 的变量特征相似度 S, 若计算得到的相似度大于等于特征相似度, 用户认证通过, 否则密码 容错行为失败, 特征相似度对应图 5 中的阈值。激励函数如下。 0。
23、072 v Uk-s 0073 0074 x 即最终的用户身份认证结果, x 为 1 表示认证成功, 用户通过密码容错功能登陆 成功, x 为 0 表示认证失败, 用户被拒绝登陆。 0075 因此, 权值以及特征相似度的取值将成为影响输出结果的关键。权值表示的是每 种变量对最终验证结果的影响程度, 由于每个人的习惯不同, 权值的取值对每位用户来说 都是不同的, 例如某位用户登陆时鼠标轨迹变化较大, 但鼠标平均速度较为稳定, 在这种情 况下, r 的权值 w1 应该比较小, 而 q 的权值 w2 应该取值较大 ; 特征相似度表示的是用户特 征的稳定程度, 若用户日常行为波动较大, 则特征相似度相。
24、对较小, 反之较大。为了取得适 当的值, 在对 20 组训练数据进行训练时, 需要采用合适的方法。在这里我们采用神经网络 模式中的监督学习的思想获得, 具体算法思想如下。 0076 首先将初始的三个权值 w1、 w2、 w3均设置为 1/3, 即初始状态三个相似度对最终 结果的影响程度是相同的。在 20 组初始数据的训练中, 第一组数据即作为最初的身份认 证模式, 存入数据库中, 其后的每组数据, 都将与数据库中已存在的身份认证模式进行比 较, 得到三个相似度, 选取其中最低相似度所对应的权值减去 1/500, 最高的对应权值增加 1/500, 完成后将本组数据存入数据库, 得到新的身份认证模。
25、式, 这样经过 20 组数据递归训 练, 高相似度的变量对应的权值将会对最终的结果起到更大的影响, 达到监督学习中对权 值调整的目的。 在权值调整完成后, 20组训练数据也已存入数据库, 使用这些数据建立起身 份认证模式, 并依据新的权值与身份认证模式重新计算 20 组数据的相似度 uk, 其中 k 表示 次数, 最终的特征相似度 u 计算如下。 0077 u (u1+u2+.+uk+.+u20)/20 (8) 0078 同时需要注意的是, 在软件模块实际运行过程中, 并没有初始数据用于训练, 因此 将采集用户在用户名和密码均输入正确时的数据作为训练数据, 并存入数据库中。 0079 二、 关。
26、于用户交互过程设计 0080 在软件模块的运行过程中, 系统需要与用户进行交互, 其中交互过程主要集中在 登陆界面与注册界面, 包括用户名与密码的输入、 注册与登陆情况的反馈等, 接下来将详细 描述用户交互的过程。 0081 1、 登陆交互过程 0082 如图 6 所示。用户登陆时, 在指定位置输入用户名或密码, 系统首先验证用户名是 否合法, 若通过验证, 进入密码验证环节, 否则弹出错误信息。密码验证阶段, 若密码完全 正确, 则直接返回登陆成功, 若编辑距离大于 2, 则弹出错误信息, 若两种情况均不满足, 则 进入密码容错过程, 经过登陆模式与身份认证模式的比较, 若通过验证, 则通知。
27、用户登陆成 说 明 书 CN 104281795 A 8 7/7 页 9 功, 否则弹出错误信息。 0083 2、 注册过程 0084 注册过程如图 7 所示, 主要包括用户名、 密码长度的判断以及两次输入密码是否 相同的判断。 说 明 书 CN 104281795 A 9 1/5 页 10 图 1 图 2 说 明 书 附 图 CN 104281795 A 10 2/5 页 11 图 3 图 4 说 明 书 附 图 CN 104281795 A 11 3/5 页 12 图 5 说 明 书 附 图 CN 104281795 A 12 4/5 页 13 图 6 说 明 书 附 图 CN 104281795 A 13 5/5 页 14 图 7 说 明 书 附 图 CN 104281795 A 14 。