Ouvrir le menu principal

iGeneration

Recherche

Code copié dans Android : quelques précisions

Anthony Nelzin-Santos

samedi 22 janvier 2011 à 16:21 • 23

Android

Hier, Florian Müller publiait neuf documents PDF pour un total de 46 pages, documentant sa thèse selon laquelle Android contenait 43 fichiers qui seraient directement du code copié du code de Java (lire : Oracle/Google : Android contiendrait du code copié de Java). Cette accusation, qui s'est répandue comme une traînée de poudre, a provoqué de nombreuses réactions, dont des réfutations. Nous vous proposons quelques précisions pour mieux comprendre cette affaire épineuse et complexe. skitched Qui est Florian Müller ? Dans sa réfutation, Ed Burnette de ZDNEt, attaque personnellement Florian Müller : « tout a commencé avec un article écrit par Florian Müller, qui, au passage, n'est ni un avocat ni un développeur même s'il en joue un à la télévision ». Müller n'est en effet pas un avocat, mais c'est une personnalité connue et respectée dans le domaine de la propriété intellectuelle. Auteur de publications informatiques, l'Allemand été consultant pour Blizzard (1987-1998) avant de se tourner vers le monde du libre : il a notamment été conseiller du PDG de MySQL AB de 2001 à 2004 (donc avant son acquisition par Sun en 2008, et par Oracle en 2010). En 2004, alors que la Commission européenne réfléchit à statuer sur la brevetabilité des logiciels en Europe, il mène la campagne NoSoftwarePatents avec le support de 1&1, Red Hat et MySQL. Son lobbying intensif est un des éléments menant au rejet de la directive sur les brevets logiciels par le Parlement européen le 6 juillet 2005. Ayant reçu plusieurs prix pour son action en 2004-2005, Müller n'est donc pas avocat, mais un spécialiste des questions de propriété intellectuelle. N'hésitant pas à dire tout haut ce que tout le monde pense plus bas, il étudie le cas d'Android depuis plusieurs mois, ce qui ressemble parfois à une croisade personnelle. Les fichiers incriminés Müller a trouvé 43 fichiers (en deux lots de 6 et 37 fichiers) dans Android qu'il considère comme une copie de fichiers Java. Le lot le plus imposant, contenant 37 fichiers, provient d'une archive ZIP, MMAPI.zip, située assez bas dans le système. MMAPI est l'acronyme qui désigne les Mobile Media APIs de Java ME, un jeu d'outils pour lire et enregistrer de l'audio, de la vidéo et des images sur des téléphones portables. Les fichiers en questions correspondent à l'implémentation de MMAPI faite par SONiVOX (autrefois connu sous le nom de Sonic), ici pour des composants audio. Les 6 autres fichiers semblent être des fichiers de tests que Sun fournissait aux développeurs pour les aider à tester leur code et le débugger. On rappelle qu'avant son rachat par Oracle, Sun était propriétaire de Java. Les droits et devoirs sur ces fichiers Les fichiers provenant de MMAPI étaient fournis par Sun gratuitement sur son site Internet. Gratuit ne veut pas dire libre : on ne peut pas faire n'importe quoi de ces fichiers et SONiVOX a bien fait attention de laisser en place des avertissements sur ces fichiers (des en-têtes portant la mention « PROPRIETARY/CONFIDENTIAL » et le fichier de Sun incluant la licence et portant la mention « DO NOT DISTRIBUTE! »). Leur présence dans les sources d'Android pose donc problème : ces fichiers n'avaient rien à y faire, d'autant plus que si Android utilise le code du framework audio de SONiVOX, il n'utilise pas MMAPI. Même chose pour les 6 autres fichiers : fournis par Sun avec une licence très précise, ils ont été redistribués sous la licence Apache, un changement de licence qui ne va pas de soi (des fichiers placés sous la licence GPL ne peuvent être inclus dans un projet placé sous la licence Apache). Leur code étant identique à la version de Sun, ils sont sans doute la conséquence d'une extraction automatique par décompilation, qui peut expliquer le changement de licence (le robot de décompilation peut modifier l'en-tête et y ajouter une nouvelle licence « par erreur »). Ils ont été supprimés il y a quelques jours (le 14 janvier), avec le commentaire « Remove pointless tests » (suppression de tests sans intérêt). Théorie et pratique ZDNet comme Ars Technica expliquent que ces fichiers de test, présent dans les sources d'Android, ne font pas partie de la plateforme finale. Leur présence dans le repo d'Android pose cependant problème : que ces fichiers aient un jour été présents dans un smartphone Android ou pas, ils ont été présents dans les sources d'Android, et le droit ne fait pas de distinction entre les deux cas. Que la licence des 6 fichiers ait été changée par erreur ou pas, elle a été changée, ce qui est un problème. Que les fichiers de SONiVOX aient été redistribués par erreur ou pas, ils ont été redistribués. Seule la justice pourra trancher sur cette affaire, qui ne devrait affecter qu'à la marge le cas opposant Oracle à Google, qui touche à l'implémentation de Java faite par Android, qui ne respecterait pas le standard (lire : Oracle attaque Google en justice). Comme l'indique Nilay Patel d'Engadget (qui a lui été longtemps avocat spécialiste du copyright), la présence de ces fichiers à un moment ou à un autre dans les sources d'Android pose un problème sérieux à Google sur la question du respect de la propriété intellectuelle (notamment sur la question du changement de licence). Florian Müller devrait publier un nouvel article sur cette question, et Google ne peut que répondre pour clarifier les choses, ne serait-ce que par la voix par un porte-parole sous la forme d’un communiqué laconique. Seule la justice peut statuer sur le fond de l'affrontement entre Oracle et Google, arrière-plan à cette fouille archéologique d'Android. On peut néanmoins remarquer que ces échanges montrent l'importance d'un audit plus rigoureux du code d'Android : la moindre petite faille sera exploitée dans le cadre de cette bataille juridique. La firme de Moutain View joue en effet gros dans cette affaire : Oracle a en mains de quoi remettre en cause le meilleur argument d'Android — sa gratuité.

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner

Apple Intelligence se fait étriller par la BBC

14/12/2024 à 22:30

• 22


Promos : Station de recharge 2 en 1 Belkin à 39 € et disque dur LaCie 4 To à 136 €

14/12/2024 à 13:23

• 11


Nos coups de cœur et nos coups de gueule 2024

14/12/2024 à 11:22


Apple sommée de retirer TikTok aux USA dès janvier

13/12/2024 à 20:45

• 91


Somfy : une mise à jour TaHoma a cassé les scènes HomeKit

13/12/2024 à 18:30

• 33


Promo : le mini chargeur de voyage 3-en-1 d’Anker à 75 € (-25 %)

13/12/2024 à 17:47

• 3


Le service de paiement Wero affiche déjà 8 millions de transactions pour 14 millions d'utilisateurs

13/12/2024 à 17:00

• 26


AirTag : United traquera les bagages perdus avec le partage de position d'iOS 18.2

13/12/2024 à 16:00

• 17


Resident Evil : Capcom supprime la connexion internet obligatoire et lance une série de promos

13/12/2024 à 11:43

• 18


USB-C : Apple va arrêter la vente des iPhone SE et iPhone 14 dans l'Union européenne

13/12/2024 à 10:23

• 45


Apple sortirait des nouvelles versions de l’Apple TV et du HomePod mini en 2025

13/12/2024 à 07:53

• 18


L’Apple TV serait le premier produit à étrenner la puce Wi-Fi de la pomme

12/12/2024 à 21:15

• 46


Avez-vous personnalisé les boutons de l'écran verrouillé d'iOS 18 ?

12/12/2024 à 18:15

• 85


La sortie morcelée d’iOS 18 ralentirait le développement d’iOS 19

12/12/2024 à 17:30

• 51


iPhone 17 : les rumeurs s'alignent sur des capteurs photo en bandeau

12/12/2024 à 16:45

• 43


Plans souligne les itinéraires les plus écologiques

12/12/2024 à 15:15

• 40