WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Projet de mise en place d'un système de sécurité biométrique basé sur la reconnaissance d'iris embarqué dans un gab.

( Télécharger le fichier original )
par Benito Lubuma
Université de Kinshasa - Lincecié en Genié Informatique 2014
  

Disponible en mode multipage

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

Dédicace

À mes parents pour avoir eu l'idée d'investir en moi et surtout pour leur support indéfectible, lors de toutes ces années d`études.

Les parents ne peuvent donner que deux choses à leurs enfants :
Des racines et des ailes. Vous avez excellé.

Merci.

Remerciements

Il est des remerciements qu'on prend plaisir à formuler, ceux que j'ai à adresser pour ce travail de fin d'étude fait partie de cette catégorie. Un mémoire ne peut se faire sans le soutien de nombreuses personnes envers qui je suis très reconnaissant et qui avaient ou ont pris une place importante pour moi.

Je crains d'oublier certains ou certaines, mais qu'elles soient assurées que même si leurs noms ne figurent pas sur le papier, ils resteront inscrits dans mon coeur. Je tiens tout d'abord à remercier le Dieu tout puissant grâce à qui je suis ce que je suis !

Je tiens aussi à remercier mon directeur de mémoire, le professeur Eugene MBUYI MUKENDI, pour sa disponibilité et ses nombreux conseils.

Je remercie très sincèrement le chef de travaux monsieur Jean Didier BATUBENGA, pour avoir accepté d'être mon co-directeur et pour ces commentaires et critiques constructives qui m'ont apporté un regard éclairant sur les contributions de ce mémoire.

Je remercie également le professeur Jean Lubuma, Pascal Mubenga, Nestor Anzola qui m'ont toujours aidée dans les démarches à suivre.

Je remercie mes soeurs Gracia Lubuma, Juliana Lubuma et Maryse Lubuma et aussi mon frère Calixte Lubuma qui m'ont toujours soutenue et pour leur amour inconditionnel et sans limites,

J'exprime ma profonde gratitude à Gracia Ampi pour son aide, ses suggestions et la confiance qu'elle m'a toujours témoignée, ainsi que pour ses encouragements et principalement, pour son amitié.

Je tiens aussi à remercier : junelle Mwaka, Marina Lubuma, Pierret Lubuma, Mamie Lubuma, Joël Mubiala, Laure Tshika, Bébé Ngalula, Jeancy Kalonji... Et tous ceux qui m'ont soutenue de loin comme de près durant mes études.

J'adresse mes plus vifs remerciements à Dread Kiamputu, Remacle Nsakoko, Adolphe Kabongo, Fortuna Ndefu, Serge Kimakinda, Ruben Meba, Joël Pero, Yannick Ngiombo, Gloria Asabiel, Herna Nsoso, Glody Mapesa, Achile Muyaka, Jerry Ndombola, Mardochée Mpia...

iii

Et tous les autres pour avoir partagé cette aventure avec moi et m'avoir toujours soutenue pendant les moments les plus difficiles de mes études. Pour moi, vous êtes déjà une partie de ma famille.

iv

LISTES

ABREVIATIONS

A.

A.D.N : Acide DésoxyriboNucléique A.P.I : Application Programing Interface A .T.M: Automated Teller Machine

C.

C.B : Carte Bancaire

C.C.D : Charge Coupled Devise C.M.D: Charge Modulation Devise C.O.S: Chip Operating System C.P.U: Central Processing Unit

D.

D.A.B : Distributeur Automatique de billets D.A.S : Digital Signature Algorithme

E.

E.A.S.T : Equipe Européenne de Sécurité des D.A.B

E.E.P.R.O.M: Electrically Erasable Programmable Read Only Memory E.N.I.S.A: European Network Information security agency E.P.R.O.M: Erasable Programmable Read Only Memory

F.

FIFO: First In First Out

G.

G.A.B: Guichet Automatique Bancaire G .P.S: Gobal Positioning System

I.

I.S.O: Interconnection System Open

M.

M.P.U: Multi-Core Processor

O.

O.S: Operating System

vi

P.

P.C: Personal Computer

P.I.N: Personal Identity Number

R.

R.A.M: Random Access Memory R .O.M: Read Only Memory R.S.A: Rivest Shamir Adleman

S.

S.D.R.A.M: Synchronous Dynamic Radom Access Memory S.G.B.D : Système de Gestion de Base de Données

T.

T.C.P: Transmission Control Protocol

U.

U.D.P: User Datagram Protocol UHD: Ultra Haute Définition

U.M.L: Unified Modeling Language

vii

FIGURES

Figure I.1 : Système de contrôle-commande

Figure I.2 : Architecture d'un système temps réel embarqué mono tache

Figure I.3 : Structure d'une approche mono taches

Figure I.4 : Architecture logicielle d'une application contrôle commande multitâche

Figure I.5 : Les états d'une tâche

Figure I.6 : Interactions entre une tâche et noyau temps réel

Figure I.7 : Architecture logicielle d'une application temps réel.

Figure III.8 : Types des techniques biométriques

Figure III.9 : Les parties de la minutie

Figure III.10 : La décomposition du visage en plusieurs images de nuances gris

Figure III.11 : Principe de la reconnaissance de formes

Figure III.12 : Résultats de la segmentation des images d`iris

Figure III.13 : Transformation polaire

Figure IV.14 : Liens entre exigences utilisateur et Réalisation

Figure IV.15 : Etapes à suivre pour une bonne spécification

Figure IV.16 : Use case

Figure IV.17 : Structures d'une architecture en couches

Figure IV.18 : Les activités gérées par le microprocessus

Figure IV.19 : Diagramme de classe

Figure IV.20 : Diagramme de séquence pour l'exécution d'une transaction

Figure IV.21: Diagramme d'activités

viii

TABLEAUX

Tableau 1 : Avantages et inconvénient de ces techniques

Tableau 2 : Avantages et inconvénients de l'analyse par empreinte digitale

Tableau 3 : Avantages et inconvénients de l'analyse de la forme de la main

Tableau 4 : Avantages et inconvénients de la reconnaissance faciale

Tableau 5 : Avantages et inconvénients de la reconnaissance vocale

Tableau 6 : Avantages et inconvénients de la reconnaissance par l'analyse de l'iris

Tableau 7 : Avantages et inconvénients de la reconnaissance par la rétine

Tableau 8 : Avantages et inconvénients de la signature dynamique

Tableau 9 : Avantages et inconvénients de la dynamique de la frappe au clavier

T.F.E 2015 | Benito Lubuma L2 Génie info

INTRODUCTION GENERALE

De nos jours l'homme qui se veut moderne ne peut pas se passer de la technologie. Dans chaque domaine de notre vie quotidienne, la technologie a apporté une touche magique qui l'a changée d'une manière très considérable.

Dans le domaine économique, les institutions financières ou bancaires ne sont pas en reste. Elles ont réussi à mettre en place, en collaboration avec les grandes firmes électroniques un appareil électromécanique appelé G.A.B.

En ses débuts, l'utilisation de cet appareil faisait appel à une carte à bande magnétique. Avec l'évolution technologique les cartes à puce ont pris la relève.

Le G.A.B demeure actuellement l'un des appareils les plus utilisés dans le monde. Il est pour les institutions bancaires, un appareil indispensable à faire des bénéfices grâce aux nombreux avantages qu'il offre aux abonnés de ces institutions tels que:

· La rapidité d'utilisation lors des paiements et des retraits d'espèces,

· Le fait de ne plus circuler avec des espèces sur soi,

· Sa très large acceptation par les commerçants,

· La facilite d'effectuer les paiements en ligne,

· La réduction de l'obligation de changer de la monnaie lors des déplacements,

· L'inclusion d'assurances et d'assistance dans l'offre,

· La préférence pour des achats courants, en remplacement des espèces, du chèque et aussi des paiements à l'étranger.

Malgré ces avantages cette technologie n'est pas la plus sûre en matière de sécurité surtout avec l'avancée de la cybercriminalité et autres types de vols des données informatiques.

Le G.A.B est confronté à des sérieux problèmes que ça soit du côté logiciels ou matériels. Quand nous parlons du logiciel, nous faisons allusion au système d'exploitation utilisé. Quand nous parlons matériel, nous visons tout ce qui est composant matériel utilisé pour la réalisation du G.A.B.

Nous savons que le GAB est un appareil électromécanique, qui peut d'une manière générale être confronté à deux types des problèmes sécuritaires que nous avons eu à évoquer dans le paragraphe précédent . Ces problèmes peuvent être subdivisés en plusieurs types notamment:

· Les problèmes liés aux cartes bancaires qui constituent les plus grands problèmes du G.A.B , sachant que les cartes peuvent être magnétiques ou à puces,

· Les problèmes liés à l'environnement où a été érigé le G.A.B,

· Les problèmes liés à la technique,

· Etc.

T.F.E 2015 | Benito Lubuma L2 Génie info

2

Les institutions bancaires cherchent partout les voies, les moyens et comment maintenir leurs clientèles. Quelle méthode appliquée pour convaincre les non abonnés à rejoindre la banque. Mais comme le disait ROSS ANDERSON après avoir analysé un système de sécurité du G.A.B, il avait conclu que plusieurs banques ne font pas suffisamment d'efforts pour sécuriser les G.A.B.

Pour mieux comprendre ces problèmes dus à la sécurité, nous allons essayer de répondre à ces questions:

? Quelles sont les causes principales d'usurpation des données de la carte bancaire lors d'une transaction dans un G.A.B?

? Quels sont les moyens mis en oeuvre par les institutions bancaires pour sécuriser les G.A.B?

? Ces moyens sont-ils efficaces?

Une bonne réponse à chacune de ces questions nous permettra de mettre en place un système de sécurité plus sûr mais, le système en question doit répondre aux exigences formulées sous forme de ces quelques questions :

? Est-ce possible d'utiliser d'autres moyens pour assurer d'une manière plus sûre la sécurité du G.A.B?

? Est-ce que les moyens que nous utiliserons seront à mesure de protéger les G.A.B contre les Hackers?

Depuis un certain temps, le développement des logiciels évoluent plus rapidement que le développement des équipements informatiques, d'où l'idée de faire évoluer ces derniers d'une manière parallèle avec les logiciels et cela, selon un problème bien précis à résoudre, c'est sur ce genre d'idée que repose notre travail.

Vu la manière dont les institutions financières dépensent l'argent pour se procurer des G.A.B et cartes bancaires en faveur de leurs clients.

Nous proposons la mise en place d'un système de sécurité biométrique basé sur la reconnaissance de l'iris embarqué dans un G.A.B. Ce système utilisera la reconnaissance de l'iris du client possédant un compte auprès d'une banque quelconque comme étant son PIN.

Il permettra aussi de remplacer l'usage de la technologie des cartes bancaires uniquement dans le G.A.B en rendant l'accès à un compte bancaire d'un client précis via un G.A.B par son iris.

La mise en place d'un tel système, impliquera obligatoirement l'évolution des G.A.B actuels en les équipant des outils très performants pour leur bon fonctionnent.

La réalisation d'un tel projet revêt un intérêt très considérable pour tout acteur oeuvrant dans le secteur bancaire. D'une manière générale nous pouvons dire que la réalisation de ce projet permettra, entre autres, aux institutions bancaires de gagner plus de confiance vis-à-vis de leurs abonnés en matière de sécurité.

T.F.E 2015 | Benito Lubuma L2 Génie info

3

Notre projet est basé sur la sécurisation de G.A.B actuel et cela, face aux divers types d'attaques auxquels il peut faire l'objet dans le monde, étant donné que le système de sécurité qu'utilisent les GAB actuellement ne résiste pas face aux attaques ou fraudes.

Sur ce, nous avons subdivisé notre travail en quatre chapitres qui sont:

? Le premier chapitre qui est intitulé Le système temps réel embarqué qui donne un aperçu très clair sur les systèmes temps réel et embarqué ;

? Le deuxième chapitre intitulé Les GAB et les Cartes bancaires ;

? Le troisième chapitre intitulé la technologie biométrique et les algorithmes de
reconnaissance de forme ;

? Le quatrième chapitre intitulé Spécification, Conception et développement du système.

La méthode analytique nous a été très bénéfique pour effectuer une bonne étude de faisabilité de notre projet. La collecte de données a été rendue possible par la technique documentaire qui nous a permis de compulser les documents officiels et certains ouvrages afin de compléter et enrichir nos informations.

Nous avons aussi fait recourt à l'interview pour recueillir des informations très précises auprès de certains expert en biométrie.

4

CHAPITRE IER : LE SYSTEME TEMPS REEL EMBARQUE [5] [15] [16] [18]

I.1. INTRODUCTION

Les applications informatiques tournant sous le système embarqué font depuis quelques décennies parties de notre vie quotidienne. Cela est dû à une forte automatisation des produits industriels ou à usages grand public.

La liste de ces applications informatiques tournant sous le système embarqué est extrêmement longue. Nous pouvons en citez quelques une :

· Avions militaires comme civils ;

· Téléphone mobile ;

· Four à micro-ondes ;

· Véhicule intelligent ;

· Guichet automatique de billet ;

· Etc.

Plusieurs domaines travaillent en collaboration pour le développement de telles applications, dont : l'électronique, l'automatique et l'informatique.

L'électronique est utilisée pour la réalisation des microcontrôleurs, les processeurs multitâches, la réalisation de circuits électroniques dédiés...

L'automatique permet une bonne vulgarisation numérique. L'informatique propose des méthodes de développement de système d'exploitation embarqué.

Nous noterons que la plupart des systèmes embarqués sont de systèmes de contrôle-commande.

I.2. DEFINITIONS

1. Système de contrôle-commande

C'est un système informatique qui assure le contrôle d'un système physique communément appelé procédé.

Un tel système est en communication avec l'environnement physique externe et grâce aux capteurs ou à des actionneurs.

D'une manière générale, le système de contrôle-commande est celui qui reçoit des informations provenant du procédé externe et traite ces données en fonction du résultat ; le système évalue une décision qui va agir sur l'environnement extérieur enfin d'assurer un état voulu.

T.F.E 2015 | Benito Lubuma L2 Génie info

5

Figure I.1 système de contrôle-commande

T.F.E 2015 | Benito Lubuma L2 Génie info

2. Système embarqué

C'est un système informatique dont les moyens de calcul sont embarqués sur le procédé contrôlé. Ce système est souvent spécialisé dans une tâche bien précise.

Le fait d'embarquer les moyens de calcul implique plusieurs contraintes à respecter entre autres : les contraintes d'encombrement comme le poids, la taille et la forme, les contraintes de consommation énergétique qui regorgent dans son sein différents types d'alimentions électriques, batteries... et surtout les contraintes liées aux coûts de production.

3. Système temps réel

Il s'agit d'un système informatique dont l'exactitude du fonctionnement ne dépend pas seulement du résultat mais aussi du temps. C'est donc un système qui est soumis à des contraintes temporelles.

Selon RAMANRITHAN les contraintes peuvent être liées à l'environnement dû au choix de conception du système et comprends les contraintes externes et les contraintes internes. Les contraintes temporelles, sont des différents types à savoir :

? Les Contraintes temporelles relatives ou lâches : ce sont des contraintes où les fautes temporelles sont tolérées. Nous retrouvons ce genre des contraintes dans certaines des applications mobiles, jeux vidéo, etc.

? Les contraintes temporelles strictes ou dures : dans ce genre de contraintes aucune faute temporelle n'est autorisée. Nous retrouvons ce genre des contraintes dans l'aviation surtout et autres domaines strictes au temps.

? Les contraintes temporelles ferment: ce genre des contraintes autorisent les fautes temporelles avec une certaine limite. Ces types de contraintes acceptent certaines erreurs pendant l'exécution du système.

? Système multi-critiques : ce sont des systèmes constitués des sous composant qui, eux en retour, utilisent des contraintes temporelles. Ces derniers n'ont pas vraiment d'effets sur le bon déroulement du système.

T.F.E 2015 | Benito Lubuma L2 Génie info

6

4. Système critique

Dans ce système informatique la moindre défaillance cause des graves conséquences.

A titre d'exemple nous citons le G.A.B qui est un système embarqué critique dont la moindre défaillance peut causer de graves conséquences financières.

Nous pouvons parler aussi du système temps réel critique lorsqu'une défaillance temporelle cause de graves conséquences; c'est le cas du pilotage automatique d'un drone : une moindre défaillance temporelle peut aussi causer la perte de contrôle de l'engin.

I.3. LES CARACTERISTIQUES D'UN SYSTEME TEMPS REEL

La meilleure façon de présenter les caractéristiques d'un système temps réel est de les subdiviser en deux parties : les caractéristiques principales et les caractéristiques temporelles.

I.3.1. Les caractéristiques principales

Ces caractéristiques qui font allusion au système contrôle-commande ; sont les

suivantes :

· Grande diversité des dispositifs d'entrée/sortie : les données à acquérir sont fournies par les capteurs et les données que fournissent les actionneurs sont de divers type (continu, distrait, analogique...) ;

· Prise en compte des comportements concurrents : les données provenant de l'extérieur sont en fait des données physiques et le réseau qui permet de recevoir ces données. Ces deux objets ne sont pas synchronisés directement. Ainsi le système informatique doit être capable d'accepter des telles variations des paramètres.

· Respect des contraintes temporelles : le système informatique doit avoir une réactivité suffisante pour prendre en compte tous ces comportements concurrents. C'est-à-dire effectuer des commandes dans le délai qui respecte l'état dynamique du système afin de mieux gérer le comportement concurrent.

· Sûreté de fonctionnement : le système de contrôle-commande utilise souvent des applications qui touchent à la vie humaine ou à l'économie c'est pourquoi la sécurité est une priorité dans un tel système et pour répondre à cette demande, il est nécessaire de mettre en oeuvre toute les réponses de sûreté de fonctionnement (développements surs, tests, continuité de service, tolérance aux pannes, redondance...).

· Encombrement mémoire : dans la plupart de cas les systèmes temps réel n'ont pas de disque et ils ont une mémoire limitée

· Consommation d'énergie : la quasi-totalité de systèmes temps réels de type contrôle-commande utilisent l'énergie provenant de la batterie

T.F.E 2015 | Benito Lubuma L2 Génie info

7

I.3.2. Les caractéristiques temporelles des systèmes temps réel

Les contraintes dont nous parlons ici sont des contraintes de latence ou contraintes de bout en bout. Ces types de contraintes représentent le délai maximal entre la lecture de l'état du système et commande de celui-ci, c'est-à-dire le délai maximal entre la lecture de l'état du système par les capteurs et la lecture des commandes fournies par les actionneurs.

Ainsi à chaque fois qu'une trame va se présenter sur le réseau, il faudra que le système puisse soit la lire, soit la traiter, soit la stocker pour un usage ultérieur sous peine de la voir remplacer par une autre. D'où le respect du protocole de communication avec les capteurs, actionneurs ou bus de communication et une source très importante de contrainte temporelle.

Nous pouvons présenter et définir ces caractéristiques comme suit:

· Durée d'exécution d'une activité : c'est la durée que met une activité d'une application sachant que cette activité peut être un enchainement de plusieurs activités élémentaires, telles que l'affichage, le traitement, la commande...Cette durée n'est pas toujours la même pour chaque occurrence de cette activité puisque les programmes ou les enchainements de programmes ne sont pas toujours identiques.

· Périodicité d'une activité : la périodicité d'une activité appelée aussi cadence de répétition, revient à expliquer la régularité liée à une fréquence d'échantillonnage, par exemple, lors de l'acquisition de données ou d'une commande via un actionneur.

· Date de réveil: la date de réveil appelée aussi date de plus tôt, est une date bien précisée, utilisée dans certains cas pour déclencher un traitement et cela indépendamment de l'exécution de l'application. Autrement dit cette date n'implique pas obligatoirement l'exécution d'une application mais peut être causée par une indisponibilité du processeur pendant un temps.

· Date de démarrage : c'est une date qui correspond au lancement de l'exécution d'une activité.

· Date de fin : celle-ci correspond à la fin d'une activité.

· Echéance : l'échéance appelée aussi date au plus tard, revient à préciser que le traitement ou la commande d'un actionneur doit se terminer à l'instant fixé par rapport au début de l'exécution de l'application. Dans le cas d'application à contrainte temporelle stricte, le non-respect de cette date au plus tard, peut entrainer le non validité de la commande ou du traitement.

· Temps de réponse : cette caractéristique peut s'appliquer à une activité de régulation ou à un ensemble des activités de régulation. Le temps de réponse est directement lié au dynamisme du système. Ce système est la différence entre la date de réveil et la date de fin d'activité.

· Gigue temporelle : ce paramètre caractérise la répétabilité d'une activité au fur et à mesure de ses occurrences. En effet entre deux exécutions successives d'une même application, ses caractéristiques temporelles peuvent changer : date d'activation, durée d'exécution, temps de réponse...

T.F.E 2015 | Benito Lubuma L2 Génie info

8

I.4. DOMAINES D'APPLICATIONS

Comme nous l'avons dit au début, plusieurs domaines travaillent en collaboration pour le développement de telles applications, tels que l'électronique, l'automatique et l'informatique mais d'une manière un peu plus large, les systèmes temps réel et embarqué sont utilisés dans plusieurs domaines notamment :

· Transport (automobile, avion, train,...)

· Produits électriques/électroniques (caméra, télévision, domotique, système audio, GPS, téléphone cellulaire, console vidéo, Pda, ordinateur portable, machine-à-laver, four à micro-ondes...)

· Contrôle de processus continus ou discrets (production et distribution d'électricité, production industrielle automatisée, optimisation de processeur de transformation, contrôle de machines-outils et de chaîne d'assemblage, robotique,...)

· Télécommunications (satellites, téléphonie et vidéo mobiles, réseaux Wan, routeurs...)

