IMA4 2018/2019 P22

De Wiki de Projets IMA
Révision datée du 25 novembre 2018 à 21:10 par Aaitmouh (discussion | contributions) (Civil)


Présentation générale

Dépôt Git

Afin de consulter le travail effectué sur ce projet un dépôt Git est disponible ici. Pour y accéder, vous devez au préalable disposer d'un compte sur la plateforme Git-hub et faire une demande d'accès à l'adresse: ait.mouheb.arezki@gmail.com

Présentation Générale

Introduction

schéma abstrait Blockchain

Blockchain est une technologie de stockage et de transmission d’informations basé sur la cryptographie. Elle peut être vue comme une sorte de base de données distribuée, sécurisée et partagée. Autrement dit, c'est une structure de données qui contient des informations et qui n'est pas détenue par un serveur centralisé mais par toutes les machines connectées au réseau. Ces informations sont groupées en blocs d'une taille définie et chaque bloc est lié à celui qui le précède par un Hash Cryptographique créant ainsi une chaîne. Le véritable attrait de la Blockchain est de créer un registre de données qui est au même temps commun et extrêmement difficile à altérer.

Plusieurs implémentations de la technologie existent et beaucoup d'autres sont en cours de développement. Historiquement, la première et la plus connue reste la Cryptomonnaie Bitcoin qui est une variante spécifique dite publique c'est à dire que tous les utilisateurs ont les mêmes droits d'accès. Le potentiel d'application de la technologie a conduit à l'apparition d'autres variantes plus adaptées aux nouveaux usages.

Blockchain Fédérée

On peut distinguer 2 autres types:

  • Privée: propriété d'un individu ou organisation. Un nœud central décide d'octroyer les privilèges d'accès aux autres nœuds
  • Fédérée ou Consortium: propriété d'un groupe. Les nœuds fédérateurs se réservent le droit de vérifier les blocs, voire de les créer.

Description du projet

L'idée de ce projet est d'explorer cette technologie par l'implémentation d'une variante fédérée de celle-ci qui sera illustrée par un système d'annonce public. Dans ce système, les membres du réseau peuvent se connecter et ainsi avoir accès aux messages diffusés mais seuls certains membres seront autorisés à émettre/valider une annonce. Les messages publiés seront protégés contre l'altération par les mécanismes de cryptage et de sécurité blockchain.

Objectifs

Ce projet est essentiellement un sujet d'exploration et de ce fait les objectifs peuvent évoluer. Néanmoins, nous pouvons initialement lister les suivants:

  • Étude des différentes technologies Blockchain disponibles et définition de la plus adaptée au projet.
  • Appropriation des outils de développement liés au choix technologique.
  • Prototype 0:
    • Réalisation d'un premier système de diffusion d'annonce public et libre d’accès.
    • Implémentation de clients simples visualisant les messages (sur ligne de commande, Page web ...).
  • Prototype 1:
    • Ajouter les mesures de sécurité et de vérification pour réserver le droit de diffusion aux nœuds fédérateurs.
    • Implémentation de clients avancés qui devront interagir avec les messages diffusés (Dispositif embarqué, Système d'alarme ...etc).

Analyse du projet

Positionnement par rapport à l'existant

La technologie blockchain est très récente et fait l'objet de beaucoup de projets de développement. Parmi ces derniers, certains se rapproche de l'objectif de ce projet. A savoir la création d'un système de diffusion d'annonce ou de messages. Parmi les plus aboutis, nous retrouvons deux projets majeurs.

Analyse du premier concurrent

Civil

Civil est une start-up qui propose un nouveau business modèle pour le journalisme. Ils proposent un système décentralisé de publication basé sur la Blockchain. Leur système permet à la communauté de voter pour élire les Newsrooms (groupes de journalistes représentant des nœuds dans le réseau) qui auront le droit de publier et de vérifier le contenu journalistique. Le droit de vote est acquis en disposant de Consumer Tokens, l'équivalent d'une monnaie client qui sert à payer pour le contenu aussi.

Spécificités:

  • Plateforme de développement utilisée: Ethereum
  • Système de diffusion à monnaie interne et le service est payant car il faut acheter les "Tokens".
  • Contenu partagé: Articles journalistiques, vidéos, podcasts ...
  • Accès: Public

Analyse du second concurrent

DNN:The Decentralised News Network

La plateforme DNN

DNN "Decentralized News Network est une startup qui utilise la technologie Blockchain pour la diffusion de l'information de façon vérifiable, transparente et protégée contre la censure en incitant les utilisateurs à contribuer à la revue la validation et la vérification de contenu à travers un processus de revue rémunérant.

Spécificités:

  • Plateforme de développement utilisée: Ethereum
  • Système de diffusion à monnaie interne: Ether.
  • Contenu partagé: Articles journalistiques, podcasts ...

Scénario d'usage du produit ou du concept envisagé

Réponse à la question difficile

Préparation du projet

Cahier des charges

Choix techniques : matériel et logiciel

Liste des tâches à effectuer

Calendrier prévisionnel

Réalisation du Projet

Feuille d'heures

Tâche Prélude Heures S1 Heures S2 Heures S3 Heures S4 Heures S5 Heures S6 Heures S7 Heures S8 Heures S9 Heures S10 Total
Analyse du projet 0


Prologue

Semaine 1

Semaine 2

Documents Rendus