所以我正在尝试在 JavaScript 中实现 NT 和 Lan Manager 哈希(是的,我不知道它的最佳语言选择!)但它用于一个简单的静态网页,其中回传是不可能的 - 所以不PHP 或 .NET 或 Java。
我遇到的问题是协议(protocol)的第一部分,基本上你必须确保密码是 14 个字符,如果它超过 14 个你需要 trim (简单),但是如果它低于 14 个你需要空填充密码字符串,使其达到十四个字符。
如何在 JavaScript 中用 null 填充字符串?
请注意,我不是在问如何在 Javascript 中对字符串进行零填充。
(还有一个额外的问题,如果有人知道 JS 中任何预制的 NT 或 LM 哈希库,我将不胜感激!)
最佳答案
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
关于javascript - 在 Javascript 中用 Null 填充字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11177153/