7

さまざまな種類のパスワード強度メーターまたはパスワード チェッカーを試しましたが、同じパスワードをテストすると、それぞれが独自のアルゴリズムを実装しているため、すべて異なる結果が得られます。

独自のパスワード強度メーターを構築するために私に従うことができる公式の標準またはガイドラインはありますか?

公式の標準がない場合、優れたパスワード強度メーターはどの機能をチェックする必要がありますか?

4

6 に答える 6

3

次の点を考慮してください。

  • 長さ
  • 大文字小文字混合
  • 繰り返し文字が少ない
  • 文字、数字、記号を含む
  • ユーザー名の一部を含まない
  • 以前のパスワードとは異なります
  • 脆弱なパスワードと同じものにハッシュされません
  • キーボードウォークではない
  • 個人とは関係ありません
  • 一般的な接尾辞で終わらない
  • 一般的なプレフィックスで始まらない

パスワードに関するBruce Schneier の投稿と、この投稿を参照してください。

于 2010-01-15T21:49:40.240 に答える
1

私が知る限り、優れた (つまり、強力な) パスワードがどうあるべきかについて多くの定義があるため、標準はありません。

考慮すべき事項:

  • 長さ - 長いほど良い
  • 大文字小文字混合
  • 文字だけでなく数字も含む
  • 英数字以外の文字を含む
  • 辞書用語じゃないの
  • フレーズです

等々

于 2010-01-15T21:37:35.693 に答える
0

私も追加します:ユーザー名の文字列、または長いものの場合はユーザー名の一部も含まれません。

于 2010-01-15T21:40:21.107 に答える
0

リングに別の基準を投げます:

  • 「キーボードウォーク」はありません

非常に多くの人が、覚えにくいパスワードをユーザーが覚えていることを期待しているため、狂気を抑えるためにキーボードパターンに頼っています。適切な測定のためにシフトされたバージョンを投入します。

ああ、Twitterの禁止パスワードリストにも何も載っていない。

于 2010-01-15T21:42:23.707 に答える
0

強力なパスワードを作成するためのガイダンスを提供するガイドライン(google)がいくつかありますが、そのほとんどは常識です。一日の終わりに、あなたはあなた自身の方針(または彼らが持っているなら会社の方針)を強いものとそうでないものに適用することができ、あなたの決定はおそらくあなたが保護しようとしているものに影響されます。

@jayが言ったように、私はそのようなことを標準化することは賢明な習慣ではないと思います!

http://net.tutsplus.com/tutorials/javascript-ajax/build-a-simple-password-strength-checker/

http://www.ibm.com/developerworks/lotus/library/ls-password_quality/index.html#N100F5

このサイトは、彼らが適用しているアルゴリズムと彼らがどのように強さを計算するかについてのアイデアを与えるので、特に良かったと思いました。

http://www.passwordmeter.com/

于 2010-01-15T21:44:03.293 に答える
0

パスワードの強度は、特殊文字や数字の存在、パ​​スワードの長さなどのいくつかのパラメーターに代わってチェックする必要があります。

このリンクを確認してください:

http://tinytute.com/2014/06/03/animated-password-strength-checker-quick-easy/

jQuery コード ブロック:

$(document).ready(function(){

$("#textBox").keyup(function(){

    var passWord = $("#textBox").val();
    var passLength = passWord.length;
    var specialFlag = 0;
    var numberFlag = 0;
    var numberGenerator = 0;
    var total = 0;

    if(/^[a-zA-Z0-9- ]*$/.test(passWord) == false) {

        specialFlag =20;
    }


    if(passWord.match(/[0-9]/)) {

        numberFlag = 25;
    }

    if(passLength>4&&passLength<=6){
        numberGenerator =25;
    }else if(passLength>=7&&passLength<=9){
        numberGenerator =35;
    }else if(passLength>9){
        numberGenerator =55;
    }else if(passLength>0&&passLength<=4){
        numberGenerator =15;
    }else{
        numberGenerator =0;
    }

    total = numberGenerator + specialFlag + numberFlag;
    if(total<30){
        $('#progressBar').css('background-color','#CCC');
    }else if(total<60&&total>=30){

        $('#progressBar').css('background-color','#FF6600');

    }else if(total>=60&&total<90){

        $('#progressBar').css('background-color','#FFCC00');

    }else if(total>=90){

        $('#progressBar').css('background-color','#0f0');

    }
    $('#progressBar').css('width',total+'%');

});

});

于 2014-06-05T20:22:30.320 に答える