Mostrar el código fuente de un software.
Resuelto
Turki1923
Mensajes publicados
590
Estado
Miembro
-
Turki1923 Mensajes publicados 590 Estado Miembro -
Turki1923 Mensajes publicados 590 Estado Miembro -
Hola,
me gustaría mostrar el código fuente de un programa que está instalado en mi computadora.
aquí están las preguntas que me hago...
¿es legal?
¿y cómo hacerlo?
Configuración: Nvidia 8600 GT;
CPU ACER E5200;
4GB DE MEMORIA;
1 TB HDD
Ubuntu 9.10 gnome
64 Bit
me gustaría mostrar el código fuente de un programa que está instalado en mi computadora.
aquí están las preguntas que me hago...
¿es legal?
¿y cómo hacerlo?
Configuración: Nvidia 8600 GT;
CPU ACER E5200;
4GB DE MEMORIA;
1 TB HDD
Ubuntu 9.10 gnome
64 Bit
4 respuestas
-
Hola a todos,
Me permito corregir lo que se ha dicho, desde hace un tiempo, sobre este tema.
Desde 1994, la ley francesa permite la descompilación de un software con fines de interoperabilidad bajo ciertas condiciones.
Esto está hoy codificado en el artículo L122-6-1 del Código de la Propiedad Intelectual (https://www.legifrance.gouv.fr/codes/id/LEGIARTI000028345224/2013-12-20/) :
"(...) IV. La reproducción del código del software o la traducción de la forma de este código no están sujetas a la autorización del autor cuando la reproducción o traducción en el sentido del 1° o del 2° del artículo L. 122-6 es indispensable para obtener la información necesaria para la interoperabilidad de un software creado de forma independiente con otros softwares, siempre que se cumplan las siguientes condiciones: 1° Estos actos son realizados por la persona que tiene el derecho a utilizar un ejemplar del software o por cuenta de esta persona por una persona autorizada para tal fin; 2° La información necesaria para la interoperabilidad no ha sido ya puesta fácilmente y rápidamente a disposición de las personas mencionadas en el 1° anterior; 3° Y estos actos están limitados a las partes del software original necesarias para esta interoperabilidad. La información obtenida no puede ser: 1° Ni utilizada para fines distintos a la realización de la interoperabilidad del software creado de forma independiente; 2° Ni comunicada a terceros salvo si esto es necesario para la interoperabilidad del software creado de forma independiente; 3° Ni utilizada para el desarrollo, la producción o la comercialización de un software cuya expresión sea sustancialmente similar o para cualquier otro acto que infrinja el derecho de autor. V. El presente artículo no debe ser interpretado como permitiendo afectar la explotación normal del software o causar un perjuicio injustificado a los intereses legítimos del autor. Cualquier estipulación contraria a las disposiciones previstas en los II, III y IV del presente artículo es nula y sin efecto."
Por lo tanto, está permitido bajo condición y está prohibido prohibirlo.
En resumen, según mi comprensión: si dispones de una licencia sobre el software y la información de interoperabilidad no te es comunicada por el editor, puedes descompilar el software para entender su funcionamiento interno con el único propósito de hacerlo funcionar (interoperar) con otros softwares.
La apreciación de las condiciones no siempre es fácil.
Puede requerir la consulta a un profesional del derecho.
Dal-
-
Hola J',
Las respuestas técnicas no se han dado, ya que los contribuyentes anteriores asumieron que intentar recuperar un código fuente a partir de un código objeto era ilegal, excepto en el caso de software libre (lo cual es parcialmente inexacto)... y que va en contra de la normativa del foro asistir a los usuarios en una actividad ilícita.
Pero, de hecho, dado que ignoramos el motivo de "Turki1923", no sabemos si su caso es legal (y es responsabilidad de él asumirlo), la respuesta técnica podría ser, en caso de duda, de todos modos la misma: "no te vamos a ayudar en esto, resuélvelo tú mismo"...
Dal -
-
Hola Turki1923,
La mejor manera de saber cómo es el código fuente de un programa escrito en C, en comparación con un programa conocido, es conseguir el código fuente de un software libre que uses (como se ha propuesto), y aprender tú mismo a programar en C.
Si aún estás en Ubuntu, deberías tener muchos en tu ordenador.
Si el software está programado en C, la descompilación es muy difícil, si no imposible (es decir, recuperar un archivo fuente en C a partir de un archivo ejecutable), ya que la fase de compilación opera transformaciones y optimizaciones diferentes según los compiladores (con pérdida del contexto inicial en el resultado) y las opciones de compilación. Sin contar que el ejecutable también puede ser el resultado de la vinculación de archivos objeto resultantes de la compilación de varios archivos que contienen los programas fuente.
Esta dificultad o imposibilidad no es necesariamente aplicable a otros lenguajes.
En cuanto al C, sin embargo, podrás como mucho desensamblar el programa C (si la ley te lo permite), mediante un desensamblador, que traducirá el archivo ejecutable a lenguaje máquina (lenguaje ensamblador), es decir, en instrucciones que el procesador de la máquina para la cual el programa ha sido compilado puede entender directamente. El lenguaje ensamblador es un lenguaje de programación de muy bajo nivel (muy cercano a la máquina) y es muy difícil tener una comprensión global del código realizando este tipo de exploraciones. Además, solo es utilizable en el procesador para el cual el código está diseñado.
El depurador gdb presente en Linux permite hacer esto técnicamente (jurídicamente, depende, véase más arriba).
Dal -
-