Update keyFinder.js

some changes is made to optimize the function
This commit is contained in:
Wan Cheuk Lun
2018-10-27 12:29:36 +08:00
committed by GitHub
parent e0fa99b2fd
commit e41ad76298

View File

@ -2,16 +2,14 @@
Find and retrieve the encryption key automatically
Note: This is a draft version, please help to modify, Thanks!
******************************************************/
function keyFinder(){
var result = "";
var key = 0;
function keyFinder(str){ // str is used to get the input of encrypted string
var key = 0; // return zero means the key can not be found
var wordbank =["is","Is","am","Am","are","Are","have","Have","has","Has","may","May","be","Be"];
var shiftNum = 0; //count the number of key shifted
var str = document.getElementById("encryptedID").value; //get the input string
//var shiftNum = 0; //count the number of key shifted
var inStr = str.toString(); //convert the input to String
var outStr = ""; // store the output value
document.getElementById("debug").innerHTML = shiftNum; // debug: display the shifted number(s)
for (var i=0; i<26; i++){
//document.getElementById("debug").innerHTML = shiftNum; // debug: display the shifted number(s)
for (var i=0; i<(52); i++){ //try the number of key shifted, the sum of character from a-z and A-Z is 26*2=52
outStr = caesarCipherEncodeAndDecodeEngine(inStr,i); // use the encrytpion engine to decrypt the input string, shiftNum=i
for ( var i=0; i<wordbank.length; i++){
if (wordbank[i] == outStr[i]+outStr[i+1]{