Codigo Caesar de Python a Javascript [Criptografia]

By @sethroot8/14/2018spanish

Hola amigos hoy les traigo un codigo que pase de Python a Javascript.

Fuente de la imagen Principal

Se trata del Código Caesar, basta con copiar el código en un archivo con terminación ".html" por ejemplo codigo_caesar.html  y ejecutarlo con el navegador verán algo como esto:

Fuente Captura de pantalla....

Un ejemplo codificando:

Ahora vamos a decodificar eso mismo:

El código que he pasado de python a Javascript es este:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
abc = 'abcdefghijklmnopqrstuvwxyz_'
def cifrar(cadena, clave):
text_cifrado = ''
for letra in cadena:
suma = abc.find(letra) + clave
modulo = int(suma) % len(abc)
text_cifrado = text_cifrado + str(abc[modulo])
return text_cifrado
def decifrar(cadena, clave):
text_cifrado = ''
for letra in cadena:
suma = abc.find(letra) - clave
modulo = int(suma) % len(abc)
text_cifrado = text_cifrado + str(abc[modulo])
return text_cifrado
def main():
c = str(raw_input('cadena a cifrar: ')).lower()
n = int(raw_input('clave numerica: '))
print cifrar(c,n)
cc = str(raw_input('cadena a decifrar: ')).lower()
cn = int(raw_input('clave numerica: '))
print decifrar(cc,cn)
if __name__ == '__main__':
main()

El cual pueden encontrar en este mismo Blog y aquí en mi antiguo blog:

https://stickybitshell.wordpress.com/2015/03/14/mejorando-un-poco-el-codigo-caesar-con-python/

Y bueno este es el código en Javascript:

<html>
<body>
<H1> Criptografia en Javascript </H1> 
<H2> Codigo Caesar </H2> 
<textarea id="cadena"></textarea>
<div>
Valor númerico<input type="number" id="clave">
</div>
<div class="control-row">
            Que Hacer?:
            <select id="TipeCode">
                <option value="5"></option>
                <option value="0">codificar</option>
                <option value="1">DECODIFICAR</option>
            </select>
</div>
<button type="button" onclick="myFunction()">Ejecutar</button>
<div id="resultado"></div>
</body>
<head>
	<meta charset="utf-8">
	<script>
        function myFunction() {
            var TipeCode = document.getElementById("TipeCode").value;
            var cadena = document.getElementById("cadena").value;
            var clave = document.getElementById("clave").value;
            var doStaff = function (cadena, clave, TipeCode) {
                                cadena = cadena.toLowerCase()
                                var resultado = ""
                                var abc = 'abcdefghijklmnopqrstuvwxyz '
                                var longitud = abc.length;
                                for (var i = 0; i < cadena.length;  i++) {
                                    if (TipeCode == 0) {
                                    var indice = abc.indexOf(cadena[i]) ;
                                    var indice_char = parseInt(indice)  + parseInt(clave) ;
                                    var resto  = indice_char % longitud
                                    var nueva_letra = abc[resto]
                                    resultado += nueva_letra
                                    } else if (TipeCode == 1) {
                                    var indice = abc.indexOf(cadena[i]) ;
                                    var indice_char = parseInt(indice)  - parseInt(clave) ;
                                    var resto  = (indice_char % longitud )
                                    if (resto == 0) {
                                        resto  = 0
                                    }else if (resto <= 0) {
                                        resto  = (indice_char % longitud ) + longitud
                                    } else if ( resto >= 27 ){
                                        resto  = (indice_char % longitud ) - longitud
                                    }
                                    console.log("DATOS BRUTOS : ", resto, indice_char, indice )
                                    var nueva_letra = abc[resto]
                                    resultado += nueva_letra
                                }
                                } 
                                console.log(resultado)
                                return resultado
                                };
                var resultado = doStaff(cadena, clave, TipeCode)
                document.getElementById("resultado").innerHTML=doStaff(cadena, clave, TipeCode);
        }
	</script>
	<style>
		textarea {width:400px;}
	</style>
</head>
</html>

 Este código lo iré explicando en la próxima entrada, Feliz Noche :D

Dios bendiga a Venezuela


Estoy pasando mucho de mi código de Python a Javascript por que se hace mas fácil el testeo por ustedes, ya que mi principal interés es serles útil, saludos :D


173

comments