Hash Password

by dhizzybusy

HTML

<h1>
  <Center>Hashing Function Password </Center>
</h1>
<br><br/>
<head>   
    <style>
      div {
        border: 5px solid gray;
        padding: 5px;
        margin: 10px;
      }
      input {
        padding-left: 5px;
        width: 180px;
        margin: 10px;
      }
    </style>
  </head>
  <body>
    <div>
      <label> Add Password : </label>
      <input id="apwd">
      <button onclick="addPwd()"> Submit </button>
      <br />
      <label> Check For Password : </label>
      <input id="cpwd">
      <button onclick="cfPwd()"> Submit </button>
      </div>
      <div>
       <br />
        <div id="data">
        </div>

JavaScript

passwordHash = [];

function addPwd() {
  var apwd = document.getElementById("apwd").value;
  var hashval = SHA1(apwd);
  passwordHash.push(hashval);
  display();
}

function display() {
  var html = "<ul>";
  for (var i = 0; i < passwordHash.length; i++) {
    html = html + "<li>" + passwordHash[i] + "</li>";
  }
  html = html + "</ul>";
  document.getElementById("data").innerHTML = html;
}


function cfPwd() {
  var apwd = document.getElementById("cpwd").value;
  var hashval = SHA1(apwd);
  var index = passwordHash.indexOf(hashval);
  if (index != -1) {
    alert("Password Found");
  } else {
    alert("Not Found");
  }
}


function SHA1(msg) {


  function rotate_left(n, s) {

    var t4 = (n << s) | (n >>> (32 - s));
    return t4;


  }


  function lsb_hex(val) {

    var str = "";
    var i;
    var vh;
    var vl;


    for (i = 0; i <= 6; i += 2) {
      vh = (val >>> (i * 4 + 4)) & 0x0f;
      vl = (val >>> (i * 4)) & 0x0f;
      str += vh.toString(16) + vl.toString(16);


    }


    return str;


  }


  function cvt_hex(val) {


    var str = "";
    var i;
    var v;

    for (i = 7; i >= 0; i--) {
      v = (val >>> (i * 4)) & 0x0f;
      str += v.toString(16);
    }

    return str;

  }


  function Utf8Encode(string) {
    string = string.replace(/\r\n/g, "\n");
    var text = "";
    
    for (var n = 0; n < string.length; n++) {
      var c = string.charCodeAt(n);
      if (c < 128) {
        text += String.fromCharCode(c);

      } else if ((c > 127) && (c < 2048)) {

        text += String.fromCharCode((c >> 6) | 192);

        text += String.fromCharCode((c & 63) | 128);

      } else {

        text += String.fromCharCode((c >> 12) | 224);

        text += String.fromCharCode(((c >> 6) & 63) | 128);

        text += String.fromCharCode((c & 63) | 128);
      }
    }

    return text;


  }


  var blockstart;
  var i, j;
  var W = new Array(80);
  var H0 = 0x67452301;
  var H1 = 0xEFCDAB89;
  var H2 = 0x98BADCFE;
  var H3 = 0x10325476;
 ...