Les logiciels manipulant nos données devraient avoir leur code ouvert

Les logiciels manipulant nos données devraient avoir leur code ouvert
Réalisé avec MidJourney

Une conviction m'habite. Je crois que tous les logiciels devraient avoir leur code lisible par tous. Du moins, tous les logiciels manipulant des données appartenant à des personnes ou les décrivant.

⚡️ Résumé : ce que les gens font, ce que les gens sont, tout ça appartient aux gens. Il est juste et bon de contrôler l'usage de ces données, et il ne me paraît aucun réel intérêt à tolérer que les algorithmes manipulant ces informations soient cachés des yeux de la société. C'est un enjeu de société, l'impact sur nos démocraties et la santé de notre peuple déborde largement du virtuel.

Transparence

Un des grands maux du numérique aujourd'hui est le manque de transparence perpétré par certains de ses acteurs les plus populaires.

Hier après-midi j'étais dans une boutique vegan à Bordeaux, j'ai vu hier soir un réel sur Instagram d'une boutique vegan à Bordeaux. L'autre jour je vois une publicité sur YouTube au sujet de l'ortodontie après avoir pris rendez-vous quelques jours auparavant avec un tel spécialiste en ligne.

Souvent ces coïncidences ne sont que des coïncidences : j'ai soif et je vois une pub pour un thé glacé, je ne vais pas m'alarmer. Mais beaucoup de grandes entreprises, notamment Meta et Alphabet, sont connues et reconnues pour leur gestion pro-capitaliste et anti-éthique des données de leurs utilisateurs.

🎁 Petit cadeau : enforcementtracker.com répertorie les amendes liées au RGPD et dans la colonne "Controller/Processor" vous pouvez chercher par exemple "Google" ou "Facebook".

On ne s'attend pas à ce que nos coordonnées GPS soient utilisées régulièrement dans la journée pour déterminer quel produit saignerait le mieux notre porte-monnaie. Du moins, on ne peut pas dire que les responsables de ces applications nous l'aient clairement exposé.

Un code ouvert ne permettrait pas, de facto, de dissoudre le voile qui couvre cet usage de nos données. Mais il le faciliterait très largement.

Le pouvoir au peuple

C'est grandiloquant, je sais, mais il y du vrai.

Je crois légitime, utile voir indispensable d'avoir une autorité indépendante en charge de contrôler la qualité de la nourriture qu'on produit ou importe.

De la même manière, je porte les mêmes ajdectifs au fait d'avoir la possibilité de contraindre les entreprises du numérique à un contrôle aussi fin et régulier que nécessaire.

Les applications populaires sont souvent complexes, alors il ne suffit pas d'offrir la lecture du code à une organisation quelque temps pour montrer patte blanche.

Les logiciels sont souvent dans le smartphone des gens, ceux-ci peuvent suivre et accompagner quelqu'un plus que n'importe quel proche intime.

Un logiciel devrait nous dire - tout - ce qu'il fait avant que nous l'utilisions. Des travaux dantesques et coûteux pour optimiser le moindre clic et la lisibilité d'une page Internet sont de l'ordre de l'évidence pour beaucoup d'entreprises, mais s'il s'agit de rendre lisible et complet l'utilisation des données des utilisateurs de bout-à-bout rien n'est moins sûr.

Un code ouvert permettrait d'offrir aux membre de la société un choix conscient et vérifiable, et permettrait aux entreprises de communiquer à moindre coût sur leur gestion des données de leurs utilisateurs.

Oui mais

Désavantage concurrentiel

Les entreprises qui ont développé des logiciels peuvent perdre leur avantage concurrentiel si leur code source est librement disponible et peut être utilisé par tout le monde. Cela pourrait décourager les entreprises à investir dans la recherche et le développement de nouveaux produits et technologies.

Oui, mais non.

Est à noter dans un premier temps l'énorme avantage technologique de l'open source. Linux est souvent un choix de marque lors du déploiement d'un serveur ou d'un logiciel embarqué, et les logiciels et librairies open source facilitent grandement l'innovation en décuplant sa vitesse et en augmentant son accessibilité.