· Sécurité (e-commerce, cartes à puce, authentification...)

· Santé (équipement, hospitalisation à domicile, appareils implantés, prothèses)

· Développement durable (éolienne, éclairage public, chauffage...)

· Jouets et autres produits grands publics,...

I.5. ARCHITECTURE DES APPLICATIONS TEMPS REEL ET EMBARQUE

Il y a deux façons de construire un système temps réel et embarqué. Cela implique directement des architectures différentes pour les développements de leurs applications selon le type de système temps réel et embarqué à utiliser.

Nous pouvons construire un système temps réel et embarqué comme étant un :

? Un générateur cyclique : c'est une approche qui est dite mono tâche car il conduit à la réalisation d'un programme unique dont la structure générale est une boucle sans fin. Les capteurs captent périodiquement la dynamique du procédé par l'échantillonnage, effectuent les calculs et envoient les commandes aux actionneurs.

Procédé
contrôlé

Application

Capteur

Actionneur

Figure I. 2Architecture d'un système temps réel-embarqué mono tâches

9

? Un système réactif : c'est un système multitâche qui fonctionne suite aux sollicitations de procédé donc le système sera asynchrone.

A cause de certains besoins, nous pouvons aussi développer un système de type hybride qui renferme les deux types d'architecture. Dans ce, le système sera asynchrone et synchrone. Ce qui donnera une approche multitâche dont les séquences de traitement se dérouleront en parallèle.

I.5.1. Architecture mono tâche

