La libertad en el mundo del software
En el contexto en el que vivimos donde los equipos de cómputo son ya una herramienta fundamental en nuestras vidas, es importante que reconozcamos los elementos que ponen en riesgo nuestra propia seguridad y la de otros. El hecho de que hoy en día un gran número de individuos posean teléfonos inteligentes, tabletas, computadoras portátiles o de escritorio hace que el espionaje se haya vuelto una tarea muy fácil y que la obtención de información mediante técnicas de ingeniería social sea como un juego de niños para las agencias de inteligencia en el mundo.
Con la intención de estar informados y por lo tanto, de poder defendernos mejor de las agresiones que sufrimos, muchas veces sin saberlo, es necesario dar un paseo por algunos conceptos relacionados con los programas de cómputo que son, al final de cuentas, los que dan vida al equipo físico, ya sea un teléfono o una PC.
El mundo de los programas computacionales y de las aplicaciones para los dispositivos móviles es bastante complejo. En este sentido, la intención de este artículo es la de brindar, a manera de introducción, algunos conceptos básicos. Fundamentalmente, existen cuatro tipos de programas: libre, privativo, gratuito y de paga, los cuales, mediante sus combinaciones, forman la diversidad que hoy conocemos y que se rigen a través de un sistema de licencias que proveen los términos y las condiciones con los que se podrá hacer uso de ellos [1, 2, 3].
Cuando decimos que un programa de cómputo es libre, (incluimos aquí al de código abierto), quiere decir que su código fuente, es decir, el conjunto de instrucciones que lo hacen funcionar, son visibles al público en general. Esto supone una ventaja asombrosa sobre la otra forma de programa, que es el propietario o privativo, ya que, en el libre, cualquiera que desee y que cuente con el conocimiento suficiente, podrá leerlo, estudiarlo para comprender su funcionamiento y si así lo desea, también podrá compartirlo con los demás; además, podrá modificar ese programa computacional, ponerle o quitarle instrucciones para que funcione de acuerdo a sus necesidades. Mientras que en el caso del software de código cerrado (privativo), eso no es posible pues, los desarrolladores, mayormente contratados por las compañías de software, no permiten el acceso al código computacional para ser leído o modificado. Además, el software libre (que no necesariamente es el caso del de código abierto) tiene permiso para ser copiado, distribuido e instalado en donde se desee, mientras que el propietario no.
Cabe aclarar que, en el ámbito de la libertad de los programas computacionales, los expertos suelen diferenciar los conceptos de “software libre” y “código abierto” ya que, sin duda alguna, sus filosofías son distintas, aunque en la práctica buscan el mismo objetivo: tener códigos fuente accesibles y abiertos [8, 9].
Por otro lado, tenemos el software gratuito y el de paga. El software gratuito es el que se puede adquirir sin costo alguno mientras que el de paga exige el pago de una cantidad de dinero para poder usarlo (no se adquiere el programa como tal; el dueño sigue siendo la empresa que lo diseñó). Por ejemplo, hay varios programas para la edición de video en el mercado como lo son OpenShot Video Editor [4] o Final Cut Pro [5]. Ambos permiten la edición profesional de video. Sin embargo, el primero es gratuito y el segundo no; además de que el primero es libre y el segundo no. En la actualidad, se cuenta con un gran número de programas gratuitos y libres que permiten hacer mucho de lo que los programas de paga hacen y son una excelente opción para los entusiastas en el mundo de la tecnología y el software.
Ahora bien, que un programa sea gratuito no implica que sea de código abierto o libre, ni viceversa. Existen programas de cómputo o conjuntos de ellos que cumplen con ambas características: ser libres y gratuitos. Tal es el caso del sistema operativo openSUSE [6], que a diferencia de otros cuenta con una licencia GNU (libre). No así los de Microsoft o Apple, los cuales, por lo general tienen licencias de código privativo o en el mejor de los casos, de código compartido, en donde se especifica qué es abierto y qué no.
Entonces, la idea general es que existen programas de cómputo que son gratuitos y otros que no lo son. Además, algunos permiten la edición de sus códigos internos como su código fuente y la posible modificación de sus archivos binarios. En este caso, se cuenta con diversos tipos de licencia de código abierto [2] o de software libre [3] que incorporan algunas restricciones. Por lo general, se pide que siempre se nombre al autor o autores originales del programa (dar crédito al autor) sin tener que pagar por el uso del mismo. Cuando no se pide hacer referencia al autor, se dice que el programa cuenta con una licencia de software de dominio público [2, 9].
Por lo tanto, podemos tener programas libres tanto gratuitos como de paga. Y de igual manera, pueden existir programas privativos gratuitos o de paga. Por ejemplo, el Acrobat Reader es un programa de visualización de archivos en formato PDF que es gratuito pero privativo [7]; es decir, no nos cuesta dinero bajarlo e instalarlo, sin embargo, no podemos modificar ni ver su programación interna.
El conocer qué programas computacionales son de código abierto o de código cerrado puede hacer la diferencia entre poder dar resguardo a nuestros datos y privacidad y el entregar toda nuestra vida a las compañías que desarrollan software.
Muchos programas gratuitos y libres son desarrollados por la llamada “comunidad”; es decir, por grupos de personas que van desde los usuarios del programa, hasta los programadores mismos. Dado que todos pueden abrir el código fuente para leerlo o modificarlo, suelen ser muy seguros pues es prácticamente imposible esconder en ellos código malicioso. Es importante mencionar que el hecho de que un programa sea de código abierto no significa que deba ser gratuito. Sin embargo, el software libre suele serlo. Muchas compañías se han creado con este ideal, pero por desgracia requieren tener una división que genere ganancias para lo cual tratan de añadir al software libre elementos adicionales por los cuales suelen hacer un cargo monetario. También, existen empresas que en lugar de vender características adicionales, venden soporte a los usuarios. De esta manera, se mantienen en el mercado y compiten con empresas que venden programas privativos.
Por otro lado, los programas gratuitos pero privativos tienden a ser propiedad de compañías de software bastante bien cimentadas y que sin duda alguna viven de esta actividad. El código no es abierto, por lo tanto, no es posible que nadie más que los desarrolladores que lo crearon, vean lo que sucede en su interior. Este simple hecho hace que no sea confiable en referencia al resguardo de los datos y la privacidad del usuario. No es posible saber si se incorpora en ellos software malicioso que pueda resultar en la vulneración de los datos o en el espionaje. Siempre hay que ser conscientes de los riesgos que conlleva instalar software privativo, pero sobre todo cuando es gratuito ya que, aunque leamos con cuidado los términos y condiciones, el no tener acceso a su código fuente es garantía de inseguridad para el usuario. Muchas empresas regalan su software justamente porque así pueden adquirir datos de los usuarios para vendérselos a otras compañías o en el peor de los casos, a otros gobiernos. Tal es el caso del tan sonado Windows 10, que entregó una cantidad inimaginable de copias a sus usuarios para actualizar su sistema operativo a cambio de aceptar los términos y condiciones en los cuales Microsoft podía tener acceso a toda la información del usuario, desde documentos hasta contraseñas.
Los programas computacionales pagados tienen restricciones de uso; es decir, que por lo general no se pueden copiar, compartir o instalar el número de veces que queramos. Además, puede ser que en apariencia confieran cierta “privacidad”; todo dependerá de los términos y condiciones que la empresa elija. Sorprende ver que en muchos casos, existen cláusulas que les permite hacer uso de los datos del usuario. Así pues, aún cuando de manera explícita se indique que la privacidad del usuario será resguardada, no es posible tener la seguridad absoluta de que la empresa no hará uso de los datos del cliente pues, como se ha dicho para el caso del software privativo, en los hechos tienen acceso a toda la información. Muchos de ellos incluso se atreven a añadir en su código fuente, de forma totalmente consciente, las llamadas “puertas traseras”, las cuales, son accesos conocidos sólo por quienes brindan el software y se usan para obtener datos sin que el usuario se entere. Por ejemplo, se sabe que ciertos teléfonos celulares de marcas muy conocidas vienen con software malicioso con puertas traseras desde la configuración de fábrica [11, 12], de manera que el usuario es incapaz de evitar el robo de ciertos datos, como por ejemplo, su ubicación en todo momento, qué tipo de aplicaciones utiliza y lo más grave es que pierde el control del dispositivo físico o hardware como el micrófono y la cámara del móvil. Con los datos recabados puede averiguarse con un alto grado de certeza el tipo de vida que lleva un individuo, cuánto dinero gasta, qué lugares frecuenta e incluso escuchar y visualizar su vida en tiempo real. Con la información de infinidad de individuos se pueden realizar los estudios de ingeniería social que arrojan resultados tan precisos como qué tipos de poblaciones (en el ámbito económico, político, educativo, ideológico, etc.) se tienen en los diversos lugares del mundo.
De forma muy general, podemos ver que los programas computacionales de código abierto (gratuitos o no) y en especial el software libre, son los mejores en términos de confiabilidad y transparencia con el usuario por su naturaleza intrínseca de estar abiertos a todos; mientras que los programas privativos o el conjunto de ellos (sistemas operativos) no pueden asegurar la privacidad del usuario. Como se ha dicho, en algunos casos el software de paga puede ser de código abierto, aunque por lo general, no es así.
Entonces, pregúntese primero antes de instalar cualquier aplicación o programa, ¿qué permisos pide? ¿a qué datos quiere tener acceso? ¿por qué? Por ejemplo, si quisiera instalar en su teléfono móvil una aplicación de un juego de solitario o de un canal de noticias, ¿para qué necesitarían estas aplicaciones permisos para tener acceso a sus llamadas, a los mensajes SMS, a sus contactos, a su cámara o micrófono? Su correcto funcionamiento ciertamente no depende de estas funciones. Además, lea siempre los términos y las condiciones, por más tedioso que parezca. Recuerde que la única forma de defenderse es estar muy bien informado.
Para mantener nuestro derecho a la privacidad es muy importante ser conscientes de los peligros que supone hoy en día el mundo del software en nuestra vida cotidiana. Como siempre, invito a que lean más sobre el tema ya que es vasto y complejo; que este pequeño resumen haya abierto la curiosidad en muchos usuarios de las tecnologías modernas.
Síganme en Mastodon:
https://social.politicaconciencia.org/@Maya
Bibliografía
[1] https://es.wikipedia.org/wiki/Licencia_de_software
[2] https://es.wikipedia.org/wiki/Licencia_de_código_abierto
[3] https://es.wikipedia.org/wiki/Licencia_de_software_libre
[5] http://www.apple.com/mx/final-cut-pro/
[6] https://es.opensuse.org/Bienvenidos_a_openSUSE.org
[7] https://get.adobe.com/es/reader/otherversions/
[8] https://es.wikipedia.org/wiki/Código_abierto
[9] https://es.wikipedia.org/wiki/Software_libre
[10] http://www.gnu.org/
[12] http://blog.checkpoint.com/2017/03/10/preinstalled-malware-targeting-mobile-users/
Excelente artículo de la autora. Ojalá se hablara de esto con más fuerza, pues es mi opinión que permea una idea de que aunque a nivel intuitivo uno sabe que esto “es verdad”, al final piensas, “bueno, qué más da si yo no soy nadie importante ni poseo información valiosa”, así que menosprecias la situación y sigues adelante sin prestar atención a estas cosas. En ese sentido, creo que vale mucho la pena enfatizar o hacer un artículo que explique por qué el común de los mortales deberíamos preocuparnos realmente por estas cosas. Es decir, poder comprender los riesgos que en verdad corre cualquier civil que entrega libremente sus datos. Mil gracias.
Para mí un excelente artículo! En mí opinión es muy buena la idea en difundir estás teoría! Alimentan mucho al que le encanta la lectura.