(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202211278227.3
(22)申请日 2022.10.19
(71)申请人 上海交通大 学
地址 200240 上海市闵行区东川路80 0号
(72)发明人 邱卫东 李昊璋 王杨德 郭捷
唐鹏
(74)专利代理 机构 上海交达专利事务所 31201
专利代理师 王毓理 王锡麟
(51)Int.Cl.
G06F 21/46(2013.01)
G06K 9/62(2022.01)
G06N 3/04(2006.01)
G06N 3/08(2006.01)
(54)发明名称
基于循环神经网络的对抗 性密码生成方法
(57)摘要
一种循环神经网络的对抗性密码生成方法,
通过建立基于循环神经网络的生成对抗网络模
型以及密码 字符字典后, 在离线阶段以密码字 符
字典为训练集对生成对抗网络模 型进行训练; 在
在线阶段从潜在分布空间中采样后输入训练后
的生成对抗网络模型, 将模型输出根据密码字 符
字典转换为明文字符串, 即生成对抗性密码。 本
发明生成的猜测密码字典的猜测成功率高, 猜测
密码的统计特征与训练密码十分相似, 相比于已
有技术猜测密码的质量更高。
权利要求书3页 说明书6页 附图4页
CN 115510422 A
2022.12.23
CN 115510422 A
1.一种基于循环神经网络的对抗性密码生成方法, 其特征在于, 通过建立基于循环神
经网络的生成对抗网络模型以及密码字符字典后, 在离线阶段以密码字符字典为训练集对
生成对抗网络模型进 行训练; 在在线阶段从潜在分布空间中采样后输入训练后的生成对抗
网络模型, 将模型输出根据密码字符字典转换为明文字符串, 即生成对抗 性密码;
所述的基于循环神经网络的生成对抗网络模型, 包括: 用于生成猜测密码, 形成候选密
码字典的生成网络和用于判断它的输入密码是真实密码还是来自生成网络的猜测密码的
判别网络 。
2.根据权利要求1所述的基于循环神经网络的对抗性密码生成方法, 其特征是, 所述的
生成网络和判别网络均为使用门控循环单元或长短期记忆循环单元组成的循环神经网络,
其中该生成网络包含一个全连接的输入层、 两个循环神经层、 一个全连接的隐层以及一个
柔性最大传递函数层, 该判别网络包含一个全连接输入层、 两个循环神经层、 一个注意力 层
以及一个仅有一个神经 元的全连接层。
3.根据权利要求2所述的基于循环神经网络的对抗性密码生成方法, 其特征是, 所述的
门控循环单元为循环神经层的一类神经元, 每个门控循环单元包括两个门结构: 重置门与
更新门, 前者控制上一个隐藏状态有多少 信息转移到 当前隐藏状态, 有助于记忆长期信息,
后者决定上一个隐藏状态有多少 信息被忽略, 使信息更紧凑地表示, 二者共同作用下, 网络
将同时捕获密码字符的短期和长期依赖关系;
所述的长短期记忆循环单元为循环神经层的另一类神经元, 此类神经元每一 时刻的状
态由长期记忆状态和短期记忆状态组成, 每个长短期记忆循环单元包括三个门结构: 遗忘
门、 输入门、 输出门, 数据前向传播时, 遗忘门决定有多少上一时刻的长期记忆状态被丢弃,
输入门决定保留多少当前输入和上一时刻短期记忆状态, 二者共同决定神经元当前时刻的
长期记忆状态, 最后输出门筛选 当前的长期记忆状态, 以形成当前时刻的短期记忆状态, 神
经元存储的长期记忆状态和短期记忆状态将有助于 建模长距离的依赖 关系, 缓解梯度消失
和梯度爆炸问题;
所述的循环神经层根据读取数据的方向, 分为单向循环层和双 向循环层, 前者顺序读
取输入的密码序列, 仅学习当前输入字符 同已输入字符的联系, 后者由两个读取方向相反
的循环层组成, 即第一层顺序读取, 第二层 逆序读取, 最 终将二者的输出拼接为双向循环层
的最终输出, 从而能利用到上 下文的完整信息;
所述的注意力层学习若干权重参数, 权重参数决定输入序列中每一个元素的重要程
度, 即需要分配多少注意力, 并根据重要程度将元 素加权求和;
所述的全连接层由线性部分和非线性部分组成, 前者将输入的二维矩阵乘一个待训练
的权重矩阵得到新的二维矩阵, 后者引入非线性激活函数, 分类线性部分所提取的特 征;
所述的柔性最大传递函数层是生成网络的输出层, 输出当前位置上密码字符的选取概
率。
4.根据权利要求1所述的基于循环神经网络的对抗性密码生成方法, 其特征是, 所述的
密码字符字典, 通过以下 方式得到:
1)选择用于训练的公开明文密码集, 保留所述的密码集中, 长度大于等于4、 小于等于
10的密码, 其中: 定义 一条密码的长度为该密码中字符的数目;
2)保留所述的密码集 中, 只由ASCII码可打印字符组成的密码, 其 中: 定义ASCII码为美权 利 要 求 书 1/3 页
2
CN 115510422 A
2国信息互换 标准代码, 等同于国际标准 ISO/IEC 646;
3)统计所述的清洗后密码集的特征, 包括密码长度的分布、 密码字符组成比例、 密码集
中最常见的10条密码, 其中: 定义密码 字符的类型有且仅有四种: 数字、 小写字母、 大写字母
和特殊字符;
4)根据所述的清洗后密码集中各个密码字符出现频次, 对密码字符排序, 建立密码字
符字典, 索引为密码字符, 值 为字符相应序数。
5.根据权利要求1或4所述的基于循环神经网络的对抗性密码生成方法, 其特征是, 所
述的密码字符字典中加入特殊结束字符, 该特殊字符在字典中的值为0, 对清洗后密码集中
每条密码, 当密码长度小于10, 则通过 所述的特殊结束字符补齐到10位;
所有清洗后的密码根据所述的密码字符字典映射为整数数组, 每个数组长度均为10,
并进行独热编码, 最终每条密码将转变为一个二维矩阵, 所有训练数据将表示为一个三维
矩阵。
6.根据权利要求1所述的基于循环神经网络的对抗性密码生成方法, 其特征是, 所述的
训练, 具体包括: 生成网络从潜在空间中采样, 将采样点送入生成网络获得猜测密码, 所述
的潜在空间为一个容易采样的分布, 如多元高斯分布或多元均匀分布; 更新所述的判别网
络的参数时, 猜测密码的标签设置为<伪造>, 同具有 标签为<真实>的真实密码混合, 一起送
入判别网络, 判别网络学习如何区分真实的密码和猜测的密码, 在每一次迭代中计算二分
类(真实或伪造)的损失对判别网络参数的梯度, 反向传播以更新判别网络的参数; 更新所
述的生成网络的参数时, 猜测密码的标签 设置为<真实>, 送入判别网络, 计算判别结果与标
签的差距并反向传播, 更新 生成网络参数。
7.根据权利要求1或6所述的基于循环神经网络的对抗性密码生成方法, 其特征是, 为
了提高训练过程的稳定性, 保证生 成结果的丰富性, 生成对抗网络引入沃瑟斯坦距离, 用于
度量生成网络 输出的猜测密码的分布与实际密码的分布之间相似性;
为了满足沃瑟斯坦距离要求的利普西茨连续性限制, 对判别网络的损失加入梯度惩罚
项和一致项, 其中梯度惩罚项将限制判别网络的梯度范数趋向于1, 而用于计算该惩罚项的
判别网络输入是当前猜测密码和当前真实密码之间的线性插值, 一致项用于解决梯度惩罚
项无法保证真实数据附近的利普西茨连续性的问题, 利用 多元高斯噪音扰动当前真实密
码, 计算扰动后密码在其空间的梯度, 并限制梯度范数小于一个预设的常数, 因此所述的判
别网络的 损失函数为Dl o s s=E[D (xf a k e) ]‑E[D (xr e a l) ]+GT+CT , 其中 :
C T =λ1E [ m a x (0 , | | D (x ′)‑D (x′′) | |2‑M) ] ,
其中Dloss判别网络的损失, xreal为真实密码、 xfake为生成网
络生成的猜测密码、 D()为所述的判别网络、 GT为梯度惩罚项, CT为一致项, E()为求均值, G
()为所述的生成网络、 λ为梯度惩罚项系数、 || ·||2为欧式距离、
为
的梯度、 λ1为一致项
系数、
为真实密码和生成密码的插值、 α 为均匀分布U(0, 1)的采样结果、 M为所述的用于限
制一致项的常数、 x ′和x′ ′为xreal经过多元高斯噪音扰动(两次)的结果;
所述的生成网络的损失函数为: Gloss=‑E[D(xfake)], 其中: Gloss为生成网络的损失。
8.根据权利要求1所述的基于循环神经网络的对抗性密码生成方法, 其特征是, 所述的
对抗性密码, 具体通过以下步骤得到: 从潜在空间中采样, 将采样点送入生成网络, 输出一权 利 要 求 书 2/3 页
3
CN 115510422 A
3
专利 基于循环神经网络的对抗性密码生成方法
文档预览
中文文档
14 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共14页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 SC 于 2024-02-18 22:24:25上传分享