Articulo de referencia

Mordisqueador

Un nibbler , o simplemente nibbler , es un programa informático diseñado para copiar datos de un disquete bit a bit . Funciona a un nivel muy bajo, interactuando directamente co...

Un nibbler , o simplemente nibbler , es un programa informático diseñado para copiar datos de un disquete bit a bit . Funciona a un nivel muy bajo, interactuando directamente con el hardware de la unidad de disco para anular cualquier esquema de protección contra copia en el que se almacenen los datos del disquete. En la mayoría de los casos, el software nibbler analiza los datos a nivel de byte, y solo recurre al nivel de bit cuando se trata de marcas de sincronización (syncs), espacios cero y otros encabezados de sector y pista. Cuando es posible, los nibblers trabajan con el formato de codificación de datos de bajo nivel utilizado por el sistema de disco, ya sea Group Coded Recording (GCR - Apple , Commodore ), Frequency Modulation (FM - Atari ) o Modified Frequency Modulation (MFM - Amiga , Atari , IBM PC ).

Descripción general

La piratería de software comenzó a ser una preocupación cuando los disquetes se convirtieron en el medio de almacenamiento común. [ 1 ] La facilidad de copia dependía del sistema; Jerry Pournelle escribió en BYTE en 1983 que " CP/M no se presta a la protección contra copia", por lo que sus usuarios "no se han preocupado demasiado" por ello, mientras que "los usuarios de Apple, sin embargo, siempre han tenido el problema. También los que usaban TRS-DOS , y entiendo que MS-DOS tiene funciones de protección contra copia" . [ 2 ] Los esquemas de protección contra copia de Apple y Commodore 64 eran extremadamente variados y creativos porque la mayor parte de la lectura y escritura de disquetes estaba controlada por software (o firmware ), no por hardware.

Pournelle no estaba de acuerdo con la protección anticopia y, salvo en el caso de los juegos, se negaba a analizar el software que la utilizaba. No creía que fuera útil, y escribió: «Para cada esquema de protección anticopia hay un hacker dispuesto a burlarlo. La mayoría implican los llamados copiadores nybble, que intentan analizar el disco original y luego hacer una copia» . [ 2 ] En 1980, se presentó el primer copiador 'nibble', Locksmith , para el Apple II. Estos copiadores reproducían disquetes protegidos contra copia pista por pista, ignorando cómo estaban marcados los sectores. Esto era más difícil de hacer de lo que parece por dos razones: primero, los discos de Apple no utilizaban el orificio de índice para marcar el inicio de una pista; sus unidades ni siquiera podían detectar el orificio de índice. Por lo tanto, las pistas podían comenzar en cualquier lugar, pero la pista copiada tenía que tener este «empalme de escritura», que siempre causaba la pérdida o duplicación de algunos bits debido a variaciones de velocidad, aproximadamente en el mismo lugar (no utilizado para datos de carga útil) que el original, o no funcionaría. En segundo lugar, Apple utilizó bytes especiales de "autosincronización" para lograr que el controlador de la unidad y el ordenador coincidieran en la posición de cada byte, desde el inicio hasta el final del siguiente. Estos bytes se escribían como bytes de datos normales, seguidos de una pausa ligeramente más larga de lo habitual, lo que resultaba notoriamente difícil de detectar al leerlos. Aun así, era fundamental que los bytes de autosincronización estuvieran colocados correctamente, ya que si no estaban en los lugares adecuados, la copia no funcionaría, y si estaban en demasiados lugares, la pista no cabría en el disco de destino.

Apple II

Locksmith copiaba discos de Apple II aprovechando que los campos de sincronización entre sectores casi siempre consistían en una larga cadena de bytes FF (hexadecimal: todos los bits en '1'). Buscaba la cadena más larga de FF, que generalmente se encontraba entre el último y el primer sector de cada pista, y comenzaba a escribir la pista en el medio de esa cadena; además, asumía que cualquier cadena larga de bytes FF era una secuencia de sincronización e introducía las pausas cortas necesarias después de escribir cada una de ellas en la copia. Irónicamente, Locksmith no se copiaba a sí mismo. El primer Locksmith medía la distancia entre el sector 1 de cada pista. Los ingenieros de protección contra copias pronto descubrieron lo que hacía Locksmith y comenzaron a usar la misma técnica para burlarlo. Locksmith contraatacó introduciendo la capacidad de reproducir la alineación de las pistas y evitando ser copiado mediante la inserción de una secuencia especial de nibbles que, de ser detectada, detenía el proceso de copia. Henry Roberts (CTO de Nalpeiron ), un estudiante de posgrado en ciencias de la computación de la Universidad de Carolina del Sur , realizó ingeniería inversa de Locksmith, encontró la secuencia y distribuyó la información a algunas de las 7 u 8 personas que producían protección contra copias en ese momento.

