LaDissertation.com - Dissertations, fiches de lectures, exemples du BAC
Recherche

METHODOLOGIE EN GENIE INFORMATIQUE

Étude de cas : METHODOLOGIE EN GENIE INFORMATIQUE. Recherche parmi 300 000+ dissertations

Par   •  21 Mars 2016  •  Étude de cas  •  7 963 Mots (32 Pages)  •  1 568 Vues

Page 1 sur 32

[pic 1]

COMPTE RENDU

METHODOLOGIE EN GENIE INFORMATIQUE

[pic 2][pic 3]


Sommaire

Introduction        

I.        Cahier des charges        

II.        Spécifications fonctionnelle du logiciel        

1.        Spécifications des fonctions appelées        

2.        Spécifications de la fonction        

III.        Conception détaillée du logiciel        

1.        Tests unitaires des fonctions développées sous LARP        

2.        Tests unitaires des fonctions développées en langage c        

Conclusion        

Annexes        

1.        LISTINGS COMMENTES DES PROGRAMME LARP        

2.        LISTINGS COMMENTES DES PROGRAMME EN C        


Introduction

L'objectif de ce projet est de développer un système d'archivage sécurisé de documents.

Ce système d'archivage permet à l'utilisateur d'archiver  et de désarchiver  un fichier.

Afin d'archiver ou désarchiver,   l'utilisateur  devra choisir un fichier qui sera lu en mémoire de masse puis compressé,   crypté et écrit en mémoire de masse.

De même que pour désarchiver,   l'utilisateur  devra choisir un fichier qui sera lu en mémoire de masse qui sera ensuite décrypté,   décompressé puis écrit en mémoire de masse

Il existera deux types de clés :

- Les clés privées qui sont destinées au décryptage et qui est conservée par l’utilisateur

- Les clés publiques qui sont destinées au cryptage et qui est enregistré dans la base de données.

On utilisera la méthode du RSA pour le cryptage/ décryptage et la méthode du RLE pour la compression/décompression.

Une mémoire de masse : c’est une mémoire (dispositif électronique utiliser pour le  stocker des informations) de grande capacité,   non volatile (conservé même après avoir éteint le logiciel ou/et l'ordinateur) pouvant être lue et écrite par un ordinateur. 

RSA : du nom de ces inventeurs (Rivest, Shamir et Adleman), est un algorithme de chiffrement appartenant à la grande famille "Cryptographie asymétrique".

RLE : Run-Length Encoding, appelé en français le codage par plages, est un algorithme de compression de données en informatique.


  1. Cahier des charges

Pour réaliser le cryptage/décryptage, nous avons utilisée la méthode RSA.

Il faut d’abord énumérer les fonctions dont nous aurons besoins pour ce projet.

Nous aurons besoin :

- d’une fonction qui puise reconnaitre les utilisateurs existants dans la base de données id_user

- une fonction qui permettra d’ajouter de nouveaux utilisateurs ad_user

- une fonction qui génère les clés publiques et privé de ces nouveaux utilisateurs gen_cle.

Étant donné que nous utilisons la méthode RSA, il nous faut apporter des compléments pour permettre l’optimisation du programme qui sont pour nous les fonctions suivantes : touve_premier, premier, exponetiation, euclide, PGCD.


  1. Spécifications fonctionnelle du logiciel

  1. Spécifications des fonctions appelées

/*------------------------------------------ad_user--------------------------------------------*/

ad_user (REFERENCE nom: chaîne de caractères, REFERENCE e: entier, REFERENCE n: entier) : une fonction -> booléen[pic 4]

{Cette fonction crée dans la base de donnée (existante) la chaîne de caractères " nom" et lui affect les clés publiques  "e" et "n" qui ont été généré pour cet utilisateur. Elle retourne 1 quand la création du nouvel utilisateur est un succès et 0 sinon}

/*------------------------------------------id_user--------------------------------------------*/

[pic 5]

id_user (nom: chaîne de caractères, REFERENCE e: entier, REFERENCE n: entier) : une fonction -> booléen

{Cette fonction recherche dans la base de données (existante) la chaîne de caractères " nom" et affect à "e" et "n" les clés publiques de cet utilisateur. Elle retourne 1 quand l'utilisateur existe/est trouvé et 0 sinon}

/*------------------------------------------ PGCD ------------------------------------------*/

PGCD (r0: entier, r1: entier) : une fonction -> entier[pic 6]

{Cette fonction retourne au programme principal le PGCD de r1 et r0}

/*------------------------------------------ euclide ------------------------------------------*/

euclide (r0: entier signé, r1: entier signé) : une fonction -> entier signé[pic 7]

{Cette fonction retourne au programme principale u0 qui est l'inverse de la multiplication de r0 modulo r1}

...

Télécharger au format  txt (34.3 Kb)   pdf (414.7 Kb)   docx (44 Kb)  
Voir 31 pages de plus »
Uniquement disponible sur LaDissertation.com