[Perl] Ejemplo de Cifrado Murcielago

  • 8 Respuestas
  • 7437 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado BigBear

  • *
  • Underc0der
  • Mensajes: 543
  • Actividad:
    0%
  • Reputación 3
    • Ver Perfil

[Perl] Ejemplo de Cifrado Murcielago

  • en: Noviembre 21, 2014, 10:11:36 am
Un simple ejemplo en Perl sobre como realizar el cifrado Murcielago.

Código: (perl) You are not allowed to view links. Register or Login
# !usr/bin/perl
# Cifrado Murcielago
# Coded By Doddy Hackman in the year 2014

head();
menu();
copyright();

# Functions

sub head {
    print "\n-- == Cifrado Murcielago == --\n";
}

sub copyright {
    print "\n\n-- == (C) Doddy Hackman 2014 == --\n";
}

sub menu {
    print qq(
===============
= Menu        =
===============
1 - Cifrar    =
2 - Descifrar =
3 - Exit      =
===============
);

    print "\n[+] Option : ";
    chomp( my $op = <stdin> );

    if ( $op eq "3" ) {
        copyright();
        <stdin>;
        exit(1);
    }

    print "\n[+] Enter text : ";
    chomp( my $text = <stdin> );

    print "\n[+] Result ...\n\n";

    if ( $op eq "1" ) {
        print cifrado_murcielago($text);
        <stdin>;
        menu();
    }
    elsif ( $op eq "2" ) {
        print descifrado_murcielago($text);
        <stdin>;
        menu();
    }
    else {
        menu();
    }

}

sub cifrado_murcielago {
    my $texto = shift;
    $texto =~ tr/murcielagoMURCIELAGO/01234567890123456789/;
    return $texto;
}

sub descifrado_murcielago {
    my $texto = shift;
    $texto =~ tr/01234567890123456789/murcielagoMURCIELAGO/;
    return $texto;
}

# The End ?

Desconectado Juan

  • *
  • Underc0der
  • Mensajes: 158
  • Actividad:
    0%
  • Reputación 0
  • Ex-Drinky
    • Ver Perfil

Re:[Perl] Ejemplo de Cifrado Murcielago

  • en: Noviembre 24, 2014, 02:51:54 pm
De 70 líneas a 22 y hace exactamente lo mismo.

Código: (perl) You are not allowed to view links. Register or Login
#!/usr/bin/perl

print "\n-- == Cifrado Murcielago == --\n";
 
menu:

print qq(===============\n= Menu        =\n===============\n1 - Cifrar    =\n2 - Descifrar =\n3 - Exit      =\n===============\n);

print "\n[+] Option : ";
chomp( my $op = <stdin> );

exit if ( $op eq "3");

print "\n[+] Enter text : ";
chomp($_ = <stdin>);

$_ =~ tr/murcielagoMURCIELAGO/01234567890123456789/ and print if ($op eq "1");
$_ =~ tr/01234567890123456789/murcielagoMURCIELAGO/ and print if ($op eq "2");
     
print "\n\n-- == (C) Doddy Hackman 2014 == --\n";
       
goto menu;
 

Desconectado BigBear

  • *
  • Underc0der
  • Mensajes: 543
  • Actividad:
    0%
  • Reputación 3
    • Ver Perfil

Re:[Perl] Ejemplo de Cifrado Murcielago

  • en: Noviembre 24, 2014, 04:08:47 pm
en ningun momento busque la reduccion de codigo en el script , igual gracias por comentar.

Desconectado Juan

  • *
  • Underc0der
  • Mensajes: 158
  • Actividad:
    0%
  • Reputación 0
  • Ex-Drinky
    • Ver Perfil

Re:[Perl] Ejemplo de Cifrado Murcielago

  • en: Noviembre 24, 2014, 04:18:06 pm
Pero... hacer hacer algo tan simple es un poco absurdo que lo hagas con funciones :-\

Desconectado BigBear

  • *
  • Underc0der
  • Mensajes: 543
  • Actividad:
    0%
  • Reputación 3
    • Ver Perfil

Re:[Perl] Ejemplo de Cifrado Murcielago

  • en: Noviembre 24, 2014, 04:23:37 pm
no le veo absurdo solo le agregue funciones de mas al script porque quize , es un simple ejemplo no estamos en una competencia de codigos xD.

Desconectado kid_goth

  • *
  • Underc0der
  • Mensajes: 204
  • Actividad:
    3.33%
  • Reputación 3
  • Tu conocimiento se limita cuando dices NO PUEDO...
    • Ver Perfil
    • DC Projects
    • Email

Re:[Perl] Ejemplo de Cifrado Murcielago

  • en: Noviembre 24, 2014, 04:24:40 pm
A mi parecer mejor programar bien que por programar... el codigo de Doddy es obviamente mas organizado y legible para quienes inician en la prog, ademas el uso de goto? naaaaa. Juan a veces no es tanto lo simple que sea, sino lo que pueda aportar para otras cosas, y aunque el código en si, hasta en 1 sola linea en bash lo haces si lo necesitaras. Lo que importa es que quien lo tome (me imagino mas por practica o por ejemplo) al menos vaya aprendiendo de funciones y esas cosas....

Saludos
You are not allowed to view links. Register or Login

Acepta con humildad y aprecio que en la vida la muerte es inevitable y amarás ésta, adorando la muerte

Desconectado LKI

  • *
  • Underc0der
  • Mensajes: 78
  • Actividad:
    0%
  • Reputación 0
  • |Un día sin aprender nada, es un día perdido..|
    • Ver Perfil
    • Email

Re:[Perl] Ejemplo de Cifrado Murcielago

  • en: Noviembre 24, 2014, 05:04:27 pm
Citar
"Cualquier tonto puede escribir código que un ordenador entiende. Los buenos programadores escriben código que los humanos pueden entender."  Martin Fowler 


Citar
"Los programas deben ser escritos para que la gente los lea y sólo incidentalmente, para que las máquinas los ejecuten."                        Abelson / Sussman

Citar
"Medir el progreso de la programación por líneas de código es como medir el progreso en la construcción de aviones por el peso."                  Bill Gates
Ser mejor cada día es mi meta

 =LKI=

Desconectado Juan

  • *
  • Underc0der
  • Mensajes: 158
  • Actividad:
    0%
  • Reputación 0
  • Ex-Drinky
    • Ver Perfil

Re:[Perl] Ejemplo de Cifrado Murcielago

  • en: Noviembre 24, 2014, 05:12:25 pm
No creo que mi código sea ilegible, de hecho lo veo mas leigle que el otro, ya que lo puedes leer y entender sin dar vueltas por el código.

Desconectado BigBear

  • *
  • Underc0der
  • Mensajes: 543
  • Actividad:
    0%
  • Reputación 3
    • Ver Perfil

Re:[Perl] Ejemplo de Cifrado Murcielago

  • en: Noviembre 25, 2014, 11:05:42 am
pensa lo que quieras Juan nadie se opone xD , igual si tan legible es tu codigo la proxima vez identalo y evita estos chorizos largos :

Código: (perl) You are not allowed to view links. Register or Login
print qq(===============\n= Menu        =\n===============\n1 - Cifrar    =\n2 - Descifrar =\n3 - Exit      =\n===============\n);
$_ =~ tr/murcielagoMURCIELAGO/01234567890123456789/ and print if ($op eq "1");

Espero que sea el fin de esta discusion sin sentido xD.

Saludos.