-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
公開日
2018-03-09
1. 概要
John the Ripperなどの優秀なパスワード推測ツールがあるが、新しいデータセットに適したパスワード生成ルールを作るのは、専門的な知識が必要な上、面倒くさい。(例:password→p4s5w0rd)
そこで、機械学習理論に元ずくパスワード生成方法として、PassGANというのを提案している。
2. 新規性・差分
GANsを応用して推測パスワードを生成している。これは世界初のはず。(RNNでパスワード推測をしている先行研究はすでにある)
3. 手法
Wasserstein GANsをベースとしたアーキテクチャを構築した。
ハイパーパラメータは以下の通り。
- Batch size
- Number of iterations
- Number of discriminator iterations per generator iteration
- Model dimensionality
- Gradient penalty coefficient
- Output sequence length
- Size of the input noise vector(seed)
- Maximum number of examples
- Adam optimizer's hyper-parameters
バッチサイズは64にしイテレーションは199,000にした(過学習しやすいため)。generatorとdiscriminator両方の各層は128次元である。(あとはIWGANのデフォルトと一緒)
gradient penaltyは10にし、生成文字列の長さを32文字から10文字にした。
4. 結果
PassGANは繰り返す系のパスワードを生成する確率が高い。また、GANとbest64を組み合わせると一番パフォーマンスが高かった。(評価方法がたくさんあるので気になる方は論文の表を参照)
5. 議論
ドメイン知識不要なのは本当に強みで、従来手法では生成できないパスワードを生成できる可能性も示し、画期的な手法である。
6. コメント
ドメイン知識不要な点は完全に強み。ネットワークもうちょいいじることもできたんじゃないかなとは思いますが、まぁそんなのは論文じゃなくて製品作る人がやれよという話ですね。
ただ、RNNの先行研究の線も全然future workがありそうなので、どっちが優れてるかはぱっと見まだ言えないんじゃないかなと思いました。