2012-06-24 3 views
1

NT를 구현하려고합니다. & Lan Manager 해시가 JavaScript로되어 있지만 (예를 들어 가장 좋은 언어 선택을 모르는 경우), 간단한 정적 웹 페이지에서 포스트 백이 사용됩니다. 불가능합니다 - 그래서 PHP 나 .NET이나 Java가 없습니다.자바 스크립트에서 Null 패딩을 사용합니다.

문제는 프로토콜의 첫 번째 부분입니다. 기본적으로 암호가 14 자 이상이어야합니다. 14 세가 넘는 경우 (쉽게) 자르기가 필요하지만 14 세 미만이어야하는 경우 비밀번호 문자열을 패드하여 14 개의 문자로 만드십시오.

자바 스크립트에서 하나의 널 (null) 패드에 하나의 문자열을 삽입하는 방법은 무엇입니까?

자바 스크립트에서 문자열을 제로 패드하는 방법을 묻지 않습니다.

(또한 보너스 질문 사람이 JS의 모든 NT 만든 사전 또는 LM 해시 라이브러리로 알고 있다면, I가 머리를 주셔서 감사합니다 정말 것!)

답변

5
function nullpad(str, len) { 
    if(str.length >= len) { 
     return str; 
    } 

    return str + Array(len-str.length + 1).join("\x00"); 
} 

nullpad("", 15).length 
//15 

nullpad("asd", 15).length 
//15 
관련 문제