1. UNIVERSIDAD DE COLIMA
FACULTAD DE TELEMÁTICA
TÉCNICAS DE PROTECCIÓN CONTRA PIRATERÍA
EN DISCOS COMPACTOS
TESIS
Que para obtener el grado de:
Maestra en ciencias, área telemática
Presenta:
ING. ANA AZUCENA EVANGELISTA SALAZAR
Asesor:
M. C. PEDRO DAMIÁN REYES
Colima, Col ., junio de 2001
2. INDICE
RESUMEN ........................................................................................................................ 4
SUMARY ........................................................................................................................ 5
INTRODUCCIÓN ..................................................................................................................... 6
PLANTEAMIENTO.................................................................................................................. 7
JUSTIFICACIÓN...................................................................................................................... 7
DESCRIPCIÓN GENERAL DE PROYECTO...................................................................... 8
OBJETIVO GENERAL DEL PROYECTO........................................................................... 9
OBJETIVOS PARTICULARES ............................................................................................. 9
ANTECEDENTES ................................................................................................................... 9
Rainbow Technologies...................................................................................................... 12
Seguridad y rendimiento en Internet................................................................................. 12
Distribución y licenciamiento de software ........................................................................ 13
Información y comunicación............................................................................................. 13
Wibu-Systems................................................................................................................... 13
METODOLOGÍA ....................................................................................................................14
METAS ......................................................................................................................15
CAPÍTULO I. ORGANIZACIÓN DE LA INFORMACIÓN EN EL CENEDIC ..............16
Recepción de información del Departamento de Captura y Revisión ............................... 20
Transferencia de archivos en formatos diversos a formato WinWord .............................. 21
Exportación de formato WinWord a formato ASCII........................................................... 21
Exportación de archivos de formato WinWord a formatos diversos. ................................ 22
Verificación de imágenes faltantes y sobrantes............................................................... 22
2
3. CAPÍTULO II. TÉCNICAS DE PROTECCIÓN DE DATOS .........................................25
¿Qué es la criptografía, cifrado o codificación de información? ...................................... 25
Terminología..................................................................................................................... 25
Encriptación...................................................................................................................... 25
Desencriptación ................................................................................................................ 26
Un ejemplo criptográfico................................................................................................... 26
¿Es la criptografía una tecnología militar o civil?............................................................. 28
Algoritmos y funciones criptográficas.............................................................................. 29
CAPÍTULO III. ANÁLISIS DE SOFTWARE Y HARDWARE EXISTENTES
PARA LA PROTECCIÓN DE INFORMACIÓN ....................................53
¿Para que sirve el sentinel?.............................................................................................. 54
MicroDog GS-MH............................................................................................................... 61
WIBU NET.......................................................................................................................... 65
CAPÍTULO IV. UTILIZACIÓN DE MICRODOG EN UN PLAN PILOTO.....................68
Descripción del uso de la llave MICRODOG GS-MH para protección de software ............ 68
Explicación de los procesos que se pueden realizar utilizando la llave Dog. ................... 69
CONCLUSIONES................................................................................................................765
BIBLIOGRAFÍA....................................................................................................................776
3
4. RESUMEN
El propósito fundamental de este trabajo es analizar técnicas de protección
de información que existan en el mercado, para sugerir su implementación en los
discos compactos que produce el Cenedic (Centro Nacional Editor de Discos
Compactos) de la Universidad de Colima, evitando así que de manera ilegal y con
fines de lucro se realicen copias de grandes volúmenes de información.
4
5. SUMARY
The fundamental purpose of this job is to analyze all the information about
protection techniques which exist in the market to suggest its implementation in the
compact disks that the CENEDIC (Centro Nacional Editor de Discos Compactos)
from the Universidad de Colima produces, preventing thus to make from an illegal
way copies of big volumes of information.
5
6. INTRODUCCIÓN
La constante evolución de la tecnología y el ritmo vertiginoso de la vida
actual nos invitan a desear cuanto artilugio vemos en los aparadores, tiendas,
escaparates y demás. Por ello, siempre estamos a la caza y a la espera de las
bondades tecnológicas que nos harán la vida más fácil, pero cuántas veces nos
ponemos a pensar si el horno de microondas, el televisor o nuestra computadora
personal no es de dudosa procedencia. Sí, la piratería está a lo orden del día y es
el dolor de cabeza de quienes generan productos originales con todo el esfuerzo
que esto conlleva mientras que alguien más listo (o más abusivo) puede hacer uso
indebido de esta adquisición.
Este trabajo, pretende identificar técnicas de seguridad de datos para
posteriormente sugerir su adecuada implementación en los discos compactos del
Cenedic (Centro Nacional Editor de Discos Compactos ) de la Universidad de
Colima.
En el capítulo I, se explicará cómo está organizada la información en el
Cenedic (Centro Nacional Editor de Discos Compactos) para identificar en qué
parte se implementarían las técnicas de seguridad de la información.
En el capítulo II, se abordarán las diferentes técnicas de protección de datos
existentes, para de ahí seleccionar las que mejor se apliquen a las necesidades de
los proyectos del Cenedic (Centro Nacional Editor de Discos Compactos).
En el capítulo III, se analizarán el software y el hardware para protección de
información, de la misma manera se identificarán cuáles son los más convenientes
para en un futuro inmediato implementarlos en los proyectos del Cenedic.
En el capítulo IV, se pondrá en marcha un plan piloto donde se apliquen las
técnicas seleccionadas, y se lleve a cabo la protección de información de los
productos que genera el Cenedic.
6
7. PLANTEAMIENTO
La veloz marcha de los avances tecnológicos representa un gran negocio
para aquellos que encuentran un filón de oro en la elaboración de productos
piratas, desde una cinta de audiocasette hasta sofisticados programas de
cómputo, es por ello que se busca encontrar la (s) herramientas(s) tecnológicas
más adecuados para proteger los productos que genera el Cenedic (Centro
Nacional Editor de Discos Compactos ) de la Universidad de Colima, pues se
tienen algunos casos de discos compactos que ha desarrollado el Cenedic y se
han pirateado tanto en su información como el disco completo, y esto lleva a tener
perdidas considerables.
JUSTIFICACIÓN
La proliferación de equipo técnico y el abaratamiento del mismo convierte en
una "tentación" para todos la adquisición de productos piratas existentes en el
mercado, ya sean de música, información e incluso, de software; por ello, resulta
imperioso encontrar e implementar medidas de seguridad que garanticen su
integridad.
Un ejemplo claro que puede suscitarse es que cualquier persona que
adquiera algún disco, puede modificar esta información ya procesada (con todo lo
que esto representa) y realizar una actualización o hasta una edición "pirata". Esto
tiene una solución inmediata con la implementación de técnicas como el cifrado,
que evita que la información sea legible al usuario aunque se realice la copia; y la
protección contra ejecución del disco a través de software y hardware a pesar de
tener un duplicado.
En el Cenedic se tienen ejemplos de productos (Artemisa, Embriología
Humana 1 y 2) que han sido copiados y que actualmente se venden en mercados
7
8. populares a un precio mucho más bajo; del mismo modo algunos discos
(Jurisprudencia ) se editaron por vez primera y las posteriores se cancelaron
debido a que la información ya estaba procesada, sólo bastaba pagar por su
edición, tarea que contrataron con otra empres aa precio mucho más bajo. Esto
genera pérdidas para el Cenedic, ya que invierte en personal y en procesos para
que la información finalmente sea "pirateada", es por eso que resulta imperioso
que todos los productos generados por el Cenedic estén protegidos, de esta
manera, y así evitar pérdidas.
DESCRIPCIÓN GENERAL DE PROYECTO
La finalidad primordial de este proyecto es implementar técnicas de
encriptación de datos y protección de software contra la piratería, así como
seleccionar y experimentar con llaves (dispositivo combinado de Hardware y
Software para la Protección de Software ) que impidan la ejecución de la copia del
disco o el software aunque los tengan físicamente.
Para ello, primeramente se investigarán las técnicas de encriptación y los
métodos de seguridad que ya existen para evitar la piratería, por lo que se tendrán
que realizar pruebas para elegir la mejor técnica que se adapte a las necesidades
de los proyectos y de cualquier software que se realice en el Cenedic, protegiendo
así los derechos de autor que se ven tan amenazados por la propia tecnología que
posibilita que cualquier persona con un equipo y conocimientos básicos pueda
realizar copias de un producto deseado con seguir una serie de pasos sencillos. Al
mismo tiempo se investigará sobre los productos que ya existen en el mercado
para protección de información por hardware de los mismos, y se eligirá el mejor,
esto requerirá que se adquieran productos para realizar pruebas y se ponga en
marcha un plan piloto, el cual deberá ser monitoreado permanentemente para
determinar con exactitud el más conveniente, además hay que considerar la
velocidad con que esta tecnología evoluciona.
8
9. OBJETIVO GENERAL DEL PROYECTO
Identificar y analizar las herramientas existentes para la protección de datos y
software contra la piratería, con el propósito de encontrar las más adecuadas para
los productos que genera el Cenedic (Centro Nacional Editor de Discos
Compactos).
OBJETIVOS PARTICULARES
♦ Investigar las técnicas de encriptación de datos y software contra la
piratería
♦ Analizar las técnicas más apropiadas para encriptación de datos
♦ Investigar los medios existentes para proteger el software contra la
piratería
♦ Analizar la viabilidad de protección de software contra la piratería por
medio de:
Técnicas desarrolladas externamente (empresas)
♦ Presentar un análisis completo de la tecnología seleccionada .
ANTECEDENTES
Criptografía se define como una estructura cifrada según una determinada
clave (Diccionario Larousse), por lo que el presente trabajo versará a este
respecto y continuamente aparecerán términos como encriptación, cifrado,
criptografía, codificación, los cuales giran en torno a la ciencia de encapsular y
desencapsular mensajes. Cabe mencionar que algunos autores difieren en los
usos de estas palabras, lo que pudiera causar alguna confusión al lector, sin
embargo, se respetará el empleo que de ellos hagan.
9
10. La idea de la criptografía tiene miles de años de antigüedad, los generales
griegos y romanos la utilizaban para enviar mensajes en clave a los comandantes
que estaban en el campo de batalla. Estos sistemas primitivos se basaban en dos
técnicas: la sustitución y la transposición.
La sustitución se basa en el principio de remplazar cada letra del mensaje
que se desea encriptar con otra. Por ejemplo, el código del César sustituye la letra
"a" por la "d", la "b" por la "e", etcétera. Algunos códigos de sustitución ocupan el
mismo esquema de reemplazo para todas las letras del mensaje que se encripta;
otros emplean diferentes esquemas para distintas letras.
La transposición se basa en la revoltura de los caracteres del mensaje. Un
sistema de transposición implica escribir un mensaje dentro de una tabla, renglón
por renglón, y luego leerlo columna por columna. El cifrado de doble transposición
implica repetir la revoltura otra vez.
En el siglo XIX se dieron dos factores que ayudaron a mejorar la criptografía.
El primero fue la aparición de los relatos de Edgar Allan Poe, como "La Pulga de
Oro", que con sus mensajes codificados excitaron la imaginación de muchos lecto-
res. El segundo fue la invención del telégrafo y del código Morse. El código Morse
constituyó la primera representación binaria (puntos y rayas) del alfabeto que se
usó de forma muy extendida.
Durante la Primera Guerra Mundial muchas naciones construyeron
"codificadoras" mecánicas que permitían una fácil codificación y decodificación de
textos usando complejas y sofisticadas claves. En este punto, la historia de la
criptografía cambió ligeramente la historia de quienes se dedicaban a descifrar
códigos. Antes de que se usaran mecanismos para decodificar y codificar
mensajes, las claves complejas se usaban con poca frecuencia, debido al tiempo y
el esfuerzo que requería tanto codificarlos como decodificarlos. Por tanto, la
mayoría de los códigos podían ser descifrados en, relativamente, poco tiempo. Al
10
11. usar máquinas para los códigos, el arte de descifrarlos se hizo mucho más difícil.
Aunque las modernas computadoras habrían descifrado fácilmente esos códigos,
ni siquiera ellas pueden eludir el increíble talento de Herbert Yardley, todavía
considerado el mayor maestro de todos los tiempos en el arte de descifrar
códigos. No sólo descifró el código diplomático de los Estados Unidos en 1915, en
sus ratos libres, sino que incluso descifró el código diplomático japonés de 1922.
Lo hizo mediante tablas de frecuencias del lenguaje nipón.
Durante la Segunda Guerra Mundial, el principal método usado para descifrar
el código del enemigo fue robarle su máquina codificadora, eludiendo así el
tedioso (aunque quizá intelectualmente gratificante) proceso de descifrarlo. De
hecho, la posesión por parte de los aliados de una máquina codificadora de los
alemanes (sin que ellos lo supieran) contribuyó en gran medida a que terminase la
guerra.
Hacia principios del siglo XX, se construyeron en Europa y Estados Unidos
varios dispositivos electromecánicos para encriptar mensajes de radio y telégrafo.
Los sistemas dependían, sobre todo, de la sustitución, ya que no había modo de
guardar un mensaje completo usando técnicas de transposición. Hoy en día, los
algoritmos de encriptación, que se ejecutan en computadoras digitales de alta
velocidad emplean sustitución y transposición combinadas, así como otras
funciones matemáticas.
Con la llegada de las computadoras, especialmente las computadoras
multiusuario, la seguridad y la existencia de códigos indescifrables se ha
convertido en algo muy importante. No sólo es frecuente la necesidad de
mantener secretos ciertos archivos, sino que el mismo acceso a la computadora
debe ser controlado y regulado. Se han desarrollado numerosos métodos de
cifrado de archivos de datos y el algoritmo DES (Estándar de Cifrado de Datos),
aceptado por la Oficina Nacional de Estándares de Estados Unidos, generalmente
se considera seguro contra los intentos de descifrarlo. Sin embargo, el DES es
11
12. muy difícil de implementar y puede no ser adecuado en todas las ocasiones.
Con respecto a los antecedentes de la protección por hardware (sentinel) no
se tiene fecha exacta de su inicio, se tienen datos de empresas que ahora fabrican
estos candados, por ejemplo:
Rainbow Technologies
Es una de las primeras compañías en soluciones de seguridad para el
Comercio electrónico en Internet, fundada en 1984. Rainbow enfoca su principal
tecnología a una variedad de aplicaciones para Internet, desde software para
proteger aplicaciones hasta la aceleración de comunicaciones seguras en internet
y redes virtuales privadas (VPN). Los productos de Rainbow incluyen servidores
seguros de Web y tarjetas aceleradoras de VPN; soluciones de antipiratería y
distribución de software en Internet; soluciones de seguridad basadas en
infraestructura; sistemas de seguridad para voz, datos y satélites; y autentificación
por llaves de hardware basadas en USB (Interfase Serial Universal) y puerto
paralelo.
Las soluciones de Rainbow Technologies se basan en productos
relacionados con la seguridad:
Seguridad y rendimiento en Internet
Ya que ofrece seguridad y rendimiento al sector del comercio electrónico .
Son líder de mercado en soluciones dirigidas al rendimiento del hardware de redes
privadas virtuales (VPN) y servidores seguros de comercio electrónico y Web.
CryptoSwift, NetSwift y FastMAP son la propuesta para estos retos. CryptoSwift
acelera las transacciones seguras en servidores de Web, y NetSwift es un
producto exclusivo que aumenta el rendimiento de las soluciones para redes VPN.
Ambos productos utilizan el chip FastMAP de Rainbow, el circuito integrado de
criptografía de clave pública más rápido existente, el cual suministra una
12
13. criptografía de alto rendimiento y eficacia de costos para redes virtuales privadas
(VPN), procesando de datos financieros y otros productos de hardware orientados
a la seguridad.
Distribución y licenciamiento de software
Que proporciona las herramientas que necesitan los desarrolladores de
software para dar soluciones a sus clientes por Internet. La protección del software
que brinda Sentinel no sólo tiene relación con la piratería, sino también con
información sobre sus clientes, para darles la opción de probar, comprar y
actualizar los productos por Internet, y al mismo tiempo, poder obtener el registro
al 100% de esos productos. La línea de productos Sentinel tiene una larga historia
de líder en soluciones de protección para software; en realidad, el 55% de todo el
software protegido actual hace uso de una llave Sentinel.
Información y comunicación
Que proporciona al gobierno de EE.UU. y a la industria aeroespacial
telecomunicaciones seguras y productos de criptografía. Mykotronx, filial de
Rainbow, es un fabricante líder de equipos de encriptación y descifrado de alto
nivel que se utilizan en las comunicaciones espaciales y en otros entornos
especiales de comunicación digital, y tiene más productos aprobados por la NASA
que cualquier otra compañía.
Rainbow Technologies ha reunido toda su experiencia para mejorar la
capacidad de las empresas de efectuar transacciones en Internet. Tanto si se trata
del suministro seguro de software, de transacciones seguras y aceleradas de
eCommerce, o de la seguridad del tráfico por las redes privadas virtuales,
Rainbow se dedica a brindar seguridad al comercio del mundo. (1)
Wibu-Systems
Esta empresa fue fundada en 1989 en Karlsruhe, por Oliver Winzenried y
Marcellus Buchheit, es conocida como sinónimo de uno de los más avanzados
13
14. desarrolladores y distribuidores de Hardware para protección de copias,
proveedores de licencias en red e Internet, y respuestas a información sobre
seguridad.
Desde 1997, WIBU-SYSTEMS posee la acreditación de la norma ISO-9001
y se ha adherido a un Sistema de Seguro de la Calidad. Cada departamento de
WIBU-SYSTEMS ha sido certificado de acuerdo con los estándares de la norma
ISO-9001.
Hoy en día, WIBU-SYSTEMS es el único proveedor de Hardware para
protección de copias en Alemania con sus propios departamentos de
investigación, desarrollo, producción y ventas en un mismo lugar. Esta
característica distintiva nos permite ofrecerles a nuestros clientes un servicio de
especial calidad.
El diseño de sus productos se basa en tres principios: funcionalidad, facilidad
de uso y seguridad ecológica, ofrece la gama más amplia a nivel mundial de
hardware para protección de copias para PCs y Macintosh.(2)
Después de haber expuesto los productos de dos empresas líderes en el
ramo, queda constancia del trabajo de análisis para su posterior aplicación,
remarcando que la investigación debe ser continua para estar a la vanguardia en
la protección de la información.
METODOLOGÍA
De acuerdo al tipo de investigación que se plantea y a las posibilidades de
aplicación que se vislumbran, se presenta la siguiente metodología:
♦ Conceptualizar términos que intervienen en el encriptamiento de datos
♦ Organizar y análizar la información.
14
15. ♦ Seleccionar los métodos elegidos para su experimentación (software y
hardware)
♦ Analizar el comportamiento de los métodos elegidos
♦ Documentar la información, experiencias y conocimientos adquiridos.
METAS
♦ Profundizar en el conocimiento de protección de software y encriptación de
datos
♦ Conocer las diversas herramientas que proporcionan tanto las empresas
comerciales como centros de investigación.
♦ Aprender a utilizar estas herramientas para realizar las aplicaciones
pertinentes.
♦ Sugerir la implementación de los mejores métodos de acuerdo a la
investigación previa
15
16. CAPÍTULO I. ORGANIZACIÓN DE LA INFORMACIÓN EN EL
CENEDIC
El Centro Nacional Editor de Discos Compactos, Cenedic, surge en el año de
1989 con el "Proyecto Colima". El objetivo principal de dicho proyecto era el de
propiciar el intercambio de información bibliográfica y documental entre las
universidades públicas mexicanas, además, estimular el desarrollo de bases de
datos y la automatización de los servicios bibliotecarios. La propuesta fue
presentada a la Subsecretaría de Educación Superior e Investigación Científica y
respaldada por el desarrollo y productos obtenidos desde 1983 en el área. Uno de
los productos más importantes es el SIABUC (Sistema integral para la
Automatización de Bibliotecas de la Universidad de Colima), el cual es un sistema
que potencializa la administración de los servicios bibliotecarios. Este software es
usado en gran parte de los CD´S producidos en el Cenedic y por más de 500
instituciones nacionales y extranjeras.
Los primeros discos realizados contienen bases de datos de tipo referencial.
Conforme avanzó la tecnología y la experiencia en ella, fueron enriqueciéndose
con características como: manejo de imágenes; una mejor presentación y
eficiencia del software; inclusión de bases de datos a texto completo; multimedios;
etc.
En 1995 la UNESCO le otorga el reconocimiento de Centro Regional para la
Producción de Discos Compactos y Nuevas Tecnologías de Información gracias a
su aplicación y desarrollo en el ámbito. Hasta fines de 1998 el catálogo del
CENEDIC sumaba cerca de 200 títulos enmarcados en las diferentes áreas del
conocimiento: medicina; área jurídica; literatura y humanidades; ciencias
naturales; catálogos y directorios; economía; etc.
16
17. Cabe señalar que los programas (software) incluidos en cada disco y la
metodología usada en los proyectos de edición, es producida en su totalidad por
personal del centro.
El Cenedic ha logrado consolidarse gracias al entusiasmo de las personas
que laboran en él y la gran responsabilidad que aplican en cada uno de los
proyectos, así como a la energía propia de los estudiantes que realizan
investigación y son el eslabón que unen academia y tecnología. (3)
Ahora presentaré un análisis de cómo se organiza la información en el
Cenedic de la Universidad de Colima, para identificar en qué proceso se llevaría a
cabo la seguridad (proteción) de la información.
Cuando inicia un proyecto se recibe el material, se analizan y evalúan sus
características. Esto quiere decir que si el material no es de buena calidad se
captura y si no, se pasa por scanner. En cualquiera de estos casos se pasa al
departamento de Captura y Revisión de Información.
Aquí se captura la información ya sea manualmente o por scanner.
17
18. Por medio de los scanners se digitaliza la información como imagen,
posteriormente se convierte a texto con una herramienta que tiene el software
Omni Page que es con el que se scanea. Ya que la información está capturada (ya
sea manual o digitalmente) se pasa a revisión para que se coteje con el original,
para corregir algún caracter que el software no haya reconocido. Aquí también se
le agregan marcas a la información para su mejor localización en el CD-ROM, esto
quiere decir que dependiendo de la información que se trabaje son las marcas que
van a colocar, ejemplo: Supongamos que se está capturando la información de un
periódico, por lo tanto, las marcas que conviene poner son las del título del
artículo, autor, fecha, lugar; de esta manera cuando se realicen las búsquedas
será más fácil su localización, dichas marcas le sirven al programador para
conocer en qué campos va a ejecutar las consultas.
Las imágenes se digitalizan también por medio de scanner´s parecidos a los
de texto, sólo que de mayor calidad pues deben captar colores, ya que se trabajan
fotografías, imágenes, diapositivas, negativos, y todo lo que sea imagen fija.
18
19. Aquí se digitalizan todas las imágenes fijas.
Una vez digitalizada se retoca por medio de unos programas (Adobe
Photoshop, Picture publisher) para manejo de imágenes donde se les da
tratamiento, se les proporciona brillo, intensidad, nitidez, etc., estas imágenes se
pasan al departamento de Captura y Revisión para que sean colocadas en el lugar
correspondiente que se indica en el texto original.
El siguiente paso es unir toda la información en un sólo archivo, esto lo
realiza el departamento de Tratamiento y Organización de Datos, donde organizan
la información a través de procesos automáticos de acuerdo a los requerimientos
19
20. del proyecto; cabe aclarar que si algún proyecto ya tiene procesada su información
pasa directamente por esta área.
Aquí se generan macros para unir la información.
Recepción de información del Departamento de Captura y Revisión
1.- Se recibe la información y las características de ésta del Departamento de
Captura y Revisión realiza la transferencia de archivos de formatos diversos a
formato WinWord, exporta archivos en formato WinWord a formato ASCII (Texto
MS-DOS), exporta archivos de formato WinWord a formatos diversos: HTML, RTF,
etc.
20
21. 2.- Se verifica con el Departamento de Programación los productos que
deberán entregarse al mismo.
3.- Se analiza la información para ver la forma en que se realizarán dichos
procesos.
Transferencia de archivos en formatos diversos a formato WinWord
En este proceso se cuida que la información quede en el formato más
accesible para el Departamento de Captura y Revisión, tomando en cuenta las
características del equipo, así como el software instalado en dicho Departamento.
1.- La información puede ser recibida en diversos dispositivos de
almacenamiento, según lo disponga el cliente, y las políticas que se aplicarán
al proyecto se determinan según las características del mismo.
2.- Se determinan las herramientas que se utilizarán para realizar la conversión
de dicha información a formato Word, así como la organización que se le
dará.
Exportación de formato WinWord a formato ASCII
1.- Se recibe la información en WinWord con la lista de formatos asignados y las
políticas del proyecto
2.- Se analizan las políticas y la información
3.- Se aplican macros en WinWord para etiquetar los campos de cada
documento y se convierten a ASCII (esto con la intención de identificar esos
campos que en formato Word tienen un formato especial, pero que éste se
perderá una vez convertida la información a ASCII) .
4.- Se unen los archivos en uno solo.
5.- Se valida el archivo unido para asegurarse de que no existen caracteres
fuera de formato.
21
22. Exportación de archivos de formato WinWord a formatos diversos.
1.- Se recibe información en formato WinWord así como las políticas a aplicar.
2.- Se genera un listado con el total de archivos a convertir.
3.- Se realiza la conversión de cada uno de los archivos al formato solicitado.
Verificación de imágenes faltantes y sobrantes
Este proceso se realiza para tener la seguridad que a cada marca de imagen
le corresponde un archivo de imagen digitalizada.
1.- Se realiza una lista de las marcas de imágenes encontradas en los archivos.
2.- Se solicita el listado de imágenes al Departamento de Digitalización de
Imágenes.
3.- Se ejecuta el programa de verificación de imágenes.
4.- Los reportes creados anteriormente se turnan para realizar las correcciones
pertinentes.
5.- Se realiza este proceso tantas veces como sea necesario hasta que no haya
faltantes.
Una vez terminado los procesos respectivos a la información del proyecto
ésta deberá entregarse al Departamento de Desarrollo de Software en un archivo
determinado previamente según la naturaleza del mismo, éste contendrá la
totalidad de la información separada por registros con ciertas marcas, este archivo
lo utilizan los programadores para realizar todos los procesos necesarios para
que el contenido pueda ser consultado, primeramente realizan un proceso para
separar palabras estén o no repetidas, esto quiere decir que crean un índice que
contiene la palabra y a qué registro pertenece, posteriormente se crea una base
de datos con palabras únicas y se ordena sin perder su ubicación de los registros
en la base de datos, esto se realiza con el motor de búsqueda Microsis.
22
23. Aquí se realizan varios procesos hasta que la información sea consultable
En resumen se crea un archivo que se llama A.xrf que contiene el inicio y el
final de cada registro, y otro que se llama B.htm que contiene toda la información
separada por registros y cada registro tiene su propio archivo con extensión .htm
de esta manera cuando se realiza una búsqueda se va al archivo que contiene el
índice de las palabras y en que registro se encuentra, posteriormente se va al
archivo A.xrf para saber dónde inicia y termina ese registro para después ir al
B.htm y tomar la información para saber cuál archivo .htm desplegar.
23
24. En el departamento de programación es donde se realizará la encriptación
de los archivos y se harán los programas para proteger la información por medio
de los candados (sentinel), todo esto aplicado a un plan piloto.
24
25. CAPÍTULO II
TÉCNICAS DE PROTECCIÓN DE DATOS
¿Qué es la criptografía, cifrado o codificación de información?
La criptografía es un conjunto de técnicas empleadas para conservar segura
la información. Con ella es posible transformar palabras escritas y otros tipos de
mensajes de forma que sean incomprensibles para receptores no autorizados. Un
receptor autorizado puede después regresar las palabras o mensajes a un
mensaje perfectamente comprensible.
Por ejemplo, he aquí un mensaje que tal vez desee:
SSL is a cryptographic protocol
Este podría ser el mensaje una vez encriptado:
« · A @~[-F« ST0p'lx0E~ 0fl+ ~+a<~r~u,w
Aún mejor, mediante la criptografía es posible volver a convertir esta "basura"
en el comprensible mensaje original. (6)
Terminología
Los sistemas de encriptación (codificación) modernos constan de dos
procesos complementarios:
Encriptación
Proceso mediante el cual el mensaje (el texto llano) se transforma en un
segundo mensaje (el texto cifrado) mediante una función compleja (el algoritmo de
25
26. encriptación) y una llave de codificación (encriptación) especial.
Desencriptación
Proceso inverso, en el cual el texto cifrado (encriptado) se convierte
nuevamente en el texto llano original mediante una segunda función compleja y
una llave de desencriptación. En algunos sistemas de codificación, las llaves de
encriptación y de desencriptación son iguales; en otros, son distintas.
La meta de la criptografía es hacer imposible tomar el texto cifrado y
reproducirlo en su forma original sin la llave correspondiente, y elevar el costo de
adivinar la llave más allá de lo práctico. Varios sistemas de encriptación modernos
alcanzan fácilmente esta meta. De hecho, los algoritmos criptográficos que no
tienen fallas conocidas están disponibles en la actualidad.
Un ejemplo criptográfico
Veamos cómo funciona la criptografía en la práctica. He aquí un sencillo
fragmento de texto llano:
SSL is a cryptographic protocol
Este mensaje puede encriptarse mediante un popular algoritmo de
encriptación, conocido como el Estándar de Encriptación de Datos (DES, Data
Encryption Standard). DES es un algoritmo simétrico, lo que significa que utiliza la
misma llave para encriptación y para desencriptación. En este caso, podemos
utilizar la llave nosmis
% des -e < text > text.des
Enter key: nosmis
Enter key again: nosmis
26
27. %
El resultado de la encriptación es el siguiente mensaje encriptado:
% cat text.des
«~AQ% [ ·F« ST0p'lx0E~ 0fl+ -~+a<~P~u,w
Cuando este mensaje se desencripta utilizando la llave nosmis, se obtiene el
mensaje original:
% dc8 -d < tcxt.dcs > tcxt.dccrypt
Enter key: nosmis
Enter key again: nosmis
% eat tcxt.dacrypt
SSL is a cryptographic protocol
%
Si intenta desencriptar el mensaje con una llave distinta, digamos gandalf; el
resultado es basura:
% des -d < text.des> text.ded-crypt
Enter key: y~ lf
Enter key again: y~ lL
Corrupted file or wrong key
% c~t t~xt.d-cryyt
N~E~R+f'~H;O~lO>~,!_+I*>
La única forma de desencriptar el mensaje encriptado y obtener texto legible
es conociendo la llave secreta nosmis. Si se desconoce, una manera de obtener el
contenido del mensaje es probando todas las llaves posibles. Esta forma se
conoce como ataque de búsqueda de llave o ataque de fuerza bruta.
27
28. ¿Cuán fácil es realizar un ataque de búsqueda de llave? Depende de la
longitud de la llave. El mensaje anterior fue encriptado mediante el algoritmo DES,
el cual tiene una llave de 56 bits. Cada uno de estos 56 bits puede ser un 1 o un 0.
Esto significa que existen 256 llaves, o aproximadamente
72,057,594,037,900,000. Por otra parte, el comando DES solo da acceso a este
espacio de llaves cuando estas se especifican como números hexadecimales. Una
llave tecleada de forma ordinaria solo incluirá los 96 caracteres imprimibles,
reduciendo el espacio de llaves un 90%, a 7,213,895,789,838,340 (968).
Aunque el algoritmo DES tiene muchas llaves, no es un número demasiado
grande. Si es posible probar mil millones de llaves por segundo y reconocer la
correcta al encontrarla (lo cual es muy factible en algunas computadoras
modernas), se pueden probar todas las llaves posibles en poco menos de 834
días.
¿Es la criptografía una tecnología militar o civil?
Durante años la criptografía se ha considerado sobre todo, una tecnología
militar sin importar que casi todos los sistemas criptográficos han sido inventados
por civiles.
¿Por qué esta confusión? Casi todos los ejemplos históricos de la
criptografía, desde Grecia y Roma, pasando por Francia, Alemania e Inglaterra,
hasta la época moderna, son relatos de ejércitos y espías que la utilizaron para
proteger los mensajes enviados por medio de mensajeros. Los ejemplos restantes
son diplomáticos, como el de María, Reina de los escoceses, que usó la
criptografía para proteger sus mensajes (a fin de cuentas sin éxito), o nefastos,
como el de los piratas, que la emplearon para registrar dónde habían enterrado
sus ganancias mal habidas.
También hay una tradición de varios siglos de uso no militar de la
28
29. criptografía. Existen registros de personas que la utilizaron para proteger secretos
religiosos, ocultar secretos científicos e industriales y organizar interludios
románticos clandestinos. Durante la Primera Guerra Mundial, el servicio postal de
Estados Unidos abría todas las cartas enviadas a ultramar. La mayoría de las
cartas abiertas por la llamada Cámara Negra de Herbert Yardley no eran
mensajes enviados por espías alemanes que operaban dentro de Estados Unidos,
sino cartas no militares intercambiadas entre amantes ilícitos. Utilizaban la
criptografía por las mismas razones que lo hacían los espías: para asegurarse de
que, en caso de que uno de sus mensajes fuera interceptado o abierto por una
persona equivocada, su contenido permaneciera secreto.
En años recientes, la criptografía se ha convertido, cada vez en mayor
medida, en una herramienta de negocios y comercio. Ross Anderson, criptógrafo
inglés, cree que en años recientes el uso civil de la criptografía ha eclipsado su
uso militar. Después de todo, dice Anderson, la criptografía se utiliza para codificar
transmisiones televisivas vía satélite, proteger el dinero almacenado en "tarjetas
inteligentes" o la información financiera enviada a través de redes electrónicas. La
popularidad de todos estos usos se ha manifestado en años recientes.
Por ello, al igual que los camiones, las fibras de carbono y las computadoras
de alta velocidad, la criptografía no es una tecnología exclusivamente militar o
civil. Es una tecnología de uso dual, que tiene aplicaciones tanto militares como
civiles. Para todos sus usuarios, la criptografía es una forma de comprar seguridad
y reducir el riesgo en un mundo de incertidumbres.
Algoritmos y funciones criptográficas
Actualmente se emplean dos tipos básicos de algoritmos criptográficos:
Algoritmos de llaves simétricas
En este tipo de algoritmos se utiliza la misma llave para encriptar y
29
30. desencriptar el mensaje. El algoritmo DES, mencionado con anterioridad, es un
algoritmo de llaves simétricas. Estos algoritmos se conocen también como
algoritmos de llave secreta y, en ocasiones, como algoritmos de llave privada.
Desafortunadamente, ambos nombres provocan confusión con los algoritmos de
llave pública, que no están relacionados con los de llaves simétricas.
Algoritmos de llave pública
En este tipo de algoritmos se utiliza una llave para encriptar el mensaje y otra
para desencriptarlo. La llave de encriptación por lo general se conoce como llave
pública, ya que se puede divulgar públicamente sin poner en peligro la
confidencialidad del mensaje ni la llave de desencriptación. Esta última por lo
común se conoce como llave privada o llave secreta.
En raras ocasiones los algoritmos de llave pública se conocen como
algoritmos de llaves asimétricas.
Los algoritmos de llaves simétricas son los caballos de batalla de los
sistemas criptográficos modernos. Por lo general son mucho más rápidos que los
de llave pública, además de ser algo más fáciles de implementar. Por desgracia,
los algoritmos de llaves simétricas tienen un problema que limita su uso en el
mundo real: para intercambiar información mediante un algoritmo de llaves
simétricas, ambas partes deben primero intercambiar, en forma segura, una llave
de encriptación.
Los algoritmos de llave pública resuelven este problema. Las personas que
desean comunicarse crean una llave pública y una llave secreta. La llave pública
se publica. Si Sascha desea enviar un mensaje confidencial a Wendy, todo lo que
debe hacer es obtener una copia de la llave pública de Wendy (tal vez la
encuentre en su página web), usarla para encriptar el mensaje y enviarlo. Nadie,
excepto Wendy, puede desencriptar el mensaje, ya que solo ella posee la llave
30
31. secreta correspondiente.
La criptografía de llave pública también se ocupa para crear firmas digitales
para la información, digamos un mensaje de correo electrónico, a fin de certificar
su origen e integridad. En el caso de las firmas digitales, la llave secreta se utiliza
para crear la firma digital y la llave pública para comprobarla. Por ejemplo, Wendy
podría escribir una carta a Sascha y firmarla con su llave secreta. Cuando Sascha
recibe el mensaje, puede verificarlo mediante la llave pública de Wendy.
Los algoritmos de llave pública tienen inherente un problema importante: son
increíblemente lentos. En la práctica, la encriptación y desencriptación mediante
llave pública se ejecuta entre diez y cien veces más lenta que con el algoritmo
equivalente de llaves simétricas. Debido a ello existe un tercer tipo.
En estos sistemas, la criptografía de llave pública más lenta, se utiliza para
intercambiar una llave de sesión aleatoria la cual se usa entonces como base para
un algoritmo de llaves .simétricas (una llave de sesión es la que se utiliza para una
sola sesión de encriptación, luego se desecha). Casi todas las implementaciones
prácticas de sistemas de llave pública son, en realidad, sistemas híbridos.
Existe un nuevo tipo de funciones que se ha popularizado en años recientes,
las cuales se utilizan junto con la criptografía de llave pública:
Compendio de mensaje
La función de compendio de mensaje (message digest) genera un patrón de
bits único o casi único para una entrada específica. El valor del compendio se
calcula de modo que encontrar una entrada que genere en forma exacta un
compendio específico no sea factible computacionalmente. Los compendios de
mensaje se consideran comúnmente como huellas digitales para archivos.
31
32. Las siguientes secciones analizan con detalle todos estos tipos de
algoritmos.
Algoritmos de llaves simétricas
Los algoritmos de llaves simétricas sirven para la encriptación en masa de
datos o flujos de datos. Están diseñados para ser muy rápidos y (por lo general)
tienen un gran número de llaves posibles. Los mejores algoritmos de llaves
simétricas ofrecen confidencialidad casi perfecta: una vez que los datos son
encriptados mediante una llave no hay forma de desencriptarlos sin poseer la
misma llave.
Los algoritmos de llaves simétricas pueden dividirse en dos categorías: de
bloque y de flujo. Los algoritmos de bloque encriptan los datos un bloque a la vez;
los algoritmos de flujo encriptan byte por byte.
DES
El Estándar de Encriptación de Datos fue adoptado como estándar del
gobierno estadounidense en 1977, y como estándar ANSI en 1981. DES es un
algoritmo de bloque que utiliza una llave de 56 bits y tiene varios modos de
operación, de acuerdo con el propósito con el que se utilice.
DESX
DESX consiste en una sencilla modificación al algoritmo DES, construida
alrededor de dos pasos de "blanqueo". Estos pasos al parecer mejoran con mucho
la seguridad del algoritmo, haciendo casi imposible la búsqueda de las llaves.
Puede encontrar mayor información sobre DESX en la FAQ de criptografía de
RSA Data Security.
32
33. Triple-DES
Triple-DES brinda una forma de, por lo menos, duplicar la seguridad de DES,
mediante el uso del algoritmo DES tres veces con tres diferentes llaves (utilizar
simplemente DES dos veces con dos diferentes llaves no mejora la seguridad al
grado que se podría esperar, debido a un tipo teórico de ataque conocido como
"encontrarlo a la mitad", en el cual un atacante intenta, de modo simultáneo,
encriptar el texto llano con una sola operación DES y desencriptar el texto cifrado
con otra operación DES, hasta que se encuentra una correspondencia a la mitad).
Triple-DES actualmente se utiliza en instituciones financieras y gobiernos como
alternativa a DES.
Blowfish
Blowfish (pez globo) es un algoritmo de bloque rápido, compacto y sencillo,
inventado por Bruce Schneier. Permite una llave de longitud variable de hasta 448
bits, y está optimado para ejecutarse en procesadores de 32 y 64 bits. El algoritmo
no está patentado y se ha puesto en el dominio público.
IDEA
El Algoritmo Internacional de Encriptación de Datos (IDEA International Data
Encryplion Algorithm) fue desarrollado en Zurich, Suiza, por James L. Massey y
Xuejia Lai, y publicado en 1990. Utiliza una llave de 128 bits que se considera
bastante segura. Por desgracia, el uso más amplio de IDEA ha sido obstaculizado
por una serie de patentes de software que existen sobre el algoritmo, el cual en la
actualidad es propiedad de AscomTech AG, empresa ubicada en Solothurn, Suiza.
33
34. RC2
Ronald Rivest desarrolló originalmente este algoritmo de bloque y RSA lo
mantuvo como secreto comercial. Luego se divulgó en un mensaje anónimo en
Usenet en 1996, y parece ser razonablemente seguro (aunque hay algunas llaves
específicas que son débiles). RC2 se vende con una implementación que permite
llaves de entre 1 y 2048 bits.
Aunque los autores en general están a favor de la protección de la propiedad
intelectual se oponen al concepto de las patentes de software, en parte porque
obstaculizan que individuos y pequeñas empresas y uso de programas desarrollen
y utilicen software de inovación. Además las patentes de software tienden a
construir algunas formas de investigación experimental.
Comúnmente la longitud de las llaves de RC2 se limita a 40 bits en el
software que se vende para exportarlo fuera de Estados Unidos.
RC5
Este algoritmo de bloque fue desarrollado por Ronald Rivest y publicado en
1994. RC5 permite que la longitud de la llave, el tamaño del bloque de datos, y
número de pasadas de encriptación las definida el usuario.
Fortaleza criptográfica
Las diferentes formas de criptografía no son todas iguales. Algunos sistemas
no son muy buenos para la protección de datos, pues permiten desencriptar la
información sin conocer la llave correspondiente. Otros son bastante resistentes
aun a los ataques más obstinados. La capacidad de un sistema criptográfico para
proteger información contra el ataque se conoce como fortaleza, la cual depende
de muchos factores, incluyendo:
34
35. La confidencialidad de la llave
La dificultad de adivinar la llave o intentar todas las llaves posibles (una
búsqueda de llaves). Las llaves más largas por lo general son más difíciles de
adivinar o encontrar.
La dificultad de invertir el algoritmo de encriptación sin conocer la llave
(romper el algoritmo de encriptación)
La existencia (o falta) de puertas traseras, es decir, formas adicionales de
poder desencriptar un archivo encriptado más fácilmente sin conocer la llave.
La habilidad de desencriptar un mensaje encriptado si se conoce cómo se
desencripta una parte de él (conocido como ataque de texto llano conocido)
La fortaleza criptográfica casi nunca puede probarse: sólo puede probarse la
debilidad. Al proponer nuevos algoritmos criptográficos, sus creadores presuponen
que el algoritmo es perfecto. Esto es, el creador supone que los algoritmos son
fuertes y que no hay forma de desencriptar un mensaje encriptado sin conocer la
llave correspondiente. El creador del algoritmo también puede demostrar que este
es resistente a ataques específicos previamente conocidos. Con el paso del
tiempo, las personas por lo general encuentran nuevos ataques contra el algoritmo
y los publican (o bien encuentran problemas y les sacan provecho, como en el
caso de Enigma).
Por esta razón, generalmente es buena idea tener cautela respecto a
algoritmos criptográficos recién introducidos. Con muy pocas excepciones, la
mayoría de los algoritmos de encriptación tienen fallas fundamentales que los
hacen poco aptos para uso profesional.
35
36. Ataques contra los algoritmos simétricos de encriptación
Si utiliza la criptografía para proteger la información, debe presuponer que
quienes no desea que accedan a la información registrarán los datos encriptados
e intentarán desencriptarlos por la fuerza. Para ser útil, un sistema criptográfico
debe ser resistente a este tipo de ataque directo.
Los ataques contra la información encriptada se clasifican en tres categorías
principales:
♦ Ataques de búsqueda de llaves (fuerza bruta)
♦ Ataques basados en el sistema
♦ Ataques de búsqueda de llaves (fuerza bruta)
La forma más fácil de romper un código es probar todas las llaves posibles,
una tras otra (suponiendo que el violador de códigos puede reconocer el resultado
de utilizar la llave correcta). Casi todos los intentos fallarán, pero al final uno
tendrá éxito y permitirá al violador acceder al sistema o desencriptar el texto
cifrado. Estos ataques son de búsqueda de llaves o ataques de fuerza bruta. No
hay modo de protegerse contra un ataque de búsqueda de llaves, ya que no hay
forma de evitar que un atacante intente desencriptar el mensaje probando todas
las llaves posibles.
Whitfield Diffie, uno de los inventores de la criptografía de llave pública, ha
señalado que si los datos no van a estar sujetos de este tipo de ataque directo, no
hay necesidad de encriptarlos. Por otra parte, muchos ataques de búsqueda de
llaves se simplifican considerablemente porque la mayoría de los usuarios eligen
llaves basadas en claves de acceso pequeñas con caracteres legibles.
Considere el algoritmo de encriptación RC4, utilizado comúnmente por los
36
37. navegadores para encriptar información enviada a través del World Wide Web.
RC4 puede emplearse con cualquier longitud de llave entre 1 y 2048 bits, pero, en
general, se utiliza con llaves secretas de 40 o de 128 bits.
Con una llave de 40 bits, existen 24" (1.1 X 1012) llaves posibles que pueden
utilizarse. Con una computadora que se puede adquirir en cualquier tienda
especializada, capaz de probar un millón de llaves por segundo, se pueden probar
todas las llaves en menos de 13 días. Carl Ellison señala que en 1994, un
ingeniero que tenía 20,000 dólares en partes construyó un motor de búsqueda
RC4 que podía procesar 150 millones de llaves por segundo. En 1997, se rompió
un código de 40 bits en 3.5 horas. Es evidente que una llave de 40 bits puede ser
blanco de un ataque de búsqueda de llaves.
Por otra parte, una llave de 128 bits es muy resistente a un ataque de
búsqueda de llaves, pues permite 2l28 (3 4 X 1038) llaves posibles. Aun si
existiera una computadora que pudiera probar mil millones de llaves por segundo
y si se contara con mil millones de semejantes computadoras, tomaría 1013 años
probar todas las llaves RC4 de 128 bits posibles. Este lapso es aproximadamente
mil veces mayor que la edad del universo, que se estima en 1.8 x 10 años.
A partir de este sencillo análisis, parece ser que RC4 con una llave de 128
bits debe ser suficiente para la mayoría de las necesidades criptográficas --ahora y
siempre--. Por desgracia, hay varios factores que hacen que esta solución no sea
técnica, legal o políticamente conveniente para muchas aplicaciones.
Criptoanálisis
Si la longitud de la llave fuera el único factor determinante para la seguridad
de un código, cualquiera que estuviera interesado en intercambiar mensajes
secretos simplemente utilizaría códigos con llaves de 128 bits y todos los
criptoanalistas (personas que rompen códigos) tendrían que buscar nuevos
37
38. trabajos. La criptografía sería una rama resuelta de las matemáticas, al igual que
la adición simple.
Lo que mantiene vigente el interés en la criptografía es el hecho de que la
mayoría de los algoritmos de encriptación no satisfacen nuestras expectativas. Los
ataques de búsqueda de llaves rara vez son necesarios para acceder al contenido
de un mensaje encriptado. Más bien, es posible vencer a la mayoría de los
algoritmos de encriptación mediante una combinación de matemáticas complejas y
poder de cómputo. El resultado es que muchos mensajes encriptados pueden
descifrarse sin conocer la llave. En ocasiones un criptoanalista hábil puede
descifrar texto encriptado sin siquiera conocer el algoritmo de encriptación.
Un ataque criptoanalítico puede tener dos metas. El criptoanalista puede
tener texto cifrado y quiere descubrir el texto llano, o tener el texto cifrado y buscar
la llave utilizada para encriptarlo (estas metas son similares pero no son
exactamente idénticas). Los siguientes ataques se utilizan por lo común cuando se
conoce el algoritmo de encriptación, y pueden lanzarse contra el tráfico del WWW.
Ataque de texto llano conocido
En este tipo de ataque, el criptoanalista tiene un bloque de texto llano y el
bloque correspondiente de texto cifrado. Aunque esto parezca poco probable, en
realidad es muy común, utilizar la criptografía para proteger correo electrónico
(con encabezados estándar al principio del mensaje) o discos duros (con
estructuras conocidas en lugares predeterminados del disco). La meta de un
ataque de texto llano conocido es determinar la llave criptográfica (y posiblemente
el algoritmo), los cuales pueden emplearse entonces para desencriptar otros
mensajes.
38
39. Ataque de texto llano elegido
En este tipo de ataque, el criptoanalista hace que el sujeto del ataque
encripte (sin saberlo) bloques selectos de datos, creando un resultado que el
criptoanalista puede entonces analizar. Llevar a cabo un ataque de texto llano
elegido es más fácil de lo que podría parecer (por ejemplo, el sujeto del ataque
puede ser una conexión de radio que encripta y retransmite mensajes recibidos
por teléfono). La meta de un ataque de texto llano elegido es determinar la llave
criptográfica, la cual puede entonces ocuparse para desencriptar otros mensajes.
Criptoanálisis diferencial
En este ataque, que es una variante del ataque de texto llano elegido, se
encriptan muchos textos ligeramente diferentes entre sí y se comparan los
resultados.
Análisis diferencial de fallas
Este ataque se lleva a cabo contra sistemas criptográficos integrados al
hardware. Se somete al dispositivo a factores ambientales (calor, fuerza,
radiación) para que cometa errores durante la encriptación o desencriptación.
Estas fallas pueden analizarse para, posiblemente, obtener a partir de ellas el
estado interno del dispositivo, incluyendo la llave o algoritmo de encriptación.
La única forma confiable de determinar si un algoritmo es resistente es
publicarlo y esperar que alguien encuentre una debilidad. Este proceso de revisión
todavía no es perfecto, pero es mejor que ninguna revisión. No se debe confiar en
las personas que dicen haber desarrollado un nuevo algoritmo de encriptación
pero no pueden divulgarlo porque pondría en peligro su seguridad. Si el algoritmo
se utiliza para almacenar información valiosa, un atacante comprará (o robará)
una copia del programa que lo implementa, lo desensamblará y averiguará cómo
39
40. funciona. Como en el caso de RC2 y RC4, el atacante puede incluso publicar el
algoritmo obtenido mediante la ingeniería inversa. La verdadera seguridad
criptográfica yace en la apertura y la revisión pública.
Ataques basados en el sistema
Otra forma de romper un código es atacar al sistema criptográfico que utiliza
el algoritmo criptográfico, sin atacar al algoritmo en sí.
Uno de los casos más espectaculares de ataques basados en el sistema fue
el algoritmo de encriptación de video VC-1, utilizado para encriptar las primeras
transmisiones de televisión vía satélite. Durante años, los piratas de video vendían
decodificadores que interceptaban la transmisión de las llaves y las utilizaban para
desencriptar las transmisiones. El algoritmo de encriptación VC-1 era seguro, pero
el sistema en su conjunto era débil (este caso también demuestra que, cuando se
trata de mucho dinero, algunas personas probablemente encontrarán las fallas en
un sistema débil de encriptación y las explotarán).
Algoritmos de llaves públicas
La existencia de la criptografía de llave pública fue presentada por primera
vez en forma impresa en el otoño de 1975 por Whitfield Diffie y Martin Hellman.
Ellos, que en ese tiempo estaban en la Universidad de Stanford, redactaron un
documento en el que presuponían la existencia de una técnica de encriptación en
la cual la información encriptada con una llave podría ser desencriptada solo con
otra llave aparentemente no relacionada con la primera. Robert Merkle, en ese
tiempo estudiante graduado en Berkeley, tenía ideas similares, pero debido a los
caprichos del sistema académico de publicación, los textos de Merkle no se
publicaron sino hasta que la idea de la encriptación de llave pública era muy
conocida.
40
41. Desde entonces se han desarrollado varios sistemas de encriptación de llave
pública. Por desgracia, ha habido mucho menos desarrollo en los algoritmos de
llave pública que en los de llaves simétricas. La razón tiene que ver con la forma
en que se diseñan estos algoritmos. Los buenos algoritmos de llaves simétricas
simplemente revuelven su entrada con base en la llave de entrada; el desarrollo
de un nuevo algoritmo de llaves simétricas solo requiere idear nuevas formas de
hacer esa revoltura en forma confiable. Los algoritmos de llave pública por lo
general se basan en la teoría numérica. El desarrollo de nuevos algoritmos de
llave pública requiere la identificación de nuevos problemas matemáticos con
propiedades específicas.
A continuación, resumimos los sistemas de llave pública que se utilizan
comúnmente en la actualidad:
Intercambio de llaves Diffie-Hellman
Sistema para intercambio de llaves criptográficas entre partes activas.
Diffie-Hellman no es en realidad un método de encriptación y desencriptación sino
un método para desarrollar e intercambiar una llave privada compartida mediante
un canal de comunicación público. A fin de cuentas, ambas partes acuerdan
utilizar algunos valores numéricos comunes, y luego cada una de ellas crea una
llave. Se intercambian transformaciones matemáticas de las llaves. Cada parte
puede calcular entonces una tercera llave de sesión, la cual no puede ser
fácilmente derivada por un atacante que conozca ambos valores intercambiados.
RSA
RSA es un sistema criptográfico de llave pública bien conocido, desarrollado
por Ronald Rivest, Adi Shamir, y Leonard Adleman, entonces profesores del
Instituto Tecnológico de Massachussets. RSA puede ocuparse para encriptar
información y como fundamento de un sistema de firmas digitales. Las firmas
41
42. digitales pueden utilizarse para probar la autoría y autenticidad de información
digital. La llave puede tener cualquier longitud dependiendo de la implementación
que se utilice.
ElGamal
Llamado así en honor a su creador, Taher ElGamal, este es un sistema de
encriptación de llave pública basado en el protocolo de intercambio de llaves
Diffie-Hellman.
DSS
El Estándar de Firmas Digitales (DSS, Digital Signature Standard) fue
desarrollado por la Agencia de Seguridad Nacional de Estados Unidos (NSA,
National Secunty Agency) y adoptado como Estándar de Procesamiento de
Información Federal (FIPS) por el Instituto Nacional de Estándares y Tecnología
(NIST). DSS se basa en el Algoritmo de Firmas Digitales (DSA). Aunque DSA
permite utilizar llaves de cualquier longitud, bajo el DSS de FIPS solo se permiten
llaves de 512 y 1024 bits. DSS especifica que solo puede ocuparse para firmas
digitales, aunque es posible utilizar implementaciones de DSA también para
encriptación.
Ataques contra los algoritmos de llaves públicas
En teoría, los algoritmos de llave pública son más fáciles de atacar que los
de llave simétrica, pues puede presuponerse que el atacante tiene una copia de la
llave pública utilizada para encriptar el mensaje. La labor del atacante se simplifica
aún más, ya que el mensaje tal vez indica qué algoritmo de llave pública se usó
para encriptarlo.
Los ataques contra algoritmos de llave pública se dividen en general en dos
42
43. categorías: Ataques de factorización, Ataques algorítmicos
Ataques de factorización
Los ataques de factorización son el tipo más popular de ataque contra
mensajes encriptados mediante llave pública porque son los más fáciles de
comprender. Estos ataques intentan derivar una llave secreta a partir de su llave
pública correspondiente. En el caso del sistema de llave pública RSA, este ataque
puede instrumentarse mediante la factorización de un número asociado con la
llave pública. Con otros sistemas de llave pública, este ataque necesita resolver
otros tipos de problemas matemáticos de alta dificultad.
Hoy en día, la fortaleza del popular algoritmo RSA depende de la dificultad
de factorizar números grandes. El problema de este tipo de factorización ha
llamado la atención de los matemáticos durante siglos y con seguridad seguirá
siendo materia de interés. Se han encontrado algunos métodos eficientes para
factorizar clases muy pequeñas de números con propiedades especiales, pero el
problema general de la factorización de números aún se considera "difícil". No
obstante, no se ha mostrado prueba alguna de que la factorización de números
sea realmente "difícil" desde un punto de vista computacional, por lo que puede
llegar un momento en que sea necesario descartar RSA a favor de algún nuevo
algoritmo.
Un ataque de factorización muy famoso es la factorización del número de
reto RSA-129. Este número fue publicado en la edición de septiembre de 1977 de
la revista Popular Science. El número fue factorizado en 1994 por un equipo
internacional de voluntarios coordinados por Arjen Lenstra, quien entonces
trabajaba en Bellcore (el organismo de investigación de las compañías telefónicas
estadounidenses), Derek Atkins, Michael Graff y Paul Leyland.
RSA Data Security publica una lista de retos de factorización, con premios
monetarios para las primeras personas capaces de factorizar los números.
43
44. Ataques algorítmicos
La otra forma de atacar un sistema de encriptación de llave pública es
encontrar una falla o debilidad fundamental en el problema matemático en el que
se basa. No se burle, esto se ha hecho anteriormente por lo menos una vez. El
primer sistema de encriptación de llave pública patentado se basaba en un
problema matemático conocido como el Problema de la Mochila Supercreciente.
Unos años después de sugerida esta técnica, se encontró una forma de derivar
matemáticamente la llave secreta a partir de la llave pública en un lapso muy
breve.
Métodos conocidos y métodos publicados
Cabe señalar que siempre puede haber una diferencia entre los mejores
métodos conocidos y los mejores métodos publicados. Si se hiciera un
descubrimiento mayor en cuanto a factorización, podría no ser publicado para
todos. Si una institución gubernamental desarrollara un nuevo método, podría
mantenerlo en secreto para emplearlo contra mensajes encriptados enviados por
oficiales de otros países. Alternativamente, si alguien con tendencias criminales
desarrollara un nuevo método, podría mantenerlo en secreto para utilizarlo en
delitos económicos que involucraran los métodos de encriptación existentes.
Funciones de compendio de mensajes
Las funciones de compendio de mensajes destilan la información contenida
en un archivo (pequeño o grande) a un solo número grande, típicamente de entre
128 y 256 bits. Las mejores funciones de compendio de mensajes combinan las
siguientes propiedades matemáticas:
Cada bit de la función de compendio de mensajes sufre la influencia de cada
bit de la entrada de la misma función
44
45. Si se modifica cualquier bit de la entrada de la función, cada bit de salida
tiene 50% de probabilidad de cambiar.
Dado un archivo de entrada y su compendio correspondiente, debe ser no
factible computacionalmente encontrar otro archivo con el mismo valor de
compendio.
Los compendios de mensajes también se conocen como funciones hash de
un sólo sentido, ya que producen valores difíciles de invertir, resistentes al ataque,
en su mayoría únicos y ampliamente distribuidos.
Se han propuesto y actualmente se utilizan muchas funciones de compendio
de mensajes. A continuación analizamos algunas de ellas:
HMAC
El Código de Autenticación de Mensajes por Hash (HMAC, Hashed Message
Authentication Code) utiliza una llave secreta y una función de compendio de
mensajes para crear un código de autenticación secreto para mensajes. El método
HMAC fortalece una función de compendio de mensajes existente para hacerla
resistente a un ataque externo, aun si la función en sí es violada.
MD2
El Compendio de Mensajes #2 (Message Digest #2), desarrollado por Ronald
Rivest, es la más segura de las funciones de compendio de mensajes de Rivest,
pero es la que lleva más tiempo calcular. Produce un compendio de 128 bits.
45
46. MD4
El Compendio de Mensajes #4 (Message Digest #4), creado también por
Ronald Rivest, se desarrolló como alternativa a MD2. Posteriormente, se demostró
que MD4 es inseguro, es decir, que es posible encontrar dos archivos que
produzcan el mismo código MD4 sin tener que hacer una búsqueda de fuerza
bruta. MD4 produce un compendio de 128 bits.
MD5
El Compendio de Mensajes #5 (Message Digest #5), desarrollado también
por Ronald Rivest, es una modificación de MD4 que incluye técnicas diseñadas
para hacerlo más seguro. Aunque se utiliza ampliamente, en el verano de 1996 se
le descubrieron algunas fallas que permiten calcular algunos tipos de colisiones.
Como resultado, MD5 está perdiendo poco a poco popularidad. MD5 produce un
compendio de 128 bits.
SHA-1
El Algoritmo Seguro de Hash (SHA, Secure Hash Algorithm), desarrollado
por la NSA y diseñado para usarse junto con el Estándar de Firmas Digitales del
Instituto Nacional de Estándares y Tecnología (el DSS del NIST). Poco después
de la publicación del SHA, NIST declaró que no era adecuado para emplearlo sin
un pequeño cambio. SHA-1 produce un compendio de 160 bits.
SH4-1
El Algoritmo Seguro de Hash revisado, también desarrollado por la NSA y
diseñado para emplearse en conjunto con DSS, hace cambios menores a SHA.
No se sabe si estos cambios hacen que SHA-1 sea más seguro que SHA, aunque
algunas personas lo creen así. SHA-1 produce un compendio de 160 bits.
46
47. Además de estas funciones, también es posible utilizar como funciones de
compendio de mensajes sistemas de encriptación simétrica de bloque; por
ejemplo, DES. Para utilizar una función de encriptación como función de
compendio de mensajes, simplemente debe ejecutar la función de encriptación en
modo de retroalimentación de código. Como llave se utiliza una llave elegida al
azar y específica a la aplicación. Se encripta todo el archivo y el último bloque de
datos encriptados es el compendio.
Cómo funcionan los algoritmos de compendio de mensajes
Los algoritmos de compendio de mensajes no se emplean para operaciones
de encriptación y desencriptación; se utilizan en la creación de firmas digitales,
códigos de autenticación de mensajes (MAC, Message Authentication Codes) y
llaves de encriptación a partir de frases de acceso.
La forma más fácil de entender las funciones de compendio de mensajes es
verlas trabajando. Considere el algoritmo de compendio de mensajes MD5,
desarrollado por Ronald Rivest y distribuido por RSA Data Security de la siguiente
manera.
MD5(Hay 51500 en la caja azul.) = fl348485f7619f3017c641af32683cda
MD5(La junta de ayer estuvo bien.) = 0500502790abfel9dO397f4f3f878518
MD5(Hay 51100 en la caja azul.) = 4430869e496c75d94328cl80cOlcfe3f
Observe que todos estos mensajes tienen códigos MD5 sumamente
distintos. Aun el primer y tercer mensajes, que difieren en un solo carácter (y aún
en ese carácter en un sólo bit), tienen compendios de mensaje diferentes por
completo. En apariencia, el compendio es del todo aleatorio, pero en realidad no
es así.
47
48. Veamos algunos compendios más:
MD5(Hay 51500 en la caja azul) = d9261e7d6dlee9cO39076abO2cda6629
MD5(Hay 51500 en la caja azul) = b8f3aaO9ccdec76bce9001flO43ceefa
MD5(Hay 51500 en la caja azul.) = fl348485f7619f3017c641af32683cda
MD5(Hay 51500 en la caja azul!) = 062dc60d4db7b2fc6130389e8bba6254
MD5(Hay 51500 en la caja azul:) = 3159032c79d7f6017cO77a87305faafO
MD5(Hay 51500 en la caja azul..) = acf4521537e5df7d6d47d73c6e32230d
Considere la tercera línea de código MD5 del ejemplo anterior: puede ver
que es idéntica a la primera línea mostrada con anterioridad. Esto se debe a que
el mismo texto siempre produce el mismo código MD5.
La función de compendio de mensajes es una herramienta poderosa para
detectar cambios muy pequeños en archivos o mensajes muy grandes; usted
calcula el código MD5 del mensaje y lo guarda en lugar aparte. Si cree que el
archivo ha sido modificado (a propósito o por accidente), solo recalcula el código
MD5 y lo compara con el MD5 creado originalmente. Si son idénticos, hay una
probabilidad muy alta de que el archivo no haya sido modificado.
Dos archivos diferentes pueden tener el mismo valor de compendio. Esto se
conoce como una colisión. Para que una función de compendio de mensajes sea
segura debe ser imposible computacionalmente encontrar o producir tales
colisiones.
Usos de las funciones de compendio de mensajes
Las funciones de compendio de mensajes se utilizan ampliamente hoy en día
por varias razones:
Son mucho más rápidas que las funciones criptográficas de llaves simétricas
tradicionales, pero parecen compartir muchas de sus fuertes propiedades
48
49. criptográficas
No hay restricciones de patente en ninguna de las funciones de compendio
de mensajes que se utilizan en la actualidad
No tienen restricciones de exportación
Al parecer proporcionan una excelente forma de esparcir el azar (entropía)
de una entrada entre todos los bits de salida de la función.
Para generar un número "aleatorio", simplemente se puede tomar un gran
número de fuentes de datos que aparenten cambiar a través del tiempo; por
ejemplo; las bitácoras, relojes de tiempo real y entradas del usuario, y se pasa
toda la información a través de una función de compendio de mensajes. Si hay
más bits de entropia en el bloque de entrada que bits de salida de la función, se
puede suponer que todos los bits de salida son independientes y aleatorios,
siempre y cuando la función de compendio de mensajes sea segura.
Mediante un compendio de mensajes es posible crear llaves de encriptación
para códigos de encriptación simétrica, permitiendo a los usuarios introducir frases
de acceso. La llave de encriptación se produce calculando el compendio de la
frase introducida.
Los compendios de mensajes pueden usarse con facilidad para generar
códigos de autenticación de mensajes que utilicen un secreto compartido entre
dos partes para comprobar que el mensaje es auténtico. Se agregan los códigos
de autenticación al final del mensaje que se va a verificar (la RFC 2104 describe
cómo utilizar hash con llaves para la autenticación)
Las funciones de compendio de mensajes también forman parte importante
de muchos sistemas de criptografía de llave pública.
49
50. Los compendios de mensajes forman la base de la mayoría de los
estándares de firmas digitales y en vez de firmar todo el documento simplemente
firman un compendio
Los códigos de autenticación de mensajes basados en compendios de
mensajes proporcionan la seguridad "criptográfica" de la mayoría de los protocolos
de enrutamiento de Internet
Resulta desconcertante que haya pocas bases teóricas publicadas acerca de
las funciones de compendio de mensajes.
Ataques contra las funciones de compendio de mensajes
Existen dos tipos de ataques contra las funciones de compendio de
mensajes. El primero consiste en encontrar dos mensajes --los que sean-- que
tengan el mismo compendio. El segundo ataque es más general: dado un mensaje
específico, encontrar otro que tenga el mismo compendio. Tiene valor añadido si
el segundo mensaje es legible por las personas, en el mismo idioma y en el mismo
formato de procesador de palabra que el primero.
Por qué publicar un ataque
Durante años, la criptografía ha sido una disciplina académica y los
criptógrafos han hecho públicos sus resultados en publicaciones en Internet y por
medio de prestigiosas conferencias.
Con el paso del tiempo, si la criptografía se convierte cada vez más en la
base del comercio electrónico, esta tendencia puede cambiar. En vez de publicar
sus resultados, algunos matemáticos pueden decidir explotarlos y utilizarlos como
herramientas para defraudar a los bancos y otras instituciones financieras.
50
51. No se sabe si este enfoque pueda tener éxito o no. Se puede hacer mucho
más dinero por medio del fraude que en el mundo académico. Por otra parte, no
es probable que los bancos confíen sólo en la fuerza de sus protocolos
criptográficos para proteger sus recursos.
MD5 es quizá suficientemente seguro para usarse durante los próximos cinco
a diez años. Aún si es posible encontrar colisiones MD5, será muy difícil convertir
este conocimiento en un ataque de propósito general. No obstante, es mejor tener
una función de compendio de mensajes que no tenga debilidades conocidas,
razón por la que cambian a un algoritmo más seguro.
Infraestructura de llaves públicas
Los sistemas de encriptación por llave pública requieren que cada usuario
cree dos llaves:
Una llave pública, utilizada para enviar correo electrónico y para verificar su
firma digital
Una llave secreta, utilizada por el usuario para desencriptar mensajes
recibidos y para plasmar su firma digital
Aunque las llaves secretas están diseñadas para que mantengan el secreto,
las llaves públicas están diseñadas para publicarse y difundirse ampliamente.
Sin embargo, resulta que es necesario guardar más información junto con
cada llave pública.
Además de la información de encriptación, puede ser provechoso almacenar
el nombre del usuario u otro tipo de información identificatoria. De otro modo, si
tuviéramos las llaves públicas de tres personas--digamos, Sascha, Wendy y
Jonathan--no habría forma fácil de diferenciarlas. Además, es necesario guardar
51
52. más información junto con cada llave secreta, de modo que se pueda saber cuál
llave secreta corresponde a cuál. (4)
52
53. CAPÍTULO III
ANÁLISIS DE SOFTWARE Y HARDWARE EXISTENTES PARA LA
PROTECCIÓN DE INFORMACIÓN
De acuerdo al planteamiento teórico del capítulo anterior, en este apartado
se hará un análisis del software y hardware para la protección de datos, con el
propósito de encontrar el producto más adecuado para ello.
Primeramente analizaremos los productos de la empresa Rainbow
Tecnhologies.
Los desarrolladores de software son unos artistas cuyo producto de su
talento ofrece significativos beneficios en el diario ejercicio de actividades
administrativas, industriales, científicas, educativas, informativas, comerciales, de
misión crítica e incluso en nuestra vida diaria.
El uso de software en las organizaciones da como resultado sistematización
y automatización en las actividades, minimizando los errores y generando
importantes ahorros.
Estas aplicaciones o programas han alcanzado gran reconocimiento regional,
nacional e incluso internacionalmente. En muchos casos se convierten en un
estándar, son aplicaciones muy exitosas y reconocidas, lamentablemente esto no
significa un beneficio directamente proporcional en cuanto a los ingresos por
ventas de estas soluciones.
Es muy importante entender que durante el proceso idóneo de una empresa
de software se debe distribuir, facturar y cobrar los productos. Muchas veces esta
relación está desproporcionada, es decir, se distribuye más software del que se
factura, y se factura más de lo que se cobra. Por lo tanto, hay un gran número de
copias que no son pagadas.
53
54. La piratería es un mal que lastima severamente a la industria de software.
Eventualmente la situación económica, otras veces la comodidad e ignorancia
sobre el tamaño del delito y su repercusión, y otras veces el dolo, hacen que los
desarrolladores de software tengan fuertes fugas de ingresos.
Todo lo anterior sin mencionar el alto costo de asesorar, dar soporte técnico,
actualización de versiones y demás, que eventualmente atiende a usuarios
piratas, los cuales no han pagado la licencia de uso del software.
Por otro lado, la evolución tecnológica y comercial obligan un nuevo
paradigma en muchos sentidos. Mercados globalizados, consumidores más
exigente, mejores comunicaciones, internet, etc., son sólo algunos ejemplos de
nuestra nueva era, para poder ser exitosos es este nuevo paradigma es necesario
salir del esquema comercial tradicional.
¿Para que sirve el sentinel?
Esta pregunta obliga una serie de reflexiones sobre el paradigma tradicional.
Evitar Piratería. La industria de software propone una serie de situaciones
interesantes:
♦ No contamina,
♦ Utiliza gente con determinada preparación,
♦ Crece anualmente más que otras industrias, y muchas otras ventajas.
Sin embargo, dado que el software es intangible, y se distribuye a través de
un disco con un muy bajo costo, es propenso a ser plagiado con mucha frecuencia
y facilidad.
Sobre piratería se puede decir mucho, se dice que 1 de cada 20 programas
es original. Este dato es muy poco halagador para los productores de software.
54
55. Pero más que un guardian, la Sentinel ofrece un panorama al productor de
software difícil de igualar, veamos otros beneficios:
♦ Renta de software. Esta opción ofrece muchas ventajas cuando el
precio de venta del software es alto. Usando Sentinel se podrán
desplazar los producto haciendo cobros trimestrales y ofreciendo
incluso una póliza de mantenimiento al usuario.
♦ Manejo de demos con vida finita. En algunos casos los usuarios
solicitan que les prestemos el software un tiempo para su evaluación,
esto inquieta ya que puede llegar a ser la última vez que nos reciba esta
empresa, ya que fue muy fácil copiar el sistema y usarlo.
♦ Promoción de todas sus aplicaciones. Incluya en una sola caja todas
sus aplicaciones y únicamente será posible ejecutar la que pago
derechos de uso, las demás funcionarán en forma demo. Bajo este
esquema el usuario conocerá la familia de sus aplicaciones y sus
bondades, teniendo la ventaja de que cuando las decida comprar sólo
hay que enviarle una contraseña posterior a su pago. Así disminuimos
costos e incrementamos las oportunidades de mayores ingresos.
♦ Generación de ingresos sobre la venta de actualizaciones. El
ingreso más importante de un fabricante de software es la venta de
actualizaciones, ¡pregúntele a Bill Gates!!. ¿Su estrategia comercial
considera este punto??. Para este efecto es importante que los
usuarios que legalmente adquirieron la versión 1.0 paguen los derechos
por la 2.0, por la 3.0, etc., etc.
♦ Tangibilización del software. La piedra angular de la piratería es que
el software es intangible. Basados en la inconciente percepción de esta
55
56. situación, muchos mayoristas de software no desean invertir en un gran
inventario, pues prefieren poner su dinero en hardware que es tangible!.
Considere este punto y justifique la estrategia de venta a consignación
en los intermediarios de programas para computadoras.
♦ Asegure su producto. Muchos empresarios aseguran sus
instalaciones, sus equipos, tienen seguro de vida e incluso seguro de
gastos médicos, entonces ¿porqué no asegurar el producto que brinda
bienestar a su empresa, trabajadores y a su familia?.
♦ Uso de software por puntos. Le gustaría que su software se venda
como tarjetas ladatel?, esto es, de acuerdo al uso es el pago, el
Sentinel lleva el control de los puntos disponibles, ¡cuando éstos se
agotan cóbrele a sus clientes por más puntos y actualice el contador del
Sentinel por Internet.
Ventajas generales de protección con hardware
♦ El método más seguro. No interfiere con la logística de la operación
comercial y de distribución física del software
♦ Protección de múltiples productos con un sólo dispositivo Sentinel.
♦ Transparente para el usuario.
♦ Modelos para monousuario y red.
♦ Fácil de instalar por el usuario final.
♦ Fácil de implantar por el desarrollador.
♦ Compatible con DOS, OS/2, Windows, Unix, Novell...
56
57. Tabla de características generales y beneficios de protección con hardware
sentinel
♦ Memoria de lectura y escritura. Protección de varias versiones, módulos o
programas. Personaliza la protección por usuario. Control de distintas
versiones. Programable.
♦ Algoritmos. Número ilimitado de preguntas y respuestas. Virtualmente
imposible determinar el comportamiento.
♦ Varios modelos de Sentinel. Se garantiza compatibilidad con su estrategia
comercial.
♦ Passwords. Seguridad. Control. Unicos por usuarios. Confidenciales.
♦ Cascadeable. Pueden conectarse varios Sentineles a la vez (Pro y
SuperPro).
♦ Contadores. Ayudan a controlar el número de veces que deseamos se
active un determinado evento. Ayuda a ofrecer demos finitas.
♦ Software Shell (Pro y SuperPro). Ayuda a proteger una aplicación sin tener
acceso al código fuente. Protección automática de una aplicación. Ahorra
tiempo y esfuerzo. Muy útil cuando no existe la interface del desarrollador.
♦ Software Wizard (SuperPro). Lo lleva a uno de la mano para programar o
formatear el Sentinel de acuerdo a nuestras necesidades o caprichos.
Contiene un editor que ayuda a visualizar y modificar el contenido del
Sentinel.
♦ Se instala en el puerto paralelo. Transparente para el usuario. Todas las
computadoras tienen este puerto. Sumamente fácil de instalar el Sentinel en
este puerto.
♦ Controla la ejecución del programa. Sólo una persona a la vez puede usar
el programa (monousuario). Determina el número de personas que
concurrentemente pueden usar la licencia (red).
♦ Varias interfaces y plataformas. Es compatible técnicamente con su
lenguaje de programación así como con distintos sistemas operativos.
57
58. ♦ Certificación ISO-9002 desde 1994. Calidad certificada. Empresa seria,
actualizada y confiable. Producto hecho con componentes de calidad los
cuales garantizan un excelente desempeño
♦ Reconocimiento mundial
Ventajas generales de protección con software sentinel lm
♦ Económico.
♦ Sumamente flexible.
♦ Ideal para distribuir y activar software por internet.
♦ Ofrece demos de su aplicación.
♦ Versión monousuario y red.
♦ La aplicación se "amarra" a una computadora, no necesita un hardware, sin
embargo, la aplicación también se puede amarrar a un Sentinel para
robustecer la seguridad.
♦ Transferencia de licencia de una PC a otra.
♦ Registro de usuarios.
♦ Multiplataforma: soporta Windows, Unix, Java.
♦ Solución nativa para red.
Tabla de características generales y beneficios de protección con hardware
sentinel lm
♦ Tecnología de amarre a una PC o Server. La aplicación solamente
funciona en una computadora.
♦ Activación remota de la licencia. El usuario podrá usar el software como
demo por un tiempo determinado, posteriormente debe de pagar los
derechos para la activación y uso del mismo, esta activación la realiza
remotamente el desarrollador después de recibir el pago del software.
58
59. ♦ Varias interfaces y plataformas. Es compatible técnicamente con su
lenguaje de programación así como con distintos sistemas operativos.
♦ Software Shell. Ayuda a proteger una aplicación sin tener acceso al código
fuente. Protección automática de una aplicación. Ahorra tiempo y esfuerzo.
Muy útil cuando no existe la interface del desarrollador. Ahorra tiempo y
esfuerzo
♦ Certificación ISO-9002 desde 1994. Calidad certificada. Empresa seria,
actualizada y confiable. Producto hecho con componentes de calidad los
cuales garantizan un excelente desempeño
Sentinel Super Pro para monousuario
Sentinel LM es un esquema de protección para software basado en software
ENCRYPTION PLUS SUITE: Software para codificar información dentro de
windows. Exporta información encryptada.
Sentinel Pro
Proteccion de alto nivel basada en algoritmos.
El Sentinel Pro se basa en un circuito de tecnología ASIC propietaria de
Rainbow. La característica de constantes cambios en las respuestas del algoritmo
hacen que este dispositivo sea de alta seguridad. Trabaja en DOS, OS/2,
Windows, UNIX y XENIX. Compatible con el programa Shell.
Caracteristicas y beneficios del sentinel super pro
- Dispositivo físico de hardware se conecta al puerto paralelo (Super Pro y
Super Pro 797) o al puerto USB (Super Pro USB).
- Soporta más de 100 lenguajes de programación
- Trabaja en DOS, WINDOWS y UNIX
59
60. - Cuenta con memoria de lectura y escrutura
- Cuenta con 128 Bytes de memoria
- Es programable y re programable
Sentinel Super Pro (Versión Normal, 797 y USB)
Proteccion basada en múltiples algoritmos y memoria.
Cada Sentinel SuperPro contiene 128 bytes de memoria de lectura y
escritura organizada en 64 palabras de 16 bits cada una. Por ejemplo, una palabra
puede ser usada como contador de tiempo para el caso de controlar la renta de
software. También contar las ejecuciones para una operación limitada de un
demo.
Las celdas o palabras pueden ser previamente programadas con información
del cliente, números de serie, palabras clave, etc., o bien, su aplicación puede
alterar y/o reprogramar el contenido de ciertas palabras durante la ejecución de la
misma. Para máxima seguridad, puede generar algoritmos por cada par de
palabras. Lo interesante es que puede tener varios algoritmos y cada uno de ellos
ofrecer la más alta seguridad a diversas aplicaciones o módulos de su sistema.
De esta forma puede proteger múltiples aplicaciones o controlar diferentes
módulos, esto es tener una serie de aplicaciones que giren alrededor de una y
tener todas éstas protegidas a la vez. Asimismo las nuevas versiones se pueden
autoproteger en el campo, actualización remota, ejecución permitida entre fechas,
demos controladas, etc. Trabaja en DOS, Windows y Unix. Además de contar con
el Sentinel Wizard, el cual es un software que ayuda a utilizar el Sentinel y
proteger una aplicación.
♦ SuperPro 797 – Es físicamente menor que el SuperPro normal, mide sólo 2
centímetros y el funcionamiento es igual.
♦ SuperPro USB – Mismo concepto que el SuperPro normal pero para el
puerto USB.
60
61. ♦ Sentinel DUO – Se conecta al puerto USB, en PC trabaja como SuperPro y
en MAC como Eve 3.
MicroDog GS-MH
El Microdog GS-MH es una herramienta inteligente de protección de
software, cuyo Kit de Desarrollo, o SDK por sus siglas en inglés, incluye una llave
MicroDog de protección física (dongle) y el software de instalación y soporte.
La llave Dog esta compuesta por un solo chip microprocesador y 200 bytes
de memoria no volátil.
El software de soporte corre en DOS y en Windows 3.x/9x/NT/2000, y es
compatible con varios tipos de lenguajes y tipos de archivos de distintas
computadoras.
Características principales:
1.- Shell y API'S.
Protección por utilería de Shell y API'S. Este producto permite protección
automática con la utilería Shell y también comandos dentro de su código fuente
(API'S). Asímismo para incrementar la seguridad se puede utilizar, una
combinación de ambos. Es interesante destacar que usando la utilería de Shell el
programa puede funcionar en modo demo por un tiempo definido sin necesidad de
tener la presencia del dispositivo
61
62. 2.- Pasword único
Para escribir o leer datos en la llave se utiliza un único password el cual
puede ser modificado por el desarrollador las veces que lo desee.
3.- Memoria de lectura y escritura
MicroDog ofrece una memoria no volátil de lectura y escritura con capacidad
de hasta 200 bytes.
4.- Un algoritmo
Para incrementar la seguridad, MicroDog cuenta con un algoritmo de
consulta el cual responde valores encriptados. Los caracteres de la consulta
pueden ser alfanuméricos.
El algoritmo es definido por el programador si lo desea, modificando los
factores del algoritmo de las celdas 196 a la 199 con posibilidad de hasta
16,777,216 diferentes combinaciones.
3.- Compatibilidad con lenguajes de programación y plataformas más
comúnes
Las interfaces que soporta MicroDog están disponibles para los siguientes
lenguajes: C, C++(MS, Turbo, Borland, High, NDP, Watcom), FORTRAN(MS,
NDP, LAHEY, PowerStation), ASM, BASIC(BASCOM, Quick, True), FOXPRO(for
DOS/WINDOWS), Java, Clipper, Foxbase, Dbase, ESE/COM/EXP, VisualBasic,
VisualFoxpro, PowerBuilder, Delphi etc.
4.- Técnicas de seguridad que integra Microdog
62
63. Utilizando MicroDog se crea una barrera entre los productos de software y la
piratería. Diferentes tecnologías de MicroDog evitan que se pueda romper la
protección de sus programas:
Random Noise Technology Technique:
Permite que la comunicación entre el programa y la llave sea codificada
evitando que pueda ser monitoreada la información que se intercambia entre la
aplicación y MicroDog.
Timer Technique:
Toda operación que se realiza con la llave tiene un tiempo de respuesta
definido normalmente, si este tiempo se excede, responderá valores incorrectos.
AS Technique:
Trabajan en conjunto el Shell (protección automática sin modificar el código
fuente) y las llamadas API'S (protección a través del código fuente del programa).
Maze Technique:
Al momento de compilar con API'S se agrega basura al código ejecutable.(1),
(4)
Ahora analizaremos los productos de la empresa WIBU SYSTEM
WIBU-KEY es el sistema técnicamente más avanzado de protección de
copias y control de licencias que se puede encontrar hoy en día..
63