Introduction

Mon stage, d'une durée de 10 semaines c'est déroulé au LIFL (laboratoire).

J'y ai travailler sur le projet QualiDiab (Amélioration du suivi des diabétiques).

Après avoir pris connaissance de l'enssemble du projet, j'ai participé à la mise en place d'une base de donnée Oracle au CERIM (Centre d'Informatique et de Recherche en Informatique Médicale), la base de donnée Internationalle déstinée a contanir les fiches anonimisées des patients diabétiques.

Après création de la base, il était necessaire d'y insere les données antérieures, qui etaient au format d'enregistrement Delphi.

Il a donc était nécessaire de créer un fichier de conversion du format delphi vers le format de la base Oracle, j'ai écris ce programme en Pascal, ce qui permettait de récuperer les structures delphi.

Cette base de donnée étant notament destinée à des fins statistiques, il etait necessaire que l'on puisse y acceder.

Toutefois L'accés à ces données devait être sécurisé est donné uniquement au personnes autorisées (Médecins…), J'ai eu à réalisé l' accés distant (par internet) à cette base de donnée, sécurisé par une carte à puce contenant les droits d'accés de la personne détentrice.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Page xx


 

Carte

Programme C

Programme Java

Browser

CGI

Oracle

 

 

En Tache def ond:

Ouverture d'un port

 

En attente:

Démon HTTP

 

 

 

 

Appel du CGI.

 

 

 

 

 

 

Ouverture du port,

Création socket (selon Trace.log)

 

 

 

Détection connexion Avec le CGI

 

Connexion avec le programme Java

 

Connexion établie entre le programme java et le CGI.

En cas d'erreur lord de la crétion des ports ou de la connexion, le CGI affiche un message d'erreur dans le browser et s'arrete.

Page xx


Carte

Programme C

Programme Java

Browser

CGI

Oracle

 

 

 

 

Demande d'authentification de la carte.

 

 

 

Réception de la demande d'autentification (via la socket)->appel C

 

 

 

 

Ouverture channel avrc la carte, demande clé secrete.

 

 

 

 

Lecture clé secréte.

 

 

 

 

 

 

Renvoi de Ack ou Nak

 

 

 

 

 

 

Envoi du Ack ou Nak au CGI

 

 

 

 

 

 

 

Si NAK message d'erreur,fin.

Si ACK demande d'identification du profil.

 

 

 

Demande d'identification au prg C

 

 

 

 

Demande du code secret utilisateur.

 

 

 

 

Verification code secret, lecture du profil ds un fichier.

 

 

 

 

 

 

Envoi profil ou Nak au CGI

 

 

 

 

Page xx


Carte

Programme C

Programme Java

Browser

CGI

Oracle

 

 

 

 

Si Nak: message d'erreur,fin

Si Ack envoi du profil comme login à oracle.

 

 

 

 

 

 

Ouverture session.

 

 

 

 

Creation page html

 

 

 

 

Formulaire de saisie

 

 

 

 

 

 

Fabrication requette Sql

 

 

 

 

 

 

Traitement requette

 

 

 

 

Fabrication page de réponse

 

 

 

 

Affichage réponse

 

 

 

 

 

 

 

Si fin, fermeture session.

 

 

 

 

Déconnection de la socket.

 

 

 

Fermeture du port et Retour à l'état d'attente.

 

 

 

 

 

 

 

Page xx


Presentation de la carte MPCOS

La Carte MPCOS (Multi-application Payment Chip Operating System) fait partie de la famille des cartes COS de Gemplus.

Son systeme d'exploitation est stocké dans une mémoire de type EEPROM d'une taille de 16 kb, sa structure de donnée est basée sur la norme ISO 7816-4. Il existe des cartes de 8,32 et 64 Kb de RAM.

L'echange de données se fait normallement par le protocole T=0, même s'il est possible d'utiliser le protocole T=1. La Vitesse de transfert pouvant etre fixée jusqu'à 115200 bauds.

La structure de donnée de la carte MPCOS ne comporte que deux niveaux de hierarchie. La racine de cette structure est le MF (Master File), Il peut contenir jusqu'à 63 fichiers.

Ces fichiers sont de deux types : les DF(Dedicated Files : Repertoires) et les EF(Elementary Files : Fichiers). Un DF peut contenir des EF (jusqu'à 63) mais pas de DF puisqu'il n'y a que deux niveaux de hierarchies.Les EF, quant à eux, contiennent les données.

Les DF peuvent etre de deux types : ISO ou PCOS(Gemplus), Les EF dependent du type du fichier (MF ou DF) dont ils font partie.

L'accés aux fichiers de la carte est sécurisé par des codes secrets contenus dans des fichiers de codes secrets (Efsc), chacun de ses Efsc pouvant contenir jusqu'à 8 codes numérotés de 0 à 7.

Chaque Repertoire(MF ou DF) peut contenir un (et un seul) fichier d'Efsc.

Tout fichier (MF, DF, EF) possede des conditions d'accés (en lecture/eciture/modification) stockées dans 2 byte de leur descripteur on y trouve :

La carte enregistre les codes secrets soumis avec succés dans des registres d'autorisation(permet de savoir a tout moment si l'utilisaterur a été validé ou non).

 

Page xx


 Un registre d'autorisation est d'une longueur de 8 bits et est stocké en RAM, la carte MPCOS en posséde deux, le premier aloué au MF, le second au DF actuellemnt séléctionné. 

La carte MPCOS posséde dans son systéme d'exploitation un jeu d'instructions relativement important.

Il éxiste deux grand type d'instructions : celles d'administration et celles de paement.

Les commandes administartives peuvent étres de deux types :

Il existe de plus, des fonctions de cryptage qui permettent de sécuriser les transmissions, par exemple la création d'une clé de session qui permet le secure messaging et le cryptage des commandes de payement.

 

 

 

 

 

 

 

 

 

 

 

 

  

 

 

 

 

 

 

Page xx


LA NORME EDIFACT

EDI signifie Echange de données informatisées, la norme EDIFACT(ONU) a pour but de standardisé les échanges de messages, l'utilistaion de cette norme a notament été recommandé par l'etat français aux ses administrations.

Les messages sont délivrés par Edifact Board ou EdiFrance dans notre pays.

EDIFACT peremet la liason de plusieurs elements différents:

Ceci est sensé au permettre la portabilité du message à travers le monde.

Le messsage EDIFACT recherche l'exhaustivité et l'universalité, c'est pourquoi il est lourd, lent, difficile a normaliser, pénible a utiliser, et très vite obsoléte au regard des nouvelles technologies.

Il est possible d'utiliser les messages EDIFACT sur internet car ils sont encapsulables sous TCP/IP.

Des améliorations de la norme Edifact sont en cours

( Voir : http://www.geocities.com/wallstreet/floor/5815).

 

 

 

 

 

 

 

 

 

 

 

 

 

Page xx