• Aucun résultat trouvé

Arbre de Merkel

N/A
N/A
Protected

Academic year: 2022

Partager "Arbre de Merkel"

Copied!
1
0
0

Texte intégral

(1)

Arbre de Merkel

Master 2 I2L, 2015/2016

Les arbres de Merkel sont des arbres utilis´es pour comparer rapidement 2 ensembles et d´etecter les diff´erences. Ils sont utilis´es notamment dans les syst`emes pair `a pair de t´el´echargement, dans certaines bases de donn´ees nosql (BD distribu´ee de grand volume), ou encore en cryptographie dans les blockchains (bitcoin, etc.).

Nous allons utilis´es les arbres de Merkel pour comparer 2 fichiers.

Exercice 1 : D´ efinition

Questions :

a- Trouver la d´efinition des arbres de Merkel.

b- Donner un exemple d’un tel arbre.

Exercice 2 : Impl´ ementation en erlang

Questions :

2.a. Tester les lignes suivantes et d´efinir une fonction hash qui calcule le md5 d’une chaine de caract`eres :

B=erlang:md5("salut").

lists:flatten([io_lib:format("~2.16.0b", [C]) || <<C>> <= B]).

2.b. D´efinir une fonction qui...

2.c.

Exercice 3 : Comparaison de 2 fichiers

Questions :

3.a D´efinir une fonction qui compare et d´etecte toutes les diff´erences entre la repr´esentation sous forme d’arbre de Merkel de 2 fichiers.

3.b Calculer la complexit´e de votre algorithme.

1

Références

Documents relatifs

´ el´ ementaire Cons´ equences. Coordonn´

Pour partager des fichiers sur un réseau (Internet) Construit comme remplacent décentralisé de Napster Construit pour être tolérant aux pannes. “Gnutella can withstand a nuclear

Introduction.- En langage C, l’acc`es ` a un ´el´ement d’un tableau peut se faire classiquement par le nom du tableau accompagn´e d’un index, mais aussi par un pointeur

D´ efinir une fonction filterConsMerkel qui ` a partir d’une liste d’arbres de Merkel retourne une liste d’arbres de Merkel dont chaque ´ el´ ement est construit ` a partir de 2

[r]

[r]

Imaginer et tester (avec phpPgAdmin ou dans l’interface en ligne de commande) des requˆ etes SQL pour r´ ecup´ erer les informations suivantes :2. a) L’ensemble des

Pour une distribution utilisant le syst` eme de paquetage dpkg (p. ex., Debian, Ubuntu, Linux Mint), vous pouvez installer l’ensemble de ces logiciels avec la commande :.. sudo