Journal d'investigation en ligne et d'information‑hacking
par bluetouff

IPV6, FOAF, SSL et Internet des objets

Il y a presque deux ans, j'avais évoqué un peu par dessus la jambe l'usage de FOAF (Friend of a Friend), couplé à SSL. Le sujet était un peu crétin puisqu'il se cantonnait à une solution nerdy pour contourner HADOPI et se créer un réseau de confiance à des fins de partage. Aujourd'hui, avec la pénurie d'IPV4 et l'arrivée d'IPV6, ce sont également nos objets de tous les jours qui seront peu à peu connectés à Internet. On appelle ça l'Internet des objets.

Il y a presque deux ans, j'avais évoqué un peu par dessus la jambe l'usage de FOAF (Friend of a Friend), couplé à SSL. Le sujet était un peu crétin puisqu'il se cantonnait à une solution nerdy pour contourner HADOPI et se créer un réseau de confiance à des fins de partage. Aujourd'hui, avec la pénurie d'IPV4 et l'arrivée d'IPV6, ce sont également nos objets de tous les jours qui seront peu à peu connectés à Internet. On appelle ça l'Internet des objets. Nous allons donc tenter un exercice de vulgarisation d'une architecture technologique appliquée aux usages d'Internet, tels qu'ils devraient toujours l'être : décentralisés, permettant la confiance et donnant tous les pouvoirs à l'utilisateur, pour partager des données et des équipements... et pourquoi pas des applications. Ces technologies existent, elles combinent réseau, web sémantique et chiffrement afin de faire communiquer des humains, des objets et des applications.

Avec une IP publique, accessible depuis Internet, ce qu'on nomme timidement l'Internet des objets posera de nouvelles problématiques en matière de sécurité, mais ce n'est pas le propos pour cet article. Inversement, nous aurons le loisir de partager l'intelligence des objets de notre quotidien grâce au réseau. Et c'est bien là le plus intéressant. Prenons pour débuter un premier cas relativement simple :

  • Jean dispose d'un ordinateur et d'un disque dur multimedia contenant sa collection de films, il partage son disque dur avec l'ordinateur de François et la télévision de Gérard tandis que son ordinateur communique avec celui de Pierre.
  • Gérard n'a pas d'ordinateur, mais il dispose d'une télévision connectée qui va chercher ses programmes du soir dans le disque dur multimédia de Jean, dans l'ordinateur de Pierre et dans l'ordinateur de sa grand-mère pour visionner les photos et les vidéos familiales.
  • La grand-mère de Gérard dispose d'un ordinateur qui partage ses recettes de cuisines avec le réfrigérateur de Gérard. Elle dispose également d'un Nabaztag qui va chercher sa musique dans l'iPad de François, qu'elle ne connait pas directement mais qui est un amis de son petit-fils.
  • Pierre qui aime beaucoup les recettes de cuisine de la grand mère de Gérard dispose d'un four capable d'aller chercher les temps de cuisson des recettes de la Grand mère de Gérard sur le réfrigérateur de ce dernier.

En terme de flux, ça nous donne sensiblement quelque chose qui ressemble à ceci :

Essayons maintenant de comprendre la mécanique de ce schéma et le rôle de nos briques techniques.

  • FOAF se base sur le vocabulaire RDF et permet la diffusion ciblée de flux
  • SSL est utilisé pour l'authentification et le transport de données et permet donc une diffusion des flux à des tiers à qui on souhaite les diffuser parce qu'on les trouve dignes de confiance
  • IPV6 permet de rendre tous les équipements domestiques "communicants" sur le réseau

SI vous me suivez jusque là, rassurez vous, vous avez compris le gros de la mécanique.

Nous avons donc ici un cas d'utilisation assez simple que l'on pourrait s'amuser à complexifier un peu en y ajoutant des applications web.

  • Imaginons par exemple que la grand mère de Gérard soit tellement bonne cuisinière, qu'elle crée un groupe Facebook avec lequel elle partage le flux de données de ses recettes. Elle déclare donc à l'API de Facebook que ses recettes doivent être partagées sur son groupe Facebook.
  • Un jour, Jean découvre le groupe Facebook de la grand-mère de Gérard, devient fan et syndique donc toutes les recettes sur son ordinateur.
  • Comme la grand mère de Gérard est fan de tango et de musette, elle décide de partager uniquement ces deux styles de musique depuis son Nabaztag. Mais la voici heurtée à un cruel dilemme. La communauté tango de LastFM est géniale, mais particulièrement nulle niveau musette. Elle demande donc à son Nabaztag de ne partager que le tango avec LastFM et le musette qu'avec la communauté de Radio Bleue dont la communauté, dans ce genre style musical, est bien plus dynamique que sur LastFM.

On obtient donc quelque chose qui ressemble à ça :

Récapitulons, nous avons donc :

  • Des machines qui communiquent avec d'autres machines de manière automatisée, par le biais de flux RDF ;
  • Des machines qui communiquent avec des API de sites web ;
  • Divers équipements qui se mettent à communiquer entre eux selon des règles de confiance accordées par une intervention humaine aussi simple qu'un "je fais confiance à.. oui ou non" via une PKI légère où chacun a son certificat SSL, le tout grâce à IPV6 qui octroie une IP publique pour chaque équipement.

Si vous m'avez suivi, vous devez commencer à voir l'intérêt de la chose. Le pouvoir est entièrement dans les mains des utilisateurs, qui choisissent quels flux d'informations partager avec quels équipements, quelles personnes ou quels sites web. Les flux sont chiffrés et SSL permet une authentification de ces équipements entre eux.

L'arrivée des objets reliés à Internet dans notre paysage numérique pose déjà aujourd'hui des problèmes relatifs à la neutralité. On sent peu à peu venir les constructeurs et fabricants, et vous allez les voir, il n'y a pas loin à chercher, tenter d'éviter que leurs équipements puissent communiquer directement avec d'autres en créant des points de centralisation.

Typiquement, si l'on prend un fabricant de consoles de jeux comme Sony qui décrète que la PlayStation de Jean est obligée de passer par le PlayStation Network qui contactera l'Apple Store pour demander s'il a le droit de communiquer avec l'iPad de François, on voit tout de suite à quel point un fabricant peut devenir à la fois le maillon le plus inutile et le plus faible de notre architecture.

La magie de FOAF n'est malheureusement pas vraiment visible dans les schémas proposés ci-dessus. Ceci va en fait bien plus loin. Couplé à SSL et à IPV6, nous sommes en face d'une solution vraiment terrifiante pour beaucoup parce qu'elle permet de faire de l'Internet, du vrai, totalement décentralisé, qui permettrait à des humains de communiquer avec des objets, des applications web, ou d'autres humains... et à des objets de communiquer entre eux ou avec des applications web.

La nouveauté, c'est aussi qu'il devient possible d'octroyer une confiance à des objets, des applications Web et des humains, ce de manière relativement simple et relativement sécurisée. FOAF permet donc aux amis de nos amis, d'accéder à un équipement et aux données qui s'y trouvent si on détermine que l'on octroie une forme de confiance à ces derniers. Appliqué à une échelle importante, on crée donc des micro-communautés autour de données et d'équipements réseaux. La gestion de la confiance est elle, bien humaine et le reste, elle ne subit pas la volonté d'un intermédiaire auquel on ne porte aucune confiance.

Si vous souhaitez en savoir plus voici quelques liens indispensables. Les possibilités d'implémentation sont nombreuses, elles n'attendent que quelques développeurs motivés :

 

0 Commentaires
Une info, un document ? Contactez-nous de façon sécurisée