Afficher le code source d'un logiciel .
Résolu/Fermé
Turki1923
Messages postés
535
Date d'inscription
dimanche 9 août 2009
Statut
Membre
Dernière intervention
13 octobre 2018
-
26 nov. 2010 à 16:45
Turki1923 Messages postés 535 Date d'inscription dimanche 9 août 2009 Statut Membre Dernière intervention 13 octobre 2018 - 15 août 2012 à 15:43
Turki1923 Messages postés 535 Date d'inscription dimanche 9 août 2009 Statut Membre Dernière intervention 13 octobre 2018 - 15 août 2012 à 15:43
A voir également:
- Code source logiciel
- Money logiciel - Télécharger - Comptabilité & Facturation
- Logiciel montage vidéo gratuit windows 10 - Guide
- Code asci - Guide
- Code puk bloqué - Guide
- Logiciel de sauvegarde - Guide
4 réponses
[Dal]
Messages postés
6198
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
13 décembre 2024
1 094
Modifié par [Dal] le 14/02/2012 à 13:49
Modifié par [Dal] le 14/02/2012 à 13:49
Salut à tous,
Je me permets de corriger ce qui a été dit, depuis un moment, sur ce sujet.
Depuis 1994, la loi française permet la décompilation d'un logiciel à des fins d'intéropérabilité sous certaines conditions.
Cela est aujourd'hui codifié à l'article L122-6-1 du Code de la Propriété Intellectuelle (https://www.legifrance.gouv.fr/codes/id/LEGIARTI000028345224/2013-12-20/) :
C'est donc permis sous condition et il est interdit de l'interdire.
En somme, selon ma compréhension : si tu disposes d'une licence sur le logiciel et que les informations d'intéropérabilité ne te sont pas communiquées par l'éditeur, tu peux décompiler le logiciel pour en comprendre le fonctionnement interne dans le seul but de faire fonctionner (intéropérer) le logiciel avec d'autres logiciels.
L'appréciation des conditions n'est pas toujours aisée.
Elle peut nécessiter la consultation d'un professionnel du droit.
Dal
Je me permets de corriger ce qui a été dit, depuis un moment, sur ce sujet.
Depuis 1994, la loi française permet la décompilation d'un logiciel à des fins d'intéropérabilité sous certaines conditions.
Cela est aujourd'hui codifié à l'article L122-6-1 du Code de la Propriété Intellectuelle (https://www.legifrance.gouv.fr/codes/id/LEGIARTI000028345224/2013-12-20/) :
"(...) IV. La reproduction du code du logiciel ou la traduction de la forme de ce code n'est pas soumise à l'autorisation de l'auteur lorsque la reproduction ou la traduction au sens du 1° ou du 2° de l'article L. 122-6 est indispensable pour obtenir les informations nécessaires à l'interopérabilité d'un logiciel créé de façon indépendante avec d'autres logiciels, sous réserve que soient réunies les conditions suivantes : 1° Ces actes sont accomplis par la personne ayant le droit d'utiliser un exemplaire du logiciel ou pour son compte par une personne habilitée à cette fin ; 2° Les informations nécessaires à l'interopérabilité n'ont pas déjà été rendues facilement et rapidement accessibles aux personnes mentionnées au 1° ci-dessus ; 3° Et ces actes sont limités aux parties du logiciel d'origine nécessaires à cette interopérabilité. Les informations ainsi obtenues ne peuvent être : 1° Ni utilisées à des fins autres que la réalisation de l'interopérabilité du logiciel créé de façon indépendante ; 2° Ni communiquées à des tiers sauf si cela est nécessaire à l'interopérabilité du logiciel créé de façon indépendante ; 3° Ni utilisées pour la mise au point, la production ou la commercialisation d'un logiciel dont l'expression est substantiellement similaire ou pour tout autre acte portant atteinte au droit d'auteur. V. Le présent article ne saurait être interprété comme permettant de porter atteinte à l'exploitation normale du logiciel ou de causer un préjudice injustifié aux intérêts légitimes de l'auteur. Toute stipulation contraire aux dispositions prévues aux II, III et IV du présent article est nulle et non avenue."
C'est donc permis sous condition et il est interdit de l'interdire.
En somme, selon ma compréhension : si tu disposes d'une licence sur le logiciel et que les informations d'intéropérabilité ne te sont pas communiquées par l'éditeur, tu peux décompiler le logiciel pour en comprendre le fonctionnement interne dans le seul but de faire fonctionner (intéropérer) le logiciel avec d'autres logiciels.
L'appréciation des conditions n'est pas toujours aisée.
Elle peut nécessiter la consultation d'un professionnel du droit.
Dal
8 août 2012 à 12:15
8 août 2012 à 16:55
Les réponses techniques n'ont pas été données, car les contributeurs précédents sont partis sur l'idée que tenter de retrouver un code source à partir d'un code objet était illégal sauf logiciel libre (ce qui est partiellement inexact)... et qu'il est contraire à la charte du forum d'assister les utilisateurs dans une activité illicite.
Mais en fait, comme on ignore le motif de "Turki1923", on ne sais pas si son cas est légal (et c'est à lui de prendre ses responsabilités), la réponse technique pourrait être, dans le doute, de toutes façons la même : "on ne va pas t'aider sur ce coup là, débrouille toi"...
Dal
Modifié par Turki1923 le 14/08/2012 à 17:40
2 ans après je ne sais toujours pas comment faire
Modifié par [Dal] le 14/08/2012 à 20:19
Le meilleur moyen de savoir à quoi ressemble le code source d'un programme codé en C, par rapport à un programme connu, est de te procurer le code source d'un logiciel libre que tu utilises (comme cela a été proposé), et d'apprendre toi même la programmation en C.
Si tu es toujours sous Ubuntu, du dois en avoir des tas sur ton ordinateur.
Si le logiciel est programmé en C, la décompilation est très difficile, voire impossible (c'est à dire retrouver à partir d'un fichier exécutable un fichier source C), car la phase de compilation opère des transformations et optimisations différentes selon les compilateurs (avec perte du contexte initial dans le résultat) et les options de compilation. Sans compter que l'exécutable peut aussi être le résultat de la liaison de fichiers objet résultant de la compilation de plusieurs fichiers contenant les programmes sources.
Cette difficulté ou impossibilité n'est pas nécessairement valable pour d'autres langages.
S'agissant du C toutefois, tu pourras tout au plus désassembler le programme C (si la loi te le permet), au moyen d'un désassembleur, qui va traduire le fichier exécutable en langage machine (langage assembleur), c'est à dire en instructions directement comprises par le processeur de la machine pour lequel le programme a été compilé. Le langage assembleur est un langage de programmation de très bas niveau (très proche de la machine) et il est très difficile d'avoir une compréhension globale du code en faisant ce type d'explorations. De plus, il n'est utilisable que sur le processeur pour lequel le code est conçu.
Le débogueur gdb présent sur Linux permet de faire cela techniquement (juridiquement, cela dépend, cf. plus haut).
Dal
15 août 2012 à 15:43
Je préfère y aller moi même sans exemple.
Merci pour votre aide