L'insécurité juridique qui règne autour des exceptions d'ingénierie inverse et de décompilation, aggravée par la protection juridique des mesures techniques, fait que la recherche par ses propres moyens de l'interopérabilité est de plus en plus délicate à mettre en oeuvre. La distribution commerciale de certains logiciels libres interopérant avec certains standards fermés est tellement risquée qu'aucun distributeur ne s'y hasarde.

Les moyens nécessaires pour contrer par voie judiciaire les pratiques anti-concurrentielles de géants comme Microsoft semblent aussi impossibles à réunir. Même avec l'appui de la Commission européenne, il n'apparaît pas possible d'obtenir, dans des délais et des conditions raisonnables, les informations essentielles pour développer un systême indépendant capable de communiquer sans ambiguïté avec un système comme Windows, utilisé pourtant par 95% des utilisateurs grand public.

Les multiplication des revendications de brevets ou de secret sur les protocoles, les formats, et les méthodes intellectuelles nécessaires à la mise en oeuvre de l'interopérabilité trouble encore davantage les débats, tout comme la tentative de certains industriels d'imposer que seuls des logiciels certifiés par leur consortium puissent interopérer avec leurs produits.

Comme l'a récemment rappellé l'AFUL (Association Francophone des Utilisateurs de Linux et de logiciels libres), « aujourd'hui ces pratiques vont jusqu'à tatouer les composants des ordinateurs pour empêcher les usagers d'y installer un autre système d'exploitation de leur choix, sous de fallacieux prétextes invoquant la sécurité. » (voir la partie 2 de la section Abus de position dominante et la section Informatique "de confiance")


Compléments

On dit que deux logiciels sont interopérables quand ils sont capables d'échanger des informations et d'utiliser mutuellement les informations échangées. Cette définition est celle de la directive 91/250 CE sur les programmes d'ordinateur.

L'interopérabilité entre deux logiciels passe par l'utilisation d'un standard de communication commun. Juridiquement, un standard est dit ouvert quand ses spécifications sont publiques et leur utilisation libre et gratuite ; il est dit fermé dans tous les autres cas.

En 2004, une définition des standards ouverts a été inscrite à l'article 4 de la loi sur l'économie numérique précisant ainsi :

« On entend par standard ouvert tout protocole de communication, d'interconnexion ou d'échange et tout format de données interopérable et dont les spécifications techniques sont publiques et sans restriction d'accès ni de mise en œuvre. ».

Quand le logiciel avec lequel on souhaite interopérer s'appuie sur un standard ouvert, il est simple de rendre son logiciel compatible avec celui-ci – c'est-à-dire de mettre en oeuvre l'interopérabilité.

C'est grâce aux standards ouverts édictés par l'IETF et le W3C qu'internet a ainsi pu devenir ce qu'il est : un réseau accessible à toute personne disposant d'un logiciel conforme à des spécifications publiques et librement utilisables par tous.

Quand le logiciel avec lequel on souhaite interopérer s'appuie sur des standards fermés utilisés uniquement par des logiciels propriétaires, la situation devient toute de suite plus difficile.

Les éditeurs n'ont pas obligation de fournir les informations essentielles à l'interopérabilité. Ils préfèrent donc ne pas les communiquer, ou ne les communiquer qu'à certains acteurs et sous certaines conditions, souvent discriminatoires, afin de conforter d'éventuelles positions dominantes, et/ou rendre plus difficile.

Il existe alors plusieurs façons de rendre son logiciel interopérable avec celui de l'éditeur :

  • l'obtention des informations essentielles à l'interopérabilité par ses propres moyens, difficile et risquée, tout particulièrement pour les auteurs de logiciels libres (section Insécurité juridique) ;
  • l'obtention des informations essentielles à l'interopérabilité suite à une décision judiciaire ou administrative, interminable et de plus en plus tortueuse (section Abus de position dominante).