2010-01-15 5 views
7

서로 다른 유형의 암호 강도 측정기 또는 암호 검사기를 사용해 보았지만 동일한 암호를 테스트 할 때 각기 다른 알고리즘을 구현하기 때문에 다른 결과를 얻을 수 있습니다.암호 강도 측정기 (암호 검사기) 설계 지침

내게 맞는 암호 강도 측정기를 만들 수있는 공식 표준이나 지침이 있습니까?

공식적인 표준이없는 경우 좋은 암호 강도 측정기로 어떤 기능을 검사해야합니까?

+2

암호를 해독하려고 할 때 악의적 인 사용자가 잘 정의 된 규칙 집합을 사용하기 때문에 알고리즘의 표준화가 힘을 약화시킬 것이라고 생각합니다. 비밀번호를 해킹하는 것이 훨씬 쉬울 것입니다. 비밀번호가 2-3 자, 5-6 자, 구두점이 1 개인 경우, 내가 특정 기준에 대해 어둠에 빠져있는 것보다 쉽습니다. 대답이 아닙니다. 알아요. – Jay

답변

3

는 다음과 같은 고려 :

  • 길이
  • 혼합 된 경우
  • 는 문자, 숫자 및 기호
  • 은의 일부를 포함하지 않습니다를 포함
  • 많지 반복되는 문자 사용자 이름
  • 이 약한 암호
  • 같은 일에 해시하지 않습니다 이전 암호와 유사하지
  • 은 일반적인 접미사로 끝나지 않는다
  • 개별
  • 관련이없는 키보드 도보 아닌가
  • 공통 접두사로 시작하지 않음

브루스 슈나이어 (Bruce Schneier)의 post on passwordsthis post을 참조하십시오.

+0

위대한 Schneier 기사. 매우 유용합니다. 감사. – RRUZ

1

좋은 (즉, 강력한) 비밀번호가 무엇인지에 대한 많은 정의가 있으므로 표준이 없습니다.

어떤 것들은

고려해야 할 :

  • 길이 -
  • 숫자뿐만 아니라 문자
  • 이 포함되지 않은 알파 숫자를 포함하는 더 나은
  • 혼합 된 경우
  • 가 아닌가 사전 단어
  • 어구는

+0

"영문자는 포함하지 않습니다"? 방금 "문자와 숫자를 모두 포함"하기 전에 줄에 말했습니다. 이것은 영숫자입니까? –

+0

그건 오타였습니다. 이제 해결되었습니다. – ChrisF

0

에 나는 또한 추가 할 것 : 그것은 긴 하나 있다면 사용자 이름 문자열, 또는 사용자 이름도 일부 포함되어 있지 않습니다.

내가 링에 다른 기준을 던질거야
0

:

  • 더 많은 사람들이 사용자가 기억하기 어려운 암호를 기억하는 기대 때문에

"키보드 산책 없다"는 그들은 키보드에 의존 광기를 길들이기위한 패턴. 좋은 측정을 위해 이동 된 버전을 던져라.

아, Twitter's forbidden password list에는 아무 것도 없습니다.

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/

0

암호의 강도는 특수 문자와 숫자 암호의 길이의 존재와 같은 여러 매개 변수를 대신하여 확인하여야한다 등

이 링크를 확인하십시오 :

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

을 jQuery 코드 블록 :

$ (문서) .ready (함수() {

$("#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+'%'); 

}); 

});