Skip to content

Instantly share code, notes, and snippets.

@chris-ramon
Created June 8, 2012 02:59
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save chris-ramon/2893277 to your computer and use it in GitHub Desktop.
Save chris-ramon/2893277 to your computer and use it in GitHub Desktop.
// cesar encrypt
var msg = "quisieraquelaclaseseatemprano";
var letters = ["a","b","c","d","e","f","g","h","i","j","k","l","m","n","ñ","o","p","q","r","s","t","u","v","w","x","y","z" ];
var a = 3;
var b = 5;
var result = []
for (var i = 0; i < msg.length ; i ++){
for(var j = 0; j < letters.length ; j ++) {
if(msg[i] == letters[j]) { var p=((j*a+b) % 27 ); result.push(letters[p]); }
}
}
// cesar cryptanalysis
//var msg = "chvwhhvxpexhphmhuflflrsdudgvfliudd"
var msg = "qgkzñigkyvxñruxjñgqvgxgykxashaksvulkyñusgq"
var letters=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","ñ","o","p","q","r","s","t","u","v","w","x","y","z" ];
var count = {}
for (var i = 0; i < msg.length ; i++ ){
if ( msg[i] in count ) { count[msg[i]] = count[msg[i]] +1 } else { count[msg[i]] = 1 }
}
var sortable = [];
for (var vehicle in count)
sortable.push([vehicle, count [vehicle]])
var ordered = sortable.sort(function(a, b) {return a[1] - b[1]})
var len = ordered.length
var last = ordered[len-1]
var unlast = ordered[len-2]
var a = 0
var e = 4
var b1 = 0
var b2 = 0
for (var j=0; j<letters.length;j++ ){
if(letters[j]==last[0]) { b1 = j - e};
}
for (var j=0; j<letters.length;j++ ){
if(letters[j]==unlast[0]) { b2 = j - a};
}
if ( b1 != b2 ) {
for (var j=0; j<letters.length;j++ ){
if(letters[j]==last[0]) { b1 = j - a};
}
for (var j=0; j<letters.length;j++ ){
if(letters[j]==unlast[0]) { b2 = j - e};
}
}
var result = []
for (var i = 0; i < msg.length ; i ++){
for(var j = 0; j < letters.length ; j ++) {
if(msg[i] == letters[j]) { var p=((j-b1+27) % 27 ); result.push(letters[p]);}
}
}
alert(result)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment