En criptografía,
el cifrado César, también conocido como cifrado por desplazamiento, código de
César o desplazamiento de César, es una de las técnicas de cifrado más simples
y más usadas. Es un tipo de cifrado por sustitución en el que una letra en el
texto original es reemplazada por otra letra que se encuentra un número fijo de
posiciones más adelante en el alfabeto. Por ejemplo, con un desplazamiento de
3, la A sería sustituida por la D (situada 3 lugares a la derecha de la A ), la
B sería reemplazada por la E, etc. Este método debe su nombre a Julio César,
que lo usaba para comunicarse con sus generales.
El cifrado César muchas
veces puede formar parte de sistemas más complejos de codificación, como el
cifrado Vigenère, e incluso tiene aplicación en el sistema ROT13. Como todos
los cifrados de sustitución alfabética simple, el cifrado César se descifra con
facilidad y en la práctica no ofrece mucha seguridad en la comunicación.
EXPLICACIÓN DEL ALGORITMO:
El proceso empieza transformando las letras del alfabeto en números, por ello considerando a P como el equivalente numérico de una letra en el texto plano, y C como el equivalente de la correspondiente letra en el texto cifrado, tenemos la siguiente expresión denominada transformación del César:
IMPLEMENTACIÓN:
Nota el presente algoritmo recibe como parámetro el numero de desplazamientos a realizar, el algoritmo por defecto realiza 3.
public class Cesar{ public String cifrado(String frase, int n){ int i,j; char fraseCifrada[] = new char[frase.length()]; fraseCifrada = frase.toCharArray(); for(i=0;i< frase.length();i++){ for(j=0;j< n;j++){ if((fraseCifrada[i] > =65 && fraseCifrada[i] < 90) || (fraseCifrada[i] > =97 && fraseCifrada[i] < 122)){ fraseCifrada[i]++; } else if(fraseCifrada[i]==90) fraseCifrada[i]='A'; else if(fraseCifrada[i]==122) fraseCifrada[i]='a'; } } frase = String.valueOf(fraseCifrada); return frase; } public String descifrado(String frase, int n){ int i,j; char fraseDescifrada[] = new char[frase.length()]; fraseDescifrada = frase.toCharArray(); for(i=0;i< frase.length();i++){ for(j=0;j< n;j++){ if((fraseDescifrada[i] > 65 && fraseDescifrada[i] < = 90) || (fraseDescifrada[i] > 97 && fraseDescifrada[i] < =122)){ fraseDescifrada[i]--; } else if(fraseDescifrada[i]==65) fraseDescifrada[i]='Z'; else if(fraseDescifrada[i]==97) fraseDescifrada[i]='z'; } } frase = String.valueOf(fraseDescifrada); return frase; } }
La concha de tu madre, tu codigo tiene errores puto. no me sirve x q no usas arduino lpmqlrmp. kys
ResponderEliminarThree-reel slots come with multiple of} paylines ranging between one and nine. However, they allow a most bet of three coins on machines on every line. However, a machine with multiple of} paylines comes with a most bet that is the same as} the number of lines. One factor about|wonderful factor about|beauty of} five-reel slots is that they have more paylines, rising your odds of winning than with the three-reel slots. The machines would have a lever that gamers needed to drag to make a spin. Classic slots perfect for|are excellent for} new gamers attempting their luck in the 우리카지노 online betting industry.
ResponderEliminar