FlaShEr
31.07.2007, 20:48
Hello sorry but i can write in russian
I need some help
one website have a Check.js script,to check password
Can i hack it?
function countchar(character,str) {
var count=0;
for (var i=0;i<str.length;i++) {
if (character==str.charAt(i))
{
count++;
}
}
return count;
}
function char_repetition(password) { /// returns the max number of repetitions -> not really, returns 2 if there's any repetition
///TODO : make the function truely count the repetitions
var max=0;
for (var i=0;i<password.length;i++) {
var current = countchar(password.charAt(i),password);
if (current>max)
{
max = current;
}
}
return max;
}
function keys_distance_check(password) {/// returns true if there are sequenced keys with distance of 1 - currently, no other distance exists. use of config variable requires that I add distances or create a path following technique
var password_keydistancematrix = create_keyboard_distance_matrix();
var max = 0;
//brokenpass = explode("\n",chunk_split (password, 1,"\n"));
for (var i=0;i<(password.length-1);i++) {
var distance = password_keydistancematrix[password.charCodeAt(i)][password.charCodeAt(i+1)]
distance = (!distance) ? password_keydistancematrix[password.charCodeAt(i+1)][password.charCodeAt(i)] : distance;
if ( distance > max ){
max = distance;
}
}
return max;
}
function countnumbers(password) {
var numbers = 0;
for (var i=0;i<password.length ;i++ )
{
if (!isNaN(password.charAt(i)))
{
numbers++;
}
}
return numbers;
}
function countletters(password) {
return password.length-countnumbers(password);
}
function check_password_userinfo(password,username,firstnam e,lastname) {/// needs yet to be built
if (password == username || password == firstname || password == lastname) {
return false;
}
return true;
}
function incrementing_chars(password) {
for (i=0;i<(password.length-1);i++) {
if (((password.charCodeAt(i)+1)==password.charCodeAt( i+1)) || ((password.charCodeAt(i)-1)==password.charCodeAt(i+1))) {
return true;
}
}
return false;
}
function create_keyboard_distance_matrix() {
var keyboardvalidchars = new Array();
var chrcount=0;
var str = "a";
for (i="a".charCodeAt(0);i<="z".charCodeAt(0);i++,chrcount++) {
keyboardvalidchars[chrcount]=i;
}
for (i="A".charCodeAt(0);i<="Z".charCodeAt(0);i++,chrcount++) {
keyboardvalidchars[chrcount]=i;
}
for (i="0".charCodeAt(0);i<="9".charCodeAt(0);i++,chrcount++) {
keyboardvalidchars[chrcount]=i;
}
/// hebrew alphabet needed
var password_keydistancematrix = new Array();
var validchars = keyboardvalidchars.length;
for (var i=0;i<validchars;i++) {
password_keydistancematrix[keyboardvalidchars[i]]=new Array();
for (var j=0;j<validchars;j++) {
password_keydistancematrix[keyboardvalidchars[i]][keyboardvalidchars[j]]=0;
}
}
//now for the dirty work
password_keydistancematrix['1'.charCodeAt(0)]['2'.charCodeAt(0)] = 1;
password_keydistancematrix['2'.charCodeAt(0)]['3'.charCodeAt(0)] = 1;
password_keydistancematrix['3'.charCodeAt(0)]['4'.charCodeAt(0)] = 1;
password_keydistancematrix['4'.charCodeAt(0)]['5'.charCodeAt(0)] = 1;
password_keydistancematrix['5'.charCodeAt(0)]['6'.charCodeAt(0)] = 1;
password_keydistancematrix['6'.charCodeAt(0)]['7'.charCodeAt(0)] = 1;
password_keydistancematrix['7'.charCodeAt(0)]['8'.charCodeAt(0)] = 1;
password_keydistancematrix['8'.charCodeAt(0)]['9'.charCodeAt(0)] = 1;
password_keydistancematrix['9'.charCodeAt(0)]['0'.charCodeAt(0)] = 1;
password_keydistancematrix['1'.charCodeAt(0)]['q'.charCodeAt(0)] = 1;
password_keydistancematrix['2'.charCodeAt(0)]['q'.charCodeAt(0)] = 1;
password_keydistancematrix['2'.charCodeAt(0)]['w'.charCodeAt(0)] = 1;
password_keydistancematrix['3'.charCodeAt(0)]['w'.charCodeAt(0)] = 1;
password_keydistancematrix['3'.charCodeAt(0)]['e'.charCodeAt(0)] = 1;
password_keydistancematrix['4'.charCodeAt(0)]['e'.charCodeAt(0)] = 1;
password_keydistancematrix['4'.charCodeAt(0)]['r'.charCodeAt(0)] = 1;
password_keydistancematrix['5'.charCodeAt(0)]['r'.charCodeAt(0)] = 1;
password_keydistancematrix['5'.charCodeAt(0)]['t'.charCodeAt(0)] = 1;
password_keydistancematrix['6'.charCodeAt(0)]['t'.charCodeAt(0)] = 1;
password_keydistancematrix['6'.charCodeAt(0)]['y'.charCodeAt(0)] = 1;
password_keydistancematrix['7'.charCodeAt(0)]['y'.charCodeAt(0)] = 1;
password_keydistancematrix['7'.charCodeAt(0)]['u'.charCodeAt(0)] = 1;
password_keydistancematrix['8'.charCodeAt(0)]['u'.charCodeAt(0)] = 1;
password_keydistancematrix['8'.charCodeAt(0)]['i'.charCodeAt(0)] = 1;
password_keydistancematrix['9'.charCodeAt(0)]['o'.charCodeAt(0)] = 1;
password_keydistancematrix['0'.charCodeAt(0)]['o'.charCodeAt(0)] = 1;
password_keydistancematrix['0'.charCodeAt(0)]['p'.charCodeAt(0)] = 1;
password_keydistancematrix['q'.charCodeAt(0)]['w'.charCodeAt(0)] = 1;
password_keydistancematrix['q'.charCodeAt(0)]['a'.charCodeAt(0)] = 1;
password_keydistancematrix['w'.charCodeAt(0)]['a'.charCodeAt(0)] = 1;
password_keydistancematrix['w'.charCodeAt(0)]['e'.charCodeAt(0)] = 1;
password_keydistancematrix['w'.charCodeAt(0)]['s'.charCodeAt(0)] = 1;
password_keydistancematrix['e'.charCodeAt(0)]['d'.charCodeAt(0)] = 1;
password_keydistancematrix['e'.charCodeAt(0)]['r'.charCodeAt(0)] = 1;
password_keydistancematrix['e'.charCodeAt(0)]['s'.charCodeAt(0)] = 1;
password_keydistancematrix['r'.charCodeAt(0)]['d'.charCodeAt(0)] = 1;
password_keydistancematrix['r'.charCodeAt(0)]['t'.charCodeAt(0)] = 1;
password_keydistancematrix['r'.charCodeAt(0)]['f'.charCodeAt(0)] = 1;
password_keydistancematrix['t'.charCodeAt(0)]['y'.charCodeAt(0)] = 1;
password_keydistancematrix['t'.charCodeAt(0)]['f'.charCodeAt(0)] = 1;
password_keydistancematrix['t'.charCodeAt(0)]['g'.charCodeAt(0)] = 1;
password_keydistancematrix['y'.charCodeAt(0)]['u'.charCodeAt(0)] = 1;
password_keydistancematrix['y'.charCodeAt(0)]['h'.charCodeAt(0)] = 1;
password_keydistancematrix['y'.charCodeAt(0)]['g'.charCodeAt(0)] = 1;
password_keydistancematrix['u'.charCodeAt(0)]['i'.charCodeAt(0)] = 1;
password_keydistancematrix['u'.charCodeAt(0)]['j'.charCodeAt(0)] = 1;
password_keydistancematrix['u'.charCodeAt(0)]['h'.charCodeAt(0)] = 1;
password_keydistancematrix['i'.charCodeAt(0)]['o'.charCodeAt(0)] = 1;
password_keydistancematrix['i'.charCodeAt(0)]['k'.charCodeAt(0)] = 1;
password_keydistancematrix['i'.charCodeAt(0)]['j'.charCodeAt(0)] = 1;
password_keydistancematrix['o'.charCodeAt(0)]['p'.charCodeAt(0)] = 1;
password_keydistancematrix['o'.charCodeAt(0)]['l'.charCodeAt(0)] = 1;
password_keydistancematrix['o'.charCodeAt(0)]['k'.charCodeAt(0)] = 1;
password_keydistancematrix['p'.charCodeAt(0)]['l'.charCodeAt(0)] = 1;
password_keydistancematrix['a'.charCodeAt(0)]['s'.charCodeAt(0)] = 1;
password_keydistancematrix['a'.charCodeAt(0)]['z'.charCodeAt(0)] = 1;
password_keydistancematrix['s'.charCodeAt(0)]['d'.charCodeAt(0)] = 1;
password_keydistancematrix['s'.charCodeAt(0)]['x'.charCodeAt(0)] = 1;
password_keydistancematrix['s'.charCodeAt(0)]['z'.charCodeAt(0)] = 1;
password_keydistancematrix['d'.charCodeAt(0)]['f'.charCodeAt(0)] = 1;
password_keydistancematrix['d'.charCodeAt(0)]['c'.charCodeAt(0)] = 1;
password_keydistancematrix['d'.charCodeAt(0)]['x'.charCodeAt(0)] = 1;
password_keydistancematrix['f'.charCodeAt(0)]['g'.charCodeAt(0)] = 1;
password_keydistancematrix['f'.charCodeAt(0)]['v'.charCodeAt(0)] = 1;
password_keydistancematrix['f'.charCodeAt(0)]['c'.charCodeAt(0)] = 1;
password_keydistancematrix['g'.charCodeAt(0)]['h'.charCodeAt(0)] = 1;
password_keydistancematrix['g'.charCodeAt(0)]['b'.charCodeAt(0)] = 1;
password_keydistancematrix['g'.charCodeAt(0)]['v'.charCodeAt(0)] = 1;
password_keydistancematrix['h'.charCodeAt(0)]['j'.charCodeAt(0)] = 1;
password_keydistancematrix['h'.charCodeAt(0)]['n'.charCodeAt(0)] = 1;
password_keydistancematrix['h'.charCodeAt(0)]['b'.charCodeAt(0)] = 1;
password_keydistancematrix['j'.charCodeAt(0)]['k'.charCodeAt(0)] = 1;
password_keydistancematrix['j'.charCodeAt(0)]['m'.charCodeAt(0)] = 1;
password_keydistancematrix['j'.charCodeAt(0)]['n'.charCodeAt(0)] = 1;
password_keydistancematrix['k'.charCodeAt(0)]['l'.charCodeAt(0)] = 1;
password_keydistancematrix['k'.charCodeAt(0)]['m'.charCodeAt(0)] = 1;
password_keydistancematrix['z'.charCodeAt(0)]['x'.charCodeAt(0)] = 1;
password_keydistancematrix['x'.charCodeAt(0)]['c'.charCodeAt(0)] = 1;
password_keydistancematrix['c'.charCodeAt(0)]['v'.charCodeAt(0)] = 1;
password_keydistancematrix['v'.charCodeAt(0)]['b'.charCodeAt(0)] = 1;
password_keydistancematrix['b'.charCodeAt(0)]['n'.charCodeAt(0)] = 1;
password_keydistancematrix['n'.charCodeAt(0)]['m'.charCodeAt(0)] = 1;
for (var i=0;i<validchars;i++) { /// capitals
if (keyboardvalidchars[i]>="a".charCodeAt(0) && keyboardvalidchars[i]<="z".charCodeAt(0)) {
for (var j=0;j<validchars;j++) {
if ((password_keydistancematrix[keyboardvalidchars[i]][keyboardvalidchars[j]]>0) && ((keyboardvalidchars[j]>="a".charCodeAt(0)) && (keyboardvalidchars[j]<="z".charCodeAt(0)))) {
var keyi = keyboardvalidchars[i].toString().toUpperCase().charCodeAt(0);
var keyj = keyboardvalidchars[j].toString().toUpperCase().charCodeAt(0);
password_keydistancematrix[keyi][keyj] = 1;
}
}
}
}
return password_keydistancematrix;
}
invalidChars=" /:,;\"'?<>#%&"
englishChars="qwertyuiopasdfghjklzxcvbnm QWERTYUIOPASDFGHJKLZXCVBNM1234567890.,@-)(*";
numChars="1234567890";
function check_invalid_chars(string){
for (i=0; i<invalidChars.length;i++){
badChar=invalidChars.charAt(i)
if(string.indexOf(badChar,0)>-1){
return false;
}
}
return true;
}
function check_english_chars(string){//englishChars
for (i=0; i<string.length;i++){
Char=string.charAt(i)
if(englishChars.indexOf(Char,0)==-1){
return false;
}
}
return true;
}
function check_numeric_chars(string){
for (i=0; i<string.length;i++){
Char=string.charAt(i)
if(numChars.indexOf(Char,0)==-1){
return false;
}
}
return true;
}
function check_value_length(string,minimum,maximum){
if(string.length<minimum || string.length>maximum){
return false
}
return true;
}
function check_correct_email(string){
atPos=string.indexOf("@",1)
if (atPos==-1){
return false
}
if (string.indexOf("@",atPos+1)!=-1){
return false
}
periodPos=string.indexOf(".",atPos)
if (periodPos==-1){
return false
}
if (periodPos+3>string.length){
return false
}
return true;
}
function check_id_number(element) {
/// break apart into digits
idnumber=element;
var digits=new Array();
if (parseInt(idnumber)==0) {
return false;
} else if (idnumber.length<9) {
/// pad with zeros
if (idnumber.length<5) {
return false;
}
for (var i=0;i<(9-idnumber.length);i++) {
idnumber="0"+idnumber;
}
} else if (idnumber.length>9) {
return false;
}
for (i=0;i<9;i++) {
digits[i]=idnumber.substr(i,1);
}
/// array of intervaling 1's and 2's
var result_array=new Array(1,2,1,2,1,2,1,2,1);
/// multiplication of arrays
for (i=0;i<9;i++) {
result_array[i]*=parseInt(digits[i]);
}
/// make result array into single digits (addition of two digits)
for (i=0;i<9;i++) {
if (result_array[i].toString().length>1)
result_array[i]=(parseInt(result_array[i].toString().substr(0,1))+parseInt(result_array[i].toString().substr(1,1)));
}
/// add result array's values
var sum=0;
for (i=0;i<result_array.length;i++) {
sum+=parseInt(result_array[i]);
}
/// make modulus check
if ((sum%10)!=0) {
return false;
} else {
return true;
}
}
I need some help
one website have a Check.js script,to check password
Can i hack it?
function countchar(character,str) {
var count=0;
for (var i=0;i<str.length;i++) {
if (character==str.charAt(i))
{
count++;
}
}
return count;
}
function char_repetition(password) { /// returns the max number of repetitions -> not really, returns 2 if there's any repetition
///TODO : make the function truely count the repetitions
var max=0;
for (var i=0;i<password.length;i++) {
var current = countchar(password.charAt(i),password);
if (current>max)
{
max = current;
}
}
return max;
}
function keys_distance_check(password) {/// returns true if there are sequenced keys with distance of 1 - currently, no other distance exists. use of config variable requires that I add distances or create a path following technique
var password_keydistancematrix = create_keyboard_distance_matrix();
var max = 0;
//brokenpass = explode("\n",chunk_split (password, 1,"\n"));
for (var i=0;i<(password.length-1);i++) {
var distance = password_keydistancematrix[password.charCodeAt(i)][password.charCodeAt(i+1)]
distance = (!distance) ? password_keydistancematrix[password.charCodeAt(i+1)][password.charCodeAt(i)] : distance;
if ( distance > max ){
max = distance;
}
}
return max;
}
function countnumbers(password) {
var numbers = 0;
for (var i=0;i<password.length ;i++ )
{
if (!isNaN(password.charAt(i)))
{
numbers++;
}
}
return numbers;
}
function countletters(password) {
return password.length-countnumbers(password);
}
function check_password_userinfo(password,username,firstnam e,lastname) {/// needs yet to be built
if (password == username || password == firstname || password == lastname) {
return false;
}
return true;
}
function incrementing_chars(password) {
for (i=0;i<(password.length-1);i++) {
if (((password.charCodeAt(i)+1)==password.charCodeAt( i+1)) || ((password.charCodeAt(i)-1)==password.charCodeAt(i+1))) {
return true;
}
}
return false;
}
function create_keyboard_distance_matrix() {
var keyboardvalidchars = new Array();
var chrcount=0;
var str = "a";
for (i="a".charCodeAt(0);i<="z".charCodeAt(0);i++,chrcount++) {
keyboardvalidchars[chrcount]=i;
}
for (i="A".charCodeAt(0);i<="Z".charCodeAt(0);i++,chrcount++) {
keyboardvalidchars[chrcount]=i;
}
for (i="0".charCodeAt(0);i<="9".charCodeAt(0);i++,chrcount++) {
keyboardvalidchars[chrcount]=i;
}
/// hebrew alphabet needed
var password_keydistancematrix = new Array();
var validchars = keyboardvalidchars.length;
for (var i=0;i<validchars;i++) {
password_keydistancematrix[keyboardvalidchars[i]]=new Array();
for (var j=0;j<validchars;j++) {
password_keydistancematrix[keyboardvalidchars[i]][keyboardvalidchars[j]]=0;
}
}
//now for the dirty work
password_keydistancematrix['1'.charCodeAt(0)]['2'.charCodeAt(0)] = 1;
password_keydistancematrix['2'.charCodeAt(0)]['3'.charCodeAt(0)] = 1;
password_keydistancematrix['3'.charCodeAt(0)]['4'.charCodeAt(0)] = 1;
password_keydistancematrix['4'.charCodeAt(0)]['5'.charCodeAt(0)] = 1;
password_keydistancematrix['5'.charCodeAt(0)]['6'.charCodeAt(0)] = 1;
password_keydistancematrix['6'.charCodeAt(0)]['7'.charCodeAt(0)] = 1;
password_keydistancematrix['7'.charCodeAt(0)]['8'.charCodeAt(0)] = 1;
password_keydistancematrix['8'.charCodeAt(0)]['9'.charCodeAt(0)] = 1;
password_keydistancematrix['9'.charCodeAt(0)]['0'.charCodeAt(0)] = 1;
password_keydistancematrix['1'.charCodeAt(0)]['q'.charCodeAt(0)] = 1;
password_keydistancematrix['2'.charCodeAt(0)]['q'.charCodeAt(0)] = 1;
password_keydistancematrix['2'.charCodeAt(0)]['w'.charCodeAt(0)] = 1;
password_keydistancematrix['3'.charCodeAt(0)]['w'.charCodeAt(0)] = 1;
password_keydistancematrix['3'.charCodeAt(0)]['e'.charCodeAt(0)] = 1;
password_keydistancematrix['4'.charCodeAt(0)]['e'.charCodeAt(0)] = 1;
password_keydistancematrix['4'.charCodeAt(0)]['r'.charCodeAt(0)] = 1;
password_keydistancematrix['5'.charCodeAt(0)]['r'.charCodeAt(0)] = 1;
password_keydistancematrix['5'.charCodeAt(0)]['t'.charCodeAt(0)] = 1;
password_keydistancematrix['6'.charCodeAt(0)]['t'.charCodeAt(0)] = 1;
password_keydistancematrix['6'.charCodeAt(0)]['y'.charCodeAt(0)] = 1;
password_keydistancematrix['7'.charCodeAt(0)]['y'.charCodeAt(0)] = 1;
password_keydistancematrix['7'.charCodeAt(0)]['u'.charCodeAt(0)] = 1;
password_keydistancematrix['8'.charCodeAt(0)]['u'.charCodeAt(0)] = 1;
password_keydistancematrix['8'.charCodeAt(0)]['i'.charCodeAt(0)] = 1;
password_keydistancematrix['9'.charCodeAt(0)]['o'.charCodeAt(0)] = 1;
password_keydistancematrix['0'.charCodeAt(0)]['o'.charCodeAt(0)] = 1;
password_keydistancematrix['0'.charCodeAt(0)]['p'.charCodeAt(0)] = 1;
password_keydistancematrix['q'.charCodeAt(0)]['w'.charCodeAt(0)] = 1;
password_keydistancematrix['q'.charCodeAt(0)]['a'.charCodeAt(0)] = 1;
password_keydistancematrix['w'.charCodeAt(0)]['a'.charCodeAt(0)] = 1;
password_keydistancematrix['w'.charCodeAt(0)]['e'.charCodeAt(0)] = 1;
password_keydistancematrix['w'.charCodeAt(0)]['s'.charCodeAt(0)] = 1;
password_keydistancematrix['e'.charCodeAt(0)]['d'.charCodeAt(0)] = 1;
password_keydistancematrix['e'.charCodeAt(0)]['r'.charCodeAt(0)] = 1;
password_keydistancematrix['e'.charCodeAt(0)]['s'.charCodeAt(0)] = 1;
password_keydistancematrix['r'.charCodeAt(0)]['d'.charCodeAt(0)] = 1;
password_keydistancematrix['r'.charCodeAt(0)]['t'.charCodeAt(0)] = 1;
password_keydistancematrix['r'.charCodeAt(0)]['f'.charCodeAt(0)] = 1;
password_keydistancematrix['t'.charCodeAt(0)]['y'.charCodeAt(0)] = 1;
password_keydistancematrix['t'.charCodeAt(0)]['f'.charCodeAt(0)] = 1;
password_keydistancematrix['t'.charCodeAt(0)]['g'.charCodeAt(0)] = 1;
password_keydistancematrix['y'.charCodeAt(0)]['u'.charCodeAt(0)] = 1;
password_keydistancematrix['y'.charCodeAt(0)]['h'.charCodeAt(0)] = 1;
password_keydistancematrix['y'.charCodeAt(0)]['g'.charCodeAt(0)] = 1;
password_keydistancematrix['u'.charCodeAt(0)]['i'.charCodeAt(0)] = 1;
password_keydistancematrix['u'.charCodeAt(0)]['j'.charCodeAt(0)] = 1;
password_keydistancematrix['u'.charCodeAt(0)]['h'.charCodeAt(0)] = 1;
password_keydistancematrix['i'.charCodeAt(0)]['o'.charCodeAt(0)] = 1;
password_keydistancematrix['i'.charCodeAt(0)]['k'.charCodeAt(0)] = 1;
password_keydistancematrix['i'.charCodeAt(0)]['j'.charCodeAt(0)] = 1;
password_keydistancematrix['o'.charCodeAt(0)]['p'.charCodeAt(0)] = 1;
password_keydistancematrix['o'.charCodeAt(0)]['l'.charCodeAt(0)] = 1;
password_keydistancematrix['o'.charCodeAt(0)]['k'.charCodeAt(0)] = 1;
password_keydistancematrix['p'.charCodeAt(0)]['l'.charCodeAt(0)] = 1;
password_keydistancematrix['a'.charCodeAt(0)]['s'.charCodeAt(0)] = 1;
password_keydistancematrix['a'.charCodeAt(0)]['z'.charCodeAt(0)] = 1;
password_keydistancematrix['s'.charCodeAt(0)]['d'.charCodeAt(0)] = 1;
password_keydistancematrix['s'.charCodeAt(0)]['x'.charCodeAt(0)] = 1;
password_keydistancematrix['s'.charCodeAt(0)]['z'.charCodeAt(0)] = 1;
password_keydistancematrix['d'.charCodeAt(0)]['f'.charCodeAt(0)] = 1;
password_keydistancematrix['d'.charCodeAt(0)]['c'.charCodeAt(0)] = 1;
password_keydistancematrix['d'.charCodeAt(0)]['x'.charCodeAt(0)] = 1;
password_keydistancematrix['f'.charCodeAt(0)]['g'.charCodeAt(0)] = 1;
password_keydistancematrix['f'.charCodeAt(0)]['v'.charCodeAt(0)] = 1;
password_keydistancematrix['f'.charCodeAt(0)]['c'.charCodeAt(0)] = 1;
password_keydistancematrix['g'.charCodeAt(0)]['h'.charCodeAt(0)] = 1;
password_keydistancematrix['g'.charCodeAt(0)]['b'.charCodeAt(0)] = 1;
password_keydistancematrix['g'.charCodeAt(0)]['v'.charCodeAt(0)] = 1;
password_keydistancematrix['h'.charCodeAt(0)]['j'.charCodeAt(0)] = 1;
password_keydistancematrix['h'.charCodeAt(0)]['n'.charCodeAt(0)] = 1;
password_keydistancematrix['h'.charCodeAt(0)]['b'.charCodeAt(0)] = 1;
password_keydistancematrix['j'.charCodeAt(0)]['k'.charCodeAt(0)] = 1;
password_keydistancematrix['j'.charCodeAt(0)]['m'.charCodeAt(0)] = 1;
password_keydistancematrix['j'.charCodeAt(0)]['n'.charCodeAt(0)] = 1;
password_keydistancematrix['k'.charCodeAt(0)]['l'.charCodeAt(0)] = 1;
password_keydistancematrix['k'.charCodeAt(0)]['m'.charCodeAt(0)] = 1;
password_keydistancematrix['z'.charCodeAt(0)]['x'.charCodeAt(0)] = 1;
password_keydistancematrix['x'.charCodeAt(0)]['c'.charCodeAt(0)] = 1;
password_keydistancematrix['c'.charCodeAt(0)]['v'.charCodeAt(0)] = 1;
password_keydistancematrix['v'.charCodeAt(0)]['b'.charCodeAt(0)] = 1;
password_keydistancematrix['b'.charCodeAt(0)]['n'.charCodeAt(0)] = 1;
password_keydistancematrix['n'.charCodeAt(0)]['m'.charCodeAt(0)] = 1;
for (var i=0;i<validchars;i++) { /// capitals
if (keyboardvalidchars[i]>="a".charCodeAt(0) && keyboardvalidchars[i]<="z".charCodeAt(0)) {
for (var j=0;j<validchars;j++) {
if ((password_keydistancematrix[keyboardvalidchars[i]][keyboardvalidchars[j]]>0) && ((keyboardvalidchars[j]>="a".charCodeAt(0)) && (keyboardvalidchars[j]<="z".charCodeAt(0)))) {
var keyi = keyboardvalidchars[i].toString().toUpperCase().charCodeAt(0);
var keyj = keyboardvalidchars[j].toString().toUpperCase().charCodeAt(0);
password_keydistancematrix[keyi][keyj] = 1;
}
}
}
}
return password_keydistancematrix;
}
invalidChars=" /:,;\"'?<>#%&"
englishChars="qwertyuiopasdfghjklzxcvbnm QWERTYUIOPASDFGHJKLZXCVBNM1234567890.,@-)(*";
numChars="1234567890";
function check_invalid_chars(string){
for (i=0; i<invalidChars.length;i++){
badChar=invalidChars.charAt(i)
if(string.indexOf(badChar,0)>-1){
return false;
}
}
return true;
}
function check_english_chars(string){//englishChars
for (i=0; i<string.length;i++){
Char=string.charAt(i)
if(englishChars.indexOf(Char,0)==-1){
return false;
}
}
return true;
}
function check_numeric_chars(string){
for (i=0; i<string.length;i++){
Char=string.charAt(i)
if(numChars.indexOf(Char,0)==-1){
return false;
}
}
return true;
}
function check_value_length(string,minimum,maximum){
if(string.length<minimum || string.length>maximum){
return false
}
return true;
}
function check_correct_email(string){
atPos=string.indexOf("@",1)
if (atPos==-1){
return false
}
if (string.indexOf("@",atPos+1)!=-1){
return false
}
periodPos=string.indexOf(".",atPos)
if (periodPos==-1){
return false
}
if (periodPos+3>string.length){
return false
}
return true;
}
function check_id_number(element) {
/// break apart into digits
idnumber=element;
var digits=new Array();
if (parseInt(idnumber)==0) {
return false;
} else if (idnumber.length<9) {
/// pad with zeros
if (idnumber.length<5) {
return false;
}
for (var i=0;i<(9-idnumber.length);i++) {
idnumber="0"+idnumber;
}
} else if (idnumber.length>9) {
return false;
}
for (i=0;i<9;i++) {
digits[i]=idnumber.substr(i,1);
}
/// array of intervaling 1's and 2's
var result_array=new Array(1,2,1,2,1,2,1,2,1);
/// multiplication of arrays
for (i=0;i<9;i++) {
result_array[i]*=parseInt(digits[i]);
}
/// make result array into single digits (addition of two digits)
for (i=0;i<9;i++) {
if (result_array[i].toString().length>1)
result_array[i]=(parseInt(result_array[i].toString().substr(0,1))+parseInt(result_array[i].toString().substr(1,1)));
}
/// add result array's values
var sum=0;
for (i=0;i<result_array.length;i++) {
sum+=parseInt(result_array[i]);
}
/// make modulus check
if ((sum%10)!=0) {
return false;
} else {
return true;
}
}