Nuevas NORMAS para el foro
Bienvenido(a),
Visitante
. Favor de
ingresar
o
registrarse
.
¿Perdiste tu
email de activación?
- Julio 27, 2008, 04:32:47
Boton Buscar
Visita:
Articulos
-
Juegos Gratis
-
Da Foros
Comunidad Underground Hispana
|
Programacion
|
Programación
|
ASM
(Moderador:
The Shadow
) | Tema:
[W] Encriptar cadena
0 Usuarios y 1 Visitante están viendo este tema.
« anterior
próximo »
Páginas:
[
1
]
Autor
Tema: [W] Encriptar cadena (Leído 99 veces)
The Shadow
Moderadores
Colaborador
Desconectado
Mensajes: 754
Fucking mnemonic c0d1n6!
[W] Encriptar cadena
«
en:
Marzo 22, 2008, 01:46:19 »
Código:
;====================================================================
;A128 Versi¢n 1.00
;Este programa encripta una cadena de caracteres hasta 20 Bytes.
;El programa se puede optimizar mucho m s, la idea es hacer un
;programa que encripte todo un documento con este mismo algoritmo
;el documento debe crearse en codigo ASCII para que pueda ser
;encriptado, y posteriormente enviarse por e-mail.
;Herramienta £til cundo uno desea que sus mensajes no sean
;le¡dos por usuarios comunes.
;Ver el archivo de notas (A128.TXT)
;Agradezco a los autores de los siguientes libros de los
;cuales me documnt‚ bastante para hacer este programa:
;- ROJAS PONCE, Alberto. Ensamblador B sico. Computec
;- LILEN, H. Ensamblador de 80286 IBM AT y Compatibles. Paraninfo
;- ABEL, Peter. Lenguaje Ensamblador y Programaci¢n para
; PC IBM y Compatibles. Pearson Educaci¢n
;
;Si usted modifica el c¢digo o logra el acometido de esta primera versi¢n
;por favor env¡e documentaci¢n a juanflp @yahoo.com
;El programa solo tiene fines educativos por eso se anexa el codigo.
; Juan Felipe Mu¤oz Fern ndez.
;====================================================================
.MODEL SMALL
.STACK
.DATA
Cadena DB 20,0,20 DUP ('$') ; Bufer que almacena la cadena original.
MenWel DB 0AH,0DH,'A128.Este programa encripta una cadena de caracteres'
DB 0DH,0AH,'$'
MenWel2 DB 0AH,0DH,'Programado por: Juan Felipe Mu¤oz',0DH,0AH,'$'
MenWel3 DB 0AH,0DH,'Fecha: 15 de Abril de 2002',0AH,0DH,'$'
MenWel4 DB 0AH,0DH,'Revise las notas adjuntas (A128.TXT) para explicar el proceso','$'
MenWel5 DB 0AH,0DH,'Comentarios a: juanflp @yahoo.com','$'
MenWel6 DB 0AH,0DH,'Para salir digite EXIT en may£sculas','$'
Error DB 7H,7H,7H,0DH,0AH,'Error 1: La Cadena no pude ser NULA'
DB 0DH,0AH,0DH,0AH,'$'
Salir DB 'EXIT'
MenCap DB 0AH,0DH,0AH,0DH,'Cadena a encriptar. M ximo 20 Bytes : ','$'
MenCryp DB 0AH,0DH,0AH,0DH,'Cadena encriptada: ','$'
MenDCr DB 0AH,0DH,0AH,0DH,'Cadena desencriptada: ','$'
MenPr DB 0AH,0DH,'Presione cualquier tecla para continuar',0DH,0AH,'$'
.CODE
Comienzo:
MOV AH,0FH ;Obtiene la modalidad de video actual.
INT 10H
MOV AH,0 ;Cambia a la modalidad de video obtenida.
INT 10H ;Cambi la!
MOV AX, @DATA ;Inicializaci¢n del segmento de datos, por regla
;un segmento de datos debe ser inicializado por
;un movimiento a trav‚s de un registro de prop¢sito
;general o atrav‚s de la PILA.
MOV DS,AX ;Es ac donde se incializa.
PUSH DS ;Guardo DS.
POP ES ;DS=ES, ES se necesita por la naturaleza de las
;Operaciones que van a ser utilizadas.
MOV DX, OFFSET MenWel ;Preparaci¢n para mostrar el MenWel
;en pantalla
MOV AH,9H ;Funci¢n de la Int 21 para mostrar
;mensajes en pantalla.
INT 21H ;Mu‚stralo!
LEA DX,MenWel2
MOV AH,9H
INT 21H
LEA DX,MenWel3
MOV AH,9H
INT 21H
LEA DX,MenWel4
MOV AH,9H
INT 21H
LEA DX,MenWel5
MOV AH,9H
INT 21H
LEA DX,MenWel6
MOV AH,9H
INT 21H
Captura:
LEA DX,MenCap ;Preparaci¢n para mostrar MenCap en
;pantalla.
MOV AH,9H ;El mismo proceso anterior con la
;funcion 9H de la Int 21H
INT 21H ;Mu‚stralo!.
MOV AH,0AH ;Funcion de la Int 21 para capturar
;una cadena.
MOV DX, OFFSET Cadena ;DX debe poseer la direcci¢n del bufer.
PUSH DX ;Por seguridad.
INT 21H ;Se captura.
POP DX ;Recupero.
INC DX ;Obtiene los bytes realmente
;le¡dos en el bufer.
MOV SI,DX ;SI con Cadena+1.
CMP BYTE PTR [SI],0 ;Es 0 (nula)?
JNZ Capt02 ;No, entonces salta a Capt02.
LEA DX, Error ;Si?, se prepara para mostrar error.
MOV AH,9H
INT 21H
MOV AH,0H
INT 16H
JMP Comienzo ;Vuelve y se captura la cadena.
Capt02:
INC DX ;Obtengo el primer byte para ver si no
;se digit¢ EXIT.
MOV CX,4 ;Voy a revisar 4 Bytes (EXIT).
MOV SI,DX ;Tengo la cadena
MOV DI, OFFSET Salir ;Voy a comparar.
REPE CMPSB ;Se digit¢ EXIT?.
JCXZ Fuera ;Si es cierto sale del programa.
MOV SI, OFFSET Cadena+1;Obtengo la cantidad de Bytes realmente le¡dos
LEA BX, Cadena+1 ;Cargo BX igual que con la anterior
;instrucci¢n.
MOV CL, BYTE PTR [SI] ;CX con la cantidad de caracteres.
Crypt:
INC BX ;Primer caracter de la cadena
MOV AH,[BX] ;Lo llevo a AH para su encriptaci¢n
ADD AH,128D ;Lo encripto.
MOV [BX],AH ;Lo restauro en el bufer.
LOOP Crypt ;Itero hasta CX=0
LEA DX,MenCryp
MOV AH,9H
INT 21H
MOV DX, OFFSET Cadena+2;Me preparo para mostrar la cadena encriptada
;me posiciono en el primer caracter de la
;cadena
MOV AH,9H
INT 21H ;Muestro la cadena encriptada
MOV SI, OFFSET Cadena+1;Me preparo para desencriptarla
LEA BX, Cadena+1 ;Lo mismo anterior
MOV CL, BYTE PTR [SI] ;CX con el numero de caracteres
DeCrypt:
INC BX ;Obtengo primer caracter
MOV AH,[BX]
SUB AH,128D ;Lo desencripto
MOV [BX],AH ;Se restaura el original en el bufer
LOOP DeCrypt ;Repito hasta que CX=0
MOV DX, OFFSET MenDCr
MOV AH,9H
INT 21H
MOV DX, OFFSET Cadena+2;Primer caracter de la cadena
;desencriptada.
MOV AH,9H
INT 21H ;Muestro la cadena desencriptada
MOV DX, OFFSET MenPr
MOV AH,9H
INT 21H
MOV AH,0H ;Espero que el usuario pulse
INT 16H ;cualquier tecla para continuar
JMP Captura ;Vuelve y juega.
Fuera:
MOV AX,4C00H ;Funci¢n para retornar al DOS
INT 21H ;Retorno!.
END Comienzo ;y se acab¢.
Fuente: LWP
Autor: Muñoz F.
«
Última modificación: Marzo 28, 2008, 05:10:46 por The Shadow
»
En línea
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
Reglamento del Foro
Linux Registered User #473016
Aleks
Moderación
Gran Colaborador
Desconectado
Mensajes: 2627
Mehr licht
Re: Encriptar cadena
«
Respuesta #1 en:
Marzo 23, 2008, 09:18:38 »
Muy buenos tus aportes The Shadow, gracias men!
En línea
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
I´ll see you in the other side, I know it!
Páginas:
[
1
]
Comunidad Underground Hispana
|
Programacion
|
Programación
|
ASM
(Moderador:
The Shadow
) | Tema:
[W] Encriptar cadena
« anterior
próximo »
Ir a:
Por favor selecciona un destino:
-----------------------------
Foros De Consulta General
-----------------------------
=> Novedades
=> Dudas, Comentarios Y Sugerencias
=> Top 100
=> Off-Topic
=> Revista E-Zine
===> Noticias
-----------------------------
Phreaking, Hacking y Seguridad
-----------------------------
=> HacK GeneraL
===> Ingenieria Inversa
===> Encriptacion, Cryptografia
===> TV HACK
===> Seguridad
===> Cursos y Ezines
=====> Trucos Internet
=====> Textos Hacking
===> Defacing
=> Phreaking
===> Moviles
=> Bug y Exploits
-----------------------------
Hack Novato
-----------------------------
=> Hack para newbies
=> Todo Messenger
=> Troyanos y virus
-----------------------------
Sistemas Operativos
-----------------------------
=> Windows y otros sistemas operativos no libres
===> Problemas Tecnicos Windows
=> Sistemas operativos libres.
===> GNU/Linux
===> Manuales y Tutoriales
===> Descargas
-----------------------------
Programacion
-----------------------------
=> Programación
===> Programación Basica
===> Otros Lenguajes
===> Visual Basic y Net
===> ASM
===> Programacion Shell
===> Perl
===> Carbide C/C#/C++
===> Batch
===> SQL
=> Programacion para webmasters
===> Consultas
===> Php
===> Html
===> Java - Java Script
===> Php Nuke
===> Scripts Pre-Fabricados
===> Mysql
===> CSS y Diseño Web
-----------------------------
Artes Graficas
-----------------------------
=> Diseño Grafico
===> Battle Arts
===> Flash
===> Tutoriales
===> Galerías
===> Software
-----------------------------
Area Tecnica
-----------------------------
=> Networking & Wireless
=> Overclocking, Refrigeracion y demas
=> Hardware
===> Cursos Y manuales
=> Electronica Y Robotica
-----------------------------
Programas
-----------------------------
=> Software
===> Configuraciones de software
===> Pedidos de software
=> Cracks & Serialz
=> P2p, Bittorrent, Elinks
-----------------------------
Multimedia Y Divx
-----------------------------
=> Juegos PC Y Consolas
===> Dudas ayudas y comentarios de juegos
===> Pedidos de juegos
=> Mp3
=> Multimedia
=> Peliculas Divx
-----------------------------
Entretenimiento Y sitios de interes
-----------------------------
=> Juegos, Humor y Adultos. (Diversión)
===> Adultos
=> Paginas Webs Recomendadas
=> Videos
Powered by SMF 1.1.5
|
SMF © 2006-2007, Simple Machines LLC
Loading...