Table de hachage. Principe. Table à adressage direct. Chapitre 5. Technique adaptée au cas où la taille de U est petite

Documents pareils
6. Hachage. Accès aux données d'une table avec un temps constant Utilisation d'une fonction pour le calcul d'adresses

L exclusion mutuelle distribuée

CRYPTOGRAPHIE. Signature électronique. E. Bresson. SGDN/DCSSI Laboratoire de cryptographie

Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34

Table des matières. I Mise à niveau 11. Préface

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

Distribution Uniforme Probabilité de Laplace Dénombrements Les Paris. Chapitre 2 Le calcul des probabilités

Qu est-ce qu une probabilité?

TABLE DES MATIÈRES. PRINCIPES D EXPÉRIMENTATION Planification des expériences et analyse de leurs résultats. Pierre Dagnelie

IFT3245. Simulation et modèles

Journées MATHRICE "Dijon-Besançon" DIJON mars Projet MySafeKey Authentification par clé USB

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

Cryptographie Quantique

Programmation Linéaire - Cours 1

Quantification Scalaire et Prédictive

VI. Tests non paramétriques sur un échantillon

ÉPREUVE COMMUNE DE TIPE Partie D

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)

ELEC2753 Electrotechnique examen du 11/06/2012

Notes du cours MTH1101 Calcul I Partie II: fonctions de plusieurs variables

3. Conditionnement P (B)

Que faire lorsqu on considère plusieurs variables en même temps?

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Couples de variables aléatoires discrètes

LEÇON N 7 : Schéma de Bernoulli et loi binomiale. Exemples.


Fonction de hachage et signatures électroniques

Sauvegarde collaborative entre pairs Ludovic Courtès LAAS-CNRS

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

ARBRES BINAIRES DE RECHERCHE

Programmes des classes préparatoires aux Grandes Ecoles

année - Tronc commun - Harmonisation informatique

M2 IAD UE MODE Notes de cours (3)

L ANALYSE EN COMPOSANTES PRINCIPALES (A.C.P.) Pierre-Louis GONZALEZ

3 Approximation de solutions d équations

Cryptologie et physique quantique : Espoirs et menaces. Objectifs 2. distribué sous licence creative common détails sur

Les fonctions de hachage, un domaine à la mode

Cours Fonctions de deux variables

Optimisation des fonctions de plusieurs variables

Soutenance de stage Laboratoire des Signaux et Systèmes

Projet Active Object

Calcul différentiel sur R n Première partie

Une dérivation du paradigme de réécriture de multiensembles pour l'architecture de processeur graphique GPU

Cours d Analyse. Fonctions de plusieurs variables

Notes du cours MTH1101N Calcul I Partie II: fonctions de plusieurs variables

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE

Chapitre 3. Mesures stationnaires. et théorèmes de convergence

Fonctions de deux variables. Mai 2011

Correction du baccalauréat ES/L Métropole 20 juin 2014

1.6- Génération de nombres aléatoires

Simulation de variables aléatoires

PLAN DE COURS. GPA750 Ordonnancement des systèmes de production aéronautique

I Stabilité, Commandabilité et Observabilité Introduction Un exemple emprunté à la robotique Le plan Problème...

L utilisation d un réseau de neurones pour optimiser la gestion d un firewall

SUPPORT DE COURS. Dr. Omari Mohammed Maître de Conférences Classe A Université d Adrar Courriel : omarinmt@gmail.com

(Third-Man Attack) PASCAL BONHEUR PASCAL 4/07/2001. Introduction. 1 Domain Name Server. 2 Commandes DNS. 3 Hacking des serveurs DNS

Méthodes de quadrature. Polytech Paris-UPMC. - p. 1/48

Filtrage stochastique non linéaire par la théorie de représentation des martingales

Parallélisme et Répartition

Rupture et plasticité

PROBABILITES ET STATISTIQUE I&II

P.A.R.A.D.S. PÔLES D ACCUEIL EN RÉSEAU POUR L ACCÈS AUX DROITS SOCIAUX

Exercices supplémentaires sur l introduction générale à la notion de probabilité

TABLE DES MATIERES. C Exercices complémentaires 42

Probabilités sur un univers fini

Résolution de systèmes linéaires par des méthodes directes

Hervé Oudin. HAL Id: cel

Plus courts chemins, programmation dynamique

Ordonnancement robuste et décision dans l'incertain

Technologie de Déduplication Progressive

Ensimag 1ère année Algorithmique 1 Examen 2ième session 24 juin Algorithmique 1

Rapport de certification ANSSI-CSPN-2010/07. KeePass Version 2.10 Portable

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,

LE PROBLEME DU PLUS COURT CHEMIN

La problématique des tests. Cours V. 7 mars Comment quantifier la performance d un test? Hypothèses simples et composites

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1

TD1 Signaux, énergie et puissance, signaux aléatoires

Cours de méthodes de scoring

Bases de données réparties: Fragmentation et allocation

Introduction à la statistique non paramétrique

Architecture des Systèmes d Information Architecture des Systèmes d Information

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4)

Corrigé des TD 1 à 5

Chp. 4. Minimisation d une fonction d une variable

données en connaissance et en actions?

Efficience des marchés et finance comportementale