A mediados de 1982, se vendieron más de 15 000 copias de Locksmith. [ 3 ] Durante un tiempo, Locksmith siguió burlando prácticamente todos los sistemas de protección anticopia existentes. El siguiente avance provino de la tesis de Henry Roberts sobre protección anticopia de software, que ideó una forma de reemplazar el campo de sincronización de FF de Apple con patrones aleatorios de bytes. Debido a que el estudiante de posgrado mantenía frecuentes conversaciones sobre protección anticopia con el ingeniero de protección anticopia de Apple, Apple desarrolló un sistema de protección anticopia que utilizaba esta técnica. Henry Roberts escribió entonces un programa que competía con Locksmith, Back It UP . Ideó varios métodos para burlarlo y, finalmente, se ideó un método para leer directamente los campos de autosincronización, independientemente de los nibbles que contuvieran. La lucha constante entre los ingenieros de protección anticopia y los copiadores de nibbles continuó hasta que el Apple II quedó obsoleto y fue reemplazado por el IBM PC y sus clones.

Commodore 64

Parte del software de copia de discos Fast Hack'em era un programa de fragmentación (nibbler) que se utilizaba para crear copias de software comercial de Commodore 64 protegido contra copia . Al usar este programa, la copia de discos se realizaba a un nivel muy bajo, bit a bit, en lugar de utilizar los comandos estándar de Commodore DOS . Esto anulaba la eficacia de los errores deliberados del disco, las configuraciones de pistas no estándar y otras formas de prevención de copia. Copiar un disco protegido tardaba aproximadamente 60 segundos si se copiaba directamente a otra unidad de disco, o 3 minutos (más varios cambios de disco) si se realizaba utilizando una sola unidad.

Super Kit/1541 [ 4 ] fue vendido por Prism Software alrededor de 1986, escrito por Joe Peter, quien también desarrolló Warp Speed ​​y parte de la protección anticopia VMax . Incluía varios copiadores, como un copiador normal, un Nibbler, un copiador de archivos, un Super Nibbler, un Disk Surgeon y editores de disco. También había parámetros en la cara B (ver la lista a continuación). Se podían conectar en cadena dos unidades y, una vez programadas, se podía desconectar la computadora y dejar que las unidades realizaran la copia comprobando la tecla de inserción del disco en aproximadamente 20 segundos.

Un dato interesante es que el programa podía crear una copia de sí mismo, pero no podía crear una copia de la copia porque la duración de sincronización del original era menor que la de la copia creada, y el cargador comprobaba esta duración, por lo que la copia tendría una sincronización mucho mayor. Posteriormente, el autor publicó la versión 3 en PD.

NIBtools es un software de código abierto moderno (alrededor de 2006) que realiza la misma función, destinado principalmente al archivado de datos de disquetes antiguos que pueden estar protegidos por derechos de autor o dañados. [ 5 ] En lugar de leer bit a bit, también se pueden leer muchos segmentos de 1,25 KB y luego ensamblarlos de una manera similar a la secuenciación de escopeta , un enfoque necesario para usar conexiones lentas en el Commodore 1541. [ 6 ]

Rapidlok era un sistema de protección contra copias ampliamente utilizado por muchas empresas, y nunca se logró copiar ninguna versión del mismo. Utilizaban un valor de $00 entre sectores, lo que provocaba que los sistemas de copia se volvieran inestables, ya que se trataba de un valor GCR ilegal. [ 7 ]

Referencias

  1. Protección contra copias: Historia y perspectivas https://www.studio-nibble.com/countlegger/01/HistoryOfCopyProtection.html
  2. 1 2 Pournelle, Jerry (junio de 1983). "Zenith Z-100, Epson QX-10, licencias de software y el problema de la piratería de software" . BYTE . pág.  411. Recuperado el 20 de octubre de 2013 .
  3. Libes, Sol (septiembre de 1982). "Bytelines" . BYTE . págs. 490–493 . Recuperado el 30 de diciembre de 2024 . 
  4. Steverd (20 de marzo de 2013). "Super Kit/1541" .
  5. "NIBtools" . Proyecto de preservación de Commodore 64 (C64) .
  6. Steil, Michael (27 de abril de 2019). "Lectura de los bits sin procesar de un disco C64/1541 sin un cable paralelo" . pagetable .
  7. Rittwage, Pete (10 de noviembre de 2019). "Información sobre Rapidlok" . página .