Journal Légalité ? source dispo mais proprio

Posté par  (site web personnel) .
Étiquettes : aucune
0
18
août
2006
Bonjour,

Je me pose une question sur la légalité de faire ce qui suit :

Préambule : Afin de s'affranchir de la licence GPL et de pouvoir recréer un driver sous licence BSD, il faut effectuer un reverse engineering en lisant le code GPL pour se faire des specs, et en l'oubliant pour coder à partir des specs (cf http://linuxfr.org/~patrick_g/21744.html par exemple).

Je suppose donc que la licence GPL ne s'applique plus. Qu'en est il des logiciels proprio dont les sources sont dispo. Puis je lire les sources, me faire des specs et recoder sous une licence libre de mon choix ?

Je pense particulièrement à unrar dont les sources sont dispo mais non libre. Je souhaiterai pouvoir implémenter un libunrar libre, sans réutiliser une seule ligne de code de unrar, mais en m'inspirant du code de unrar pour me faire des specs, puis coder à partir des specs, en ai je le droit ?
  • # Délicat

    Posté par  (site web personnel) . Évalué à 1.

    C'est toujours assez délicat de lire le code avant de recoder une fonctionnalité similaire ... On peut facilement t'accuser d'avoir voler le code, ou de t'en être inspiré de trop près.

    Si s'est possible, il vaut mieux lire les specs plutôt que le code d'une implémentation. Maintenant, si les specs ne sont pas disponibles, je ne sais pas trop ce que tu peux faire ...
    • [^] # Re: Délicat

      Posté par  . Évalué à 7.

      Il peut écrire les specs et les fournir à quelqu'un qui codera... (ou trouver quelqu'un pour fournir les specs)

      Mais je me demande si il n'existe pas déjà un projet libre qui lit les .rar ... https://gna.org/projects/unrar/ non ?
      • [^] # Re: Délicat

        Posté par  (site web personnel, Mastodon) . Évalué à 3.

        Il peut écrire les specs et les fournir à quelqu'un qui codera... (ou trouver quelqu'un pour fournir les specs)

        N'est pas comme cela que travaille l'équipe de Samba ? Il me semble qu'une partie de l'équipe fait du reverse et écrit les specs et l'autre code à partir de ces specs, pour éviter tout souci légal. Je crois l'avoir lu sur ce site, mais je ne retrouve plus la source.
        • [^] # Re: Délicat

          Posté par  . Évalué à 5.

          Pour samba je ne sais pas, mais pour écrire des drivers broadcom c'est comme cela qu'ils procédent. Il y a 2 équipes :

          1) Une équipe pour le reverse qui documente les spécifications.
          2) Une deuxième qui code le driver à partir des specifications produites par la première équipe.

          Cela porte un nom en anglais "clean room desing" cf http://en.wikipedia.org/wiki/Clean_room_design [en]
      • [^] # Re: Délicat

        Posté par  . Évalué à 3.

        La dernière fois que j'ai utilisé une version libre, ça a pas marché (le fichier était un RAR v3, la version gérait que les RAR v2). D'après ce que je vois sur la page http://www.unrarlib.org/features.html ça a l'air d'être plus ou moins encore le cas, sauf si je me plante dans les numéros de version.
    • [^] # Re: Délicat

      Posté par  (site web personnel) . Évalué à 2.

      C'est toujours assez délicat de lire...

      N'est-il pas autrement "délicat" (notamment d'un point de vue intellectuel) de rendre accessible un code source tout en interdisant de s'en "inspirer" ?
      • [^] # Re: Délicat

        Posté par  . Évalué à 4.

        non.
        Ca veut dire : si tu veux verifier un comportement de notre appli, tu peux, mais n'essaye pas de copier.
    • [^] # Re: Délicat

      Posté par  . Évalué à 2.

      Comme dit Nelis, le mieux, à mon humble avis, est de repartir des specs.
      Si tu n'en as pas, refait des specs, c’est plus long mais ça n’a que des avantages mis à part la masse de taf. Tu vas pouvoir alléger et améliorer fonctionnellement le truc sans retomber (ou plutôt en retombant moins) dans les pièges ou son tomber tes prédécesseurs.

      C'est ce qu'on nome le syndrome de l'engagement, quand on commence dans une voie même mauvaise, plus on a investit de soit même et plus c'est dur de revenir sur ses choix.

      Bon, unrar doit être plutôt pas mal fait et les concepts plutôt chauds à appréhender je pense mais on ne sait jamais ce qu'un oeuil nouveau peut apporter.

      Je dis juste ça par ce que tu compte tout refaire et que dans ce cas là tu n’à évidement pas l’intention d’économiser ton temps.
      Pour ce qui est de copier des fonctionnalités, ce n'est bien sûr pas illégale en France mais ça tu dois déjà le savoir.

      Bonne chance
  • # Contacte les

    Posté par  . Évalué à 2.

    Neither RAR binary code, WinRAR binary code, UnRAR source or UnRAR binary code may be used or reverse engineered to re-create the RAR compression algorithm, which is proprietary, without written permission of the author.


    En français et en plus court:

    Ni les binaires ni les sources ne doivent servir à recréer l'algorithme de compression RAR, proprio, sans l'accord écrit de l'auteur.

    http://www.win-rar.com/index.php?id=24&kb=1&kb_artic(...)
    • [^] # Re: Contacte les

      Posté par  (site web personnel) . Évalué à 0.

      ... recréer l'algorithme de compression ...

      N'est-il question que de brevet logiciel ou l'algorithme, sont usage et son enseignement au sens large ?
    • [^] # Re: Contacte les

      Posté par  . Évalué à 9.

      Alors, ce genre de truc, qu'on va assimiler à une licence, c'est subordoné à loi du pays, donc les clauses illégales sont pas valides (je pense notemment au reverse engeniering sur le binaire à des fins d'interropérabilité, pour le code source, je sais pas)
    • [^] # Re: Contacte les

      Posté par  (site web personnel, Mastodon) . Évalué à 5.

      Oui, maintenant il existe des contrées (qui se font de plus en plus rares certainement) où la rétro-ingénierie est légale à des fin d'interopérabilité. et une clause comme celle-ci n'est pas forcément applicable légale, même si elle est écrite. Maintenant, je ne suis pas juriste, mais l'auteur ne peut aller contre la loi du pays où son logiciel est officiellement distribué.
    • [^] # Re: Contacte les

      Posté par  . Évalué à 5.

      Oui, mais je penses que cette close n'est pas légale en France. En effet, tu as le droit d'utiliser les binaires pour en faire le reverse engineering dans un soucis d'interropérabilité.

      C'est un peu comme la plupart des licences où on te dit : "blabla blabla blablabla, sauf dans les pays où ces closes ne peuvent pas s'appliquer".

      Pour les sources, je sais pas.
      • [^] # Re: Contacte les

        Posté par  . Évalué à 3.

        Mouais, c'est sûr qu'à la vitesse où ça post, j'ai pas le temps de me relire que la réponse est donnée... Désolé pour la redite alors... ;-)
      • [^] # Re: Contacte les

        Posté par  . Évalué à 1.

        Dans l'absolu, tu as raison.

        Mais comme tu dis, c'est « dans un soucis d'interropérabilité ».

        Il est où le souci d'interopérabilité ? En effet, sauf erreur de ma part, un binaire Linux de unrar est fourni par l'auteur, il n'y a donc pas de problèmes d'interopérabilité puisque ce binaire fonctionne en ligne de commandes, et peut donc être appelé depuis n'importe quelle autre application avec la commande system() de la stdlib.

        Un autre cas où l'auteur ne peut pas t'empêcher de faire du reverse, c'est si il y a un bug qui n'est pas corrigé par l'auteur.
        • [^] # Re: Contacte les

          Posté par  . Évalué à 2.

          Du coup, j'ai une question :

          3 plateforme, un logiciel propri, dispo sur 2 des trois plates formes.

          On peux utiliser l'exception de décompilation pour en créer un sur la dernière. Imaginons que le logiciel ainsi réalisé soit libre et portable sur les 3 plates formes.
          C'est légal de distribuer des binaires du ll pour les trois plates-formes ?


          Et donc une dernière question : le rar proprio est dispo sous *BSD ?
          • [^] # Re: Contacte les

            Posté par  . Évalué à 2.

            Non ce n'est pas légal.

            Selon l'article L122-6-1 :

            (...)Et ces actes sont limités aux parties du logiciel d'origine nécessaires à cette interopérabilité.(...)


            Tu dois donc te limiter strictement à la résolution du problème d'interopérabilité.
            • [^] # Re: Contacte les

              Posté par  . Évalué à 2.

              Je comprend plutôt que tu n'a le droit que de bosser sur les parties qui interviennent dans les problème d'interopérabilité.
              Si tout est compilé pour une et une seule archi, tout intervient donc dans l'interopérabilité non ?
              • [^] # Re: Contacte les

                Posté par  . Évalué à 0.

                Oui, tu peux faire un unrar sous BSD s'il n'existe pas de unrar pour BSD, mais si tu recompiles ton unrar sous Linux là tu tombes dans l'illégalité puisque l'auteur propose déjà une version de son logiciel sous Linux.
                • [^] # Re: Contacte les

                  Posté par  . Évalué à 5.

                  depuis quand utiliser une version concurrente c'est illégal ?
                  Amha tu ne retombe pas dans l'illégalité car le logiciel a été concu pour un cas ou l'interopérabilité jouais.
                  La personne à donné les conditions qu'elle veut à ce logiciel.
                  Maintenant 5 ans aprés , toi tu as un logiciel X proprio ou tu n'as pas accepté la licence (donc tu n'es pas soumise à elle) , et les sources d'un logiciel Y , totalement légal (puisque crée dans un cadre légal correct) . L'existence d'un logiciel X n'interdis PAS l'utilisation des sources Y pour obtenir le meme résultat.

                  Sinon il suffirais qu'un logiciel proprio (par exemple l'équivalent de samba sous windows) sorte un binaire sous x86 avec la licence ad hoc pour interdire a quiconque d'utiliser samba sous x86.
        • [^] # Re: Contacte les

          Posté par  . Évalué à 2.

          Il est sûrement fourni un binaire linux/x86, pas un linux tout court. Il faut donc en écrire un pour qu'il puisse tourner sur les... mips/hitachi/arm/m68k.

          Non de toute façons, il suffit de ne pas regarder du tout le code fourni, mais soit de le faire lire par quelqu'un d'autre pour trouver le format, soit de trouver le format quelque part.
          L'algo en lui même n'est ni brevetable, ni soumis au copyright.
    • [^] # Re: Contacte les

      Posté par  (site web personnel) . Évalué à 3.

      Je ne compte pas recréer l'algorithme de compression RAR, mais celui de décompression.

      Donc au delà du côté légal ou non selon les pays, il ne parle pas de comment refaire un unrar.
      • [^] # Re: Contacte les

        Posté par  . Évalué à 1.

        La nature de l'algorithme utilisé par RAR fait que les processus de compression et de décompression sont très similaires. i.e. a priori, la construction des modèles se fera de la même manière.

        Par ailleurs, je crois que RAR permet de recompresser certains fichiers multimedia. Genre un filtre à un JPEG pour le recompresser avec un range coder plutôt qu'un Huffman. Mais là j'en sais rien, je ne me suis pas suffisamment plongé dans la compression de données multimedia pour maîtriser les détails...
    • [^] # Inapplicable

      Posté par  . Évalué à 4.

      Si je ne m'abuse, cette clause ne peut pas s'appliquer en France.
      Ca signifie "vous n'avez pas le droit d'utiliser nos logiciels pour tenter de copier leurs fonctionnalités" là c'est une clause abusive à mon sens.

      Imaginez qu'on ait pas le droit d'utiliser word pour voir la mise en page d'un .doc si c'est pour recoder un soft qui peut les lire.

      Corrigez moi si c'est faux.

      Ce qui est sûr c'est qu'un algo "proprio" ne peut pas être protégé de la sorte en France.
      • [^] # Re: Inapplicable

        Posté par  . Évalué à 1.

        C'est fou, j'ai mis 5 min à écrire mon post et voilà, je ne fait que redire ce que 5 personnes ont dit ^_^
    • [^] # Re: Contacte les

      Posté par  (site web personnel) . Évalué à 0.

      En admettant que ce texte fasse figure de licence, il n'est absolument pas valable en france, car le droit français stipule clairement qu'un licence doit être écrite en FRANÇAIS pour être valable en FRANCE. Ça plus le droit à l'ingiénerie inverse ...
      • [^] # Re: Contacte les

        Posté par  . Évalué à 5.

        Et si la licence n'est pas valide, tu as le droit de quoi... voyons voir... droit d'auteur... ah, pas le droit d'exécuter, pas le droit de recopier, ...
        • [^] # Re: Contacte les

          Posté par  . Évalué à 3.

          C'est justement un des côtés les plus "jolis" (au sens programmation) de la GPL :
          "You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works."
        • [^] # Re: Contacte les

          Posté par  . Évalué à 1.

          Non la license est valide, mais cette clause n'existe pas tout simplement. Tu peux donc prendre le texte, supprimer cette part, et la relire pour éviter tout parasitage...
          • [^] # Re: Contacte les

            Posté par  . Évalué à 2.

            Je n'ai pas lu la licence, mais je doute légèrement du fait qu'elle soit en français, avec uniquement cette phrase en anglais. Par contre sur le fond, tu as surement raison (clause qui empêche l'interopérabilité qui n'est surement pas valable) mais là on parle plutôt de la forme (langue de la licence)
      • [^] # Re: Contacte les

        Posté par  (site web personnel) . Évalué à 1.

        car le droit français stipule clairement qu'un licence doit être écrite en FRANÇAIS pour être valable en FRANCE

        Merci de bien vouloir justifier cette affirmation par des extraits appropriés du droit français, ou par des liens vers des articles qui expliquent la situation.

        Je n'y crois pas.
        • [^] # Re: Contacte les

          Posté par  . Évalué à 4.

          Tu n'y crois pas ?

          pourtant c'est trés simple : la langue officiel en france est le francais, TOUS les documents doivent etre traduits (par un traducteur assermenté) en francais pour etre applicable.
          Si tu propose un document dans une quelconque autre langue, je ne suis pas censé savoir la lire, donc je ne suis pas censé pouvoir comprendre le document.
          Cela implique entre autre de traduire les diplomes étranger pour etre accepter en master2 dans une fac francaise.

          De plus si on autorisait les documents 'non francais' d'avoir valeur sur le territoire francais, tu autorise donc les licences écritent en pantagonien profond ou encore en quelconque dialecte que je viens d'inventer d'etre légal.
          tu dois donc accepter des contrat où il y a une probabilité presque nul de le comprendre.
          • [^] # Re: Contacte les

            Posté par  (site web personnel) . Évalué à 2.

            rien ne t'oblige a accepter un contrat que tu ne comprend pas.
          • [^] # Re: Contacte les

            Posté par  (site web personnel) . Évalué à 2.

            Tu n'y crois pas ?

            pourtant c'est trés simple : la langue officiel en france est le francais, TOUS les documents doivent etre traduits (par un traducteur assermenté) en francais pour etre applicable.


            Tu dévies de ce que tu as dit. Tu as dit « le droit français stipule clairement qu'un licence doit être écrite en FRANÇAIS pour être valable en FRANCE »

            Puisque c'est « stipulé clairement », merci de bien vouloir me fournir des liens vers cette claire stipulation.
            • [^] # Re: Contacte les

              Posté par  . Évalué à 2.

              Tu dévies de ce que tu as dit. Tu as dit « le droit français stipule clairement qu'un licence doit être écrite en FRANÇAIS pour être valable en FRANCE »
              Euh c'est pas moi qui ai dis ca.
    • [^] # Re: Contacte les

      Posté par  . Évalué à 1.

      D'un autre côté, de nos jours, l'algorithme de compression est plutôt connu. Tout comme Winzip, ils utilisent maintenant PPMd dans RAR v3. Winzip a l'air de jouer le jeu en essayant de documenter le format. Par contre pour RAR, je crois que l'algorithme d'origine a été quelque peu altéré (dans la partie range coder) et le format de l'archive est totalement inconnu, a priori.

      PPMd est dans le domaine public. D'ailleurs, Dmitry a releasé une version 64-bit clean (v.J) en mars dernier.
  • # Separer le travail

    Posté par  . Évalué à 4.

    Comme l'homme ne peut oublier, il faut refaire provoquer la cassure, et être deux.

    Un premier qui analysera les sources pour en tirer un document de spécification du format. Ce document devra être suffisamment haut niveau et ne pas comporter de code repris. Attention également à utiliser de vrais descriptions pour les champs des structures, et pas les mnémoniques utilisés dans le programme. Cela devra donc être un document très complet, et écrit par une personne capable de comprendre TOUT ce qui se passe dans le code, pas d'a peu près.

    Et c'est à partir de ce document, et uniquement de celui-ci que le second pourra développer l'outil.
  • # unrar-free

    Posté par  (Mastodon) . Évalué à 2.

    Je ne vais pas répondre à la question de droit.
    Mais je voulais juste signaler qu'il existe un paquet unrar-free correspondant au projet :
    https://gna.org/projects/unrar
    Ce projet se base sur "UniquE RAR File Library" : http://www.unrarlib.org (lire la faq à propos des problèmes de droit).
    Par contre cette bibliothèque ne supporte pas la version 3 de rar.
  • # projet gnu ?

    Posté par  (site web personnel) . Évalué à 6.

    Regardes dans les gnu coding guidelines.

    RMS lui-même écrit comment s'inspirer du code d'unix sans le plagier (préféré les algo rapide au algo économisant de la mémoire, etc...).

    Sinon la version incontestable est celle ou celui fait le reverse et celui qui code sont différents.

    "La première sécurité est la liberté"

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.