Un système temps réel à une seule tâche (mono tâche) est simple à définir, il suffit de répéter indéfiniment la suite des tâches en attendant un stimulus et cela par la sollicitation d'un procédé afin d'agir en fonction du stimulus, c`est à dire réagir après sollicitation du système.

On utilise un timer pour fixer la périodicité à laquelle un programme sera exécuté ou le signal va être lancé en provenance du capteur.

Lors de l'exécution de la boucle en se référant à un timer, le programme en question qui contient la boucle est constitué d'un programme principal et de deux ensembles de procédures qui sont, entre autres, les procédures de gestion des entrée/sortie et les procédures de traitement d'un ensemble de gestion des interruptions.

Le programme principal joue le rôle de séquenceur rudimentaire qui enchaine l'exécution des différentes procédures en fonctions de stimulus externes ou systématiquement à chaque tour de la boucle. Lors de l'exécution du programme principal, il est intéressant d'avoir un tableau d'adresses qui permet de classer les exécutions selon un ordre déterminé.

Ce genre de système interagit avec son environnement, soit par une interruption, soit par une scrutation cyclique ou carrément en faisant la combinaison des deux.

Ces interruptions sont classées par leur cause et leur arrivée c'est ainsi qu'on a les interruptions des entrée/sortie, de page mémoire...

Principe de l'interruption : lors de l'arrivée d'une interruption, le programme en cours d'exécution sera interrompu à la fin de l'instruction machine en cours d'exécution et une fois l'interruption finie le programme retrouvera son exécution normale ; l'état de la machine est sauvegardé dans une pile pour mieux permettre la reprise après l'interruption.

I.5.1.1. Inconvénients de l'architecture mono tâche

Ce genre de système pose un sérieux problème d'extensibilité, comme nous faisons l'exécution d'une application ayant une seule tâche, nous ne pouvons pas faire évoluer une telle architecture car en faisant étendre une telle architecture nous ne serons plus en mesure de faire tourner une application mono tâche. Elle risquera même de produire des résultats erronés. Or, un tel résultat pour un système temps réel et embarqué aura des conséquences.

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

10

I.5.1.2. Structure d'une approche mono tâche

Initialisation

Acquisition de données

Traitement Primaire

Ecriture de sortie
Envoie des commandes

Traitement Secondaire

Figure I. 3 Structure d'une approche mono tâches

I.5.2. Architecture Multitâche

Le développement d'un système multitâche exige deux types d'architecture qui doivent être utilisées conjointement. Il s'agit d'une architecture matérielle et d'une architecture logicielle.

I.5.2.1. Architecture matérielle

L'architecture matérielle est constituée des interfaces permettant de piloter le procédé et de recueillir des informations en provenance de ce dernier. Comme exemple, nous avons les cartes d'entrée/sortie qui peuvent être analogique ou numérique.

I.5.2.2. Architecture logicielle Multitâche

L'architecture logicielle permet d'assurer le bon fonctionnement du système. Cette architecture est la mieux adaptée pour un système temps réel embarqué utilisant plusieurs tâches qui s'exécutent d'une manière simultanée (fonctionnant en parallèle). Elle conduit naturellement à adapter les méthodes de conception et de réalisation de système de contrôle-commande d'un tel environnement à ce parallélisme.

Dans une telle approche les tâches sont considérées comme étant des agents autonomes. Dès lors une tâche peut être définie comme une entité d'exécution et de structuration d'une application.

Cette architecture facilite la conception et la mise en oeuvre et surtout augmente l'évolutivité de l'application développée.

Suite à la forte présence du parallélisme dont le système fait face, ce dernier doit être en mesure de gérer la synchronisation des tâches, l'accès concurrent des tâches à des ressources partagées, l'ordonnancement des tâches et la communication.

D'une manière générale, il existe deux types de tâche : tâche immédiate et tâche différée. Les tâches immédiates sont des tâches programmées et servant d'interface entre le système et son environnement. On peut utiliser les mécanismes d'interruption pour réaliser son exécution.

Les tâches d'entrée/sortie, les tâches de gestion de l'interface de l'utilisateur, tâches de communications constituent les tâches immédiates.

? Tâches d'entrée/sortie : ces tâches permettent d'accéder aux données externes par l'intermédiaire des cartes d'entrée/sortie et en suite par des capteurs, des actionneurs directement liés au procédé géré.

? Tâches de gestion de l'interface de l'utilisateur : ces tâches comme leur nom l'indique, permettent à l'utilisateur de mieux gérer le procédé en lui présentant son état actuel, à l'aide d'une interface qui peut être soit un tableau de bord ou encore une interface graphique en 3D.

? Tâches de communications : celles-ci permettent de gérer les messages envoyés et reçus provenant de plusieurs réseaux ou bus ; si ces genre des tâches existent alors le système est dit distribué.

Les tâches différées sont celles qui ne peuvent être activé que par demande. Les tâches de traitement et les tâches de sauvegarde constituent les tâches différées.

? Tâches de traitement : ces tâches constituent le coeur de l'application. Car elles intègrent des traitements des signaux (analyse spectrale, corrélation, traitement d'images, etc.) ou des lois de commande (régulation tout ou rien, régulation du premier ordre régulation PID...).

? Tâches de sauvegarde : ces taches permettent de sauvegarder l'état du système à des instants fixés. elles peuvent aussi être utilisées à postériori pour analyser le fonctionnent d'une application ou lors de la reprise de l'exécution à une étape précédente.

Les tâches ainsi obtenues qui constituent l'application de contrôle-commande ne sont pas des entités d'exécution indépendante car les tâches immédiates sont en communication avec l'extérieur et en même temps en communication avec les tâches différées. Ce système devra gérer des problèmes comme celui de la synchronisation pour une relation de présence d'exécution entre les tâches ; la communication pour un transfert de données entre

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

12

les tâches et le partage de ressources pour faciliter le partage de ressources telle que la zone mémoire qui est une ressource commune pour toutes les tâches.

Figure I. 4 Architecture logicielle d'une application contrôle-commande

Une tâche contient au minimum un état, une identité et un nom. Une tâche est constituée de trois zones mémoires qui sont zone programme, zone donnée et zone pile. La zone programme contient les instructions du programme ; la zone donnée et la zone pile contiennent respectivement les données servant au traitement se trouvant dans la mémoire de la tâche et la manière dont elles sont classées.

? Un contexte d'exécution d'une tâche peut être défini comme étant l'ensemble des informations strictement nécessaire à un processeur pour assurer son exécution

? Un contexte mémoire d'une tâche c'est la zone mémoire propre à une tâche dans laquelle est rangé le contexte d'exécution de la tâche lorsqu'elle n'est pas en cours d'exécution. ? La périodicité d'une tâche temps réel fait allusion à l'échéance d'une tâche.

Une tâche a tout au plus quatre opérations qui sont : la création, la destruction, le démarrage et l'arrêt. Une tâche temps réel est caractérisée par sa date de début et celle de la fin.

I.5.2.3. Modèle d'exécution et d'ordonnancement

Un système temps réel est un système multitâche où chaque tâche est soumise à des contraintes temporelles. L'architecture logicielle multitâche est aussi vue comme étant un ensemble des tâches communicantes, synchronisées et partageant des ressources critique qui sont souvent très limitées. Ainsi fait-il appel à l'ordonnancement pour une bonne gestion de ces ressources.

Pour permettre une bonne gestion de ces ressources et une bonne synchronisation des tâches, il s'avère nécessaire de connaitre les différents états d'une tâche.

13

BLOQUE

ELU

PRET

T.F.E 2015 | Benito Lubuma L2 Génie info

Figure I. 5 les états d'une tâche

Une tache est dite en état :

? Bloqué : lorsque cette tâche a été exécutée mais ne peut pas poursuivre son exécution suite à une raison logique.

? Elu : lorsqu'elle est en cours d'exécution, elle peut être arrêtée même si elle peut poursuivre son exécution.

? Prêt : il s'agit de l'état d'une tâche qui a été suspendue provisoirement afin de permettre l'exécution d'une autre tâche, ou une tâche qui attendait les données et vient de les recevoir mais, constate que le processeur est toujours occupé par une autre tâche.

L'invocation d'un ordonnanceur est sollicitée lorsqu'il y a soit l'arrivée d'une tâche dans la liste des tâches prêt à exécuter, soit lorsque une tâche passe d'un état élu à état bloqué.

L'ordonnancement est un point crucial des systèmes temps réel car il va déterminer le comportement temporel et être le garant du respect des contraintes temporelles imposées lors de l'exécution de l'application.

Sachant que toutes les tâches ne peuvent pas s'exécuter toutes de la même façon, on fait appel à la priorité des tâches qui permet à l'ordonnanceur d'avoir des informations sur une tâche pour lui permettre de la classer selon un ordre bien défini.

D'où nos deux types de priorité qui est la priorité variable et la priorité fixe. Une priorité est dite fixe lorsqu'une tâche hérite des priorités de la tâche mère.

Une priorité est dite variable lorsque son fonctionnement dépend de la fonction de temps d'attente. Dans un système temps réel une tâche ne peut jamais être bloquée par une tâche de priorité plus basse qu'elle. Une tâche ne cède la main à une autre tâche de même priorité que volontairement. On peut prévoir le comportement d'un système temps réel si on connait certaines caractéristiques des tâches telles que :

? La loi d'arrivée et ;

? Le temps de traitement.

T.F.E 2015 | Benito Lubuma L2 Génie info

14

A. Types d'algorithmes d'ordonnancement

Nous distinguons plusieurs types d'algorithmes d'ordonnancement dont on peut

citer :

1. Algorithmes hors ligne et en ligne ;

2. Algorithmes préemptifs et non préemptifs ;

3. Algorithmes centralisés ou répartis.

1. Algorithme d'ordonnancement hors ligne : ce type d'algorithme d'ordonnancement correspond à la construction d'une séquence d'exécution complète basée sur des paramètres temporels des tâches en utilisant une modélisation (réseaux de Pétri) ou une simulation (animation ou énumération du modèle). L'ordonnanceur est simple puisque la séquence d'exécution est prédéfinie, il est réduit à un séquenceur et comme conséquence l'application est peu flexible.

2. Algorithme d'ordonnancement en ligne : cet algorithme permet à l'ordonnanceur de faire un choix dynamique de la prochaine tâche et cela en fonction des paramètres d'exécution de la tâche. Lorsque le système a des contraintes temporelles, il est préférable de mettre en place un système des tests qu'on appelle tests d'ordonnançabilité. Ce système permettra de vérifier qu'en toutes circonstances les contraintes temporelles seront respectées.

3. Algorithme d'ordonnancement préemptif : cet algorithme permet à l'ordonnanceur d'interrompre une tâche à n'importe quel instant et d'affecter le processeur à une autre tâche. Dans ce cas, le temps de réponse à un événement extérieur peut être très court ; mais nous aurons un problème lors de la programmation car elle sera très complexe.

4. Algorithme d'ordonnancement non préemptif : cet algorithme permet à l'ordonnanceur de n'interrompre une tâche qu'à la demande de celle-ci. Dans ce cas, le temps de réponse peut être assez long.

5. Algorithme centralise : l'ordonnancement est centralisé s'il s'exécute sur une architecture centralisé ou sur un site privilégié de l'architecture distribuée qui contient l'ensemble des paramètres des tâches.

L'ordonnancement est reparti lorsque les décisions d'ordonnancement sont prises sur chaque site par un ordonnancement local, après une éventuelle coopération pour effectuer un ordonnancement global.

Dans ce dernier cas, peuvent aussi intervenir les placements des taches sur un site et leur migration d'un site à un autre.

B. Politique d'ordonnancement classique

D'une manière classique l'ordonnancement peut se faire selon une certaine stratégie comme la stratégie d'ordonnancement sans recyclage des travaux et l'ordonnancement avec recyclage des travaux.

15

L'ordonnancement sans recyclage des travaux renferme en son sein des techniques d'ordonnancement telle que : file d'attente simple (FIFO), file d'attente ordonnée suivant le temps estimé d'exécution.

L'ordonnancement avec recyclage des travaux lui, renferme les techniques d'ordonnancement suivantes : l'ordonnancement circulaire (tourniquet, round-robin), l'ordonnancement par priorité avec une seule tâche par niveau de priorité et l'ordonnancement par priorité avec files multiples.

Nous pouvons distinguer deux modèles d'exécution dans un système temps réel embarqué qui sont le modèle d'exécution synchrone et le modèle d'exécution asynchrone.

Le modèle d'exécution synchrone. Ce type d'exécution permet une synchronisation directe entre le système informatique et le procédé. Mais du point de vue interne ce modèle traite l'occurrence des événements du système d'une manière différée par rapport à son temps d'exécution ceci pour permettre aux tâches en cours d'exécution par l'environnement extérieur du (système informatique) d'arriver au bout.

Dans le modèle d'exécution asynchrone, l'occurrence de tout événement est directement prise en compte par le système pour tenir compte de son urgence ou de son importance. Donc, d'une manière interne, le système informatique n'est pas directement synchronisé avec le procédé. En quelque sorte, ce modèle d'exécution utilise l'algorithme d'ordonnancement en ligne ayant des tâches préemptives.

Ainsi l'architecture logicielle d'une application temps réel est composée de plusieurs tâches réalisées par le concepteur d'un environnement spécifique et d'un noyau temps réel. Le point central de cet environnement est l'ordonnanceur car il permet d'affecter au processeur, à chaque instant, une tâche afin de respecter l'ensemble des contraintes temporelles attachées à la gestion du procédé.

I.5.3. Exécutif ou noyau temps réel

L'exécutif ou le noyau temps réel peut être assimilé comme étant un système d'exploitation de petite taille dédié aux applications de contrôle-commande. Sa caractéristique principale est son déterminisme d'exécution avec des paramètres temporels fixés.

Le noyau est la partie fondamentale d'un système d'exploitation. Etant donné qu'une application temps réel est un système multitâche, le noyau temps réel a pour rôle essentielle de gérer l'enchaînement et la concurrence des tâches en optimisant l'occupation de l'unité centrale du système informatique. C'est-à-dire, gérer les ressources matérielles et permettre aux différents composants matériels et logiciels de communiquer entre eux.

Pour plus de détail, nous scindons en trois parties les fonctions qu'occupe un noyau

temps réel :

1. Gestion des entrées/sorties : gestions des interruptions, gestion d'interfaces d'entrée/sortie, gestion de réseaux de communication...

2. Ordonnancement des tâches : organisation de fonctionnement normale, surveillance,

T.F.E 2015 | Benito Lubuma L2 Génie info

16

changement de mode, traitement des surcharges...

3. Relation entre les tâches : communication, synchronisation,

4. accès aux ressources critiques, gestion du temps...

Il est à noter que le noyau temps réel n'est actif que lorsqu'une tâche le sollicite et cela via une requête. L'ensemble de ces requêtes sollicitant le noyau est servi par un module du noyau qu'on appelle primitive.

Figure I. 6 Interaction entre une tache et noyau temps réel

Le noyau temps réel réactive une tâche de l'application selon un algorithme d'ordonnancement et en générale le noyau temps réel centralise toutes les demandes d'activation des tâches et les tables qui permettent de gérer les priorités ou les urgences des tâches et aussi de vérifier les états des tâches

D'une manière générale on peut représenter l'architecture logicielle d'une application temps réel comme suit :

Figure I. 7 Architecture logicielle d'une application temps réel

Dans le cas d'un système temps réel à contraintes temporelles strictes, l'ordonnanceur a pour objectif principal de répondre aux cas suivants :

? Faute temporelle : correspond au dépassement de la date de fin d'exécution ou d'une échéance et cela conduit à la notion d'urgence.

? Surcharge : l'accumulation de plusieurs fautes temporelles peut entrainer l'ordonnanceur à agir d'une manière à supprimer certaines tâches ce qui conduit à la notion d'importance des tâches. C'est-à-dire, le choix d'une tâche à s'exécuter par rapport aux spécifications fonctionnelles de l'application.

T.F.E 2015 | Benito Lubuma L2 Génie info

17

I.5.4. Implémentation des applications de contrôle-commande

Le développement d'une application informatique selon le concept du génie logiciel peut être découpé en plusieurs activités. Ces activités constituent le cycle de vie d'une application. Il existe plusieurs méthodes et outils qui prennent en compte les aspects techniques qui sont proposés pour la maitrise du processus de développement d'un logiciel.

Le modèle en V considéré comme le plus complet des modèles de développement logiciel grâce à l'intégration des tests à chaque étape du développement. Cependant ce modèle s'avère non approprié pour le développement des applications temps réel. D'où la création du modèle W qui est en fait la combinaison de deux modèles en V qui se suivent. Le premier V consiste à mettre en place la spécification, la conception unitaire et détaillée, les codages, les tests unitaires et d'intégration et le second V décrit tout ce qui est matériel pour permettre au système développé d'interagir avec le procédé.

La notion de spécification d'une application dans un système temps réel revient à décrire comment le système doit gérer les aspects suivants:

· La concurrence

· La synchronisation

· Manipulation du temps

I.5.4.1. Inconvénients des applications de contrôle-commande

Etant donné que le développement d'une application temps réel et embarqué n'est pas assez aisé, cela pose un sérieux problème pour la maintenance des applications déjà développée : la maintenance est presque impossible et les conséquences d'une application mal développée sont souvent tragiques. C'est pourquoi l'usage d'une bonne méthode pour le développement est très important.

I.5.4.2. Les langages de développement des applications de contrôle-commande

Les langages de développement des applications contrôle-commande sont très divers et cela dépend de l'environnement d'exécution. Pour des applications temps réel, l'environnement d'exécution est le noyau temps réel qui a trois fonctionnalités (la gestion des interruptions, l'ordonnancement, relation entre les tâches). C'est par rapport à ces fonctionnalités qu'il faudra choisir un langage de programmation approprié.

a. Besoins : le langage de programmation choisi doit respecter les besoins suivants :

· Expressions des contraintes temps ;

· Expressions et gestion du parallélisme ;

· Spécification et gestion des périphériques de bas niveau (entrée/sortie) ;

· Modularité ;

· Interfaces avec d'autres langages.

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

18

b. Famille de langages : il est possible de décliner les langages en trois familles distinctes selon leurs spécifications ; nous avons :

? Langages assembleurs ;

? Langages séquentiels liés à des librairies système ;

? Langages concurrents de haut niveau ; cette famille de langages concurrents est subdivisé en deux groupes : langages synchrones et langages asynchrones.

Langages assembleurs : d'une manière historique, ces langages furent longtemps les seuls utilisés pour le contexte des systèmes temps réel. Ils dépendaient extrêmement de la nature de l'architecture cible (matériel et système d'exploitation) mais leurs plus grands inconvénients étaient de ne pas offrir une abstraction possible : difficulté de développement de la maintenance et l'impossibilité d'évolution. Actuellement, ces langages sont considérés comme proscrits d'une manière générale, sauf pour le développement des petites fonctionnalités très spécifique apportant des améliorations des performances.

Langages séquentiels liés à des librairies système : ce sont des langages considérés comme étant de standard tels que le C, C++, fortran... Ces langages offrent un grand pouvoir d'abstraction et une certaine indépendance du matériel mais, ils doivent faire appel à des librairies systèmes spécifiques pour une bonne manipulation des processus. Souvent ces langages posent un problème de standardisation des appels système. Le noyau temps réel qui supporte ce type des langages doit être complet car ces langages n'intègrent aucune spécificité multitâche.

Langages concurrents de haut niveau : ce sont des langages généralistes qui permettent de décrire une application en termes de tâches. Ces langages ont les avantages d'un haut pouvoir d'abstraction, d'une indépendance totale des architectures et systèmes cibles. Parmi ces langages nous pouvons citer Java et Ada qui sont les plus aboutis. Ainsi, le noyau temps réel peut être réduit en ne comportant que la partie gestion des interruptions et l'ordonnancement. Ces langages sont à privilégier lorsque d'autres contraintes ne rendent pas leurs choix impossibles.

En ce qui concerne les langages concurrents de haut niveau d'abstraction de type synchrone, nous pouvons dire que ce sont des langages qui donnent non seulement la possibilité de décrire les fonctionnalités du programme mais aussi l'enchaînement de différentes parties. Ces types de langages sont souvent associés à des langages standards pour pallier au problème de manque d'aspect fonctionnel. Pour ces langages, le noyau peut ne comporter qu'une seule couche, celle de la gestion des interruptions qui est liée du côté matériel. De ces langages nous pouvons citer Lustre, Esterel, Signal...En ce qui concerne ceux qui sont de type asynchrone nous pouvons dire que ce sont des langages qui ont la difficulté de garantir le déterminisme. Parmi ces langages nous pouvons citer SDL, UML...

T.F.E 2015 | Benito Lubuma L2 Génie info

19

I.6. QUELQUES EXEMPLES D'APPLICATIONS TEMPS REEL ET EMBARQUEES

NOUS POUVONS DONNER QUELQUES EXEMPLES CONCRETS DES APPLICATIONS TEMPS REEL ET EMBARQUEES :

IJINUS : Projet « Capteur US sans fil » : nous savons que l'électronique et les matières

explosibles (carburants, matières ensilées...) ne font pas bon ménage! Pourtant, une jeune
société quimpéroise, IJINUS, a réussi le pari de créer un capteur Ultra Son sans fil, compact, capable de mesurer des matières dangereuses avec précision.

Quel que soit l'état et la forme de la surface de la matière (congères, crevasses, ...) dans le silo, le capteur associé à « ijitrack.com » offre la première solution de télégestion des stocks pour les silos de 1 à 25 m de haut et permet une visualisation de la qualité de la mesure par l'imagerie acoustique.

Ainsi, ce produit innovant réduit les déplacements entre les sites, élimine le risque de tomber d'un silo et les ruptures ou les surcharges de stock, détecte des anomalies de consommation, de température et surtout apporte de manière numérique et en temps réel la preuve de la livraison.

Pilotage d'un procédé de fabrication : par exemple la fabrication d'une bobine d'aluminium (laminage à froid) exige un contrôle en temps réel de la qualité (épaisseur et planéité). Cette vérification en production de la planéité nécessite une analyse fréquentielle (FFT) qui induit un coût important de traitement. Le système doit donc réaliser l'acquisition d'un grand nombre de mesures (246 Ko/s) et traiter ces données (moyenne, FFT...) à la période de 4 ms. Ensuite, il affiche un compte-rendu sur l'écran de l'opérateur toutes les 200 ms et enfin imprime ces résultats détaillés toutes les 2 s. Un fonctionnement non correct de ce système de contrôle de la qualité peut avoir des conséquences financières importantes : production non conforme à la spécification demandée

T.F.E 2015 | Benito Lubuma L2 Génie info

20

CHAPITRE II : LES G.A.B ET LES CARTES BANCAIRES

[4] [21] [22] [23] [24]

La révolution de la technologie en matière de l'information et de la communication, a permis de mettre en place de nouvelles formes de distribution des services bancaires telle que la banque à distance et cela a poussé les établissements financiers à une stratégie multicanale.

Pour répondre aux besoins de leurs clients, les établissements financiers ont eu à développer en collaboration avec d'autres établissements d'ingénieries informatiques des équipements informatiques spécialisées qui feront office de ces établissements financiers dans certains endroits. Parmi ces équipements informatiques nous pouvons citer les cartes bancaires, les G.A.B... Les deux équipements informatiques cités ci-haut feront l'objet de ce chapitre.

II.1. LES G.A.B

Sous la pression technologique, les établissements financiers ont été contraints de proposer des nouveaux canaux d'accès à leurs produits qui constituaient les banques à distance.

La banque à distance peut être définie comme étant toute activité bancaire destinée à un client ou prospect se déroulant à partir d'un point de service électronique utilisant un système de télécommunication.

II.1.1. Historique

Vers 1964, la société suédoise Metior fut la première à avoir fabriqué les premiers distributeurs de billets de banque reliés entre eux par des liaisons téléphoniques.

Le 27 juin 1967, à Enfield town au Nord de Londres fut installé le premier distributeur connu par Barclays. John Shepherd-Baron est considéré en grande Bretagne comme étant l'inventeur du D.A.B.

Les premiers D.A.B acceptaient un reçu à usage unique, qui était stocké dans l'appareil. Ces reçus, fabriqués par des matériaux magnétiques émettant des ondes radio, une simple modification du reçu suffisait pour le rendre inutilisable.

Les premiers G.A.B parlant pour le mal voyant fut apparu en 1995 au canada et compte jusqu'à plus de 30000 G.A.B parlant aujourd'hui en Amérique.

T.F.E 2015 | Benito Lubuma L2 Génie info

21

II.1.2. Définitions et Utilisations

A. Définitions

G.A.B : Guichet Automatique Bancaire, est un appareil électromécanique permettant aux clients d'effectuer des différentes transactions bancaires en libre-service.

D.A.B : Distributeur Automatique de Billets, c'est une extension du guichet automatique bancaire mais ce dernier a comme spécificité de n'effectuer que les retraits des billets de banque.

A.T.M : Automated Teller Machine, c'est l'équivalent de G.A.B en Amérique du nord ou dans le pays Anglo-Saxon.

B. Utilisations

Dans la plus part des G.A.B modernes, le client insère une carte en plastique munie d'une bande magnétique ou d'une puce qui contient un numéro unique pour la carte et diverses informations de la sécurité, telles la date d'expiration de la carte ou un code d'authentification.

Pour avoir accès à son compte, le client doit saisir le PIN ayant quatre à quinze chiffre. Si le PIN saisit est incorrect, et cela, plusieurs fois de suite, le G.A.B sera obligé d'avaler la carte pour raison de sécurité.

Au moyen d'un guichet automatique bancaire les clients peuvent aussi payer leurs factures ou encore faire des achats en prépayé.

II.1.3. Matériels et Logiciels

Le G.A.B est un équipement électromécanique. Nous allons parler d'une manière un peu brève de sa structure interne.

A. Matériels

Le G.A.B est un guichet automatique qui a été conçu pour une installation dans des locaux extérieurs. Au niveau matériel, il dispose d'un écran et d'un clavier numérique, ou carrément d'un écran tactile, pour permettre au client de rentrer son code personnel et de choisir la somme à retirer.

Un lecteur de carte afin d'insérer la carte bancaire, et permettre, grâce à la puce de cette carte, de vérifier sa validité. Il dispose également d'un coffre-fort conçu pour quatre cassettes de distribution au maximum et d'une cassette rejet/retrait, selon la valeur des billets.

22

Afin de sécuriser ces cassettes, elles sont parfois munies d'un certain système de sécurité, tels des gaz incapacitants, ou de l'encre indélébile. Ce système de sécurité s'enclenche en cas d'ouverture forcée de la cassette.

Pour d'autres caractéristiques d'équipements, nous pouvons utiliser comme exemple le ProCash2150xe qui est l'un des G.A.B le plus utilisé. Il comprend les éléments suivants :

· Ecran (moniteur LCD 12») ;

· Clavier d'introduction (clavier PIN) ;

· Lecteur de cartes ;

· Compartiments de rejet de cartes ou boitier de rejet de carte fermant à clé ;

· Imprimante de ticket de caisse ;

· Imprimante à journaux ;

· Electronique spéciale ;

· Coffre-fort ;

· Bloc d'alimentation ;

· Distributeur secteur ;

· Unité système.

La plupart des G.A.B sont connectés à un réseau interbancaire, ce qui facilite le retrait et le dépôt dans des G.A.B n'appartenant pas à la banque où le client possède un compte.

De plus, les G.A.B installés contiennent de moins en moins de circuits intégrés spécialisés (la plus tourne sous un processeur Intel p4) et font de plus en plus appel à un PC disposant d'un système d'exploitation courant.

D'une manière générale ; le distributeur de billets utilise aujourd'hui des composants similaires à ceux d'un PC (carte mère, CPU, disque dure).

B. Logiciels

La partie logicielle est basée sur un système d'exploitation comme linux, ou Windows. La plupart de G.A.B utilise Windows XP. Le distributeur de billets est connecté à un réseau bancaire (grâce au mode intégré dans le G.A.B) permettant à la machine de vérifier les informations comme le code personnel, la validité de la carte, l'identité de la personne (censée posséder la carte), le solde restant sur son compte en banque.

Le processeur du G.A.B assure le chiffrement des données utilisateurs, qui ne sont bien sûr pas stockées sur le disque dur du G.A.B, mais directement envoyées au serveur bancaire pour comparaison.

Le réseau G.A.B d'une institution bancaire est un réseau très important et complexe. Il se divise en deux parties, une partie agence et une autre partie principale et centrale.

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

23

Le réseau G.A.B de l'institution bancaire se constitue d'un G.A.B relié directement au réseau local de l'institution bancaire via le protocole TCP/IP, et que la présence d'un SWITCH, d'un ROUTEUR et d'un MODEM (ligne spécialisé) permet au G.A.B de transmettre ses données confidentielles via une connexion spécialisée au central de l'institution bancaire. Toute transaction auprès du G.A.B de l'institution bancaire doit aboutir au central principal afin qu'elle soit traitée par le serveur monétique et être sauvegardée dans la base de données de l'institution bancaire.

II.1.4. Fiabilité et sécurité

Tout ce qui est fiable suscite la confiance du client surtout en matière d'argent.

A. Fiabilité

D'une manière générale, les G.A.B sont assez fiables raison pour laquelle ça existe toujours et fait l'objet de plusieurs types de sollicitations partout dans le monde ; mais cela n'exclus pas de bègues du système et souvent ces bègues sont en défaveur des clients. Dans certains cas ces bègues peuvent aussi être en faveur du client. Par exemple, un guichet automatique qui donne de l'argent sans débiter le compte du client ou encore un G.A.B qui donne des billets de plus forte valeur que ce qui est affiché.

Les causes de ces bègues peuvent être mécaniques (clavier brisé, lecteur de carte défectueux...) comme informatique mais ce dernier arrive un peu plus souvent (système d'exploitation en faute des pilotes, réseaux en panne de façon intermittente...).

La sécurité du G.A.B demeure donc un problème à la suite de l'avancée technologique et de la cybercriminalité.

B. La sécurité du G.A.B

Comme les institutions financières sont de moins en moins braquées, les criminels se sont tournés cers les G.A.B, en faisant appel, dans la plupart de cas aux nouvelles technologies pour y parvenir.

Ross Anderson, un spécialiste de la cryptographie, avait eu à analyser certains systèmes des G.A.B et il avait conclu que la plupart des institutions bancaires ne fournissent presque rien comme effort pour sécuriser les G.A.B.

Avec la hausse du nombre des distributeurs automatiques, un nombre considérable de délit sur les G.A.B a été observé. Un rapport récent de l'ENISA montre que les fraudes liées au G.A.B ont grimpé de 149% durant ces trois dernières années et ils ont relevé plus de 10302 cas de vol des données en Europe.

Selon le même rapport, le cas d'agression physique sur les G.A.B a augmenté de plus de 32%. Selon les services secrets américains, les pertes dues à la fraude sur les G.A.B dans le monde sont estimés à environ 1 milliards de dollars à 350 000 dollars par jour.

T.F.E 2015 | Benito Lubuma L2 Génie info

24

D'une manière pratique on peut repartir les attaques dont les G.A.B font objets en deux groupes : les attaques traditionnelles et les attaques modernes.

1. Les attaques traditionnelles :

Le mot traditionnel semble être le mieux adapté pour ces types d'attaque car elles se font de plus en plus rares. Les attaques dites traditionnelles sont celles qui reposaient sur la percussion d'un G.A.B en s'emparent du coffre-fort.

Pour y remédier les institutions financières ont eu à développer certaines méthodes et techniques qui ont découragé les gens qui prenaient plaisir à attaquer les G.A.B de la sorte. Parmi ces méthodes et techniques nous pouvons citer :

· La technique de marquage des billets qui les rendent inutilisables une fois que le G.A.B a été percuté.

· Les G.A.B équipés de gaz incapacitant ;

· Les G.A.B ne possédant pas un coffre-fort : dans ce cas de figure le G.A.B ne contient pas de billets, lorsqu'un client termine la transaction, il imprime le coupon qu'il devra remettre au magasin et c'est à ce dernier de lui remettre de l'argent.

D'autres types de fraudes sont dus à des erreurs des institutions financières, mais ces derniers sont très rares la fraude étant basées sur l'insertion par erreur des faux billets de banque dans le G.A.B par des institutions financières ce qui incite les clients à profiter de la situation.

2. Les attaques modernes :

Ces attaques sont dites modernes suite aux moyens utilisés par les personnes mal intentionnées pour réussir leur mission. Les hackers usent des moyens technologiques très avancés pour contourner le système de sécurité mis en place par les institutions financières. Il existe plusieurs types d'attaques dites modernes dont nous pouvons citer :

· Le skimming ;

· Technique du collet marseillais ;

· Piratage par impression en 3D ;

· Usurpation des données de la carte

· Retraits fantômes.

2.1. Le skimming :

Le skimming est certes une activité de détente sur les plages, mais c'est aussi une pratique frauduleuse basée sur le piratage et le clonage de cartes bancaires.

Le skimming est une activité frauduleuse qui consiste à pirater des cartes bancaires, notamment depuis les distributeurs de billets. Elles sont dupliquées et utilisées à l'étranger, au détriment de leurs propriétaires, et de leurs comptes bancaires.

T.F.E 2015 | Benito Lubuma L2 Génie info

25

Le skimming s'exerce surtout à partir des distributeurs de billets trafiqués pour l'occasion, mais également depuis des stations essence automatique, des commerçants, ou même sur internet.

2.1.1. Fonctionnement du skimming :

Pour pirater et cloner une carte bancaire, un skimmers a besoin de deux types d'information : les données stockées sur la carte (coordonnées bancaires) et le code personnel à quatre chiffres (PIN). Ces informations peuvent être récupérées via les distributeurs automatiques de billets, en les modifiant légèrement :

? Avec le remplacement du lecteur de la carte par un dispositif pirate : la fente censée accueillir votre carte n'est plus celle de distributeur, mais celle conçu par un pirate. Elle est reliée à un téléphone, qui reçoit en temps réel les coordonnées bancaires des cartes scannées.

? Avec un dispositif de surveillance pour obtenir le code à quatre chiffres : il s'agit généralement d'une caméra pirate, cachée dans le plafonnier du distributeur. Certains skimmers utilisent également des faux claviers numériques posés par-dessus le clavier original, qui transmettent à distance les codes saisis par les utilisateurs. Cette technique, bien plus efficace, est aussi assez couteuse et donc moins courante.

Etant donné le coup d'un dispositif de skimming, il n'est pas rare que les skimmers restent à proximité du distributeur qu'ils ont piraté, pour mieux surveiller leur matériel.

Une fois les données de la carte obtenues, les skimmers les copient sur des cartes vierges (appelées white cards). Ces clones de cartes bancaires sont ensuite envoyés et vendues dans des pays étrangers où les paiements par carte ne sollicitent que la bande magnétique et non la puce électronique plus sécurisée.

Les propriétaires des cartes clonées remarquent alors des paiements inhabituels sur leurs relevés de compte, effectués depuis des pays étrangers où ils ne se sont jamais rendus. Dans ce cas, ils doivent entamer une procédure de remboursement auprès de leur établissement bancaire mais cette procédure ne tourne toujours pas en faveur du client.

D'après EAST (équipe européenne de sécurité des DAB), l'Europe a connu une hausse de 13% des fraudes sur les distributeurs automatiques de billets entre 2011 et 2012 pour un montant de fraude estimé à 256 millions d'euros.

T.F.E 2015 | Benito Lubuma L2 Génie info

26

3. Technique de collet marseillais :

Cette attaque est connue sous le nom de collet marseillais ou vol à la marseillaise pour rappeler à une technique de vol très connue au marseillais et qui ressemble un peu à la technique de pickpocket.

Du point de vue attaque du G.A.B cette technique à voler les cartes bancaires dans les distributeurs de billets de banque à l'aide d'un collet introduit dans la fente de la machine ou plus précisément, dans le conduit ou passe la carte. Le client désirant retirer de l'argent, introduit sa carte, mais celle-ci va rester bloquer dans la machine et sera récupérée par le voleur par la suite.

3.1. Fonctionnement du collet marseillais :

Apres avoir récupéré la carte, le présumé voleur sera dans l'obligation d'avoir le code à quatre chiffres mais pour ce faire, ces voleurs ne sont jamais bien loin de leurs victimes.

Soit il sera juste derrière la victime au début de la transaction et mémorisera son code au moment où il le compose ou alors se présentera à lui une fois que ce dernier se rendra compte que sa carte bancaire est coincée dans la machine,

Il lui expliquera alors qu'il lui est arrivé aussi la même chose et qu'en recomposant son code, sa carte est ressortie. Les naïfs recomposeront alors leur code en présence du voleur qui se fera un plaisir de retenir les quatre chiffres porte bonheur et la victime ne récupèrera pas pour autant sa carte bancaire.

De toute façon, même sans le code, la carte peut être utilisée pour des achats par correspondance (minitel, téléphone, internet).

4. Piratage par impression 3D

Apres la santé, l'automobile, la mode et l'architecture, l'impression en 3D touche un nouveau domaine d'application : la cybercriminalité. Apparemment les voleurs de cartes bancaires ont appris à maitriser l'impression en 3D pour créer de faux guichets automatique afin de voler les informations bancaires.

A Sydney en Australie, un groupe roumain de cybercriminels présumé a utilisé la technologie d'impression 3D et des fichiers de CAO pour dessiner et fabriquer de guichets automatiques bancaires. Apres avoir constaté une augmentation du nombre de faux guichets automatiques, la police a créé un groupe de travail pour résoudre le problème.

Au total, 15 distributeurs automatiques de billets ont été trouvés et environs 100000 dollars ont été volés.

T.F.E 2015 | Benito Lubuma L2 Génie info

27

Fonctionnement du piratage par impression 3D :

Les équipements utilisés ne sont pas légaux et on passe souvent par les bricolages pour y parvenir. Cela ne semble pas être un inconvénient majeur pour les hackers car tout est le marché et à bon prix.

Ce dispositif s'installe directement par-dessus le lecteur e carte en s'adaptant parfaitement à la fente. La technologie de l'impression intervient, au moment de la composition de cette façade factice. En effet, elle comprend un lecteur de piste magnétique intégré permettant de lire les données magnétiques d'une carte bancaire insérée.

Afin de pouvoir également disposer d'un code PIN associé à la carte bancaire, le dispositif est équipé d'une micro camera espion qui film l'appui de votre doigts sur le clavier.

Le système se déclenche automatiquement chaque fois qu'une carte est insérée et filme tout à travers un petit trou très discret. Les données magnétiques et vidéo sont ensuite sauvegardées dans un périphérique de stockage composé d'une mémoire flash et d'un slot micro-SD. Un connecteur discret permet aux cybercriminels de récupérer les données.

Une fois que l'appareil a enregistré la carte et code PIN, une carte vierge peut être gravée avec ses informations afin de retirer de l'argent et faire des achats.

Il est à signaler que ce système est souvent utilisé et mieux adapté pour les cartes magnétiques plutôt que les cartes à puce ce qui démontre son usage massif aux USA et en Australie.

5. Usurpation des données de la carte :

En se référant à la définition du mot usurpation, nous pouvons dire que cette technique se base sur le fait de prendre délibérément l'identité d'une autre personne vivante, généralement dans le but de réaliser des actions frauduleuses commerciales comme, par exemple, régulariser sa situation au regard de l'émigration, accéder aux finances de la personne usurpée...

5.1. Technique d'usurpation :

Contrairement aux autres moyens d'attaques ou fraudes liés aux G.A.B, l'usurpation est une technique utilisée dans plusieurs domaines et cela pour des fins précises.

Dans ce cas, le fraudeur utilise certaines techniques pour obtenir des renseignements personnels tels que :

? Le vol : les portes monnaie, les sacs à main, le porte document, les ordinateurs et courrier résidentiel contiennent une grande quantité de renseignements personnels.

? Le vol dans les boites aux lettres : permet d'obtenir des moyens de paiement (CB, chéquier), des relèves d'identités bancaires, des factures. Tout s'avère très utilisent aux usurpateurs pour obtenir des crédits.

T.F.E 2015 | Benito Lubuma L2 Génie info

28

· La fouille des poubelles : on peut y trouver des relevés bancaires, des relevés de carte de crédit, dans factures des propositions de cartes de crédit.

· La vie commune : les personnes habitant à votre domicile ont accès à l'ensemble de vos documents.

6. Les retraits fantômes :

De nos jours, les hackers deviennent de plus en plus innovants. Ils prennent leurs temps à analyser les architectures des systèmes d'exploitation pour déceler certaines failles et en profiter pour causer des délits.

Apres études et analyses sur les systèmes d'exploitation utilisés par les G.A.B actuellement dans la plupart des pays, il s'avère que le système d'exploitation Windows XP est le plus utilisé et malheureusement il révèle plusieurs failles de sécurités d'où l'existence d'un type d'attaque appelé les retraits fantômes.

Les hackers ont eu à développer plusieurs applications informatiques (malware) qui leurs permettent de contourner le système de sécurité de Windows XP. Parmi ces malwares, nous pouvons citer les plus récents et les plus célèbres tels que :

· Ploutus B : c'est malware permettant de commander un G.A.B à distance et ce à partir d'un SMS.

· Backdoor.MSIL.tyupkin : c'est l'un des malware le plus sophistiqué car il peut réagir aux commandes du clavier PIN uniquement les dimanches et les lundis soir. Pour voir l'interface graphique du malware sur l'écran du G.AB et savoir combien et quel type de billets restaient dans le coffre-fort, les attaquants doivent taper à chaque fois une nouvelle clé générée par un algorithme connu d'eux seuls, de sorte que personne d'autre ne pourrait contrôler leur malware. L'interface de tyupkin permet à l'opérateur de demander au distributeur automatique de prendre un nombre quelconque des billets de banque dans l'un de ses coffres.

6.1. Fonctionnement des retraits fantômes

En se basant sur les malwares cités ci-haut nous pouvons dire que leur installation est presque semblable mais pas leur utilisation.

6.1.1. Installation et fonctionnement du Ploutus.B :

· L'attaquant commence par ouvrir la partie intérieure du distributeur pour pouvoir infecter le PC ;

· Ensuite, il insère dans le lecteur optique un CD sur lequel se trouve le malware en question puis il reboote la machine.

· Une fois que le malware est installé, le pirate connecte le G.A.B infecté à un téléphone mobile via un port USB (ce téléphone servira de point d'accès distant au système du distributeur) ;

29

? Une fois cette phase de préparation terminée, le pirate peut passer à l'action ; il commence par envoyer par sms un code au téléphone embarqué qui le transmet sous la forme d'un paquet TCP ou UDP.

? Le malware ploutus reconnait le code en question et génère la commande de retrait d'argent.

D'où nous pouvons dire qu'avec l'avancée significative de la technologie. La fiabilité du G.A.B est entrain de diminuer considérablement. Plusieurs grandes institutions spécialisées en sécurité informatique et des nombreux chercheurs en sécurité informatique ne cessent d'interpeler les institutions bancaires sur la manière dont les G.A.B sont construits et n'hésitent pas de leurs proposer quelques piste de solutions.

II.2. LES CARTES BANCAIRES

Actuellement les cartes bancaires sont devenues incontournables et indispensables pour retirer de l'argent dans un G.A.B ou pour faire tout type d'achats sur internet.

Une carte bancaire, appelée aussi carte de paiement, est un document se présentant sous forme d'une carte plastique mesurant 85,60 x 53,98mmn équipé d'une bande magnétique ou d'une carte à puce électronique et c'est un moyen de paiement dans la quasi-totalité de pays du monde.

II.2.1. Historique

Une carte bancaire peut être magnétique ou à puce. Voyons brièvement ce qu'il en est de leurs histoires et évolutions.

1. Invention de la carte à puce :

La carte à puce est une invention française. L'idée innovatrice de Moreno qui était un passionné d'électronique fut de loger dans l'épaisseur d'une carte, un circuit intégré et un connecteur extra-plat permettant de le raccorder à des circuits extérieurs. Dès mai 1975, Roland Moreno améliore son invention en intégrant à la puce des moyens inhibiteurs qui ont pour fonction de protéger l'accès à la mémoire, en lecture comme écriture.

C'est en 1974 que Roland Moreno a déposé son premier brevet sur la carte à puce, suivi d'une famille de brevets successifs sur la carte et son environnement.

Ceci lui a valu d'être reconnu comme l'inventeur du produit. Très vite, CII-HB qui est une société résultante de la fusion de la compagnie internationale pour l'informatique et de la compagnie Honeywell Bull, procède en liaison avec Motorola au premier développement et réalise fin 76 la première carte incluant un microcircuit électronique. En mars 79 la première carte à microprocesseur Bull-CP8 était fonctionnelle.

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

30

En novembre 1979, la DGT (direction de grands travaux) et des banques françaises lance un appel d'offre pour une expérimentation interbancaire de la carte à puce. Cette dernière devrait couvrir les coûts très élevés que subissaient les banques lors de traitement des chèques tout en sachant que les cartes à piste magnétique ne résolvaient pas ce problème, puisqu'elles donnaient lieu à chaque transaction à l'émission d'un reçu sur papier. Les facturettes équivalentes du point de vue de son traitement à un chèque et elles génèrent de plus un niveau de fraude en constante progression.

Seule l'électronique pouvait a priori diminuer les couts en offrant de surcroit une meilleure sécurité. La carte bancaire devait donc, dès le départ être utilisée comme moyen de paiement aussi bien dans les cabines téléphoniques que chez les commerçants.

Ce vers 1982 que les premières cartent bancaires à puce furent expérimentées dans des banques de Caen en France.

2. Genèse de la carte bancaire :

· 1914 : Western union - carte en métal

· 1950 : Diners' Club - carte bancaire sous forme de petit carnet

· 1951 : Premières cartes bancaire de paiement- en carton

· 1957 : American Express et la première carte plastique

· 1960 : Embossage des cartes

· 1971 : les pistes magnétiques

· La carte à mémoire

Naissance de la carte bancaire

· 1914 : Western Union- support d'identification

· 1914-1950 : identification associée à un crédit

· 1950 : Diners' Club : carte bancaire

· 1951 : franklin National Bank : carte bancaire de crédit

· 1953 : cartes bancaires de débit

· 1957 : naissance de BankAmericard (future Visa)

· 1958 : naissance de la carte American Express

· 1960 : naissance des cartes de crédit privatives

· 1960 : naissance en suède de l'Eurocard

II.2.2. Définitions et utilisations A. Définitions

1. Carte de paiement : c'est une carte en plastique qui peut être à bande magnétique ou à puce permettant le paiement, auprès de commerçants physique possédant un terminal ou auprès de commerçants virtuels via internet.

2. Carte à puce : c'est une carte en plastique dotée d'au moins un circuit intégré ou puce capable de contenir e l'information.

T.F.E 2015 | Benito Lubuma L2 Génie info

31

3. Carte de débit : c'est une carte bancaire avec spécification débit d'apposée. Elle est rattachée) votre compte chèque. Vous pouvez faire des retraits dans de G.A.B, acheter en ligne ou chez les commerçants acceptant les cartes bancaires c'est l'équivalent de la carte de crédit immédiat français.

4. Carte de crédit : c'est aussi une carte bancaire mais, en effet comme son nom l'indique crédit card, sert à consommer à crédit ; elle n'est pas rattachée à votre compte chèque mais à un compte que lui est propre.

5. La monétique : c'est l'ensemble de technologies mises en oeuvre pour l'utilisation de la carte bancaire.

6. Porte-monnaie électronique : c'est un dispositif qui peut stocker de la monnaie sans avoir besoin d'un compte bancaire et d'effectuer directement des paiements sur des terminaux de paiement.

B. Utilisations

Actuellement du point de vue évolution technologique, nous pouvons dire qu'il

existe trois types de carte bancaire :

? Les cartes de paiements

? Les cartes de crédit

? Les portes monnaie électronique

Tous ont un même objectif mais diffèrent dans leur utilisation.

Les cartes de paiement ou les cartes de crédit sont utilisées de la même façon en générale. C'est-à-dire, le client possédant la carte de paiement ou de crédit, a la possibilité de l'insérer dans un distributeur de billets ou un terminal le plus proche pour retirer de l'argent ou payer ses factures.

Les portes monnaie électroniques font partis de nouvelles technologies qui sont issus du développement de la technologie de la puce électronique. Les portes monnaie électroniques sont plus utilisées pour des petites dépenses. Les portes monnaie électroniques sont semblable à une carte téléphonique ou carrément elle peut se réduire à une simple puce téléphonique intégrée au téléphone portable.

II.2.3. Composants matériels et logiciels

La carte bancaire est un produit purement électronique et possédant un système d'exploitation propre à son fonctionnement. D'où nous allons voir de manière brève de quoi est constituée une carte bancaire et quel genre de système d'exploration peut être utilisé pour son fonctionnement.

32

A. Composants matériels

La carte bancaire a une forme rectangulaire en plastique. Elle comprend de nombreux éléments notamment ceux de la sécurité. Etant un produit électronique, nous pouvons repartir sa construction en deux parties : une partie interne et une partie externe.

La partie interne renferme tout ce qui est description technologique tandis que la partie externe renferme tout ce que la carte possède d'une manière externe.

1. La partie interne

Dans cette partie nous allons décrire la construction technologique de la carte puce en manière générale et de la carte bancaire en particulier.

Une carte à puce est constituée d'un CPU, d'une mémoire RAM, d'une mémoire ROM et d'une mémoire EEPROM (qui conserve les données qui y sont inscrites même après que la carte n'est plus électriquement alimentée). C'est donc il s'agit d'un ordinateur classique réduit à la taille d'une puce.

Elle permet la communication, le stockage et l'exécution de code avec un haut degré de sécurité. Les circuits logiques qui composent la puce, supervisent la transmission des données via interface série pour faire communiquer la carte vers l'extérieur et notamment un lecteur.

Une carte à puce est composée de trois parties :

1. Une partie logique qui est constitué d'un CPU et un NPU ou généralement un MPU (Multi-core processor). Cette partie est le siège de l'exécution du code applicatif que ce soit l'OS comme les applications installées dans la carte.

2. Une partie mémoire : cette partie permet de stocker l'information volatile (mémoire RAM) durant l'exécution du code de la mémoire EEPROM qui stocke soit des applications ou des données qui peuvent être modifiées pendant le fonctionnement de la carte mais qui ne doivent pas être perdus après la perte d'alimentation, et la mémoire ROM qui stockera le code, notamment l'OS ou les données figées en usine durant la conception de la puce.

3. Une partie communication qui permet la communication avec l'extérieur et notamment le lecteur de la carte à puce.

2. La partie externe

Une carte bancaire est constituée de deux façades. Nous allons essayer de décrire chaque façade et ce qu'elle renferme.

D'une manière générale, le recto de la carte bancaire est constitué de :

? Une puce qui est un microprocesseur doté d'une mémoire et de capacité de calcul. Cette puce de type EMV répond à un protocole qui permet des interactions en déterminant : ? Les types d'applications dont dispose le porteur de la carte ;

T.F.E 2015 | Benito Lubuma L2 Génie info

33

? La façon d'encrypter et décrypter les codes,

? Le dialogue avec le terminal de paiement du commerçant et le distributeur de billets qui ne sont que des intermédiaires entre la puce et le site de la banque.

· Le PIN ou le numéro à 16 chiffres. Ce numéro permet d'identifier votre carte. Il est aussi utilisé pour faire des achats sur internet.

· Le nom du titulaire : c'est le nom du responsable de la carte.

· La date d'expiration : la carte étant un support, elle a une durée de validité qui peut être d'un an ou deux ans. Elle fait l'objet d'un renouvellement automatique tous les ans à sa date d'échéance, sauf résiliation du contrat. Cette durée de validité répond notamment à des nécessités techniques et sécuritaires.

· L'hologramme : c'est une image à reflets changeant avec un effet 3D ; très difficile à reproduire. Il est destiné à rendre la carte infalsifiable.

Au verso de la carte nous retrouvons :

· Le panneau de signature : cet emplacement permet d'apposer une signature sur la carte. Ce qui s'avère être nécessaire pour vérifier l'identité du porteur de la carte. Dans certains pays cette signature n'est pas nécessaire car ils utilisent le code confidentiel de la carte à puce ;

· La piste magnétique : très importante pour les pays où la puce n'est pas utilisée étant donné qu'elle joue d'une manière générale le même rôle qu'une puce ;

· Le cryptogramme visuel : il s'agit des trois derniers chiffres de la référence de la carte sur le panneau de signature. Il vous est demandé pour payer à distance que ce soit par internet ou par téléphone.

B. Les composants logiciels

Les possibilités matérielles des cartes étant limitées en mémoire et en puissance de calcul, les systèmes d'exploitation de ces équipements se doivent d'être les plus légers possibles afin d'être embarqués dans la mémoire des cartes.

Les systèmes d'exploitation pour carte à puce appelés COS, assurent fondamentalement les mêmes fonctions que les autres systèmes d'exploitation, mais dans un contexte matériel où les limitations matérielles et les problématiques de sécurité sont exacerbées.

Ainsi à l'instar des autres systèmes d'exploitation, ceux des cartes à puces gèrent le matériel qui leur est assigné. Comme nous l'avons dit à la section précédente, une carte à puce comporte une mémoire de travail volatile (sous forme de SDRAM), une mémoire non réinscriptible (ROM) qui contient le code du système d'exploitation et éventuellement celui d'application pré-déployé ainsi qu'une mémoire morte réinscriptible (EPROM) permettant de stocker des données qui resteront disponibles lorsque la carte sera redémarrée.

Le système d'exploitation gère aussi le microprocesseur, parfois assorti d'un processeur dédié à la cryptographie et aux protocoles de communication.

T.F.E 2015 | Benito Lubuma L2 Génie info

34

Les COS actuels ne sont plus mono-applicatifs car ils peuvent gérer plusieurs applications sur une même carte à puce. Comme pour n'importe quel autre système d'exploitation par exemple le DOS, les fonctions et les instructions d'un COS ne sont pas dépendantes d'une application en particulier, mais, elles se veulent être génériques pour un ensemble de besoins communs à toute application désirant fonctionner dans un environnement de carte à puce.

Le système d'exploitation est ainsi localisé essentiellement au niveau de la mémoire ROM sous une forme non altérable et pour éventuellement certaines de ses fonctions modifiables dans l'EEPROM.

Il offre les fonctions pour contrôler les différents éléments de la carte et la communication avec le lecteur. Comme le COS est stocké dans la ROM de la carte à puce, on peut trouver un synonyme au terme COS avec le terme de mask. Pour être plus précis il y a deux types de mask : hard mask et soft mask.

Le hard mask indique que le COS est stocké dans une mémoire ROM. Il devient alors non modifiable après l'avoir écrit dans ce type de mémoire.

Le soft mask indique au contraire qu'une partie ou la totalité du C.O.S est stockée dans une mémoire EEPROM. Il devient alors possible de modifier une partie ou la totalité du système après sa première écriture dans l'EEPROM.

Un autre aspect important est l'usage souvent fait de ce type de carte, comme l'acte du paiement ou d'identification d'une personne. Il est donc essentiel que ces systèmes d'exploitation embarquent des fonctionnalités de cryptographie et de d'authentification forte.

Etant donné que la majorité des applications des cartes à puce sont utilisées pour authentifier de manière forte des individus, COS pour carte à puce implémente généralement une API de cryptographie.

L'utilisation des algorithmes de cryptographie (PKCS) avec la manipulation de grands nombres comme les algorithmes à clefs symétriques (RSA ou DSA) sont une source de consommation de puissance de calcul.

C'est pourquoi on trouve de plus en plus adjoint au microprocesseur traditionnel de la carte à puce, un Secure crypto processor qui accélère les calculs sur les grands nombres.

Ainsi ces systèmes d'exploitation sont responsable de :

· La gestion de la mémoire (RAM, ROM, EEPROM)

· La gestion de fichiers

· Le contrôler d'exécution de code

· Chargement, lancement et la gestion des applications

· La transmission de données

· L'exécution et la gestion des algorithmes de cryptographie.

Vu l'évolution technologique, les architectures des COS ont aussi évolué et actuellement, elles se classifient en trois modèles : les systèmes fermés qui sont généralement

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

35

propriétaires et étroitement liés au matériels et sont réalisés pour supporter une application, ou un ensemble d'application prédéfinit. Les systèmes post-issuance qui reposes sur la mise en oeuvre d'une machine virtuelle applicative tel que Java Card Virtual Machine et MultOS où l'environnement d'exécution est sécurisé et authentifié. Le système d'exploitation CAMILE qui a envisagé l'utilisation récente de l'hyperviseur

II.2.4. Fiabilité et Sécurité d'une carte bancaire

D'une manière générale, la technologie utilisée pour la fabrication de la carte bancaire est fiable et sécurisante mais ceci n'empêche qu'on découvre quelques failles de sécurité lors de son utilisation dans le G.A.B ou sur internet par exemple.

A. Fiabilité

En matière de la fiabilité de la carte bancaire, nous pouvons dire que la carte et la technologie qu'elle utilise est pratiquement fiable, raison pour laquelle aujourd'hui la carte bancaire venait de passer pour le moyen de paiement le plus utilisé au monde au détriment du chèque.

Actuellement, il existe différentes types de carte bancaire, de la plus simple à la plus haute gamme. Chacune présente un éventail d'avantages et de services. Toutes offrent la même possibilité : effectuer un paiement rapide, sécurisé et garanti.

Typologie des cartes bancaires : Elles se répartissent en trois catégories :

? Les cartes à autorisation systématique : Elles ont la particularité d'interroger le solde du compte du client pour chacun des paiements qu'il effectue ;

? Les cartes classiques internationales : le paiement au commerçant est garanti même si ce type de carte ne vérifie pas systématiquement le solde du compte de son titulaire lors de paiement.

? Les cartes haut de gamme (Gold ou Premier) : Elles fonctionnement comme les cartes classiques internationales qui offrent des plafonds de paiement et de retrait plus élevés que celle-ci et des assurances plus larges.

Il existe d'autres cartes de manière marginale ou moins impactant notamment: les cartes de retrait interbancaires, mais qui sont progressivement remplacées par les cartes à autorisation systématique.

Les cartes de prestige (Infinite, Platinum) en progression mais peu nombreuses.

T.F.E 2015 | Benito Lubuma L2 Génie info

36

? Avantages et inconvénients des cartes bancaires

Instrument de paiement le plus utilisé (hors espèce) pour régler les achats ; les cartes bancaires offrent un certain nombre d'avantages.

Les avantages de la carte bancaire:

· Rapidité d'utilisation lors des paiements et des retraits d'espèces ;

· Permet d'éviter de circuler avec des espèces sur soi ;

· Très large acceptation par les commerçants ;

· Facilité de paiement en ligne

· Réduit l'obligation de changer de la monnaie lors de déplacement ;

· Inclusion d'assurance et d'assistance dans l'offre ;

· Utilisation préférée pour des achats courants en remplacement de l'espèce et du chèque pour des paiements à l'étranger.

Les inconvénients de la carte bancaire :

Selon qu'on dispose d'une carte offrant plus d'avantage on aura peu plus vous avez un peu d'inconvénients.

Ainsi comme inconvénients majeurs nous pouvons citer :

· Cotisations annuelles ;

· Frais possible sur les retraits d'espèces ;

· Frais de remplacement des cartes ;

· Frais sur incident de paiement ;

· Acceptations limitées chez certains commerçants.

La carte bancaire est donc une source de multiples coûts non seulement pour les consommateurs en bonne santé financières ; mais aussi pour les consommateurs connaissant des difficultés de trésorerie !

Si aucune banque ne communique, bien évidemment, sur le montant des frais qu'elle facture à ses clients pour leurs incidents de paiement, certains éléments permettent d'avoir une première idée de la facturation, globales pour ces frais.

Comme on peut s'en rendre compte, souvent les inconvénients qu'offrent les cartes bancaires se transforment en gains pour les banques et les institutions financières.

B. Sécurité

Nous avons vu que la carte bancaire est un moyen de paiement fiable mais elle nécessite un minimum de précaution car sa sécurité demeure dans la plupart de cas un défis majeur à relever. Au fur et à mesure que la technologie évolue, les hackers aussi évoluent...

T.F.E 2015 | Benito Lubuma L2 Génie info

37

Plusieurs technologies ont été développées pour contrecarrer les ambitions des pirates informatiques et toujours ces derniers trouvent un moyen de contourner le système de sécurité établi.

Une firme française Oberthur technologies venait de développer une carte bancaire ultra sécurisée : son cryptogramme visuel est remplacé par un petit écran LED sur lequel le code de sécurité change toutes les heures.

La carte en elle-même ne change pas mais au dos, s'affiche un petit écran LED, alimenté par une micro-batterie insérée dans le plastique de la carte. Le cryptogramme se rafraichit toutes les 60 minutes et propose un nouveau code de sécurité.

Souvent les pirates informatiques utilisent les techniques telles que l'usurpation de données de la carte bancaire, le collet marseillais etc. Pour essayer de contrer ces techniques de vol, les fabricants proposent à leurs clients quelques conseils ou méthodes préventives.

Malheureusement ces méthodes ne font pas le poids devant les innovations auxquels ont recours certains pirates informatiques.

Parmi ces méthodes nous pouvons citer :

· Conservez sa carte en un lieu sûr

· Retenir par coeur son code confidentiel et ne jamais l'écrire;

· Signer sa carte bancaire.

· Surveiller ses relevés de compte ;

· Noter son numéro de carte, date d'expiration et le conserver dans un lieu sûr.

· Ne répondre jamais à un mail vous demandant la communication de vos coordonnées bancaires ;

· Avant de partir à l'étranger contacter votre établissement pour connaitre les mécanismes de protection des cartes.

Lors des achats sur internet, vous pouvez adopter des attitudes du genre :

· Ne les réaliser que sur des sites sécurisés et ne jamais saisir votre son confidentiel à quatre chiffres pour ce type de transaction.

· Les sites marchands munis du logo 3DSecure permettent d'authentifier le porteur d'une carte de paiement de manière renforcée.

Lors d'un retrait dans un distributeur, les attitudes à adopter sont :

· Composer toujours votre code confidentiel à l'abri de regard ;

· Placez votre main au-dessus du clavier lorsque vous tapez votre code ;

· Privilégiez les distributeurs équipés de caméras de surveillance ou situés à l'intérieur de l'agence.

Les institutions bancaires proposent aussi les moyens de recours en cas de fraude à la carte bancaire.

T.F.E 2015 | Benito Lubuma L2 Génie info

38

? Dans un premier temps, vous devez dès que vous vous apercevez d'une anomalie informez sans tarder votre banque afin de faire opposition (il en va de même si votre carte est perdue ou volée) ;

? Appelez le numéro spécial du serveur interbancaire et orienté votre appel vers le centre d'opposition compétent.

L'opposition doit ensuite être confirmée sans délai par une lettre recommandée à votre banque. En cas de détournement de votre carte de paiement, votre responsabilité n'est pas engagée.

Dans tous les cas, vous devez signaler sans délai l'opération non autorisée à votre agence bancaire et dans un délai assez réduit.

39

CHAPITRE III : LA TECHNOLOGIE BIOMETRIQUE ET LES
ALGORITHMES DE RECONNAISSANCE DE FORMES

[1][3][11][12][13][14][15][20]

La technologie biométrique, comme toute autre technologie, fait appel aux algorithmes très spécifiques pour mieux résoudre les problèmes auxquels elle est confrontée. Les algorithmes qu'utilise la technologie biométrique sont dans la plupart de cas les algorithmes de reconnaissances des formes. Ces derniers vont lui permettre d'identifier les motifs informatiques à partir des données brutes et enfin de prendre une décision dépendant de la catégorie de ce motif.

A. TECHNOLOGIE BIOMETRIQUE

Actuellement, la technologie biométrique est considérée comme l'une des plus sûres en matière de sécurité des biens et d'identification des personnes. La plus connue du grand public des techniques qu'offre la technologie biométrique est l'analyse des empreintes digitales.

Ce type d'analyse est aujourd'hui très au point, mais la recherche à son sujet ne date

pas d'hier.

1. Historique de la technologie biométrique

Vers le 19e siècle les études sur la biométrie commencèrent à se préciser. En effet, en 1823, un médecin et anatomiste tchèque Johan Evangelista Purkinje révéla au grand jour le fait qu'une empreinte digitale pouvait identifier de manière quasi-absolue un individu.

À partir de 1870 les empreintes digitales furent réellement utilisées à des fins d'identification par le docteur Henry Faulds, alors chirurgien dans un hôpital de Tokyo.

Il publia un article dans la revue « Nature », où il développait l'idée d'utiliser les traces de doigt pour identifier des personnes. Faulds fut par la suite le premier à établir une classification grâce à de l'encre d'imprimerie.

Le scientifique britannique Galton, réalisa d'importants travaux sur les mensurations des êtres humains et rassembla des statistiques sur la taille, le poids, les dimensions et d'autres caractères de nombreuses personnes.

Galton consacra une attention particulière aux empreintes digitales et mis au point une méthode d'identification dans son ouvrage « Fingerprints ».

Son approche globale des populations lui permit de constater l'importante variation des empreintes dans l'espèce humaine mais aussi à l'intérieur de différentes ethnies. Il démontra également qu'il y avait seulement une chance sur 64 milliards que deux individus aient les

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

40

mêmes figures digitales et affirma la pérennité de celles-ci chez un même individu au cours de sa vie.

Grâce à lui, au Bengale, et ce dès 1858, l'empreinte du pouce servait de preuve

d'identité.

Hormis les travaux de Galton, il y en a eu aussi d'autres dont :

? les travaux d'Alphonse Bertillon ? Edwards Henry

2. Définitions et utilisations A. Quelques définitions

Biométrie : c'est une science de mesure et statiques appliquées aux êtres vivants. C'est aussi une analyse mathématique des caractéristiques biologiques d'une personne, destinée à déterminer son identité de manière irréfutable.

En France, la biométrie est définie comme étant une science permettant l'identification d'individus à partir de leurs caractéristiques physiologiques ou comportementales.

La biométrie peut être aussi définie comme étant la mesure des éléments biologiques, comportementaux ou physiologiques uniques et propres à chaque individu.

Système de reconnaissance biométrique : c'est un système qui permet de procéder à la reconnaissance automatisée des individus sur la base de leurs caractéristiques biométriques.

Caractéristiques biométriques : ces sont des caractéristiques physiologiques ou comportementales mesurables d'un individu.

Donnée biométrique brute : c'est une représentation physique ou numérique d'une caractéristique biométrique, utilisable par un système de reconnaissance biométrique.

Donnée biométrique dérivée ou gabarit biométrique : c'est une réduction numérisée d'une donnée biométrique brute, utilisable par un système de reconnaissance biométrique automatisée.

Enrôlement biométrique : c'est un processus initial de collecte d'une donnée biométrique d'un individu et la sauvegarde de celle-ci en tant que donnée biométrique de référence.

Vérification biométrique : c'est le processus de comparaison (1:1) d'une donnée biométrique d'épreuve avec une donnée biométrique de référence dans le but de vérifier si la personne concernée est bien celle qu'elle prétend être.

41

Identification biométrique : c'est le processus de comparaison (1:n) d'une donnée biométrique d'épreuve avec un ensemble de données biométrique de référence stockées dans une base de données, dans le but de déterminer qui est la personne concernée.

Seuil d'acceptation : c'est la valeur minimale qu'une comparaison biométrique doit atteindre pour être considérée comme réussie.

Lorsque cette valeur est choisie de manière à ce que le taux de fausses acceptations soit égal au taux de faux rejets, le seuil est appelé taux d'erreurs égales.

Taux de fausses acceptations : c'est la probabilité qu'un système de reconnaissance biométrique identifie un individu ou authentifie un imposteur par erreur.

Taux de faux rejets : c'est la probabilité qu'un système de reconnaissance biométrique échoue lors de l'identification ou la vérification d'une personne enrôlée.

B. Utilisation de la biométrie

Les principaux enjeux des technologies biométriques sont l'authentification et l'identification des personnes. Dans un tel cadre, la biométrie peut être source de difficultés en l'absence de solution fiable à 100%.

La biométrie permet d'associer une personne à une et une seule identité qui est propre à lui.

La technologie biométrique la plus utilisée et la plus connue de tous est l'analyse de l'empreinte digitale qui, en fait est la première des techniques biométriques utilisées dans le monde.

La biométrie est susceptible de plusieurs types d'applications, notamment : ? L'accès à des locaux et système informatique

? Etc.

3. Caractéristiques des systèmes biométriques

La technologie biométrique est utilisée actuellement dans la plupart de cas par des systèmes informatiques biométriques qu'on appelle simplement des systèmes biométriques. Ces systèmes ont une certaines caractéristiques communes qui leur permettent d'être très efficaces quel que soit le type de technique utilisée pour l'implémentation du dit système.

Les études effectuées par les scientifiques spécialistes de la biométrie ont établi trois caractéristiques communes aux systèmes biométriques. Ce sont l'unicité, le caractère public d'une donnée biométrie et la mesure d'un système biométrique.

1. L'unicité

Pour identifier ou authentifier une personne dans une population donnée, il est nécessaire que la donnée biométrique utilisée soit unique à la personne. L'empreinte digitale,

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

42

l'iris et la rétine sont réputés pour présenter des caractéristiques uniques au sein d'une large population.

En particulier, ces techniques permettent de différencier les vrais jumeaux et juridiquement l'empreinte digitale est reconnue comme l'identifiant d'un individu.

Ces caractéristiques uniques tiennent autant à l'environnement aléatoire de leur formation qu'au patrimoine génétique.

2. Caractère public d'une donnée biométrique

Une caractéristique biométrique ne peut pas être un secret et que par conséquent elle est facile à imiter à capturer. Dans ce cas, tout système biométrique doit être en mesure de prendre en compte une telle menace et éliminer les artefacts construits pour tromper.

3. Mesure d'un système biométrique

Un système biométrique n'utilise pas toute l'information contenue dans une image ou un signal capté, il en extrait certaines caractéristiques. Ce qui réduit la quantité de l'information et la capacité du système à reconnaitre l'unicité d'une donnée. Puis il effectue les calculs et trouve un résultat à partir de données recueillies.

D'une manière générale, nous pouvons dire qu'un système biométrique peut être mesuré par deux paramètres : les taux de fausse acceptations (FAR) et les taux de faux rejet (FRR). Il existe aussi un troisième paramètre qui est le taux d'échec de l'enrôlement. Ce dernier se traduit comme étant la probabilité d'absence d'une caractéristique biométrique pour un individu dans une population mais ce dernier paramètre est souvent très négligeable.

4. Types de modalités de la technologie biométrique

Actuellement nous comptons plusieurs types de modalités biométriques qui ont été répertoriées en trois groupes qui sont :

1. La modalité morphologique qui est constitué de :

· Empreintes digitales,

· Main,

· Visage,

· Voix,

· Iris,

· Rétine

2. La modalité comportementale qui est constitué de :

· Signature dynamique

· Dynamique de la frappe au clavier

· Etc.

T.F.E 2015 | Benito Lubuma L2 Génie info

43

3. La modalité biologique. Il s'agit ici d'une technique est essentiellement utilisé dans le cadre de recherche d'individus à partir des données biologiques comme l'ADN...Cette technique sort du cadre de notre travail.

4.1. Comment choisir une modalité biométrique

Faire un bon choix de la technique biométrique à utiliser pour l'implémentation d'un système biométrique, ne relève pas de la performance d'une technique à un autre mais plus tôt de l'environnement où sera déployé votre système.

Chaque technologie possédant des avantages et des inconvénients, acceptables ou inacceptables, suivant les applications ; Ces solutions ne sont pas concurrentes car elles n'offrent ni les mêmes niveaux de sécurité ni les mêmes facilités d'emploi.

En comparaison aux systèmes d'authentification utilisant un objet ou un mot de passe, qui offrent une réponse stable soit oui ou non (0% ou 100%) ; les informations biométriques sont plus fluctuantes et donnent des réponses en termes de pourcentage de similitude (entre 0% et 100%, le 100% n'étant jamais atteint).

Cette variation des résultats d'identification d'un individu, est plus liée à la qualité de la capture de l'information biométrique qui n'est toujours pas identique, suite à diverse raisons mais la caractéristique biométrique demeure stable.

Il faut donc définir un seuil de décision (acceptation ou refus) compris entre 0% et 100% de similitude au sein de l'application et il arrive que ce seuil soit différent pour chaque personne mais cela dépend des applications.

Selon une étude réalisée par la société de conseil et d'intégration International Biometric Group, elle nous montre que pour effectuer un bon choix sur la technique biométrique à utiliser, il faut tenir compte de quatre aspects capitaux qui sont :

? Effort : L'effort requis par l'utilisateur,

? Intrusiveness : qui est le niveau de perception par l'utilisateur d'un test intrusif,

? Cost : qui est le cout de la technologie utilisée,

? Accuracy : qui est l'efficacité de la technique utilisée (capacité pour identifier quelqu'un).

T.F.E 2015 | Benito Lubuma L2 Génie info

44

Figure III. 8 Type de technique biométriques

Sur la figure 1 ci-haut, nous pouvons voir les différentes techniques biométriques et à vous de faire le bon choix.

L'International Biometric Group rajoute que l'efficacité d'un système biométrique revient aussi à l'adaptation de ce dernier au changement temporaire et permanant de l'utilisateur.

Il est important de comprendre que, dans le choix d'une modalité biométrique à exploiter, différents facteurs doivent être pris en compte. Un système biométrique doit présenter une logique de marché, c'est-à-dire qu'il doit exploiter le même sens que le périphérique auquel il est joint.

4.2. Les modalités biométriques

Les techniques utilisées dans la technologie biométrique peuvent être réparties en trois groupes comme nous l'avons dit ci haut et chaque groupe est constitué de quelques modalités biométriques. Dans cette section, nous allons essayer de voir les modalités biométriques que nous pouvons retrouver dans chaque groupe, leurs avantages et inconvénients les unes des autres.

T.F.E 2015 | Benito Lubuma L2 Génie info

45

A. La modalité morphologique

Cette technique fait allusion d'une manière générale aux formes et aspect extérieurs d'un être vivant et ces formes peuvent être de plusieurs types. Ceux qui sont utiles à la technologie biométrique sont : empreinte digitale, main, voix, iris, rétine etc.

1. L'empreinte digitale

La technique de l'analyse des empreintes digitales est une des techniques les plus anciennes, elle a été développée vers le 19ème siècle par de Alphonse Bertillon ; De cette époque jusqu' à récemment, une tablette et un encreur étaient utilisés pour la capture des empreintes.

1.1. Définitions

Les Minuties des empreintes digitales : selon Galton, la minutie est l'arrangement particulier des lignes papillaires formant des points caractéristiques à l'origine de l'individualité des dessins digitaux.

Les minuties sont composées, de façon rudimentaire, de terminaisons en crêtes, soit le pont où la crête s'arrête, et de bifurcation, soit le pont où la crête se divise en deux.

Le noyau est le point intérieur situé en générale au milieu de l'empreinte et il sert souvent de point de repère pour situer d'autres minuties.

Notons que dans l'analyse des minuties au moins 12 variables doivent être prises en compte pour une identification complète.

Figure III. 9 les parties de la minutie

1.2. Principe de fonctionnement

L'authentification par empreinte digitale repose sur la concordance entre le fichier d'enregistrement obtenu lors de l'enrôlement et le fichier obtenu lors de l'authentification.

T.F.E 2015 | Benito Lubuma L2 Génie info

46

Pour effectuer une authentification correcte, il faudra respecter les deux étapes qui

suivent :

L'enrôlement qui permet de faire la capture de l'image de l'empreinte, la numérisation de l'image afin d'en extraire les minuties et autres caractéristiques et l'enregistrement de l'image dans support approprié.

Authentification : qui consiste à capturer l'image de l'empreinte digitale, numérisation de l'image afin d'en extraire les minuties et autres caractéristiques, la comparaison entre l'échantillon et le gabarit et cela est suivis d'une prise de décision.

Ce que nous pouvons retenir des étapes de la capture et numérisation est que lors de la capture, l'image doit être convertie dans un format approprié et l'extraction des minuties est rendue possible grâce à des algorithmes appropriés et la méthode de segmentation est utilisée pour éliminer des informations inutiles au système tel que le bruit trop élevé (image sale, doit mal place...). La numérisation de l'image est utilisée pour localiser les terminaisons, bifurcations et les crêtes.

La numérisation permet de filtrer des minuties afin de ne conserver que les minuties les plus fiables. Une empreinte numérisée occupe entre 250 à 1000 octets.

Techniques utilisées

Actuellement, il existe plusieurs techniques pour faire l'analyse de l'empreinte digitale, entre autre :

La technique optique : cette technique utilise le principe physique de la réflexion totale frustrée où le doigt est placé sur un capteur éclairé par une lampe ; une caméra CMD (Charge Modulation Device) avec CCD (Charge Coupled Device) convertit l'image composée de crêtes foncées et des vallées claires en un signal vidéo retraité afin d'obtenir une image utilisable.

La technique de silicium : cette technique offre une meilleure qualité de l'image et les données fournies sont plus détaillées que celles de technique optique car dans cette technique, le doigt est placé sur capteur CMD, l'image est transférée vers un convertisseur analogique-numérique et l'intégration se faisant en une seule puce.

La technique d'ultrason : cette technique repose sur la transmission d'ondes acoustique et mesure de l'impédance entre le doigt, le capteur et l'air. Cette technique est considérée comme la plus fiable et peut être utilisée par des scanners.

47

Avantages et inconvénients de ces techniques

Techniques

Avantages

Inconvénients

Technique Optique

Son ancienneté et sa mise en oeuvre ; Sa résistance aux changements de température ; Son cout abordable ;

Sa capacité de fournir des
résolutions jusqu'à 500dpi.

Possibilité de sur impression ; apparitions possibles des rayures sur la fenêtre ; le CCD peut user avec le temps ; problème de contrastes entre le doit sec et humide.

Technique silicium

Cout assez bas.

Capteur vulnérable aux

attaques extérieures
fortuites ou volontaires.

Technique ultrason

Facilité d'usage avec de

grandes plaques ; capacité à surmonter les conditions de lecture non optimales.

Aucun inconvénient

technique significative n'a pu être identifié jusqu'à ce jour ; coût très élevé

 

1.3. Tableaux sur les avantages et inconvénients de l'analyse par

empreinte digitale

 

Avantages

 

Inconvénients


·

La technologie la plus éprouvée

techniquement et la plus connue du


·

Image "policière" des empreintes

digitales.

 

grand public.


·

Besoin de la coopération de l'utilisateur


·

Petite taille du lecteur facilitant son

 

(pose correcte du doigt sur le lecteur).

 

intégration dans la majorité des

applications (téléphones portables, PC).


·

Certains systèmes peuvent accepter un montage de doigt ou un doigt coupé (la


·

Faible coût des lecteurs grâce aux

nouveaux capteurs de type "Chip
silicium".

 

détection du doigt vivant permet d'éviter ce type d'usurpation).


·

Traitement rapide

 
 


·

Bon compromis entre le taux de faux rejet et le taux de fausse acceptation.

 
 
 

1.4. Applications utilisant l`analyse de l'empreinte digitale