Over 76% of IT managers has increased the use of open source software during 2022, while almost 22% has not changed the amount of OSS and less than 2% has reduced the amount of open source software.
Open source continues to grow, LibreOffice blog

Je n'ai pas idée d'un cas où l'avantage concurrentiel pourrait se perdre du fait de l'open source.

Imaginons une start-up proposant un produit innovant : une application permettant à des célibataires de se rencontrer.

Le code devient ouvert au moment de la sortie du produit.

Là, des entrepreneurs aux dents de requin et habillés d'un haut-de-forme ont envie de sauter sur l'occasion : ils se ruent sur le code !

Sauf qu'ici le code n'est pas innovant, c'est le produit qui l'est. Copier-coller ou largement s'inspirer du code serait punitif puisqu'à son tour l'entrepreneur aux dents de requin serait contraint de publier son code. Mais l'idée d'une app de rencontre, elle, que le code soit ouvert ou non, elle sera visible et pourra inspirer.

Imaginons que plutôt qu'une app de rencontre, la start-up ait créé un superbe logiciel qui permet, en un clic sur une photo, de détourer un objet et d'en faire une autre image avec un fond transparent. Ici, c'est le code qui est innovant, sans nul doute ! Et inutile de contraindre à le rendre ouvert : il ne manipule pas les données des utilisateurs.

Bref : souvent la valeur d'un produit ne réside pas dans son code, et si ça l'est, souvent cette partie du code peut être différenciée et mise à part dans un joli coffre fort caché des yeux de tous.

Sécurité

Avec l'open source, tout le monde peut voir le code source et peut potentiellement trouver des vulnérabilités ou des failles de sécurité.

Là je pense que beaucoup de personnes travaillant dans la sécurité informatique me rejoindront : l'open source et le bug bounty sont deux outils extrêmement efficaces pour optimiser la sécurité d'un logiciel.

Aujourd'hui, si une entreprise affirme que le code de son logiciel n'est pas publié pour des raisons de sécurité, n'y aurait-il pas ici un perte en crédibilité ? En ce qui me concerne, clairement.

Si "cacher" est synonyme de "sécuriser", on peut en déduire des trous dans la raquette ou un manque de confiance en la qualité du code.

Je pense même que "cacher" est synonyme de "mauvaise sécurité". Je ne sais pas ce que l'entreprise fait de mes données. Mon mot de passe est-il stocké en clair, comme beaucoup trop de fois on l'a constaté ?

Mais plus encore : mon utilisation d'une application de rencontre gay dans un pays où l'homosexualité est illégale peut-elle mettre en danger ma condition physique ? Mon utilisation du GPS pour aller dans un centre de clinique pour avortement dans un État où la pratique est récemment devenue illégale me met-elle en danger ? Si je suis une adolescente enceinte et que je me renseigne en ligne à ce sujet, mes parents autoritaires et violents risquent-il d'en être informé notamment par le biais de publicités ?

Bref : La sécurité d'une application peut être largement consolidée par l'ouverture de son code, qui peut être précédée par des audits. La sécurité des utilisateurs n'est pas moins importante.

Et donc

Je suis avide d'avis contraires, je ne promets pas d'y répondre rapidement mais mon opinion me convainc tellement qu'elle me semble évidente.

Pour ma part je privilègie souvent un logiciel dont le code est ouvert aux autres. Notamment Signal devant Whasapp, Firefox devant Chrome, Standard Notes devant Notes d'Apple, ou même les services Proton devant ceux de Google.

Je n'ai malheureusement pas le temps aujourd'hui de creuser d'avantage ce sujet, mais plein d'autres l'ont fait avec brio ! Je recommande notamment :

L'ouverture du code me paraît utile, voir nécessaire. Pour l'ensemble de la société, mais aussi pour l'innovation et la sécurité des produits informatiques. Change my mind!