APPLICATIONSCOURS DE BIDOUILLAGE ★ FUNCIONAMIENTO DE LOS SISTEMAS DE PROTECCIÓN (AMSTRAD PERSONAL) ★

Funcionamiento de los sistemas de protección (Amstrad Personal)Applications Cours De Bidouillage
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Funcionamiento de los sistemas de protección

Los sistemas de protección no son tantos como parecen, ni tan fieros como los pintan. Veamos el primer capítulo de su funcionamiento.

Cuando compramos un juego en cinta, a todos nos gustaría poder estudiarlo a fondo para, por ejemplo, introducir nuestros propios cargadores de vidas infinitas, hacernos una copia en disco que cargue con más rapidez

o, incluso, para intentar comprender las técnicas de programación de sus autores. Sin embargo, esto no siempre es posible, pues la mayoría de los programas comerciales están fuertemente protegidos, y el intentar destruir cualquier sistema de protección constituye, en muchos casos, una tarea titánica que requiere amplios conocimientos de Lenguaje Máquina.

Con esta serie de artículos que comienza hoy, intentaremos satisfacer al mayor número de personas posible, ofreciendo un profundo estudio, a nivel de Código Máquina, de los principales sistemas de protección, incluidos una serie de programas de utilidades que nos ayudarán a comprenderlos.

Empezaremos mostrando un resumen de los principales tipos de protección, para posteriormente ir analizándolos en profundidad.

Tabla I
BytesFunción
ZONASS
I
S
T
E
M
A
S
0-15Nombre del fichero
16Número de bloque
17Diferente de 0 si es el último bloque
18Tipo de fichero (ver Tabla II)
19-20Longitud del bloque
21-22Dirección de inicio
23Diferente de 0 si es el primer bloque
U
S
U
A
R
I
O
S
24-25Longitud total del fichero
26-27Dirección de ejecución-programas en C. M.
28-63Pueden usarse libremente

Tipos de protección

  1. Programas con protección en
    cargadores Basic. Esto incluye:
    a) Programas grabados con la opción «p».
    b) Líneas ocultas.
    c) Código Máquina oculto en el interior del programa.
  2. Programas sin protección o con la protección anterior, pero con cargadores en Código Máquina que utilizan llamadas al firmware (Sistema Operativo).
  3. Cargadores en Código Máquina sin llamadas al firmware.
  4. Cargadores en Código Máquina con o sin llamadas al firmware, pero con partes de programa ocultas o modificadas de algún modo. Éstos son los más difíciles de desproteger, y pueden complicarse aún más si se añaden interrupciones, operaciones con el Stack, etc.

TABLA II El byte número 18 indica el tipo de fichero. Se descompone en los siguientes bits:
BytesDescripción
0

Si está activo, el programa está protegido

1-3

Contenido del fichero:

0= Basic
1 = Binario
2 = Imagen de pantalla
3 = ASCII

4-7

4-7 = No tienen significado Versión:

Ficheros ASCII Versión = 1 Otros ficheros Versión = 0


Esta clasificación responde a una dificultad creciente en cada nivel. Por lo tanto, los programas englobados bajo la opción 1, son, en teoría, los más fáciles de desproteger. Sin embargo, esto no siempre es así, pues los programas en Código Máquina ocultos en líneas REM o DATA pueden tener una dificultad equivalente a los del nivel 4.

Abordaremos a continuación el estudio del primer tipo de programas.

Para el programador en Código Máquina, eliminar la protección creada por SAVE “nombre”,p no ofrece ninguna dificultad, siempre que se conozca la estructura de la cabecera de un bloque salvado en cinta.

Cuando se graba un programa utilizando la instrucción SAVE, el ordenador lo divide en bloques de 2.048 bytes (números de 1 a 255) como máximo y, acto seguido, va volcando en cinta cada uno de los bloques, pero precedidos de una «cabecera», es decir, de un conjunto adicional de bytes que, al volver a cargar el programa, informan al ordenador sobre todo lo necesario para ejecutarlo correctamente. La Tabla I muestra la estructura de una cabecera, indicando qué significado tiene cada uno de sus bytes. Como vemos, el bit 0 del byte 18 indica si el programa fue grabado con la opción «p». Es relativamente sencillo desarrollar un programa en Código Máquina que lea el byte 18, desactive el bit 0, en caso de que estuviera activado, y grave el bloque sin ningún tipo de protección. Este trabajo lo realiza la utilidad que publicamos este mes. Este programa permite realizar copias en cinta o disco, elimina, si lo deseamos, la protección e imprime
información sobre el fichero a copiar: direcciones de inicio, longitud y ejecución.

Para utilizar correctamente el copión, se deben seguir los siguientes pasos:

  1. Teclear el Programa I y grabarlo en cinta o disco con Savi “COP”.
  2. Teclear, utilizando la opción 1 del Cargador Universal de Código Máquina, el Programa II.
  3. Salvarlo a continuación en la misma cinta o disco, utilizando la opción 3 del Cargador Universal , y empleando el nombre “COP.BIN”.

Cuando queramos utilizar el programa teclear. Run “COP”. Después de indicar si queremos realizar una copia en cinta o disco, se nos preguntará el nombre del programa fuente. Si pulsamos [Enter o [Intro, será copiado el primer fichero que esté grabado en la cinta. A continuación, deberemos indicar e nombre que queremos dar a la copia. Si contestamos [Enter, el nombre será «Unnamed file» en cinta o «Anonimox» en disco, donde X es un número o carácter actualizado por el «cop» para evitar que se creen 2 programas.

Amstrad Personal

★ PUBLISHER: Amstrad Personal
★ YEAR: 1988
★ CONFIG: 64K + AMSDOS
★ LANGUAGE:
★ LiCENCE: LISTING
★ COLLECTION: AMSTRAD PERSONAL 1988
★ AUTHOR: Pedro Cuenca
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» Funcionamiento  de  los  Sistemas  de  Proteccion    (Amstrad  Personal)    LISTING    SPANISHDATE: 2022-09-23
DL: 129
TYPE: PDF
SiZE: 304Ko
NOTE: Este programa debe teclearse desde la opción 1 del Cargador Universal. ; 2 pages/PDFlib v1.6

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Sa kasete na disk (Racunari Magazine)
» Applications » Desprotector de cargadores Zenith II (The Big Hack)
» Applications » Patrice Maubert - Cours de Bidouilles - Joystick N06
» Applications » Protection Logiciel n°42 (Amstrad Cent Pour Cent)
» Applications » BASIC De-Protector (Amstrad Action)
» Applications » Cours de Bidouilles - Lmdsptdviduqstds 3
Je participe au site:
» Pour ce titre nous ne disposons de fichier executable sur CPC (Dump, Saisie du listing) , alors si vous avez ça dans vos cartons ou vous désirez usé vos petit doigts boudinés sur votre clavier faites le nous savoir.
» Vous avez des infos personnel ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 238 millisecondes et consultée 548 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.