Corresponde a un cifrado por sustitucion, si se ordenan en el alfabeto las letras desde el 0 al 25( de la "a" a la "z") se tiene que el nuevo caracter corresponderá al que esté ubicado 33 espacios mas a la derecha, de este modo:
- Crear varible var_action y pedir al usuario que señale si quiere cifrar o decifrar
herramienta prompt()
- Si selecciona cifrado llamar a funcion cipher()
- Si selecciona descrifado llamar a funcion descipher()
- Si ingresa un dato distinto a los disponibles enviar un mensaje de alerta
- Crear una funcion que tenga como parametro de entrada un argumento, este será la frase que queremos cifrar
- Crear una variable que almacene por medio de un array los caracteres que componen el string de entrada
Herramienta= split
-
Crear un array que nos permita ir almacenando datos
-
Crear una variable que nos guarde las nuevas letras que contendran el cifrado
Una vez creadas las variables se hacen los ciclos repetivos o condicionales segun corresponda
-
Verificar si los datos ingresados son validos, si son del tipo numero o si el largo de la cadena de entrada es 0 manda un mensaje de error.
Herramientas = typeof y length
si no, ejecuta las siguientes lineas
- pushiamos al array creado los valores ASCII de cada letra
*Herramienta = charCodeAt()
- Aplicamos la formula y guardamos el dato en una variable
fórmula de cifrado **(Num. ASCII - 65 + 33 )% 26 + 65 **
- Al dato obtenido en 7, le buscamos su numero en ASCII
*Herramienta = String.fromCharCode()
- Concatenamos a la variable creada al principio la letra que encontramos en 8.
- Una vez terminada la iteracion mostramos por medio de un alert el mensaje cifrado
Para crear la funcion descifrado se sigue el mismo procedimiento, la diferencia es que la formula a aplicar sera distinta, en el decifrado tenemos que avanzar posiciones hacia atras, de este modo se deduce que la funcion que determina la nueva posicion sera
fórmula decifrado **(Num. ASCII - 65 - 7 + 52 )% 26 + 65 **