Le format OpenPGP. Traduit par : Sébastien Person. personseb@yahoo.fr. Matthieu Hautreux. matthieu.hautreux@insa-rouen.fr.

Gestion des données médicales anonymisées : problèmes et solutions

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université

INF 4420: Sécurité Informatique Cryptographie II

1 Complément sur la projection du nuage des individus

Licence MASS (Re-)Mise à niveau en Probabilités. Feuilles de 1 à 7

1 Définition et premières propriétés des congruences

Probabilités sur un univers fini


La nouvelle planification de l échantillonnage

Chapitre 2. Matrices

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Calcul différentiel. Chapitre Différentiabilité

Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.

Transcription:

Chapitre 5 able de hachage Olivier Raynaud Université Blaise Pascal Principe Définition : Une table de hachage est une structure de données permettant d implémenter le.d.a. Dictionnaire. Une table de hachage généralise la notion de tableau. Clefs possibles : U Clefs réelles : K able à adressage direct echnique adaptée au cas où la taille de U est petite 1 : 1 6 8 6 : 8 : 1

able de hachage Définition : On utilise une fonction de hachage «h» pour calculer l adresse de l alvéole à partir de la clef k. h établit une correspondance entre l univers U des clefs et les alvéoles de la table de hachage Clefs possibles : U h(k1) h(k2)=h(k4) k1 k2 k4 k3 Fonction de hachage h h(k3) Résolution par chaînage Clefs possibles : U k1 k2 -> k4 k1 k2 k4 k3 Fonction de hachage h k3 α = n/m Hypothèse du hachage uniforme simple : chaque clef a autant de chance d être hachée dans l une quelconque des m alvéoles. Construction Remarque : Une bonne fonction de hachage vérifie l hypothèse de hachage uniforme simple. Soit j [1,m] Σ P(k) = 1 / m k:h(k)=j La difficulté réside dans la construction d une fonction de hachage qui vérifie l hypothèse. 2

Méthode la division Définition : La méthode de la division fait correspondre une clé k avec l une des m alvéoles en prenant le reste de la division de k par m. Autrement dit : h(k) = k mod m Ce hachage ne demande qu une division. Question : Comment choisir m? Hachage universel Définition : Soit H une collection finie de fonctions de hachage de U dans {0,1,,m-1}. H est Universelle si pour tout (x,y) de U, le nombre de fonctions telles que h(x)=h(y) vaut H /m. Le principe consiste à choisir aléatoirement dans H une fonction de hachage à chaque exécution. L algorithme peut donc avoir un comportement différent pour un ensemble de clés identiques. Hachage universel Définition : Soit la collection H définie comme suit : r h a (x) = Σ a i. x i (mod m) i=0 Avec a=<a 0,a 1,,a r > pour tout a i dans {0,1,,m-1} et x=<x 0,x 1,,x r > H = {h a } est une classe universelle de a fonctions de hachage 3

Adressage ouvert Définition : On dit d une table de hachage qu elle réalise un adressage ouvert si tous les éléments sont stockés dans la table elle-même. Pour rechercher ou insérer un élément dans la table on calcule une séquence d alvéoles suivant un schéma préétabli. L élément est inséré dans la première alvéole libre de cette séquence. Numéro de sondage Définition : Une fonction de hachage en «adressage ouvert» impose comme second paramètre un numéro de sondage : h : U x {0,1,,m-1} {0,1,,m-1} De plus, pour chaque clé k la séquence <h(k,0), h(k,1),, h(k,m-1)> doit réaliser une permutation de l ensemble {0,1,,m-1}. Hachage uniforme Définition : l hypothèse de hachage uniforme suppose que chacune des m! permutations possibles de l ensemble {0,1,,m-1} a autant de chance de constituer la séquence de sondage de chaque clé. On applique des approximations : 1. Sondage linéaire; 2. Sondage quadratique; 3. Sondage par double hachage. 4

Sondage linéaire Définition : soit h : U {0,1,,m-1}, le sondage linéaire utilise la fonction de hachage : h(k,i) = ( h (k) + i ) mod m (i [0,m-1]) Analyse : le sondage linéaire n utilise que m séquences de sondage distinctes; le sondage linéaire génère des grappes à l intérieur de la table de hachage. Sondage quadratique Définition : soit h : U {0,1,,m-1}, le sondage quadratique utilise la fonction de hachage : h(k,i) = ( h (k) + c 1 i + c 2 i 2 ) mod m (i [0,m-1]) Analyse : le sondage quadratique n utilise que m séquences de sondage distinctes; le sondage quadratique génère des grappes faibles. Sondage par double hachage Définition : soit h 1, h 2 : U {0,1,,m-1} deux fonctions de hachage, la technique du sondage par double hachage utilise la fonction : h(k,i) = ( h 1 (k) + i h 2 (k) ) mod m (i [0,m-1]) Analyse : le sondage par double hachage utilise m 2 séquences de sondage distinctes; 5

Pour résumer Une table de hachage implémente le.d.a. Dictionnaires et se présente comme une généralisation d un tableau caractéristique. A un couple (objet, clé) correspond une alvéole dans la table de hachage. Gestion des collisions : Par chaînage; Par adressage ouvert; (sondage linéaire, quadratique et par double hachage) 6