En théorie, toutes les applications d'authentification peuvent utiliser les empreintes digitales. Toutefois, le lecteur ou le capteur reste exposé à une éventuelle dégradation dans les applications de contrôle d'accès accessible au grand public (distributeur de billets, accès extérieur à des locaux ...).

D'où, nous pouvons dire que d'une manière générale, il existe deux types de système de contrôle d'accès qui peuvent être considéré comme les principales applications utilisant

T.F.E 2015 | Benito Lubuma L2 Génie info

48

l'analyse de l'empreinte digitale. Nous avons le système Contrôle d'accès physique (locaux, machines, équipements spécifiques) et le système contrôle d'accès logique (systèmes d'information).

2. La Main

La biométrie par la forme de la main est très simple à mettre en oeuvre. Comme la silhouette est une caractéristique de l'individu, la reconnaissance est effectuée par la géométrie de la main dans l'espace (3D), la longueur du doigt, l'épaisseur et largeur de la paume de main, dessins et lignes de la main.

Cette biométrie est toutefois sujette à des modifications de la forme de la main liées au vieillissement.

Environ quatre-vingt-dix caractéristiques sont examinés parmi lesquelles la forme tridimensionnelle de la main, la longueur et la larguer de la main ainsi que les articulations qui constituent un fichier d'environ neuf octets.

2.1. Avantages et Inconvénients de l'analyse de la forme de la main

 

Avantages

 

Inconvénients

· Bonne acceptation des usagés,

· Très simple à utiliser,

· Le résultat est indépendant de
l'humidité et de l'état de propreté des doigts,

· Fichier "gabarit" de petite taille.


·


·


·

Trop encombrant pour un usage sur le

bureau, dans une voiture ou un
téléphone,

Risque de fausse acceptation pour des jumeaux ou des membres d'une même famille,

Cette technique n'a pas évolué depuis plusieurs années déjà.

 

2.2. Applications utilisant l'analyse de la forme de la main

Les applications utilisant ce type de technique ne sont pas assez nombreuses suite à la non évolution de cette technique mais toute fois il existe quelques applications qui l'utilisent. Nous pouvons citer :

· Contrôle d'accès à des locaux.

· Parloirs de prison.

3. Le visage ou reconnaissance faciale

Galton instaura dès le 19em siècle dans ses ouvrages, avait publié ce que devrait la reconnaissance faciale actuelle. Ce n'est qu'à partir du milieu des années 80, lorsque la puissance des ordinateurs est devenue suffisante, que les recherches les plus poussées ont commencé.

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

49

La reconnaissance se base sur les caractéristiques jugées significatives comme l'écart entre les yeux, la forme de la bouche, le tour de visage, la position des oreilles, l'écartement des narines ou encore la largeur de la bouche peuvent permettre d'identifier un individu.

Cette méthode consiste à décomposer le visage selon plusieurs images en différents nuages des gris. Chaque image met en évidence une caractéristique particulière comme le montre l'image ci-dessous :

Figure III. 10 la décomposition du visage en plusieurs images gris

D'autres méthodes dérivant de la précédente ajoutent d'autres informations telles que l'écart entre les yeux, etc. Ces méthodes doivent pouvoir tenir compte de certains changements de la physionomie (lunettes, barbe, chirurgie esthétique) et de l'environnement (conditions d'éclairage).

Comme pour tout système biométrique, ces méthodes aussi nécessitent quatre

étapes :

· Capture de l'image ;

· Extraction de traits caractéristiques ;

· Comparaison avec le gabarit ;

· Prise de décision.

3.1. Avantages et inconvénients de la reconnaissance faciale

 

Avantages

 

Inconvénients


·


·


·

Très bien acceptée par le public,

Ne demande aucune action de l'usager

(peu intrusive), pas de contact
physique,

Technique peu coûteuse.

· Technologie sensible à l'environnement
(éclairage, position, expression du visage...),

· Les vrais jumeaux ne sont pas différenciés,

· Sensible aux changements (barbe, moustache, lunette, percing, chirurgie...).

 

T.F.E 2015 | Benito Lubuma L2 Génie info

50

3.2. Applications utilisant la reconnaissance faciale

Cette technologie est employée dans des domaines aussi divers que le contrôle d'accès physique ou logique, la surveillance ou l'accès aux distributeurs automatiques des billets (DAB). Mais en veillant à utiliser le scénario le plus adapté pour ne pas gêner les utilisateurs, car le résultat restera toujours une identité probable.

4. La reconnaissance vocale (voix)

Cela fait environ 30 ans que les scientifiques se sont penchés sur le problème de la reconnaissance vocale. C'est Texas Instrument qui a été le pionnier dans ce domaine en conservant le programme de R&D dès les années 60. Ces recherches ont permis de mettre en place dès les années 70 un système de sécurité basé sur la voix pour les pilotes de l'armée américaine.

La voix d'une personne se caractérise par beaucoup de paramètres. Chaque personne possède une voix propre que l'on peut analyser par enregistrement avec un micro. Les sons se caractérisent par une fréquence, par une intensité et par une tonalité. Le traitement informatique tient compte des distorsions liées au matériel utilisé, et sait analyser un son de mauvaise qualité tel qu'une transmission téléphonique ou radiophonique.

La reconnaissance de la voix n'est pas intrusive pour la personne et n'exige aucun contact physique avec le lecteur du système. Les logiciels utilisant la reconnaissance vocale peut être centralisé et la voix transmise par le réseau, d'où un impact sur la réduction du coût. Le dispositif nécessite un micro en source de capture.

Les systèmes d'identification de la voix sont basés sur les caractéristiques de voix, uniques pour chaque individu. Ces caractéristiques sont constituées par une combinaison de facteurs comportementaux (vitesse, rythme, etc.) et physiologique (tonalité, âge, accent, harmoniques, etc.).

4.1. Principe et fonctionnement

Pour être stocké, la voix est numérisée et segmentée par unités échantillonnées. Les méthodes sont basées sur les algorithmes de Shannon.

Les systèmes d'identification de la voix utilisent soit un texte libre, soit un texte imposé et les mots devant être lu devant un micro.

T.F.E 2015 | Benito Lubuma L2 Génie info

51

4.2. Avantages et inconvénient de la reconnaissance vocale

 

Avantages

 

Inconvénients


·


·


·


·

Il est plus facile de protéger le lecteur que dans les autres technologies,

Seule information utilisable via le
téléphone

Impossible d'imiter la voix,

Pas intrusif.


·


·


·


·

Sensible à l'état physique et émotionnel de l'individu,

Fraude possible par enregistrement, Sensible aux bruits ambiants,

Taux de faux rejet et fausse acceptation élevés.

 

Les inconvénients relevés ci haut montrent que le système est assez vulnérable et exige d'être couplé avec un autre système d'identification.

4.3. Applications utilisant la reconnaissance vocale

La somme des applications ne cesse de s'agrandir chaque jour. Cette technologie est souvent employée dans des environnements où la voix est déjà capturée, comme les centres d'appel et la téléphonie où elle est le moyen biométrique le plus simple et pratique à utiliser.

Nous pouvons donc dire que, c'est le seul moyen pour s'identifier via une liaison téléphonique.

5. Reconnaissance par analyse de l'Iris

Les premières traces d'une proposition d'utilisation du motif de l'iris comme moyen de reconnaissance remonte à un manuel d'ophtalmologie écrit par James Doggarts et datant de 1949. On dit même que l'ophtalmologiste Frank Burch en avait émis l'idée dès 1936. Durant les années 80, l'idée réapparut dans différents films, et restait du domaine de la science-fiction.

Ce n'est donc qu'en 1987 que deux ophtalmologistes Aran Safir et Leonard Flom déposèrent un brevet sur cette idée et demandèrent à John Daugman (enseignant à cette époque à l'université de Harvard) d'essayer de trouver un algorithme d'identification basé sur le motif de l'iris. Cet algorithme était basé sur les ondelettes de Gabor et sera été breveté en 1994. Il est la base de tous les systèmes de reconnaissance d'iris actuels.

L'iris est un motif très dense qui n'est pas dicté par les gènes car chaque oeil est unique, Dans toute photographie de l'iris, on compte plus de 200 variables indépendantes, ce qui fait une probabilité très faible de confondre 2 individus.

5.1. Principe et fonctionnement

Le traitement relativement rapide exige que la personne soit très proche de l'objectif qui doit être une objective macro.

52

Le traitement s'effectue en trois phases :

· La recherche de position de l'iris dans l'oeil ;

· Extractions des paramètres caractéristiques ;

· Comparaisons avec les éléments connus.

Comme la couleur de l'iris peut varier avec le temps mais rarement son motif, pour capturer cette membrane colorée, on utilise de l'éclairage artificiel calibré tout en l'atténuant le plus possible de l'éclairage ambiante.

5.2. Avantages et inconvénients de la reconnaissance par l'analyse de l'iris

 

Avantages

 

Inconvénients

 
 


·


·


·


·

Grande quantité d'information

contenue dans l'iris,

Vrais jumeaux non confondus,

Très fiable,

Pas de risque identifié pour la santé.


·


·

Aspect psychologiquement méthode,

L'iris est aisément visible
photographié.

évasif de et peut

la

être

 

5.3. Applications utilisant la reconnaissance de l'iris

Etant donné que la biométrie par l'iris est une des technologies qui assure un haut niveau de sécurité, et que l'iris procure une unicité très élevée (1 sur 10 puissance 72) et sa stabilité est étendue jusqu'à la mort de l'individu ; cette biométrie fait de plus en plus parler d'elle dans des domaines très sensibles.

C'est ainsi qu'actuellement nous pouvons retrouver la reconnaissance de l'iris dans le domaine des :

· Distributeurs de billets de banque,

· Contrôle d'accès physique (locaux, machines, équipements spécifiques), contrôle d'accès logique (systèmes d'information).

En théorie, de toutes les applications d'authentification, la caméra est plus exposée qu'un micro (voix) mais moins qu'un capteur tactile (empreintes digitales).

6. La reconnaissance par l'analyse de la rétine

La rétine est la couche sensorielle de l'oeil qui permet la vision. Cette zone est parcourue par des vaisseaux sanguins qui émergent au niveau de la papille optique, où l'on distingue l'artère et la veine centrale de la rétine qui se divisent elles-mêmes en artères et veines de diamètre plus faible pour vasculariser les cellules qui permettent la vision.

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

53

6.1. Fonctionnement

Les caractéristiques de la rétine sont liées à la géométrie des vaisseaux sanguins. La technologie utilise du matériel spécialisé et un rayon qui illumine le fond de l'oeil. Le système identifie jusqu'à cent quatre-vingt-douze points de repères. L'utilisation de ce système ayant révélé quelques problèmes de santé, des dispositions ont été prises pour limiter l'utilisation de ce type de système à des locaux de haute sensibilité.

6.2. Avantages et inconvénients de la reconnaissance par la rétine

La disposition des veines de la rétine assure une bonne fiabilité et une haute barrière contre la fraude, mais le frein psychologique produit par cette technologie est énorme. Elle est une des raisons de sa faible percée dans les milieux de la sécurité privée.

 

Avantages

 

Inconvénients


·
·
·
·
·

L'empreinte rétinienne est peu exposée aux blessures (coupure, brûlure),

Les taux de faux rejet et de fausse acceptation sont faibles,

Très difficile, voire impossible, à
imiter,

La rétine est différente chez les vrais jumeaux,

La rétine est stable durant la vie d'un individu.


·
·
·
·

Système intrusif, il faut placer l'oeil près du capteur,

Mauvaise acceptation du public (l'oeil est un organe sensible),

Coût important par rapport aux autres
technologies,

Pas adapté pour un flux de passage important.

 

6.3. Applications utilisant la reconnaissance de la rétine

La lecture de la rétine est une technologie utilisée pour des applications de très haute sécurité. Par exemple, le système de balayage de la rétine a été employé dans des applications militaires et nucléaires. Nous pouvons aussi le retrouver auprès des Distributeurs de billets de banque dans certains pays et aussi dans les locaux sensibles à Contrôle d'accès.

A. La modalité comportementale 1. La signature dynamique

Nous savons que chaque personne a un style unique d'écriture. On peut donc à partir de la signature d'une personne crée un modèle qui pourra être utilisé pour son identification. En plus, dans plusieurs pays, la signature est juridiquement et administrativement prouvé comme un moyen à même de justifier de la bonne foi d'une personne ou de la confondre devant des documents signés.

T.F.E 2015 | Benito Lubuma L2 Génie info

54

1.2. Principe de fonctionnement

Un tel système fonctionne grâce à un capteur et un crayon lecteur. Le capteur utilisé est une tablette digitalisée à électromagnétique. Ce capteur est relié à un PC et tout mouvement du stylo, en écriture ainsi qu'à la vitesse de la signature est pris en compte.

Comme tout système biométrique de reconnaissance, ce système exige aussi le respect des certaines étapes à l'instar de l'enrôlement qui exige trois signatures au minimum pour enregistrer une nouvelle personne et la reconnaissance qui fait la comparaison entre une nouvelle signature et une signature de référence.

1.3. Avantages et inconvénients de la signature dynamique

Le grand avantage des systèmes biométriques à base de signature réside dans la reconnaissance de cette méthode comme une forme acceptable juridiquement pour l'identification des personnes. Cependant, en raison des grandes variations de signature pour une même personne, vu qu'on utilise les systèmes d'analyse à base tantôt statique tantôt dynamique, il est difficile d'atteindre une très haute exactitude d'identification.

 

Avantages

 

Inconvénients


·


·

La signature écrite sur un document

peut être conservée dans certains
documents,

Action qui implique (responsabilité) le demandeur.


·


·


·

Besoin d'une tablette graphique,

Sensible aux émotions de l'individu,

Pas utilisable pour du contrôle d'accès en extérieur.

 

1.4. Applications utilisant la signature dynamique

Actuellement nous retrouvons ces genres d'application dans les grandes institutions financières telles que les banques et aussi les compagnies d'assurances. On les retrouve aussi lors de la signature de certains documents juridiques en ligne.

2. Dynamique de la frappe au clavier

La dynamique de la frappe au clavier est caractéristique d'un individu. En quelque sorte la transposition de la graphologie aux moyens électroniques.

Les paramètres suivants sont pris en compte pour une bonne analyse :

· Vitesse de frappe ;

· Suite de lettres ;

· Mesure de temps de frappe ;

· Pause entre chaque mot ;

· Reconnaissance de mots précis.

T.F.E 2015 | Benito Lubuma L2 Génie info

55

2.1. Avantages et inconvénients de la dynamique de la frappe au clavier

C'est une technologie biométrique qui offre peu d'avantage par rapport aux autres technologies biométriques.

 

Avantages

 

Inconvénients

?

Non intrusif, geste naturel pour un individu.

?

Dépend de l'état (physique, émotion, fatigue...).

2.2. Applications utilisant la dynamique de la frappe au clavier

Les applications utilisant cette technologie biométrique ne sont pas vraiment nombreuses suite à un nombre réduit des avantages qu'elle offre cependant nous retrouvons ces genres des applications dans les institutions bancaires ou autres institutions gérant les documents administratifs.

B. LES ALGORITHMES DE RECONNAISSANCE DE FORMES

Actuellement, les applications informatiques sont considérées comme étant un des moyens très puissant pour effectuer des opérations numériques très complexes ou pour gérer des informations administratives. Etant une branche de l'intelligence artificielle, la reconnaissance de formes permet de mettre en place des applications capables de se substituer à des activités raisonnantes de l'être humain.

Dans ce domaine, les recherches sont axées sur le développement des applications informatiques capables de transformer des informations visuelles, des informations sonores ou des informations tactiles en des informations pouvant être traitées par l'ordinateur. La reconnaissance des formes est l'un des domaines le plus important de l'intelligence artificielle.

1. Quelques définitions

Intelligence artificielle : le concept intelligence artificielle est tellement vaste que plusieurs définitions ont été proposées entre autre : l'intelligence artificielle est un ensemble de techniques utilisées pour réaliser les automates adoptant une démarche proche de la pensée humaine.

: L'intelligence artificielle est l'étude des idées qui permettent aux ordinateurs d'être intelligents. C'est-à-dire leur donnent la possibilité de développer des machines ou des programmes qui font preuve d'intelligence.

T.F.E 2015 | Benito Lubuma L2 Génie info

56

Reconnaissance de formes : est un ensemble de techniques et méthodes visant à identifier des motifs informatiques à partir des données brutes avant de prendre une décision dépendant de la catégorie attribuée à ce motif.

Algorithme : c'est une suite finie et non ambiguë d'opérations ou d'instructions permettant de résoudre un problème.

2. Caractéristiques des Algorithmes de reconnaissance de formes

La reconnaissance de formes permet à partir de l'image d'un objet ou d'une scène réelle d'en déduire les données exploitables par une machine.

La reconnaissance de forme implique une phase d'apprentissage. Le processus de reconnaissance de forme est assez proche de celui de reconnaissance de la parole.

Avant de reconnaitre une forme, il faut d'abord en connaitre un modèle ou un ensemble des caractéristiques pour pouvoir faire une comparaison.

L'ordinateur doit donc mémoriser les données à comparer avec celles des objets

rencontrés.

2.1. Principe de la reconnaissance de forme

Le principe de la reconnaissance de formes est semblable à celui de la reconnaissance de la parole. L'ordinogramme ci-dessous nous présente d'une manière générale le principe de la reconnaissance de forme.

57

Forme

Capteur

Prétraitement

Paramétrisation

Ensemble de référence

Identification

Comparaison

Forme à reconnaitre

Réponse

T.F.E 2015 | Benito Lubuma L2 Génie info

Figure III.11 Principe de la reconnaissance de formes

De ce qui précède, nous pouvons dire que la reconnaissance de formes consiste à extraire des données du capteur, une description géométrique de la scène puis mettre cette description en correspondance avec la base de données de modèle afin d'aboutir à l'identification avec l'un de ces modèles.

L'identification peut se faire de deux manières :

? Superpositions de formes : cette méthode permet de superposer deux images, celle à reconnaitre et celle stockée dans la base. Actuellement on calcul la distance entre l'image et le modèle (mesure de dissemblance).

? Détection de formes : cette méthode permet d'extraire des informations pertinentes qui permettront de déterminer ce que représente l'image.

T.F.E 2015 | Benito Lubuma L2 Génie info

58

3. Les différents types des algorithmes de reconnaissance de formes

La reconnaissance de formes peut se faire à l'aide de différents algorithmes d'apprentissage automatique tel que :

1. Un réseau de neurones artificiels

C'est un modèle de calcul dont la conception est très schématiquement inspirée du fonctionnement des neurones biologiques. Les réseaux de neurones sont généralement optimisés par des méthodes d'apprentissage de type probabiliste, en particulier, bayésien.

Ils sont placés d'une part, dans la famille des applications statistiques, qu'ils enrichissent avec un ensemble de paradigmes, permettant de créer des classifications rapides et d'autre part, dans la famille des méthodes de l'intelligence artificielle auxquelles ils fournissent un mécanisme perceptif indépendant des idées propres de l'implémenter, et fournissant des informations d'entrée au raisonnement logique formel.

2. une analyse statistique

C'est à la fois une science, une méthode et un ensemble de techniques. La statistique comprend : la collecte de données, l'analyse et le traitement des données collectées, l'interprétation des résultats et leur présentation afin de rendre les données compréhensibles par tous.

3. L'utilisation de modèles de Markov cachés

C'est un modèle statistique dans lequel le système modélisé est supposé être un processus markovien de paramètres inconnus. Les modèles de Markov cachés sont massivement utilisés, notamment en reconnaissance de formes, en intelligence artificielle ou encore en traitement automatique du langage naturel.

Parmi ces algorithmes nous avons aussi la recherche d'isomorphisme de graphes ou sous-graphes.

Les formes recherchées peuvent être des formes géométriques, descriptibles par une formule mathématique, telles que : cercle ou ellipse ; courbes de Bézier, splines, droite...

Elles peuvent être aussi de nature plus complexe : lettre, chiffre, empreinte...

Les algorithmes de reconnaissance peuvent travailler sur des images en noir et blanc, avec en blanc les contours des objets se trouvant dans l'image. Ces images sont le fruit d'algorithmes de détection de contours. Ils peuvent aussi travailler sur des zones de l'image prédéfinies issues de la segmentation de l'image.

59

Méthodes de reconnaissance de formes :

· Mise en correspondance de graphes

· Méthode Bayésienne

· Estimation Paramétrique

· Classifier linéaire

· Réseau de neurones

· Local feature focus

· SVM : Support Vector Machine

· Poly topes de contrainte

· Méthode des hyper cubes.

Parmi toutes ces méthodes, nous nous sommes plus intéressés à la méthode paramétrique qui s'avère être l'une des meilleurs pour la réalisation de notre travail car, au sein de cette méthode, nous retrouvons des algorithmes d'identification par l'iris très efficaces.

4. L'algorithme d'identification par l'iris

Plusieurs avantages ont fait de l'iris une modalité biométrique des plus performantes. L'iris est le seul organe interne humain visible de l'extérieur, il est stable durant la vie d'une personne et il est caractérisé par une texture unique. Pourtant, reconnaître les personnes par leurs iris n'est pas chose facile car plusieurs bruits peuvent interférer avec l'image de la texture de l'iris.

L'iris est localisé derrière la cornée, qui est un miroir hautement réfléchissant. L'image d'iris acquise est alors souvent perturbée par des reflets.

4.1. Processus de reconnaissance par l'iris

Les processus permettant de rendre possible la reconnaissance par l'iris passent d'abord par l'acquisition de l'image.

L'acquisition d'une image d'iris est considérée comme l'une des plus difficiles en biométrie. En effet l'iris étant un objet de petite taille, sombre et aussi lambertienne, il faut donc l'éclairer et pas avec une forte illumination car elle peut engendrer des malaise chez l'utilisateur. On recommande l'utilisation de focales très puissants ou de rapprocher l'iris de l'objectif sans que ce dernier porte des risques pour le sujet.

L'acquisition de l'iris est rendue possible via deux méthodes, celle de l'acquisition via la lumière visible et l'acquisition via l'infrarouge. La deuxième méthode est considérer comme étant la meilleure et elle a été normalisée par la ISO.

L'infrarouge possède deux avantages majeurs sur la lumière visible. Premièrement, la lumière est invisible, l'utilisateur ne sera pas aussi gêné qu'en lumière visible par une puissante illumination.

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

60

Le deuxième avantage est que l'infrarouge possède un pouvoir de pénétration de la cornée qui est largement plus grand que celui de la lumière visible et il est ainsi possible de récupérer une richesse de texture supérieure à celle obtenue en lumière visible, surtout pour les iris sombres.

Généralement, les systèmes d'acquisition d'iris acquièrent une image d'iris de 30 à 50 cm, utilisant de une à quatre diodes LED de longueurs d'onde différentes. L'iris obtenu a un diamètre compris entre 100 et 200 pixels. Dimensions adoptées par la norme ISO et cela souvent grâce à une caméra (caméra CCD monochrome 640 x 480) employée avec une source de lumière de longueur d'onde comprise entre 700 et 900 nm, invisible pour les humains.

a. Architecture d'un système d'iris

Une fois l'image de l'iris acquise, un système d'iris peut être composé de plusieurs modules et cela selon les chercheurs et leurs solutions. D'où, après étude et analyse nous pouvons dire que notre système sera composé de cinq modules comprenant : prétraitement, segmentation, déroulement, l'extraction et génération d'iris codé, et enfin l'assortiment.

1. Prétraitement :

Après l'acquisition de l'image, elle sera réduite de 25% pour accélérer les calculs, et pour réduire les effets du bruit.

2. Segmentation :

Cette étape revient à isoler l'iris du blanc de l'oeil et des paupières ainsi qu'à détecter la pupille à l'intérieur du disque de l'iris.

L'algorithme de segmentation extrait les contours interne et externe de l'iris. La technique de détection de l'iris se déroule en deux étapes : tout d'abord la détection de la pupille puis la modélisation de sa frontière par un cercle.

La segmentation d'iris présente des difficultés dues à l'occultation avec les paupières et les cils dont la forme irrégulière et la position aléatoire les rendent difficile à détecter. En plus, l'iris peut être couvert en partie par les reflets de la lumière de l'appareil d'acquisition.

Dans la méthode proposée, l'iris et la pupille sont modélisées par deux cercles non nécessairement concentriques et chaque bord de la paupière par deux segments de droite.

Figure III.12 résultats de segmentation des images d'iris

T.F.E 2015 | Benito Lubuma L2 Génie info

61

3. Déroulement :

Une fois segmenté, l'iris nécessite une opération de normalisation pour pallier la non concentricité des deux bordures et à la variation de la taille de l'iris due à la dilatation/contraction de la pupille.

Pour cela, nous avons transformé l'arc de l'iris segmenté en une image rectangulaire ; L'iris localisé est déroulé suivant la transformation polaire proposée par Daugman :

Figure III. 13 Transformation polaire

4. L'extraction :

Afin de fournir l'identification précise des personnes, l'information la plus distinctive présentée dans un modèle d'iris doit être extraite.

Seulement les dispositifs significatifs de l'iris doivent être codés de telle sorte que des comparaisons entre les calibres puissent être faites.

La méthode d'extraction de l'information qui est assez récente s'appuie sur la notion d'image analytique. Cette approche nous a conduit à la réalisation d'un procédé visant à fournir une autre information discriminante (phase instantanée, fréquence instantanée, et module instantané) sans accroître les calculs.

5. L'Assortiment :

L'unicité des modèles d'iris est importante, car l'unicité relève des caractéristiques de la technologie biométrique. L'unicité a été déterminée en comparant des calibres produits à partir des yeux différents. Par après on examine la distribution des valeurs des distances de Hamming. La distance de Hamming est définie comme la somme des bits en désaccord (somme de Ou - exclusif entre les deux configurations binaires).

T.F.E 2015 | Benito Lubuma L2 Génie info

62

6. Résultats :

Afin d'évaluer l'efficacité de la méthode choisie pour la mise en place notre algorithme, nous avons calculé les distances inter classes pour chaque identification achevée et cette méthode a donné des résultats satisfaisants lors de test.

La technique de segmentation utilisée est parvenue à segmenter correctement la région d'iris avec précision. Ce qui veut dire que les frontières de la pupille et de l'iris étaient clairement distinguées.

7. Conclusions :

L'algorithme d'identification de l'iris dont nous venons de parler n'est pas le meilleur des algorithmes d'identification par l'iris mais plutôt l'un des algorithmes le plus sûr en matière de résultats.

Cet algorithmique se décompose en cinq modules :

? Le module de prétraitement,

? Le module d'isolation d'iris (segmentation),

? Le module de normalisation (déroulement),

? Le module d'extraction et génération d'iris codé,

? Le module de comparaison des calibres biométriques.

Comparativement aux approches décrites dans la littérature :

D'une part cet algorithme dont nous avons parlé fait une comparaison entre l'extraction en utilisant les ondelettes et l'extraction en utilisant les caractéristiques de texture d'iris en démodulant l'information de fréquence émergente à partir du concept d'image analytique, d'autre part, cet algorithme utilise une méthode efficace pour la détection de la pupille et de l'iris en utilisation la segmentation basée sur l'histogramme et en tirant profit de la forme circulaire surtout de la pupille de l'oeil humain.

Cet algorithme a donné des résultats satisfaisants pour tous les modules. En plus l'isolation des composantes spectrales dans le sens de l'information concentrique contenue dans l'image d'iris original, requiert moins de calculs qu'applique un filtre complexe mettant en jeu des fonctions mathématique et exponentielles;

La taille de la signature biométrique est de 512 octets et peut être augmentée ou diminuée en fonction de niveau de sécurité exigé sans une augmentation considérable de la complexité du calcul et du temps d'extraction.

Le temps d'exécution total moyen est d'environ 500 ms pour les deux méthodes, ce qui est tout à fait acceptable pour les utilisateurs d'un système de vérification d'identité.

T.F.E 2015 | Benito Lubuma L2 Génie info

63

CHAPITRE IV : SPECIFICATION, CONCEPTION ET
DEVELOPPEMENT DU SYSTEME

[2][6][7][8][9][10][15][17][19]

IV.1. INTRODUCTION

Le génie logiciel est l'application pratique de la connaissance scientifique dans la conception et l'élaboration de programmes informatiques et de la documentation associée nécessaire pour les développer, les mettre en oeuvres et les maintenir.

Le génie logiciel utilise des méthodes et outils dans le but de produire des logiciels de qualité en respectant des contraintes de temps et de cout. En effet on cherche à développer des logiciels qui correspondent aux besoins des utilisateurs de ces logiciels.

Il existe des critères de qualité pour effecteur un bon développement logiciel, la qualité d'un logiciel correspond au contrat de service initial.

Cette notion est une notion multiforme qui recouvre :

· Utilité : adéquation entre le besoin effectif de l'utilisateur et les fonctions offertes par le logiciel.

· Validité : aptitude d'un logiciel à réaliser exactement les tâches définies par son cahier de charge et sa spécification.

· Robustesse : aptitude d'un logiciel de fonctionner même dans les conditions anormales.

· Utilisabilité : facilité d'emploi.

· Réutilisabilité : aptitude d'un logiciel à être réalisé en tout ou en partie dans des nouvelles applications.

· Extensibilité : facilité avec laquelle un logiciel se prête à la maintenance.

· Portabilité : possibilité d'un logiciel de fonctionner sous différent environnement.

· Vérifiabilité : facilité de préparation aux procédures de test.

· Intégrité : aptitude d'un logiciel de protéger ses codes contre des accès non autorisés.

· Interopérabilité : un logiciel doit pouvoir interagir en synergie avec d'autres logiciels.

· Efficacité : aptitude d'un logiciel à bien utiliser les ressources matérielles.

· Efficience : caractéristique d'un logiciel dans laquelle il y a un gain de temps et de taille pour satisfaire les besoins des utilisateurs. Ce critère est très important pour les applications embarqué.

Le développement d'un logiciel se fait suivant un cycle appelé cycle de vie d'un logiciel. Le cycle de vie d'un logiciel désigne toutes les étapes du développement d'un logiciel, de sa conception à sa disparition. L'objectif d'un tel découpage est de permettre de définir des jalons intermédiaires permettant la validation du développement logiciel.

Le cycle de vie permet de détecter les erreurs au plus tôt et ainsi de maitriser la qualité du logiciel, les délais de sa réalisation et les couts associés.

T.F.E 2015 | Benito Lubuma L2 Génie info

64

Le cycle de vie d'un logiciel comprend généralement au minima les étapes suivantes :

· Spécification des besoins

· Conception préliminaire

· Conception détaillée

· Implémentation

· Tests unitaires et test d'intégration

· Validation

· Documentation

· Exploitation

Il existe de nombreux modèles de cycle de vie par exemple : modèle en cascade, modèle en spirale, modèle en v, modèle en w... tous ces modèles sont utilisés selon le type de logiciel qu'on souhaite développer.

Actuellement les gros projets informatiques comme le nôtre font appel à plusieurs domaines et nécessitent des moyens très considérables pour aboutir à sa réalisation.

IV.2. QUELQUES DEFINITIONS

Logiciel : c'est un ensemble d'informations relatives à des traitements effectués par un appareil informatique. Y sont incluses les instructions de traitement regroupées sous forme de programme des données et de la documentation. Le tout est stocké sous forme d'un ensemble de fichier dans une mémoire.

Génie logiciel : le terme génie logiciel désigne l'ensemble des méthodes, des techniques et outils à la production d'un logiciel au-delà de la seule activité de programmation.

Architecture : En informatique, le terme architecture désigne la structure générale inhérente à un système informatique, l'organisation des différents éléments du système et des relations entre les éléments.

Système : un système est une collection de pièces et un ensemble de principes qui une fois mis ensemble forment une unité.

Module : c'est une unité regroupant un ensemble de fonctions ou procédures destinées à être utilisées en conjonction avec d'autres composants.

Modélisation : Établissement de modèles; mise en modèle.

T.F.E 2015 | Benito Lubuma L2 Génie info

65

IV.3. SPECIFICATION DU SYSTEME

Le but principal de la spécification du système est de définir ce que le système doit faire (le QUOI) et les contraintes sous lesquelles il doit opérer. Pour cela nous devons :

· Produire une définition abstraite du système

· Trouver un compromis avant engagement de réalisation

· Montrer au maitre d'oeuvre comment les besoins seront pris en compte

· Produire un référentiel pour le développement

· Produire la base nécessaire aux tests.

L'ingénierie de la spécification consiste donc à établir une communication entre les clients et les concepteurs du système.

Figure IV. 14 Liens entre exigences utilisateur et Réalisation

Il est essentiel de dissocier dans la description d'un système, les deux points de vue :

· Externe : celui de non informaticiens, décideurs et autre ;

· Interne : celui des concepteurs et personnels techniques,...

Pour le point de vue externe, on définit une spécification des besoins comme une description de haut niveau d'abstraction des services que doit rendre le système et les contraintes sous lesquelles il opère.

Pour le point de vue interne, on définit une spécification du système comme une description la plus précise possible du système qui doit être réalisé.

D'une manière générale, il existe trois grandes catégories de spécifications du

système :

· Les spécifications fonctionnelles : on définit les services du système en termes de relation entre les sorties et les entrées.

· Les spécifications non fonctionnelles : ce sont les contraintes et les propriétés remplies par le système dans son intégralité, comme, par exemple, l'efficacité, la robustesse, la sécurité, . . .

T.F.E 2015 | Benito Lubuma L2 Génie info

66

· Les spécifications liées aux domaines d'activité : ce sont des spécifications, fonctionnelles ou non fonctionnelles qui définissent des informations ou des contraintes liées aux règles qui régissent certains domaines.

IV.3.1. Les spécifications fonctionnelles

En général les spécifications fonctionnelles expriment une action que doit effectuer le système en réponse à une demande (sorties qui sont produites pour un ensemble donné d'entrées). Les spécifications fonctionnelles de notre système peuvent être regroupées de la manière suivante :

· Le système doit être en mesure d'authentifier tous les clients qui se présentent devant un G.A.B tournant sous notre système possédant un compte bancaire et ayant effectué un enrôlement biométrique à la banque exploitant ce G.A.B.

· Toute transaction effectuée par un client doit être suivie par l'impression d'un bordereau de payement/retrait.

IV.3.2. Les spécifications non fonctionnelles

Les spécifications non fonctionnelles regroupent tout ce qui est besoins ou exigences que doit remplir le système pour qu'il assure au mieux son travail. Parmi ces besoins nous pouvons citer :

· Besoin d'utilisabilité

· Besoins de performance

· Besoins de disponibilité/fiabilité

· Besoins de sécurité

· Besoins matériels

· Besoins de déploiement

Faisant parti des qualités exigées par le génie logiciel, les spécifications non fonctionnelles seront respectées et suivies à lettre lors du développement et le déploiement de notre système.

IV.3.3. Les spécifications liées aux domaines d'activité

Comme nous le dit la définition, les spécifications liées aux domaines d'activité peuvent être des spécifications fonctionnelles ou non fonctionnelles mais ces spécifications doivent décrire d'une manière un peu plus claire, les activités du système. Nous parlerons de ce type des spécifications en détail, un peu plus loin dans ce travail.

T.F.E 2015 | Benito Lubuma L2 Génie info

67

IV.3.4. Comment définir des spécifications

Le diagramme ci-dessous montre les démarches à suivre pour aboutir à une bonne spécification du système.

Figure IV. 15 étapes à suivre pour une bonne spécification

Après une étude de faisabilité approfondie qui nous a permis d'avoir une vue d'ensemble du rôle du système dans son éventuel environnement d'utilisation en vue d'évaluer sa pertinence. D'où nous nous sommes mis d'accord avec rapport de faisabilité à la main que déployer un tel système fera le bonheur de toutes les parties prenantes.

A. Analyse du besoin

Apres une réponse positive provenant de notre étude de faisabilité, nous allons expliciter et analyser les besoins. Pour mieux le faire, nous allons définir les personnes affectées par le système et évaluer leurs besoins par ordre d'importance.

La quasi-totalité des utilisateurs de notre système étant des étrangers à l'informatique et décrivant donc leur interaction avec le système en utilisant des termes imprécis ou exotiques, une bonne analyse de besoins passe par la définition des interlocuteurs (personne affectées par le système) et évaluer leur besoin par ordre d'importance. Ces points de vue peuvent être classifiés en trois catégories :

? Celui des personnes qui interagissent avec le système (utilisateurs) ;

? Celui des personnes qui ont une relation indirecte avec le système ;

? Celui, plus général, lié au domaine d'application.

68

1. Celui des personnes qui interagissent avec le système

Etant donné que le système que nous voulons développer est un système bénéficiant d'une architecture hybride qui renferme plusieurs types d'autres architectures, l'identification des utilisateurs qui devront interagir avec le système est rendue possible grâce au sous-système d'interface interactive qui est un système dominé par des interactions entre le système et des agents externes. Nous pouvons dire que les êtres humains, particulièrement les utilisateurs de G.A.B seront les principaux acteurs à interagir avec notre système.

2. Celui des personnes qui ont une relation indirect avec le système

Notre système étant un système informatique, nous pouvons identifier les acteurs qui interagissent indirectement avec de la manière suivante :

· L'administrateur réseau du système,

· La banque.

3. Celui, plus général, qui est lié au domaine de l'application

Quand nous parlons de ceux qui sont liés au domaine de l'application, nous faisons allusion aux acteurs qui se situent dans le domaine de l'activité du système et plus particulièrement, aux ingénieurs qui développeront et feront la maintenance du système et les systèmes devant s'interfacer avec le système spécifié.

B. Utilisation de Scenario et Cas d'utilisation

a. Utilisation de scenario

Utiliser une session d'interaction comme support de la discussion facilite la projection de l'interlocuteur comme utilisateur du futur système.

Un scenario peut inclure :

· Une description du contexte dans lequel le scénario démarre.

· Une description du flot normal des événements d'interaction.

· Des informations sur les activités qui peuvent se dérouler de façon concurrente.

· Une description de l'état du système à la fin du scénario.

b. Cas d'utilisation

Les cas d'utilisation (use-cases) sont une technique fondée sur les scénarios qui jouent un rôle central dans la technique de modélisation. C'est aussi un des piliers de la notation UML utilisée pour spécifier les systèmes à l'aide d'un modèle à objets.

Stricto senso, un cas d'utilisation regroupe plusieurs scénarios que l'on regarde à un niveau d'abstraction suffisamment haut pour les assimiler.

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

69

Le diagramme de cas d'utilisation représente des grandes fonctionnalités nécessaires aux utilisateurs du système. Les cas d'utilisation permettent d'exprimer le besoin des utilisateurs d'un système. Ils sont donc une vision orienté utilisateur de ce besoin au contraire d'une vision informatique.

C'est le premier diagramme du modèle UML, qui assure la relation entre l'utilisateur et les objets que le système met oeuvre.

En nous basant sur ces explications nous allons identifier les acteurs principaux et secondaires de notre système et les cas d'utilisation nécessaires.

1. Identification des acteurs

Un acteur est qualifié de principal pour un cas d'utilisation lorsque ce cas rend service à cet acteur. Les autres acteurs sont alors qualifiés de secondaires. Un acteur principal obtient un résultat observable du système, tandis qu'un acteur secondaire est sollicité pour des informations complémentaires.

Pour notre système, les acteurs peuvent être regroupés comme suit :

· Acteur principal : Client

· Acteurs secondaires : Banques et techniciens.

2. Identification de cas d'utilisations

Un cas d'utilisation est une unité cohérente d'une fonctionnalité visible de l'extérieur. Il réalise un service de bout en bout avec un déclenchement, un déroulement et une fin pour l'acteur qui l'initie.

Un cas d'utilisation modélise donc un service rendu par le système sans imposer le mode de réalisation de ce service.

Pour notre système, les cas d'utilisations nécessaires sont :

· Démarrer système

· S'authentifier

· Consulter compte

· Effectuer transaction

· Vérifier solde

· Imprimer ticket

· Arrêter système

· Blocage du système

· Redémarrer système

70

3. Représentation du diagramme de cas d'utilisation

Figure IV.16 use case

IV.3.5. Validation de la spécification

La validation de la spécification vise à montrer que les besoins explicités correspondent effectivement à ceux des utilisateurs du système.

Elle sert aussi à débusquer les erreurs dans le cahier des charges : Plus tôt une erreur est détectée, moins elle coûte. Dans le cas général, détecter une erreur dans la spécification une fois que la conception, le développement et la validation du système sont terminés implique une nouvelle passe sur plusieurs phases !

En se basant des spécifications fonctionnelles et non fonctionnelles qui décrivent les besoins ou exigences que le système doit remplir vis-à-vis de son utilisateur, nous pouvons dire clairement que les spécifications du système de notre système sont belle est bien valide.

IV.4. CONCEPTION DU SYSTEME

La conception du système est la première étape des opérations qui aboutissent à l'élaboration de l'approche qui permettra de résoudre le problème.

Elle a pour objectif de définir une structure interne du système vis-à-vis des spécifications imposées dans la phase précédente pour répondre à la question «comment fait le fait ?»

Pendant la conception du système, les développeurs déterminent la structure globale et le style.

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

71

Il y a lieu de distinguer deux types de conception :

· Conception générale ou préliminaire : qui est constituée de la conception architecturale et de la conception des interfaces ;

· Conception détaillée qui permet de déterminer les algorithmes.

A. Conception générale ou préliminaire

La conception préliminaire produit une architecture générale du système en le décomposant en composants constitutifs, notamment des modules et des tâches concurrentes.

1. La conception architecturale

La conception architecturale permet de décrire la structure du système. L'architecture du système détermine la façon dont le système sera organisé en sous-systèmes. En outre l'architecture fournit le contexte des décisions détaillées qui seront prises à des stades ultérieurs. Parmi ces décisions à prendre, nous pouvons citer :

· Estimer les performances du système ;

· Mettre au point un plan de réutilisation ;

· Organiser le système en sous-système ;

· Identifier les questions de concurrence inhérentes au problème ;

· Allouer les sous-systèmes aux équipements ;

· Gérer les stockages de données

· Choisir une stratégie de contrôle du logiciel ;

· Traiter les limites

· Arbitrer les priorités

· Sélectionner un style architectural

a. Estimer les performances du système

Lors de la planification de notre système, nous avons eu à préparer une estimation approximative de ses performances. Grâce à la technologie biométrique que nous avons eu à intégrer dans ce système, nous pouvons dire que notre système sera plus performant que le système qu'utilise le G.A.B actuellement.

b. Mettre au point un plan de réutilisation

La réutilisation étant l'un des avantages de la technologie objet ; nous a permis de réutiliser les bibliothèques, Framework et patterns développé par la firme Telecom Sud Paris qui ont mis en place le logiciel OSIRIS v4.1. Ce dernier est l'un des logiciels de reconnaissance d'iris le plus performant dans le monde.

T.F.E 2015 | Benito Lubuma L2 Génie info

72

c. Organiser un système en sous système

Hormis la partie spécification du système et ses détails, la première étape de la conception consiste à diviser le système en sous-système.

En considérant la spécification de notre système, nous pouvons le subdiviser en trois sous-systèmes, l'un qui va gérer l'identification et l'authentification des clients et les autres qui s'occuperont de la gestion des transactions reparties.

La relation existante entre nos sous-systèmes est une relation de type client-serveur.

d. Identifier les questions de concurrence inhérentes au problème

Un objectif important de la conception d'un logiciel consiste à identifier les objets qui doivent être actifs simultanément et ceux dont l'activité est mutuellement exclusive.

Identification des concurrences : Notre système étant hybride parce que renferment plusieurs types de système entre autre le système temps réel, l'identification des concurrences pour un tel système est demeure primordiale.

C'est ainsi que, nous pouvons dire que notre système sera en mesure de gérer la concurrence que ça soit intrinsèque ou extrinsèque.

Quand nous parlons de la concurrence intrinsèque, nous sous-entendons tout type de concurrences que nous pouvons retrouver à l'intérieur du système. Par exemple les tâches concurrentes qui sont des tâches pouvant s'exécuter en parallèle avec d'autres tâches.

e. Allouer des sous-systèmes

Pour une meilleur performance de notre système comme nous le souhaitons, nous aurons à allouer à chaque sous système de notre système des ressources matérielles conséquentes telle qu'un processeur spécifique pour une puissance du système.

f. Gérer le stockage des données

Avec les avancées technologiques, il existe actuellement plusieurs solutions de stockage de données.

Le système informatique en vogue dans les banques utilise des SGBD relationnelle. Pour notre système, l'utilisation d'un SGBD relationnelle est aussi possible malgré les données brutes qu'il va récolter lors de l'enrôlement.

T.F.E 2015 | Benito Lubuma L2 Génie info

73

g. Gérer les ressources globales

Lors de notre étude sur la spécification du système, nous avons eu à identifier les ressources globales à déterminer les mécanismes de contrôler d'accès.

· Unités physiques comme les processeurs, camera UHD et les satellites de communication.

· Espaces de stockage tel que le disque dur,

· Accès aux données partagées comme les bases de données.

h. Choisir une stratégie de contrôle du logiciel

Il existe deux types de flux de contrôle dans un système logiciel : le contrôle externe qui mettra en place certaines stratégies pour assurer la sécurité environnementale du système vis-à-vis des sabotages ; le contrôle interne qui consistera à avoir une équipe des techniciens pour assurer la maintenance du système.

i. Gérer les cas limites

La force d'un logiciel ou d'un système informatique, repose dans les résultats qu'il produit et dans sa stabilité mais cela n'implique pas l'absence totale du bègue. C'est pourquoi notre système devra être en mesure de réagir d'une manière significative lors qu'il est face à un bègue.

j. Arbitrer les priorités

Faire un bon arbitrage des priorités va nous permettre de nous mettre d'accord sur nos buts atteindre ; raison pour laquelle notre système doit être robuste et résistant aux pannes.

k. Styles architecturaux courants

Il existe plusieurs modèles de styles architecturaux courant dans les systèmes existants. Chacun d'eux est bien adapté à un certain type de système.

En voici :

· Transformation par lots : effectue des traitements séquentiels.

· Transformation continue : système dans lequel les sorties dépendent activement des entrées qui changent.

· Interface interactive : système dominé par des interactions entre le système et des agents externes, comme les êtres humains ou équipements.

· Simulation dynamique : système qui simule l'évolution d'objets du monde réel.

· Système temps réel : système interactif dans lequel les actions sont soumises à des contraintes de temps très fortes.

· Gestionnaire de transactions : système dont la fonction première est de stocker et retrouver les données.

T.F.E 2015 | Benito Lubuma L2 Génie info

74

i. Architecture de notre système

Actuellement les systèmes qu'utilisent les G.A.B sont de systèmes hybrides constitués généralement d'un système d'interface interactive et d'un système de gestionnaire de transactions.

Le système que nous souhaitons mettre en place, sera un système hybride comme tous les autres existants mais avec une particularité du point de vue architectural. C'est à dire il sera constitué de trois types des systèmes différents qui sont :

? Interface interactive

? Système temps réel

? Gestionnaire de transactions

Comme la structure d'un système informatique n'est à ce jour assujettie à aucune norme, en matière de logiciels, elle sera représentée sous forme de graphiques tels que des organigrammes, des diagrammes de workflow ou des diagrammes entité-relation.

L'architecture logicielle est une vue tournée sur l'organisation interne et le découpage d'un logiciel en modules. Dans les logiciels les caractéristiques communes concernent les interfaces, c'est-à-dire la connectique qui permet la communication entre les modules ainsi que les caractéristiques du matériel informatique et du système d'exploitation sur lequel le logiciel s'exécutera et les caractéristiques du réseau informatique qui sera utilisé.

En se référant à la spécification de notre système, nous avons trouvé comme architecture logicielle la mieux adaptée pour le développement de notre système, l'architecture en couches.

L'architecture en couches, est celles dont les composants sont regroupés en sous-systèmes placés les uns au-dessus des autres. Chaque composant d'un sous-système donné est en relation uniquement avec des composants des sous-systèmes placés immédiatement au-dessus ou en dessous.

Sous système bancaire

Sous système de gestion de transactions

Sous système de gestion d'identification et
d'authentification

Figure IV. 17 Structure d'une architecture en couches

75

En nous basant sur notre architecture, nous pouvons dire que les systèmes qui constituent l'architecture de notre système sont considérés comme étant des sous-systèmes et cela pour un bon fonctionnement du système dans son entièreté.

Les stations d'entrée utiliseront deux sous-systèmes : le premier sous-système est celui d'interface interactive qui a comme but d'interagir avec un être humain et le second sous-système est celui de la gestion d'identification et d'authentification du client. Ce dernier sous-système, sera implémenté comme étant un système temps réel car l'implémentation d'un système biométrique dans un système temps réel nous permettra de gagner en précision et en rapidité sur le fonctionnement de notre système, grâce aux respects des contraintes temporelles.

Le sous-système de la gestion de transactions et le sous-système bancaire, forment et représentent un gestionnaire des transactions répartis.

j. Caractéristiques matérielles et logicielles du système

Les composants matérielles des GAB, demeurent les mêmes quel que soit l'emplacement géographique.

En référence à la section II.1.3 du chapitre deux du présent travail où nous avons eu à parler d'une manière détaille des composants matériels du GAB, nous pouvons à présent les résumer en les citant comme suit :

· Un écran tactile ;

· Un lecteur de carte

· Compartiment de rejet de cartes ou boitier de rejet de cartes fermant à clé ;

· Imprimante de ticket de caisse ;

· Imprimante à journaux

· Un coffre-fort

· Bloc d'alimentation

· Distributeur secteur

· Unité système.

Les composants matériels que nous venons de citer sont utilisés pour la construction des G.A.B jusqu'à ce jour. Le système que nous souhaitons déployer, est un système accès moderne et très Secure par rapport aux systèmes existants mais le déploiement d'un tel système implique obligatoirement l'évolution de la fabrication du GAB.

Pour son bon fonctionnent, notre système exigera que le G.A.B soit constitué des composants ci-dessous :

· Un écran tactile ;

· Une camera UHD ;

· Capteurs CCD/CMOS

· Imprimante de ticket ;

· Imprimante à journaux ;

· Un coffre-fort ;

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

76

· Bloc d'alimentation ;

· Distributeur secteur ;

· Unité système.

La camera UHD pour effectuer une capture de l'iris, des capteurs CCD/CMOS pour permettre de faire une capture de l'image à une distance très considérable.

Le remplacement du lecteur de cartes et de son boitier de rejet par une camera UHD et des capteurs CCD/CMOS feront la force de notre système vis-à-vis des systèmes existants.

Du point de vue logiciel, en nous référant toujours à notre chapitre deux à la section II.1.3, nous avons eu à soulever plusieurs failles de sécurité que présente le système d'exploitation utilise les G.A.B actuellement.

Après études et analyses des experts sur les systèmes d'exploitation utilisés par les G.A.B actuellement dans la plus part des pays, il s'avère que le système d'exploitation Windows XP est le plus utilisé dans G.A.B et malheureusement, ce système révèle plusieurs failles de sécurité d'où l'existence de plusieurs types d'attaques contre un tel système d'exploitation dont le plus connu est le retrait fantôme.

Pour remédier à ces problèmes de système d'exploitation, notre système aura le privilège et l'avantage par rapport aux autres, de la mise en place d'abord d'un système d'exploitation libre avec certains certificats garantissant sa sécurité.

B. Conception détaillée

Cette deuxième partie de la conception permet à partir du résultat de la conception générale de continuer le découpage du système jusqu'à arriver à une description détaillée de chacun des composants.

Cette phase consiste à déterminer les choix des algorithmes à préciser la signature des tâches et des fonctions, à définir la structure de données et à spécifier les protocoles de communications.

La conception détaillée précède la phase de codage. À ce niveau, toutes les questions relatives à l'agencement et aux détails de la solution doivent être modélisées.

La conception détaillée fait appel à certains éléments pour mieux effecteur la modélisation du système. De ces éléments nous pouvons citer :

· Microprocessus de conception logique, modèle logique ;

· Propriétés de conception d'une classe, d'un attribut, d'une association et d'une opération ;

· design patterns : État, Curseur, Stratégie, Observateur, Référence futée ;

· couches de présentation, de l'application, de métier distribué et de stockage des données,

· etc.

T.F.E 2015 | Benito Lubuma L2 Génie info

77

1. Le Microprocessus de conception logique

Le microprocessus de conception logique concerne la définition des classes à implémenter. C'est donc une activité centrée sur le modèle logique, qui combine les diagrammes UML suivants :

· Principalement les diagrammes des classes pour préciser la structure des classes de développement ;

· Les diagrammes d'interactions pour préciser les communications entre objets ;

· Les diagrammes d'activité pour exprimer les algorithmes des méthodes.

Le microprocessus de contrôle logique est considéré par certains auteurs comme étant la partie centrale de la modélisation d'un système.

Le microprocessus consiste en une interaction des cinq activités représentées par la figure ci-dessous :

Figure IV.18 les activités gérées par le microprocessus

· Concevoir les classes consiste à transformer des concepts provenant de l'analyse ;

· Concevoir les associations définies la façon d'exploiter chaque association et les techniques qui seront employées dans le codage.

· Concevoir les attributs nécessite essentiellement d'identifier les structures de données, les itérations et d'autres types complexes permettant de représenter les attributs d'analyse ;

· Concevoir les opérations permet de déterminer le contenu des méthodes complexes et d'identifier en cascade de nouvelles classes et opérations dans la catégorie.

78

? Valider le modèle constitue la phase de décision du cycle itératif. Sortir de ce cycle signifie que le modèle donne l'image prête à être codé.

Nous allons nous contenter de la partie microprocessus de conception logique car elle est la seule partie qu'on peut modéliser d'une manière statique avec un langage de modélisation par rapport aux autres éléments auxquels la conception détaillée peut faire appel.

En nous basant sur la partie spécification de notre système et conception préliminaire, nous avons eu à mettre en place un dictionnaire de données qui se présente comme suit :

Dictionnaire de données

Pour la mise en place de nos diagrammes, plus particulièrement celui des classes,

nous avons eu à répertorier quatre entités que nous utiliserons comme étant des diagrammes

des classes. Ces entités sont :

? Client

? Banque

? Compte

? G.A.B

Grâce à notre dictionnaire de données très bien élaborée, nous avons eu à concevoir les trois diagrammes qui constituent le coeur de cette partie.

a. Diagramme de classes

Le diagramme de classes montre la structure interne d'un système et permet aussi de fournir une représentation abstraite des objets du système qui vont interagir ensemble pour réaliser les cas d'utilisation.

Figure IV. 19 Diagramme de classe

T.F.E 2015 | Benito Lubuma L2 Génie info

79

b. Diagramme d'interaction

Les diagrammes d'interaction permettent d'établir un lien entre les diagrammes de cas d'utilisation et les diagrammes de classe. Ils montrent comment des objets communiquent pour réaliser une certaine fonctionnalité. Ils apportent un aspect dynamique à la modélisation du système.

T.F.E 2015 | Benito Lubuma L2 Génie info

Figure IV. 20 Diagramme de séquence pour l'exécution d'une transaction

T.F.E 2015 | Benito Lubuma L2 Génie info

80

c. Diagramme d'activités

Les diagrammes d'activités permettent de mettre l'accent sur les traitements et de représenter aussi graphiquement le comportement d'une méthode ou le déroulement d'un cas d'utilisation.

Figure IV. 21 Diagramme d'activité

Il convient de préciser que les contenus des sous-systèmes, d'une manière générale, servent à compléter la configuration logicielle. Le niveau d'abstraction visé par l'étape de conception détaillée est la conception des composants.

IV.5. DEVELOPPEMENT DES MODULES DU SYSTEME

Le système étant vaste et complexe, nous avons pris soin de développer deux modules : un module servant d'indentification et authentification du client ; un autre module servant à la gestion des transactions.

IV.5.1. Choix du langage de programmation

Le choix d'un langage de programmation dépende souvent de la préférence du développeur et du type de logiciel à produire. Pour réussir à développer nos deux modules, nous avons préféré les langages de programmation ci-après : Le Java et le langage C.

T.F.E 2015 | Benito Lubuma L2 Génie info

81

IV.5.2. Quelques interfaces graphiques

Une fois que le client se présentera devant le G.A.B tournant sous notre système, il verra sur l'écran LCD l'image ressemblant à celle-ci :

Une fois l'authentification terminée, le système affichera une image ressemblant à

celle-ci :

Le client aura le choix entre les trois propositions qui lui sera présenté par le système. Sur l'image ci-dessous nous pouvons apercevoir que le client a choisi de retirer de l'argent...

82

Sur cette image, nous pouvons apercevoir un échantillon des données enregistrées après enrôlement d'un certain nombre des clients dans notre système.

IV.5.3. Quelques morceaux des codes

#include "mex.h" #include "matrix.h" #include "math.h"

void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])

{

unsigned char *edgeim;

int rmin,rmax;

const int *dimensioni;

int rows,cols;

int nradii;

int dimensioni3d[3];

double *p;

int hr,hc,hrhc;

T.F.E 2015 | Benito Lubuma L2 Génie info

83

double weigth = 1.0;

int *xd,*yd,*px,*py;

int *x,*y,*changed;

int Lx,Ly,Lxd,Lyd;

int cx,cy;

int radius;

double fractpart, intpart,prodotto;

int ii,jj,cont,index,posjj,posii,n,pos,Lmax,vx,vy;

edgeim = mxGetData(prhs[0]);

rmin = mxGetScalar(prhs[1]);

rmax = mxGetScalar(prhs[2]);

dimensioni = mxGetDimensions(prhs[0]);

rows = dimensioni[0];

cols = dimensioni[1];
nradii = rmax-rmin+1;

dimensioni3d[0] = rows; dimensioni3d[1] = cols; dimensioni3d[2] = nradii;

plhs[0] = mxCreateNumericArray(3,dimensioni3d,mxDOUBLE_CLASS,mxREAL);

p = mxGetData(plhs[0]);

hr = rows; hc = cols; hrhc = hr*hc;

x = mxCalloc(hrhc,sizeof(int));

y = mxCalloc(hrhc,sizeof(int));

cont = 0;

for (jj=0;jj<hc;jj++)

{

posjj = jj*hr;

for (ii=0;ii<hr;ii++)

{

posii = posjj+ii;

if (*(edgeim+posii)>0)

{

x[cont]=jj;

y[cont]=ii;

cont++;

}

}

}

Lx = cont; Ly = cont;

Lmax = (int)(floor((nradii+rmin)/sqrt(2))+1)+1;

changed = mxCalloc(hrhc,sizeof(int));

xd = mxCalloc(Lmax,sizeof(int));

yd = mxCalloc(Lmax,sizeof(int));

px = mxCalloc(8*(Lmax),sizeof(int));

py = mxCalloc(8*(Lmax),sizeof(int));

for (index=0;index<Ly;index++)

{

cx = x[index];

cy = y[index];

for (n=1;n<=nradii;n++)

{

radius = n+rmin;

T.F.E 2015 | Benito Lubuma L2 Génie info

84

Lxd = (int)(((double)radius/sqrt(2))+1);

Lyd = Lxd;

for (ii=0;ii<Lxd;ii++) {

xd[ii] = ii;

prodotto = (double)radius*sqrt(1-((double)(ii*ii))/((double)(radius*radius)));

if ((prodotto-(int)prodotto)>=0.5)

{

yd[ii] = (int)(prodotto)+1;

}

else

{

yd[ii] = (int)(prodotto);

}

}

for (ii=0;ii<Lxd;ii++)

{

vx = xd[ii];

vy = yd[ii];

px[ii] = cy+vx; py[ii] = cx+vy;

px[ii+Lxd] = cy+vy; py[ii+Lxd] = cx+vx;

px[ii+2*Lxd] = cy+vy; py[ii+2*Lxd] = cx-vx;

px[ii+3*Lxd] = cy+vx; py[ii+3*Lxd] = cx-vy;

px[ii+4*Lxd] = cy-vx; py[ii+4*Lxd] = cx-vy;

px[ii+5*Lxd] = cy-vy; py[ii+5*Lxd] = cx-vx;

px[ii+6*Lxd] = cy-vy; py[ii+6*Lxd] = cx+vx;

px[ii+7*Lxd] = cy-vx;

py[ii+7*Lxd] = cx+vy;

}

for (ii=0;ii<hrhc;ii++)

{

changed[ii] = 0;

}

for (ii=0;ii<Lxd*8;ii++)

{

if ((px[ii]>=0) && (px[ii]<hr) && (py[ii]>=0) && (py[ii]<hc))

{

pos = px[ii]+hr*py[ii];

if (changed[pos]==0)

{

p[(n-1)*hrhc+pos] += weigth;

changed[pos] = 1;

}

}

}

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

85

}

}

mxFree(xd); mxFree(yd); mxFree(px); mxFree(py); mxFree(x); mxFree(y); mxFree(changed);

T.F.E 2015 | Benito Lubuma L2 Génie info

86

CONCLUSION GENERALE

Notre travail de licence qui est en fait un projet de mise en place d'un système de sécurité biométrique basé sur la reconnaissance de l'iris embarqué dans un G.A.B, est parti de deux constats : le système qu'utilisent les G.A.B actuellement, est un système qui ne garantit pas à 100% la sécurité de la vie privée de ses utilisateurs.

L'évolution de la technologie qu'a mis en place plusieurs moyens de sécurité, semble être à l'avantages des hackers et autres types de pirates informatiques qui ne cessent de concevoir diverses méthodes pour commettre des fraudes et des attaques vis-à-vis des G.A.B qui existent.

Nous savons tous, quel que soit la race, le niveau de formation en matière d'argent on ne se confie pas à n'importe qui, surtout pour le garder. Avant l'apparition de certaines technologies comme l'impression en 3D, garder son argent à l'aide d'une carte bancaire qui pouvait être à puce ou magnétique ; aller effectuer ses transactions dans un G.A.B, étaient rassurants. Mais ce n'est plus le cas actuellement ;

Comprenant cette situation et au regard de notre constat, nous avons réfléchi sur une technologie très efficace en matière d'identification et d'authentification : la biométrie. Elle peut être définie comme étant la mesure des éléments biologiques, comportementaux ou physiologiques uniques et propres à chaque individu.

L'intégration de l'une de ces meilleures modalités en occurrence la reconnaissance de l'iris dans un G.A.B, rendra ce dernier plus Secure que les anciens systèmes. L'utilisateur n'aura plus à porter sa carte bancaire quand il veut retirer ou faire un dépôt dans un G.A.B, son iris sera utilisé par le système comme moyen d'identification et d'authentification qui lui permettra d'accéder à son compte et de faire ses transactions normalement.

Nous avons préconisé la mise en place d'un système impliquant obligatoirement la modernisation des G.A.B actuels.

Enfin, comme vous l'aurez remarqué sans doute, en lisant ce travail relevé nous n'avons voulu qu'apporter une part de nos connaissances dans le domaine scientifique. Ce modeste travail est une partie du combat humain contre l'ignorance dans le souci de mieux faire. Quelques omissions et erreurs involontaires seront sans doute encore constatées, tout en demeurant attentif à vos remarques et critiques constructives, nous nous engageons à l'améliorer pour le bonheur de la communauté.

87

BIBLIOGRAPHIE

OUVRAGES

[1] Ahlem Haniched, Nabil Khenfer Un Système Efficace D'identification Des Personnes Par Iris Université Ferhat Abbas de Sétif Algérie

[2] BAGNARD Natacha FOROT Julien Conception détaillée Configuration Interface for MEs sage ROuting 2007

[3] Emine Krichen INT Identification des personnes par l'iris France Telecom RD, Issy les moulineaux 2005

[4] European Network and Information security Agency Rapport ENISA 2012

[5] Francis Cottet, Emmanuel Grolleau, Sébastien Gérard, Jerome Hugues, Yassine, outhammou sara tucci-piergiovanni système temps réel embarqués dunod 2 édition 2014

[6] Laurent AUDIBERT UML 2.0 IUT département informatique édition volle 2012

[7] Pascal Roques, Franck Vallée UML 2en action 3e édition Eyrolles 2004

[8] Stefano Zacchiroli Génie Logiciel Avancé Laboratoire PPS, Université Paris Diderot - Paris 7

[9] T. Fricheteau Gestion de Projets Spécifications conception 05/09/2007 V2.0

[10] Yann Pollet Spécification du système, ingénierie des exigences Conservatoire National des Arts et Métiers

NOTES DE COURS, THESES, PUBLICATIONS

[11] Confédération suisse Guide relatif aux systèmes de reconnaissance biométrique version 1.0 septembre 2009

[12] CLUB DE LA SECURITE DES SYSTEMES D'INFORMATION FRANÇAIS Techniques de contrôle par accès biométrique Commission Techniques de Sécurité Physique juin 2003

[13] M. Emine Krichen thèse Reconnaissance des personnes par l'iris en mode dégradé Institut National des Télécommunications Soutenue le 4 octobre 2007

[14] Marc Segond thèse Algorithmes biométriques pour la reconnaissance de formes et l'apprentissage présente et soutenue publiquement le 8 décembre 2006

[15] Nathanaël KASORO Mulenda Notes de Cours de système experts et temps réel UNIKIN 2014

[16] Nathanaël KASORO Mulenda Notes de cours d'intelligence artificielle et système expert UNIKIN 2013

[17] Saint- jean DJUNGU Notes de cours Génie logiciel UNIKIN 2015

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

88

[18] Pierre KASENGEDIA Mutombe Notes de cours de système d'exploitation UNIKIN 2012

[19] Parametric Technology Corporation (PTC) publications Paris 2007

WEBOGRAPHIE

[20] www.biométrie-online.com (septembre 2015)

[21] www.Mascre.heguy.com (Septembre 2015)

[22] www.wikipedia.org/historique gab (Juin 2015)

[23] www.wikipedia.org/lesgabdaujourdhui (Juin 2015)

[24] www.oberthurtechnologie.fr (Aout 2015)

89

TABLE DES MATIERES

LISTES IV

FIGURES V

TABLEAUX VIII

ABREVIATIONS V

INTRODUCTION GENERALE 1

CHAPITRE IER : LE SYSTEME TEMPS REEL EMBARQUE 4

I.1. INTRODUCTION 4

I.2. DEFINITIONS 4

1. Système de contrôle-commande 4

2. Système embarqué 5

3. Système temps réel 5

4. Système critique 6

I.3. LES CARACTERISTIQUES D'UN SYSTEME TEMPS REEL 6

I.3.1. Les caractéristiques principales 6

I.3.2. Les caractéristiques temporelles des systèmes temps réel 7

I.4. DOMAINES D'APPLICATIONS 8

I.5. ARCHITECTURE DES APPLICATIONS TEMPS REEL ET EMBARQUE 8

I.5.1. Architecture mono tâche 9

I.5.1.1. Inconvénients de l'architecture mono tâche 9

I.5.1.2. Structure d'une approche mono tâche 10

I.5.2. Architecture Multitâche 10

I.5.2.1. Architecture matérielle 10

I.5.2.2. Architecture logicielle Multitâche 10

I.5.2.3. Modèle d'exécution et d'ordonnancement 12

I.5.3. Exécutif ou noyau temps réel 15

I.5.4. Implémentation des applications de contrôle-commande 17

I.5.4.1. Inconvénients des applications de contrôle-commande 17

I.5.4.2. Les langages de développement des applications de contrôle-commande 17

I.6. QUELQUES EXEMPLES D'APPLICATIONS TEMPS REEL ET EMBARQUEES 19

NOUS POUVONS DONNER QUELQUES EXEMPLES CONCRETS DES APPLICATIONS TEMPS

REEL ET EMBARQUEES : 19

CHAPITRE II : LES G.A.B ET LES CARTES BANCAIRES 20

II.1. LES G.A.B 20

II.1.1. Historique 20

II.1.2. Définitions et Utilisations 21

A. Définitions 21

B. Utilisations 21

II.1.3. Matériels et Logiciels 21

A. Matériels 21

B. Logiciels 22

II.1.4. Fiabilité et sécurité 23

A. Fiabilité 23

B. La sécurité du G.A.B 23

II.2. LES CARTES BANCAIRES 29

II.2.1. Historique 29

II.2.2. Définitions et utilisations 30

A. Définitions 30

B. Utilisations 31

II.2.3. Composants matériels et logiciels 31

T.F.E 2015 | Benito Lubuma L2 Génie info

T.F.E 2015 | Benito Lubuma L2 Génie info

90

A. Composants matériels 32

B. Les composants logiciels 33

II.2.4. Fiabilité et Sécurité d'une carte bancaire 35

A. Fiabilité 35

B. Sécurité 36

CHAPITRE III : LA TECHNOLOGIE BIOMETRIQUE ET LES ALGORITHMES DE

RECONNAISSANCE DE FORMES 39

A. TECHNOLOGIE BIOMETRIQUE 39

1. Historique de la technologie biométrique 39

2. Définitions et utilisations 40

A. Quelques définitions 40

B. Utilisation de la biométrie 41

3. Caractéristiques des systèmes biométriques 41

4. Types de modalités de la technologie biométrique 42

4.1. Comment choisir une modalité biométrique 43

4.2. Les modalités biométriques 44

B. LES ALGORITHMES DE RECONNAISSANCE DE FORMES 55

1. Quelques définitions 55

2. Caractéristiques des Algorithmes de reconnaissance de formes 56

2.1. Principe de la reconnaissance de forme 56

3. Les différents types des algorithmes de reconnaissance de formes 58

4. L'algorithme d'identification par l'iris 59

4.1. Processus de reconnaissance par l'iris 59

CHAPITRE IV : SPECIFICATION, CONCEPTION ET DEVELOPPEMENT DU SYSTEME 63

IV.1. INTRODUCTION 63

IV.2. QUELQUES DEFINITIONS 64

IV.3. SPECIFICATION DU SYSTEME 65

IV.3.1. Les spécifications fonctionnelles 66

IV.3.2. Les spécifications non fonctionnelles 66

IV.3.3. Les spécifications liées aux domaines d'activité 66

IV.3.4. Comment définir des spécifications 67

IV.3.5. Validation de la spécification 70

IV.4. CONCEPTION DU SYSTEME 70

A. Conception générale ou préliminaire 71

B. Conception détaillée 76

IV.5. DEVELOPPEMENT DES MODULES DU SYSTEME 80

IV.5.1. Choix du langage de programmation 80

IV.5.2. Quelques interfaces graphiques 81

IV.5.3. Quelques morceaux des codes 82

CONCLUSION GENERALE 86

BIBLIOGRAPHIE 87

TABLE DES MATIERES 89






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Je voudrais vivre pour étudier, non pas étudier pour vivre"   Francis Bacon