La licencia de uso de un programa en particular regula las maneras en las que el usuario puede utilizarlo. Si bien la variedad de tipos de licencia abarca todo el rango de posibilidades, desde las condiciones más leoninas hasta las más liberales, se las puede clasificar en dos grandes categorías: por un lado están las licencias conocidas como "libres", y por otro las "propietarias". La gran diferencia entre estos tipos de licencia consiste en que un software licenciado de modo propietario por lo general otorga al usuario solamente el derecho de ejecutar el programa "tal como es" (es decir, con errores incluídos) en determinada computadora, prohibiendo expresamente todo otro uso, mientras que el software gobernado por una licencia libre permite al usuario no solo ejecutar el programa en tantas computadoras como desee, sino también copiarlo, inspeccionarlo, modificarlo, mejorarlo, corregir errores y distribuirlo, o contratar a alguien para que lo haga por él.
Estos derechos adicionales son herramientas clave e indispensables de todo software que vaya a ser usado en el entorno de la administración pública.
El hecho de permitir la inspección del programa es una excelente medida de seguridad, ya que al estar expuestos los mecanismos, estos están constantemente a la vista de profesionales capacitados, con lo que se vuelve inmensamente más difícil ocultar funciones maliciosas, aún si el usuario final no se toma el trabajo de buscarlas él mismo.
Al adquirir una licencia de uso de software propietario, en cambio, el usuario obtiene el derecho a ejecutar el programa en una computadora, pero no a conocer el mecanismo mediante el que el programa opera. Un elemento esencial de toda licencia propietaria es la prohibición expresa al usuario de acaso intentar descubrir la manera en la que el programa funciona. Esta limitación puede ser razonable para un programa de juego, pero es inaceptable en todos aquellos casos en los que el programa maneja información útil, ya que al estar impedido de inspeccionarlo, al usuario sólo le queda la posibilidad de confiar en que sus proveedores, y también todos y cada uno de los empleados de sus proveedores, e incluso las entidades gubernamentales bajo las que su proveedores operan, se comporten de manera impecable y priorizando la seguridad del cliente aún por encima de sus propios intereses comerciales, nacionales o estratégicos. Esta confianza ya ha sido rota repetidas veces. Valgan dos ejemplos de la larguísima lista, ambos ampliamente documentados:
Nunca quedó claro si la puerta trasera había sido instalada con conocimiento de la dirección de la empresa o no. El hecho de haber hecho público el programa sin haber eliminado previamente esas funciones (en cuanto evidencia incriminatoria) sugiere que éstas fueron incorporadas al producto por algún programador anónimo, sin autorización de la empresa. De lo que no caben dudas es de que la intención fue maliciosa, y los usuarios de este producto estuvieron, sin saberlo, varios años a merced de los iniciados en el secreto. Hoy, gracias a que el programa está disponible bajo una licencia libre, la puerta trasera pudo ser cerrada.
[Fuente: http://www.kb.cert.org/vuls/id/247371]
El mecanismo de seguridad de NT permite agregar mecanismos de encripción al sistema, pero sólo si esos mecanismos han sido previamente "firmados" digitalmente por Microsoft Corp., lo que puede ser interpretado como una medida razonable para asegurar al usuario que el mecanismo está intacto y no ha sido alterado antes de la instalación.
El hecho de que esté prohibido analizar el funcionamiento de un programa no quiere decir que nadie lo haga, y menos cuando de seguridad se trata. Especialistas en seguridad inspeccionaron, con gran esfuerzo y probablemente en violación de la ley, el mecanismo de seguridad de Windows NT, y descubrieron el lugar donde está almacenada la "clave pública" mediante la cual el programa puede determinar si la "firma digital" es auténtica o no. Lo curioso es que descubrieron que, junto a esta clave pública, había almacenada una segunda, de origen y función desconocidos. Esto llamó la atención de alguna gente, pero siendo imposible determinar para qué servía la segunda clave, la cosa pasó relativamente inadvertida.
Un tiempo después, Microsoft liberó el fatídico "Service Pack 5", una actualización del sistema operativo, y lo puso a disposición del público a través de Internet. Lo particular del caso es que, durante el proceso de producción de esta actualización, algún empleado de Microsoft se olvidó de llevar a cabo un paso de "limpieza previa" de los programas. El objetivo de esta limpieza es eliminar del programa todo rastro de los nombres con los que el programa se refiere a cada elemento de datos. La omisión del paso de limpieza permitió a los especialistas originales corroborar que lo que habían encontrado era la clave pública de Microsoft, ya que el sistema se refería a ese item de datos bajo el nombre "MS_KEY" (abreviatra de "Microsoft Key", o "Clave de Microsoft"). La sorpresa fue grande, sin ambargo, cuando vieron que el nombre de la segunda clave era "NSA_KEY" ("Clave de la NSA").
Microsoft salió por cierto al cruce de la acusación de haber incluído una clave de la NSA en Windows NT, alegando que esa segunda clave era también de Microsoft, pero nunca ofreció una explicación satisfactoria para el nombre de la clave, ni indicación alguna de su función. Concretamente, no sabemos si la NSA tiene o no una puerta trasera a todas las computadoras que operan con Windows NT (y subsiguientes) del planeta, pero existe suficiente evidencia circunstancial como para preocuparse, sobre todo para entidades que manejan datos confidenciales, ya que la única suposición que puede hacerse sin comprometer su seguridad es que la NSA tiene completo acceso a ella.
[Fuente: http://www.f-secure.com/news/1999/19990906.htm]
Una forma particularmente insidiosa de esta dependencia tecnológica se produce a través de la manera en que se almacenan los datos. Si el programa usa un formato de almacenamiento estándard, entonces el usuario puede estar seguro de que en el futuro podrá seguir descifrando la información. Si, por el contrario, los datos se almacenan en un formato secreto, el usuario queda atrapado en un determinado proveedor, que es el unico que puede ofrecer alguna garantía de acceso a ellos.
Además, el software libre permite al usuario corregir y modificar el programa para adecuarlo a sus necesidades. Esta libertad no está destinada solamente a los programadores. Si bien son éstos los que pueden capitalizarla en primera mano, los usuarios también se benefician enormemente, porque de esta manera pueden contratar a cualquier programador (no necesariamente al autor original) para que corrija errores o añada funcionalidad. Las personas que puede contratar no sólo no tienen exclusividad alguna sobre la posibilidad de contratación, sino que tampoco la adquieren a partir de sus modificaciones. De esta manera, el usuario puede asignar sus recursos a resolver sus necesidades de acuerdo a sus propias prioridades, pidiendo varias cotizaciones y quedándose con aquella que le ofrezca mejor relación precio/prestación, sin exponerse a chantajes y extorsiones.
Detengámonos un momento en este punto, para saborear lo que esto implica: los datos del usuario, datos en los que el autor del software no tuvo ninguna participación, son codificados y almacenados en un formato secreto, propiedad del autor del programa, y que el usuario no tiene derecho a investigar.
Lo que ocurre aquí es que los datos del usuario están siendo tomados como rehén por el productor de software: dado que el formato es secreto, la única manera que el usuario tiene de asegurarse que aún en el futuro podrá acceder a esos datos, es a través de continuar usando programas de ese autor, y no de otro. Es cierto: muchos programas ofrecen la posibilidad de leer documentos codificados en formatos foráneos (por ejemplo, WordPerfect y Word pueden cada uno leer archivos creados por el otro), esta función es por lo general incompleta (es común la pérdida de imágenes, fuentes, etc.) y poco confiable, perdiendo a menudo información que estaba presente bajo la aplicación original, pero que no aparece en la nueva.
El objetivo que el autor de software propietario persigue con esta estrategia es que la comunicación más perfecta y sencilla se produzca exclusivamente entre usuarios del mismo programa. Lo peor es que la estrategia funciona. La razón más citada para usar Microsoft Word es que "es la única manera de intercambiar datos cómodamente con el resto del mundo", independientemente de la calidad o el precio del producto. Si Word almacenara los datos siempre en un formato público (lo que sería perfectamente factible), el usuario podría elegir cuál programa es el que mejor satisface sus necesidades, independientemente de cuánta gente lo usa. Por cierto, Word es solo un ejemplo. Si no fuera Word el programa dominante de la categoría, habría otro que estaría en su lugar, y el argumento seguiría valiendo con la misma fuerza, dado que el software propietario, como mecanismo, conduce inevitablemente al monopolio.
Peor aún, al estar los datos codificados en un formato secreto, el usuario depende absolutamente de que el propietario del software continúe permitiéndole el uso de los programas, porque de otra manera no puede acceder a su propia información. El propietario del software tiene, a todos los efectos prácticos, la potestad de decidir si un usuario determinado puede acceder o no a los datos que él mismo elaboró.
De la misma manera, valiéndose del mismo mecanismo de almacenar datos en formatos secretos que pueden cambiar a discreción, sin necesidad de autorización, los productores de software propietario periódicamente obligan a sus clientes a adquirir actualizaciones innecesarias de sus programas. El recurso es simple: comercializan una versión nueva del producto, y retiran la vieja del mercado. La nueva versión usa un nuevo formato, incompatible con el anterior. El resultado es que el usuario, aún si está conforme con las prestaciones de la versión con la que cuenta, no tiene más remedio que adquirir la versión más "moderna", porque es la única forma que tiene de leer los archivos que le envían sus conocidos y colegas que tienen la versión nueva.
Por cierto, a menudo estas actualizaciones forzadas traen aparejadas otras, porque el nuevo software tiene requerimientos de hardware más ambiciosos, y consume más memoria, o necesita un procesador más rápido, causando gastos innecesarios, etc.
Lamentablemente, los profesionales locales no pueden dar respuesta a estos problemas, porque el conocimiento necesario para darla está restringido a los empleados del propietario de los programas en juego. Es cierto: los propietarios ofrecen onerosos cursos en los que capacitan profesionales para resolver problemas, pero ellos dictan la profundidad de esos cursos, nunca revelan todos los detalles, y no proveen ninguna manera de corroborar que lo que enseñan es realmente correcto. En suma, nadie sabe exactamente qué pasa, solamente sospecha. Y aún si una de estas sospechas fuera correcta, aún en el improbable caso de que alguien, fortuitamente, descubriera la causa de un determinado error y pudiera eliminarlo para siempre... ¡Tendría prohibido hacerlo!
El software propietario reduce a los profesionales locales al papel de "monos de apretar reset".
Al usar software libre, que los profesionales pueden analizar a fondo, comprender y mejorar, el usuario queda en posición de poder exigirle al personal de soporte que los sistemas cumplan su tarea a la perfección. Ya no cabe la excusa "lo que pasa es que se cae el XXX", donde XXX es cada día una nueva y oscura componente sobre la que el profesional no tiene control, y por ende responsabilidad. Aquí está todo abierto, todo el que quiere puede aprender, todo el que quiere puede colaborar, y si alguien no sabe es porque no quiso aprender, no porque alguien le ocultó la información necesaria para cumplir con su tarea.
Es cierto que no existen aún soluciones libres para todas la necesidades de los usuarios. Si vamos al caso, tampoco existen soluciones propietarias para todas las necesidades. En aquellos casos en que la solución libre no existe, hay que desarrollarla, lo que significa esperar a que alguien más tropiece con la necesidad y lo desarrolle, o desarrollarlo uno mismo (o lo que es igual, pagar para que alguien lo desarrolle). La diferencia está en que en aquellos casos en que sí hay una solución libre disponible, el usuario puede utilizarla inmediatamente y sin reparos de ningún tipo, mientras que con las soluciones propietarias siempre tiene que pagar, y lo que obtiene a cambio es una "solución" cerrada y secreta, en vez de una herramienta que le permita crecer y operar con seguridad y libertad.
El software libre sienta las bases para un desarrollo sólido y autónomo de los profesionales locales que ofrecen soluciones.
Esta falta de control alcanza niveles grotescos. Tomemos como ejemplo el sistema de emisión de pasaportes de la Policía Federal. Cuando argentinos que viven en el exterior tienen un hijo en un país que se rige por el Jus Sanguinis, digamos Alemania, el niño no es argentino ni alemán, es apátrida. Alemania se rehúsa a emitir un pasaporte para el niño. Argentina sí lo emite, pero a la hora de ingresar la nacionalidad del niño, el programa carece de la opción "apátrida", por lo cual se lo anota como alemán, decisión tan arbitraria como designarlo hindú. En síntesis, tenemos aquí un caso en el que el defecto de un programa de software modifica de hecho la legislación.
La licencia limitada de uso bajo la que se comercializa el software propietario no solo es onerosa, sino que además coloca al usuario en multitud de problemas. Por ejemplo, la obligación de pagar nuevamente al proveedor del sistema cada vez que expande su operación, pese a que éste no aporta nada nuevo. Peor aún, el proveedor obliga al cliente a hacer su propia auditoría respecto de la correcta aplicación de las licencias. Este problema se agrava debido a la falta de provisión, por parte del titular de los derechos de autor, de herramientas efectivas para controlar el uso de software, de modo que, a medida que aumenta la cantidad de máquinas y usuarios, este mismo control se va haciendo cada vez más caro, hasta superar los costos de la misma licencia.
También desde los puntos de vista social y estratégico es imperativo el uso de software libre. Es la única manera de garantizar no sólo la democratización del acceso a la información y los sistemas del Estado, sino también la competitividad de la industria local de software, potencial fuente de trabajo de altísimo valor agregado. Creemos importante destacar que no es esta una medida proteccionista: independientemente de su origen, se trata de privilegiar aquel software cuya licencia alienta la participación y colaboración de profesionales del medio en vez de discriminarlos, a la vez que estimula la competencia.
La dependencia tecnológica emergente de la naturaleza del software propietario es claramente inaceptable para el Estado. Ya hay instituciones torciendo las leyes para adaptarlas al software que les vendieron. Los contribuyentes nos vemos forzados a adquirir software de una determinada marca y modelo al solo efecto de cumplir nuestras obligaciones tributarias. El Estado está expuesto al chantaje a través de la información que tiene almacenada en formatos propietarios secretos, al sabotaje a través de vulnerabilidades deliberadas, y todo esto a pesar de estar disponibles las herramientas y los conocimientos necesarios para no estar expuestos a estos problemas.
El Estado, por su envergadura y por su papel de administrador de los bienes comunes, es particularmente vulnerable a los riesgos del software propietario, a la vez que está en una posición particularmente estratégica para beneficiarse con las ventajas del software libre, y también para contribuir a su desarrollo. Pongamos por ejemplo a las provincias, todas embarcadas en costosísimos programas de informatización, que podrían formar un conglomerado para financiar el desarrollo de una solución libre a su problemática, y compartirla entre todas. El Estado Nacional está en una situación similar, si contamos con el hecho de que las distintas reparticiones regionales de un mismo ente requieren licencias de uso de software adicionales.
Actualmente, existen soluciones de software libre listas para instalar y usar en las siguientes funciones, entre muchas otras:
Por cierto, no existen aún soluciones libres para todos y cada uno de las necesidades que podamos imaginar, pero eso también es cierto del software propietario. En estos casos, la respuesta es, claramente, desarrollarlo, creando una solución duradera, que nos permita crecer y administrar nuestros datos con seguridad y libertad.
Copyright
Copyright (c) 2001 Federico Heinz
Se garantiza el permiso para copiar, distribuir y/o modificar este
documento bajo los términos de la Licencia de Documentación
Libre GNU, versión 1.1 (GNU Free Documentation License, Version
1.1 ) o cualquier otra versión posterior publicada por la Free Software
Foundation; este documento se presenta sin Secciones Invariables (no Invariant
Sections), sin Textos de Tapa (no Front-Cover Texts) y sin Textos de Contratapa
(no Back-Cover Texts).
Una copia de la licencia está incluida en la sección
titulada "GNU Free Documentation License".