Skip to content

Instantly share code, notes, and snippets.

@gehaxelt
Created June 1, 2012 17:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gehaxelt/2853700 to your computer and use it in GitHub Desktop.
Save gehaxelt/2853700 to your computer and use it in GitHub Desktop.
Simple passwordgenerator written in Javascript
<!--
Passwordgenerator written in Javascript by gehaxelt
www.gehaxelt.in
-->
<html>
<head>
</head>
<body>
<div id="passwordgenerator">
<input type="checkbox" id="Big" ><label for="Caps">ABC</label><br />
<input type="checkbox" id="Small"><label for="Small">abc</label><br />
<input type="checkbox" id="Nums"><label for="Nums">123</label><br />
<input type="checkbox" id="Extra"><label for="Exrta">?!&</label><br />
<label for="laenge">L&auml;nge: </label><input type="text" id="laenge"/><br />
<button onclick="generatePassword()">Generieren</button><br>
<label for="output">Passwort: </label><input type="text" id="output"/><br />
</div>
<script>
var charset="";
function generatePassword() {
var ilength=document.getElementById("laenge").value;
if(isNaN(ilength)) {
alert("Die Länge ist keine Zahl!");
return false;
}
setCharset();
document.getElementById("output").value=genRandomPass(ilength)
}
function genRandomPass(len) {
var pass="";
for(i=0;i<len;i++)
pass=pass+charset.charAt(randomNum(0,charset.length));
return pass;
}
function setCharset() {
charset="";
if(document.getElementById("Big").checked) {
for(var i=65;i<=90;i++)
charset=charset+String.fromCharCode(i);
}
if(document.getElementById("Small").checked) {
for(var i=97;i<=122;i++)
charset=charset+String.fromCharCode(i);
}
if(document.getElementById("Nums").checked) {
for(var i=48;i<=57;i++)
charset=charset+String.fromCharCode(i);
}
if(document.getElementById("Extra").checked) {
for(var i=33;i<=47;i++)
if(!(i==34||i==39||i==47))
charset=charset+String.fromCharCode(i);
for(var i=58;i<=64;i++)
charset=charset+String.fromCharCode(i);
for(var i=91;i<=96;i++)
if(!(i==92||i==96))
charset=charset+String.fromCharCode(i);
for(var i=123;i<=126;i++)
charset=charset+String.fromCharCode(i);
}
}
function randomNum(min,max) {
return Math.floor(Math.random()* (max-min) + min);
}
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment