Dédicace
Je dédie ce travail à mon grand père Ndoyo pierre.
i
Remerciements
Au terme de ce travail, je tiens à exprimer ma profonde gratitude à notre Dieu
Tout Puissant et à tous ceux qui ont contribués à sa réalisation. Mes remerciements
vont particulièrement :
— Au Pr NSANGOU MAMA pour l’honneur qu’il nous fait de présider ce jury ;
— Au Dr KALADZAVI Guidedi pour le privilège qu’il m’offre en examinant ce
travail d’étude ;
— A mon encadreur académique, Dr BOUDJOU TCHAPGNOUO Hortense pour
sa disponibilité, l’aide et les remarques apportées dans ce travail ;
— A mon encadreur professionnel, M. DJAOWE Minkreo pour son soutien et ses
précieux conseils ;
— Au Directeur Général de CAMTEL, Mme JUDITH YAH Sunday Epse Achidi
pour nous avoir accordée le stage académique ;
— A tous les enseignants du Département d’Iformatique et de télécommunication
et plus particulièrement à Dr. Boudjou Hortense, Dr NSANGOU PECHA
Aminatou, M. TERDAM Valentin qui en plus de leur heures de cours, ont été
d’une oreille attentive à toutes nos préoccupations ;
— A mon parrain Ingenieur FOTSING TEDJON ANNICK PAULIN pour ses
conseils
— A mes très chers parents SANGBET BARNABE et NETARLEM CLEMENCE
pour tous les sacrifices consentis pour notre éducation et notre formation ;
— A mon grand père NDOYO PIERRE ;
— A mes amies MYO LEMEGNE LAVINIA ; AISSATOU VAKA SAIDOU, KEM-
NODJI DJIMOUDJIEL LYNA, SANDJIO TIMENE, CHIC BERENICE, LO-
TIS VADES pour leur appuis et assistance ;
— A la famille DAYANG pour l’encouragement et l’attention apportés à mon
égard ;
— A tous nos camarades de promotion pour leur esprit de solidarité, de partage
et de fraternité ;
— A tous mes amis et proches pour m’avoir toujours soutenu pendant ma for-
mation.
ii
Table des matières
Dédicace i
Remerciements ii
Liste des sigles et abréviations vi
Résumé vii
Abstract viii
Liste des tableaux viii
Liste des figures et illustrations ix
Introduction générale 1
1 Cadre du projet 2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1 Présentation de la structure d’accueil . . . . . . . . . . . . . . . . . . 2
1.1.1 Historique De CAMTEL . . . . . . . . . . . . . . . . . . . . . 2
1.1.2 Adresse et localisation de la CAMTEL . . . . . . . . . . . . . 3
1.1.3 Structure organisationnelle de la CAMTEL . . . . . . . . . . . 3
1.1.4 Missions de la CAMTEL . . . . . . . . . . . . . . . . . . . . . 5
1.1.5 Les services offerts par la CAMTEL . . . . . . . . . . . . . . . 6
1.1.6 Les réalisations et perspectives de la CAMTEL . . . . . . . . 7
1.2 Contexte et problématique . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2.1 Contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2.2 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Méthodologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4.1 Objectif global . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4.2 Objectifs spécifiques . . . . . . . . . . . . . . . . . . . . . . . 9
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2 Généralité sur la sécurité informatique et la signature numérique 10
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1 C’est quoi la sécurité informatique . . . . . . . . . . . . . . . . . . . . 10
2.1.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.2 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.3 Les types de sécurités informatiques . . . . . . . . . . . . . . . 11
2.1.4 Cartographie de risque numérique . . . . . . . . . . . . . . . . 12
iii
TABLE DES MATIÈRES
2.1.5 Les différentes menaces des SI . . . . . . . . . . . . . . . . . . 13
2.1.6 Les différentes attaques sur les SI . . . . . . . . . . . . . . . . 13
2.1.7 Les mesures de sécurités informatiques . . . . . . . . . . . . . 14
2.1.8 Les normes et standard portant sur la sécurité des SI . . . . . 14
2.2 C’est
quoi la signature numérique . . . . . . . . . . . . . . . . . . . . 15
2.2.1 Les types de signatures numériques . . . . . . . . . . . . . . . 16
2.2.2 Comment fonctionne la signature numérique . . . . . . . . . . 17
2.2.3 Quels sont les normes, standards et cadres juridiques de la
signature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.4 Quels sont les différents outils permettant de produire une
signature numérique . . . . . . . . . . . . . . . . . . . . . . . 24
2.2.5 Quels sont ses avantages . . . . . . . . . . . . . . . . . . . . . 26
2.2.6 Les PKI(Public Keys Infrastructure) . . . . . . . . . . . . . . 26
2.3 Qu’est-ce qu’un document électronique . . . . . . . . . . . . . . . . . 30
2.3.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.3.2 Types de formats de documents électroniques . . . . . . . . . 30
2.4 Quels intérêts à protéger les documents électroniques échangés . . . . 30
2.5 Quels importance y a t-il à appliquer une signature numérique sur un
document électroniques . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3 Cahier de charge 34
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.1 Contexte et définition du problème . . . . . . . . . . . . . . . . . . . 34
3.2 Objectifs du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.3 Étude de faisabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.4 Exigences spécifiques . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.4.1 Exigences fonctionnelles . . . . . . . . . . . . . . . . . . . . . 35
3.4.2 Exigences non-fonctionnelles . . . . . . . . . . . . . . . . . . . 36
3.4.3 Méthode adoptée . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.5 Chronogramme d’activités . . . . . . . . . . . . . . . . . . . . . . . . 37
3.6 Budgétisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4 Conception, Modélisation et Implémentation 40
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.1 Conception et modélisation . . . . . . . . . . . . . . . . . . . . . . . 40
4.1.1 Schémas du contexte du domaine d’étude . . . . . . . . . . . . 40
4.1.2 Approche conceptuelle de la solution . . . . . . . . . . . . . . 41
4.1.3 Le langage UML . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.1.4 Outils de modélisations utilisés . . . . . . . . . . . . . . . . . 42
4.1.5 Diagramme de cas d’utilisations . . . . . . . . . . . . . . . . . 42
4.1.6 Diagrammes de séquences . . . . . . . . . . . . . . . . . . . . 46
4.1.7 Diagrammes de classes . . . . . . . . . . . . . . . . . . . . . . 51
4.1.8 Diagramme de déploiement . . . . . . . . . . . . . . . . . . . 52
4.1.9 Architecture de l’application . . . . . . . . . . . . . . . . . . . 53
4.2 Implémentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.2.1 Présentation générales des outils d’implémentation . . . . . . 53
4.2.2 Module de signature . . . . . . . . . . . . . . . . . . . . . . . 55
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Rédigé par Ing. Neyom Elvine Patricia iv
TABLE DES MATIÈRES
5 Résultats et commentaires 56
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.1 Page d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.2 Cas d’utilisation authentification . . . . . . . . . . . . . . . . . . . . 56
5.2.1 Page d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.3 Cas d’utilisation générer paire de clé . . . . . . . . . . . . . . . . . . 58
5.4 Cas d’utilisation signer document . . . . . . . . . . . . . . . . . . . . 60
5.5 Cas d’utilisation vérifier signature document . . . . . . . . . . . . . . 61
5.6 Cas d’utilisation télécharger clé . . . . . . . . . . . . . . . . . . . . . 62
5.7 Cas d’utilisation supprimer clé . . . . . . . . . . . . . . . . . . . . . . 63
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Conclusion générale 65
Annexes 68
Rédigé par Ing. Neyom Elvine Patricia v
Liste des sigles et abréviations
AC : Autorité de Certification
AE : Autorité d’Enregistrement
AH : Autorité d’Horodatage
ANTIC : Agence Nationale des Technologies de l’Information et de la Communi-
cation
ANSSI :Agence Nationale de la Sécurité des Systèmes d’Information
CA :Contrôle Accès
CAA : Caisse Autonome d’amortissement
CAdes : Cryptographie Message Syntax Advance Electronic Signature
CAMTEL : Cameroun Telecommunication
CSS : Cascading Styles Sheets
DES :Data Encryption Standard
DSA :Digital Signature Algorithm
EIDAS : Electronic Identification and Trust Services
HTML : Hyper Text Markup Language
IDE : Integrated Development Environment
IDEA : Iternational Data Encryption Algorithm
ISO : International Organization for Standardization
MD5 : Message-Digest Algorithm 5
PAdes : PDF Advance Electronic and Services
PCA : Plan de Continuite d’Activité
PKI : Public Infrastructure Key
PRA : Plan de Retour à l’Activité
PKCS : Public Key Cryptographic System
RSA : Rivest Shamir Adleman
RGVS : Referentiel Généale de Sécurité
SHA :Secure Hash Algorithm
SI : Système d’Infomation
SMSI : Système de Management des Système d’Infomation
SSI : Sécurité des Systèmes d’Infomation
SSL : Secure Socket Layer
TSL : Transport Layer Security
vi
Résumé
Dans le cadre des stages de fin d’étude et en vu de l’obtention du diplôme d’ingé-
nieur de conception en Informatique et Télécommunication option Cryptographie et
Sécurité informatique, nous avons été appelés à effectuer un stage à la Cameroon Te-
lecommunication en abrégé [Link] au long de ce stage nous avons travaillé
sur le thème Conception et mise en place d’une solution de sécurisation des
documents électroniques échangés au moyen de la signature numé[Link]
effet la solution que nous avons mis en place est un module de signature numérique ;
celle-ci permet aux utilisateurs de signer numériquement leurs documents. Pour per-
mettre aux utilisateurs de manipuler notre module sans contrainte nous avons mis
en place une application web suivant l’architecture client-serveur à trois niveaux ac-
cessible via interface web. Cette application va permettre à tout utilisateur autorisé
de signer de manière sécurisé un document numérique tout en assurant l’intégrité,
l’authentification, la non-répudiation et la confidentialité du document. Pour mettre
en place notre solution, nous avons utilisé le langage de programmation python ;
le microframework Flask permettant le développement des application web en
python ; le langage HTML et CSS pour la réalisation de nos vues.
Mots clés : Signature numérique ; document électronique ; sécurité.
vii
Abstract
As part of the end-of-study internships and in view of obtaining the design en-
gineer diploma in Computer Science and Telecommunications option Cryptography
and Computer Security, we were called to carry out an internship at Cameroon
Telecommunication in short CAMTEL. Throughout this internship we have been
working on the theme Design and implementation of a security solution for
electronic documents exchanged by means of digital signatures. Indeed the
solution we have implemented in place is a digital signature module ; this allows
users to digitally sign their documents. To allow users to manipulate our module
without constraint, we have set up a web application following the client-server ar-
chitecture at three levels accessible via interface web. This application will allow
any authorized user to securely sign a digital document while ensuring the integrity,
authentication, non-repudiation and confidentiality of the document. To set up our
solution, we used the python programming language ; the microframework Flask
allowing the development of web applications in python ; the HTML and textbfCSS
language for the realization of our views.
Keywords : Digital signature ; electronic document ; security.
viii
Liste des tableaux
3.1 Estimation du budget en cas d’achat des serveurs . . . . . . . . . . . 38
3.2 Estimation du budget en cas d’hébergement en ligne . . . . . . . . . 39
4.1 Description textuelle du cas d’utilisation « générer une paire de clé » 44
4.2 Description textuelle du cas d’utilisation « Signer un document » . . 44
4.3 Description textuelle du cas d’utilisation « Vérifier un document » . . 45
4.4 Description textuelle du cas d’utilisation « Chiffrer un document » . . 45
4.5 Description textuelle du cas d’utilisation « Déchiffré un document » . 46
ix
Liste des figures et illustrations
1.1 Localisation CAMTEL . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Organigramme de la division de sécurité . . . . . . . . . . . . . . . . 5
2.1 Les 14 chapitres de l’ISO 27002 . . . . . . . . . . . . . . . . . . . . . 15
2.2 Cryptographie asymétrique . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3 Échange de clé de Bob à Alice . . . . . . . . . . . . . . . . . . . . . 18
2.4 Envoi d’un message à Bob par Alice . . . . . . . . . . . . . . . . . . . 18
2.5 Schéma fonctionnel de la cryptographie asymétrique . . . . . . . . . 19
2.6 Fonction de hachage . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.7 Principe de fonctionnement de la signature numérique . . . . . . . . . 22
2.8 Structure minimal d’un certificat numérique[signature électronique . . 27
2.9 Processus d’obtention d’un certificat numérique . . . . . . . . . . . . 29
2.10 Exemple des signature électronique . . . . . . . . . . . . . . . . . . . 31
2.11 Échange de document entre Amina et Issa en utilisant la signature
numérisée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.12 Échange entre Alice et Bob en utilisant la signature numérique . . . . 32
3.1 hronogramme des activités suivant le diagramme de GANT . . . . . . 37
4.1 Architecture existante . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.2 Architecture réseau de la solution . . . . . . . . . . . . . . . . . . . . 41
4.3 Cas d’utilisation générale . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.4 Diagramme de séquence du cas d’utilisation « S’authentifier » . . . . 46
4.5 Diagramme de séquence du cas d’utilisation « Générer une paire de
clé » . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.6 Diagramme de séquence du cas d’utilisation « Signer un document » . 48
4.7 Diagramme de séquence du cas d’utilisation « Vérifier une signature » 49
4.8 Diagramme de séquence du cas d’utilisation « Chiffrer un document » 50
4.9 Diagramme de séquence du cas d’utilisation « Déchiffrer un document » 51
4.10 Diagramme de classes . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.11 Diagramme de déploiement . . . . . . . . . . . . . . . . . . . . . . . . 52
4.12 Architecture client-serveur à trois niveau . . . . . . . . . . . . . . . . 53
5.1 Page d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.2 Page d’authentification . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.3 Page d’accueil administrateur . . . . . . . . . . . . . . . . . . . . . . 57
5.4 Page d’accueil administrateur . . . . . . . . . . . . . . . . . . . . . . 58
5.5 Profil administrateur . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.6 Paire de clé RSA générée . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.7 Clé stocker dans la BD . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.8 Clé stocker dans le magasin . . . . . . . . . . . . . . . . . . . . . . . 60
x
LISTE DES FIGURES ET ILLUSTRATIONS
5.9 Page d’information a remplir pour signer . . . . . . . . . . . . . . . . 60
5.10 Page d’information a remplir pour signer . . . . . . . . . . . . . . . . 61
5.11 Page d’information a remplir pour signer . . . . . . . . . . . . . . . . 61
5.12 Page d’information a remplir pour signer . . . . . . . . . . . . . . . . 62
5.13 Page d’information a remplir pour signer . . . . . . . . . . . . . . . . 62
5.14 Télécharger une clé . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.15 Confirmation de suppression de clé . . . . . . . . . . . . . . . . . . . 63
5.16 Clé supprimée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.17 Suppression invalide . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Rédigé par Ing. Neyom Elvine Patricia xi
Introduction générale
Les technologies numériques prennent de plus en plus une place importante dans
divers secteurs ; encourageant en gros une numérisation massive des documents faci-
litant les échanges électroniques. Avec l’essor d’Internet, et l’utilisation de processus
informatisés par la majorité des entreprises et des organisations , les menaces visant
les systèmes d’information n’ont cessés d’augmenter et de se sophistiquer faisant
aujourd’hui de la sécurité informatique une nécessité pour tous les types de struc-
[Link] changement a encouragé la mise en place d’outils et de solutions adaptées,
notamment dans la production et l’échange d’informations.C’est dans ce contexte
que la signature numérique s’est imposée, en répondant aux objectifs de la sécurité
informatique à savoir l’authentification de la provenance d’une information,la pré-
servation de l’intégrité des données (des documents électroniques échangés) et aussi
de la non-répudiation. Le besoin de communiquer, de s’assurer que nos échanges sont
bels et bien établis et de plus en toute sécurité est l’un des objectifs far à atteindre
par chaque entreprise. L’information étant au centre de toute évolution, il est pour
cela important d’en assurer sa sécurité.
La CAMTEL, structure de l’Etat met à la disponibilité des entreprises et par-
ticuliers nombreux services dans le domaine des télécommunications et du réseau
informatique. Fonctionnant de manière décentralisée et avec pour objectif de de-
venir la vitrine en ce qui concerne l’économie numérique, la CAMTEL se donne
les moyens d’y arriver. Accordant une grande priorité à la sécurité des échanges,
elle nous soumet un besoin portant sous le thème conception et mise en œuvre
d’une solution de sécurisation de documents électroniques échangés au
moyen de la signature numérique.
Le présent document est structuré en cinq chapitres ; le premier chapitre présente
le cadre contextuel de notre travail en y dégageant la problématique, la méthodolo-
gie, et les objectifs visés. Le deuxième chapitre porte sur les généralités de la sécurité
informatique, la signature numérique ; Le troisième chapitre présente notre cahier
de charge ; le quatrième chapitre porte sur la conception,modélisation et implémen-
tation de notre solution, nous insisterons dans ce chapitre sur les diagrammes, et
les technologies utilisées ; avant de conclure notre travail nous présentons dans le
cinquième chapitre les résultats et commentaires de notre solution.
1
Chapitre 1
Cadre du projet
Introduction
Placé sous la tutelle technique du Ministère des Postes et Télécommunications en
abrégé MINPOSTEL et sous la tutelle du ministèere en charge des finances(MINFI),
la Cameroon Télécommunication en abrégé CAMTEL est une infrastructure de
l’état camerounaise crée dans le cadre de la restructuration du secteur des télécom-
munication.
Tout au long de ce chapitre, il sera question pour nous de faire une brève pré-
sentation de la CAMTEL, tout en présentant de façon explicite le contexte ; la
problématique ; l’objectif et la méthodologie de notre travail.
1.1 Présentation de la structure d’accueil
1.1.1 Historique De CAMTEL
C’est en 1952 que le Cameroun connu sa première expérience dans le domaine
de la téléphonie ceci grâce à l’administration française. En 1960, le Cameroun confie
l’exploitation des télécommunications internationales à la société France CABLE
et RADIO ; ainsi les autorités camerounaises décident en 1969 de faire du Came-
roun un membre de l’organisation internationale des télécommunications satellites
en abrégé INTELSAT. La société des Télécommunications du Cameroun en abrégé
INTELCAM, est ainsi crée dans l’optique de prendre en charge l’ensemble des acti-
vités de FRANCE CABLE et RADIO, ainsi que l’ exploitation et la modernisation
de la station terrienne de Zamengoé et tout ceci en 1972. En Décembre 1973, la
station terrienne susdite qui permettra l’accès au réseau mondial INTELSAT est
effectivement crée. La fusion de l’ancienne société des télécommunications interna-
tionales du Cameroun et de l’ancienne Direction des Télécommunications (DT) du
Ministère des Postes et Télécommunications donne naissance à la CAMTEL ceci
grace au Décret N 98/198 du 08 septembre 1998 du président de la république dans
le cadre de la restructuration du secteur des télécommunications. En Février 2000,
la filiale de téléphonie mobile, CAMTELMobil, fut vendue à l’opérateur des Télé-
communications MTN. Ces changements sont intervenus lors de la libéralisation du
secteur des télécommunications au Cameroun. La société a lancée en 2005 le service
de téléphonie mobile CT-Phone, basé sur la technologie CDMA.[1]
2
1.1. PRÉSENTATION DE LA STRUCTURE D’ACCUEIL
1.1.2 Adresse et localisation de la CAMTEL
En plein centre-ville de Yaoundé, le siège social de la CAMTEL est localisé au
boulevard du 20 Mai non loin de la CAA(Caisse Autonome d’amortissement). Son
bâtiment se distingue de plusieurs bâtiments de part son architecture et sa construc-
tion. Nous relevons que le siège abrite plusieurs bâtiments à savoir le bâtiment de
la direction générale, le bâtiment de la DT, et bien d’autre . La CAMTEL répond
aux adresses suivantes :
Figure 1.1 – Localisation CAMTEL
[2]
— Contact : +237 222 23 40 65 ;
— B.p. 1571 Camtel Yaoundé, Cameroun
— E-mail : [Link].
1.1.3 Structure organisationnelle de la CAMTEL
Selon la résolution numéro 011/CAMTEL /CA/DU 05 AVR 2021 portant sur
l’organisation des services de la société Cameroon Telecommunication. Contraire-
ment aux statuts de 1998, la gestion de Camtel est désormais assurée par trois
organes au lieu de deux (Conseil d’administration et direction générale) comme par
le passé. Il s’agit notamment : de l’Assemblée générale, le Conseil d’administration et
la Direction Générale. La gestion quotidienne et l’application de la politique générale
de la société sont assurées par le Directeur Général assisté d’un directeur adjoint,
sous l’autorité et le contrôle du Conseil d’administration à qui il rend compte[3].
— Le conseil d’administration : c’est en effet l’organe central de la CAMTEL.
Avec pour rôle le contrôle de la gestion et l’application de la politique générale
de la société qui sont assurées par le directeur général assisté de deux directeurs
généraux adjoints, le Conseil d’administration intervient le plus souvent pour
les grandes orientations et stratégie de l’entreprise ; à cet effet il est composé
de :
— Un président ;
— Six membres représentant l’État ;
Rédigé par Ing. Neyom Elvine Patricia 3
1.1. PRÉSENTATION DE LA STRUCTURE D’ACCUEIL
— Un membre représentant le personnel ;
— Un membre représentant la commission technique de privatisation et des
liquida- tions.
— L’assemblé générale ;
— La Direction Générale
elle est structurée ainsi qu’il suit :
1. Une administration de groupe qui comprend :
— Des services rattachés à la direction générale, ceux sont :
— Les conseillers techniques, ils sont au nombre de 04 et pour
l’accomplissement de leur mission ils sont assisté par un chargé
d’étude et un chargé d’étude assistant ;
— Les inspecteurs, ils sont chargés de la conduite des missions d’ins-
pections et d’évaluation auprès des entités de l’administration de
groupes et de Busness Units. Ils sont au nombre de 04 et pour
l’accomplissement de leur misions ils sont assisté par un chargé
d’étude et un chargé d’étude adjoint ;
— Les missions spéciales, placé sous l’autorité des chargés de mis-
sions elles sont chargées de la conduite des activités spécifiques
ou réservées auprès de certains institutions. Elle se compose de la
mission spéciale de souveraineté, la missions spéciale de coopéra-
tion, la mission spéciale de la coupe coupe d’Afrique des Nations
de Football CAN 2021 ;
— La division de l’audit et du management des risques, placé sous
l’autorité d’un chef de division elle a pour mission la définition et
la mise en œuvre de la politique d’audit interne et de management
des risques conformément à la stratégie de l’entreprise et à ses
objectif de performance ;
— La division de contrôle de gestion et revenue assurance, elle a
pour mission d’assurer le contrôle budgétaire et financier de l’en-
treprise et de contribuer à la fiabilisation de sa chaine de revenus
— La division de la communication institutionnelle, digital et des
relations publiques. Elle est placé sous l’autorité d’un chef de
division ;
— La division de la sécurité, elle a pour mission la définition et la
mise en œuvre de la stratégie de sécurisation des actifs informa-
tionnels, infrastructurels et patrimoniaux de l’entreprise à travers
les différents accès et le réseau interne d’entreprise. Elle à sa tête
un chef de division et comprend le département de la sécurité
des personnes et des biens, le département de la sécurité du ré-
seau d’entreprise et des communications électroniques, le service
statistiques reporting suivi et évaluation de la [Link]
organigramme est représenté selon la figure si dessus :
— Le cabinet du directeur général, elle comprend la sous-direction ;
la cellule de la traduction et de la promotion bilingue ; la cellule
du suivi ; le service du protocole ; l’attaché du directeur ; l’attaché
du directeur générale adjoint ; le service statistique, reporting,
suivi et évaluation de la performance.
Rédigé par Ing. Neyom Elvine Patricia 4
1.1. PRÉSENTATION DE LA STRUCTURE D’ACCUEIL
Figure 1.2 – Organigramme de la division de sécurité
— De l’administration centrale qui est composé des directions régio-
nales ;
— Des services Mutualisés de Groupe qui comprend :
— La Direction de la Stratégie, de l’organisationnel, des Projets et
de l’innovation ;
— La Direction du SERVICE CLIENTS ;
— La Direction Commerciale et du Marketing ;
— La Direction Technique ;
— La Direction des Systèmes ;
— Direction du Recouvrement ;
— La Direction de la Comptabilité et des Finances ;
— La Direction des Normes et de la Qualité ;
— La Direction Des Ressources Humaines ;
— Direction des Approvisionnements et du Patrimoine ;
— Direction des Affaires Juridiques et de la Réglementation.
— Des Business Units, ils sont composés Business Unit Fixe ;Busi-
ness Unit Mobile ; Business Business Unit Transport.
1.1.4 Missions de la CAMTEL
Grâce au degré du 28 Mai 2019, les missions de la CAMTEL ont été précisées et
réorganisées par le chef de l’État camerounaise ;ainsi ses missions sont entre autres :
— Assurer l’étude, l’installation, l’exploitation et l’entretien de tout système né-
cessaire à la fourniture des services de communications électronique sur l’en-
semble du territoire national ; ainsi qu’a la connexion des réseaux locaux ou
nationaux aux réseaux étranger ;
— Assurer la réalisation des opérations commerciales, industrielles, mobilières,
immobilières et financières se rattachant directement ou indirectement aux
services suscités ou de nature à favoriser leur développement.
Rédigé par Ing. Neyom Elvine Patricia 5
1.1. PRÉSENTATION DE LA STRUCTURE D’ACCUEIL
1.1.5 Les services offerts par la CAMTEL
CAMTEL est fortement impliquée dans le développement et la modernisation des
télécommunications au Cameroun. Elle doit pouvoir garantir une excellente qualité
de l’ infrastructure nationale dans un secteur fortement concurrentiel . Ses princi-
pales missions sont :
— La téléphonie fixe(avec ou sans fil) ;
— La téléphonie mobile type CDMA( offre City Phone) ;
— Internet( par Dial-up, ADSL, VSAT, Wireless) ;
— Le réseaux d’entreprise(lignes spécialisées, VSAT, ...)
Ces services peuvent être classées en deux catégories selon qu’ils sont offerts
aux particuliers ou aux entreprises.
1. Aux particuliers
— L’accès internet Le réseau internet est accessible par deux nœuds d’accès
au backbone international a Douala et Yaoundé à travers le câble sous-
marin SAT3 pour un débit total de 933 Mb pars (soit 622Mb par s à
Douala et 311 à Yaoundé). Les principaux moyens d’accès à internet
offerts par CAMTEL aux particuliers sont : le RTC, l’ADSL, CT Phone,
RNIS et le Wireless[20].
— Les services internet offerts sont de quatre types :
— L’allocation des noms de domaine (.cm, .tv, .org, .biz, .net, . . . ) ;
— La création des sites Internet ;
— L’hébergement de sites Internet ;
— L’e-mail personnel.
— La téléphonie Ce service regroupe quatre principales offres :
— Le fixe filaire ;
— Le CT Phone ;
— La télécopie (FAX) ;
— Le téléphone de masse.
2. Aux entreprise
— Solution téléphonie fixe
— Offres préférentielles ;
— Numéro vert.
— Solution de mobilité
— Easy Pro ;
— Business Privilège.
— Solution Internet Pro
— Liaisons Spécialisées urbaines et interurbaines ;
— Liaison sans fil ;
— ADSL haut débit ;
— Sites et applications web ;
— Hébergement professionnel ;
— Nom de domaine ;
Rédigé par Ing. Neyom Elvine Patricia 6
1.2. CONTEXTE ET PROBLÉMATIQUE
— Messagerie d’entreprise.
— Réseaux d’entreprise
— Liaisons Spécialisées Internationales ;
— Liaisons Spécialisées Nationales ;
— Faisceaux hertzien (VSAT, . . . ).
Afin de satisfaire les doléance et besoins des entreprises comme des par-
ticuliers, CAMTEL est dotéée de :
— 3 centres de télécommunications par satellite situées respectivement
à Bépanda, Zamengoé et Garoua disposant de stations terriennes
gérées par ordinateurs, de deux auto-commutateurs numériques pour
le transit international et un hub pour les systèmes VSAT ;
— SAT3 ;
— Fibre optique ;
— 2 auto-commutateurs électroniques assurant le trafic télex national
et international, auxquels sont reliés 109 centres d’exploitation télé-
graphique ;
— 76 concentrations permettant d’offrir la téléphonie rurale à autant de
localités pour une capacité de 10940 lignes.
1.1.6 Les réalisations et perspectives de la CAMTEL
De sa créations jusqu’à nos jours la CAMTEL à accompli beaucoup d’exploits
et a su se distinguer à travers ses réalisations qui sont entre autres :
— Pose de la fibre optique Douala/Yaoundé ;
— Liaison fibre optique Kribi-Llodorf ;
— Etc...
1.2 Contexte et problématique
1.2.1 Contexte
Avec pour ambition de demeurer la vitrine dans le domaine du réseau, la télé-
communication mais aussi l’économie numérique ; la CAMTEL se donne les moyens
d’y arriver. Pour mener à bien ses activités et produire des résultats excellents en
son sein, elle met à la disposition de ses employés diverses plateformes. C’est ainsi
que les plateformes tels que e-courrier(plateforme web d’échange de courriel), CAM-
TELNET(portail web des activité interne de la CAMTEL) ont été déployées pour
les employés, ceci afin de faciliter les transactions, les échanges et l’interopérabilité
entre le personnel. Toutefois nous avons constaté en rapport avec le système mis en
place que :
— Le serveur qui héberge la plateforme e-courrier n’est pas sécurisé ;
— Les documents électroniques envoyés par les employés via le e-courrier sont
signés au moyen d’une griffe(signature manuscrite numérisée), engendrant la
plupart du temps une incertitude sur l’authenticité du document ;
Rédigé par Ing. Neyom Elvine Patricia 7
1.3. MÉTHODOLOGIE
— Les documents envoyés par les utilisateurs via le e-courrier peuvent être avisés
par plusieurs personnes avant d’être signés(signature par griffe), cette possi-
bilité de permettre à plusieurs personnes d’aviser le document peut être une
occasion pour un employé quelconque d’altérer le document ou de le falsifier
sans qu’aucun membre du système ne s’en rende compte, provoquant ainsi la
non intégrité du document. De plus dans un système pareil il est impossible de
vérifier l’identité de celui qui a modifié ou falsifié le document d’où le problème
de non-répudiation.
1.2.2 Problématique
Au regard de ce qui précède, une question se pose : comment assurer la sécurité
des documents électroniques échangés entre les employés ?
1.3 Méthodologie
La démarche que nous adopterons en vue de produire les résultats escomptés,
consiste séquentiellement à :
— S’approprier le sujet, ceci avec pour objectif de prendre connaissance et com-
prendre tous les concepts qui y tourne autours ;
— Faire une analyse de l’existant, avec pour objectif de recueillir un maximum
d’information afin de produire un cahier de charge pour la réalisation de notre
solution ;
— Passer à la réalisation conceptuel de la solution proprement dit, en faisant une
présentation architecturale, une conception et modélisation de la solution au
moyen du standard UML ;
— Faire une implémentation de la solution en tenant en compte les différents
aspects énoncés lors de la conception et modélisation ;
— A l’issu de notre implémentation, présenter les résultats et faire des commen-
taires.
1.4 Objectifs
Afin de mettre sur pied notre solution de sécurisation des documents électro-
niques échangés au moyen de la signature numérique, nous nous sommes fixés, un
objectif global et des objectifs spécifiques.
1.4.1 Objectif global
Notre objectif global est de concevoir un module de signature numérique pour
assurer la sécurité des documents électroniques échangés entre les employés de la
CAMTEL.
Rédigé par Ing. Neyom Elvine Patricia 8
1.4. OBJECTIFS
1.4.2 Objectifs spécifiques
Pour atteindre notre objectif global le système mis en place doit être capable
d’offrir la possibilité de :
— Générer une paire de clé ;
— Signer un document électronique ;
— Vérifier la signature d’un document électronique ;
— chiffrer et déchiffrer un document électronique.
— Horodater la signature d’un document
Conclusion
Parvenu au terme de ce chapitre, il était question pour nous de présenter briè-
vement notre structure d’accueil tout en présentant le contexte de notre travail, la
problématique découlant des différents problèmes soulignés au niveau du contexte,
l’objectif de notre travail et pour finir de présenter la méthodologie qui est la dé-
marche à suivre pour atteindre notre objectif fixé.
Rédigé par Ing. Neyom Elvine Patricia 9
Chapitre 2
Généralité sur la sécurité
informatique et la signature
numérique
Introduction
Les technologies numériques ont pris une place importante dans diverse domaine ;
ce qui encourage en gros une numérisation massive des documents facilitant les
échanges électroniques. Ce changement a encouragé la mise en place d’outils et de
solutions adaptées, notamment dans la production et l’échange d’information.C’est
dans ce contexte que la signature numérique s’est imposée, en répondant aux ob-
jectifs de la sécurité informatique à savoir l’authentification de la provenance d’une
information ,la préservation de l’intégrité des données(des documents électroniques
échangés) et aussi de la non-répudiation.
Pour une bonne compréhension des mécanismes et procédures liés à la sécurité
des échanges de documents électronique, de signatures numériques ; il sera question
pour nous après avoir présenter la sécurité informatique et la signature numérique ;
de parler du partage des document électronique et du défis sécuritaire rencontré tout
en soulevant l’apport de l’utilisation de la signature numérique.
2.1 C’est quoi la sécurité informatique
2.1.1 Définition
La sécurité informatique est un ensemble des moyens techniques,organisationnels,
juridiques et humaines nécessaires à la mise en place de moyens visant à empêcher
l’utilisation non autorisée,le mauvais usage,la modification ou le détournement du
système d’information.[4]
.D’une manière générale, la sécurité informatique est un ensemble de stratégies de
cybersécurité mises en place pour empêcher tout accès non autorisé aux ressources
d’une entreprise telles que les ordinateurs, les réseaux et les données. Elle garantit
l’intégrité et la confidentialité des données sensibles en tenant à distance les hackers
les plus rusé[Link], elle permet d’assurer que les ressources matérielles ou logicielles
d’une organisation sont uniquement utilisés dans le cadre prévu.
10
2.1. C’EST QUOI LA SÉCURITÉ INFORMATIQUE
2.1.2 Objectifs
La sécurité informatique repose sur la norme ISO 270XX et vise généralement
05 objectifs à savoir :
— La confidentialité : elle garantie que seul le destinataire légitime d’un bloc de
données ou d’un message peut en avoir une vision intelligible ;
— L’authentification : elle garanti à tout destinataire d’un bloc de données ou
d’un message ou à tout système auquel tente de se connecter un utilisateur,
l’identité de l’expéditeur ou de l’utilisateur en question ;
— L’intégrité : elle garantit qu’un bloc de donnée ou qu’un message n’a pas été
altéré, accidentellement ou intentionnellement ;
— La non-répudiation : elle garantit à quiconque que l’auteur d’un bloc de donnée
ou d’un message ne peut renier son œuvre, c’est-à-dire prétendre ne pas en être
l’auteur.
— La disponibilité : permet de mettre à la disposition des utilisateur les différentes
ressources afin de maintenir le bon fonctionnement du système d’information ;
2.1.3 Les types de sécurités informatiques
La sécurité informatique repose sur deux grand éléments à savoir la donnée et
le support utilisé pour la transmettre. Ainsi on distingue deux grandes types de
sécurités informatiques :
1. La sécurité logique : c’est en réalité la sécurité apportée au niveau des données ;
notamment les données de l’entreprise, les applications, ou encore les systèmes
d’exploitations. ce type de signature peut être catégorisé comme suit :
— La sécurité du réseau : elle empêche les utilisateurs non autorisés ou mal-
veillants d’entrer sur votre réseau. Elle garantit l’utilisabilité, la fiabilité
et l’intégrité des ressources. Ce type de sécurité est essentiel pour empê-
cher les hackers d’accéder aux données se trouvant sur le réseau, et pour
garantir que vos utilisateurs puissent accéder au réseau et l’utiliser sans
encombre. La sécurité du réseau s’avère de plus en plus complexe à me-
sure que les entreprises augmentent leur nombre de terminaux et migrent
leurs services dans le cloud public.
— La sécurité Internet : elle inclut la protection des informations envoyées
et reçues via les navigateurs, ainsi que la sécurité du réseau concernant les
applications web. Ces mesures de protection visent à surveiller le trafic
Internet entrant à la recherche de malwares et de trafic non autorisés.
Elles peuvent être mises en place à l’aide des firewall ou de solutions
antimalware et anti-logiciel espion.
— La sécurité des applications : elle garantit qu’au moment de leur création,
les applications sont codées de manière à être les plus sécurisées possible
afin d’échapper aux attaques. Cette couche de sécurité supplémentaire
implique d’évaluer le code d’une application et d’identifier les éventuelles
vulnérabilités du [Link] sécurité du réseau.
— Etc.
2. La sécurité physique : C’est la sécurité apporté au niveau des infrastructure
matérielles tels que les salles sécurisées lieux publiques ou ouverts, espaces
Rédigé par Ing. Neyom Elvine Patricia 11
2.1. C’EST QUOI LA SÉCURITÉ INFORMATIQUE
commun de l’entreprise, postes de travail des personnels. comme sécurité phy-
sique nous avons :
La sécurité des terminaux : elle assure la protection au niveau des périphé-
riques. Elle protège différents types d’appareils, tels que les téléphones por-
tables, les tablettes, les ordinateurs portables et les ordinateurs de bureau.
La sécurité des terminaux empêche vos périphériques d’accéder à des réseaux
malveillants pouvant représenter une menace pour votre entreprise. Les logi-
ciels de protection contre les malwares avancés et de gestion des périphériques
font partie des solutions de sécurité des terminaux.
2.1.4 Cartographie de risque numérique
Un risque est la probabilité qu’une menace exploite une vulnérabilité. En terme
de sécurité informatique le risque se caractérise par l’équation :
Risque = (M enace ∗ V ulnérabilité)/Contre − mésure. Autrement dit, c’est une
possibilité pour qu’un fait dommageable se produise. En sécurité l’on dit qu’un
risque est d’autant plus important si les vulnérabilités son nombreuses, par contre
il est d’autant plus réduit lorsque les contre-mesures sont [Link] sécurité
informatique, il existe deux grands types des risques à savoir : les risques humains
et les risques matériels.
1. Les risques humaines
Ce sont les plus importants, même s’ils sont le plus souvent ignorés ou mi-
nimisés. Ils concernent les utilisateurs mais également les informaticiens eux
mêmes. Ils sont entre autre :
— La maladresse : elle consiste à commettre des erreurs ou exécuter de
traitement non souhaité, ou effacer involontairement des données ou des
programmes ; ...etc ;
— L’inconscience et l’ignorance : elle consiste à introduire des programmes
malveillants sans le savoir (par exemple lors de la réception du courrier).
Des nombreux utilisateurs d’outils informatiques sont encore inconscients
ou ignorants des risques qu’ils font courir aux systèmes qu’ils utilisent ;
— La malveillance : elles consiste à introduire sans s’en rendre compte des
virus ou vers dans le système.
— L’ingénierie sociale : c’est une méthode pour obtenir d’une personne des
informations confidentielles, que l’on n’est pas normalement autorisé à
obtenir, ceci en vue de les exploiter à d’autres fins. Elle consiste à :
— L’espionnage : consiste à introduire une personne ou un outil de sur-
veillance afin de savoir tous ce qui se passe et de faire une collecte aux
maximum d’un certain nombre d’information ;
— Etc.[5]
2. Les risques matériels
Ces risque sont liés aux défauts et pannes inévitables des systèmes matériels
et logiciels. Ces incidents sont plus ou moins fréquents selon les soins apportés
lors de la fabrication et de l’application des procédures de tests effectués avant
que les ordinateurs et les programmes ne soient mis en service. Certaines de ces
pannes ont des causes indirectes, voire très indirectes, donc difficiles à prévoir.
Parmi ceci on peut citer :
— Les incidents liés aux matériels ;
Rédigé par Ing. Neyom Elvine Patricia 12
2.1. C’EST QUOI LA SÉCURITÉ INFORMATIQUE
— Les incidents liés aux logiciels ;
— Les incidents liés à l’environnement[6]
2.1.5 Les différentes menaces des SI
Une menace de sécurité est toute actions pouvant compromettre Les systèmes
d’informations. Il existe plusieurs types de menaces celle-ci sont classées en deux
grands catégories à savoir :
1. les menaces actives
Les menaces actives sont des menaces qui nuisent à l’intégrité des données.
Elles se traduisent par différents types d’attaques. On distingue le brouillage,
le déguisement (modification des données ou de l’identité, l’interposition dé-
guisement en réception).
2. Les menaces passives
Le menaces passives consistent essentiellement en un prélèvement ou une
écoute de l’information sur le réseau. Elles portent atteinte à la confidentialité
des données. Dans ce cas, l’information n’est pas altérée par celui qui en pré-
lève une copie ; pour ce type d’attaque il est difficile de détecter le responsable
de la fraude.
2.1.6 Les différentes attaques sur les SI
Une attaque est l’exploitation d’une faille d’un système informatique ( système
d’exploitation, logiciel ou bien même de l’utilisateur) à des fins non connues par
l’exploitant du système qu’on appel le plus souvent hackeur. Les attaques sont pour
la plupart lancées automatiquement à partir de machines infectées (par des virus,
chevaux de Troie, vers, etc.), à l’insu de leur propriétaire. Nous distinguons plusieurs
types d’attaques, ces attaques son classées en fonctions des méthodes d’exploitation
de celles-ci.
1. Les méthodes d’attaque
— Les attaques par intrusions : ce type d’attaques consiste à exploiter les
différentes failles du système en exécutant des commandes non-autorisé,
c’est l’exemple du Sendmail ; du Network Scanning... etc ;
— Les attaques par usurpation d’identité : ce type d’attaque consiste à uti-
liser les identifiants d’un utilisateur afin d’accéder au système ou à un
serveur quelconque c’est l’exemple du spoofing ;
— les attaques par action physique : elle consiste à ce servir de la destruction
ou altération d’un composant c’est l’exemple de la destruction d’un câble,
du débranchement d’une prise...etc ;
— L’attaque par abus de droit légitime : elle consiste à abuser de ses droits
pour effectuer une action malveillant, c’est l’exemple du DOS(consiste à
effectuer plusieurs requêtes afin de saturer le serveurs) ;...etc.
2. Les différents attaques
Les attaques existent selon les objectifs et les finalités. Parmi les attaques les
plus connues, on peut citer : les vers informatiques ; les virus ;etc.
Rédigé par Ing. Neyom Elvine Patricia 13
2.1. C’EST QUOI LA SÉCURITÉ INFORMATIQUE
2.1.7 Les mesures de sécurités informatiques
Pour assurer la sécurité des systèmes d’information deux types de mesure de
sécurité peuvent être appliquées au sein su SI par les responsables de sécurité.
1. Les mesures préventives : ceux sont les premières mesures à mettre en œuvre
pour assurer la sécurité informatique de son entreprise. Elles permettent de
réduire le nombre de failles, d’intrusions, de tentatives d’attaques et de pertes
de données. Parmi les mesures préventives, on peut distinguer :
— La sensibilisation des utilisateurs ;
— La mise en place d’outils de protection tels que les pare-feu, les antivirus
professionnel,les solution antispam ;
— Avoir un système d’information performant, à jour et sécurisé ;
— L’audit de sécurité informatique ceci afin de mettre en place une politique
de sécurité informatique adaptée à l’entreprise ;
— La bonne maîtriser de la messagerie électronique avec une messagerie
hébergée ;
2. Les mesures de sécurité curatives :elle sont mise en oeuvre en cas d’une si-
tuation d’urgence(incident, d’intrusion ou de contamination des postes ou des
données, ) et à y faire [Link] ses mesures on peut citer :
— Nettoyage des infections et remise en état de fonctionnement du système
d’information ;
— PCA (Plan de Continuité d’Activité) / PRA (Plan de retour à l’activité) ;
— Etc.[7]
2.1.8 Les normes et standard portant sur la sécurité des SI
Pour établir ou accroitre le niveau de sécurité des système d’informations au
sein d’une entreprise ou d’une organisation, il est important de décrire un ensemble
d’activité pratique à exécuter. Ces activités doivent obéir aux normes portant sur
la sécurité des SI à savoir :
— La norme ISO 27001(SMSI)
C’est la norme de référence internationale en terme de système de management
de la sécurité de l’information, elle décrit une approche pragmatique de la
gestion de la sécurité de l’information avec le choix de mesures de sécurité
découlant d’une appréciation des risques. Elle repose sur 04 grandes phases
qui sont
— la phase PLAN( planification de la démarche de sécurisation des systèmes
d’information)
Cette phase consiste à fixer des objectifs et des plans d’actions ;
— La phase Do ( mise en œuvre et exploitation des mesures et de la poli-
tique)
— La phase Check
Cette phase permet de mesurer les résultats issus des actions mises en
œuvre
— La phase Act ( Mise en place d’actions)
Cette phase consiste à planifier et suivre des actions qui peuvent être
préventives ; correctives ; d’améliorations.
Rédigé par Ing. Neyom Elvine Patricia 14
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
— La norme ISO 27002(Code de bonne pratiques)
Venant en complémentarité à la norme ISO 27001, la norme ISO 27002 est
comme un guide qui permet de fournir des recommandations sur le choix et
l’implémentation des mesures de sécurités. Révisée en 2013, elle est compo-
sée de 114 mesures de sécurités réparties en 18 chapitres(soit les 4 premiers
chapitres introduisent la norme et les 14 chapitres suivants couvrent le ma-
nagement de la sécurité aussi bien dans ses aspects stratégiques que dans ses
aspects opérationnels). La norme ISO 27002 constitue alors un code de bonne
pratique pour le [Link] c’est en ayant une connaissance sur l’ensemble de
ces 14 chapitres(domaine) ci-dessous qu’on peut avoir une vu générale sur la
sécurité des SI.[8]
Figure 2.1 – Les 14 chapitres de l’ISO 27002
— La norme IS0/CEI 27003 cette norme vient en appui des concepts généraux
énoncés dans l’ISO/CEI 27001 ; elle encourage à la mise en place d’une ap-
proche processus ;
— La norme ISO/CEI 27004
C’est un ensemble de lignes directives qui fournit des conseils pour ledéve-
loppement d’un programme de mesures et de contrôles et la formalisation
d’indicateurs permettant de mesurer l’efficience d’un système de management
de la sécurité de l’information (SMSI) ;
— La norme ISO/CEI 27005
Elle vient en appui des concepts généraux énoncés dans l’ISO/CEI 27001 ; elle
est conçue pour aider à la mise en place de la sécurité de l’information basée
sur une approche de gestion des risques ;
2.2 C’est quoi la signature numérique
Définition
Une signature numérique est un mécanisme cryptographique permettant de ga-
rantir l’intégrité d’un document électronique et d’en authentifier l’auteur ; la signa-
ture numérique peut encore être définit comme un procédé, technologique fiable et
Rédigé par Ing. Neyom Elvine Patricia 15
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
reconnu permettant de lier de façon formelle un signataire et son document signé
tout en garantissant l’authenticité ; la non-répudiation ; et l’intégrité du contenu d’in-
formation (document inaltérable). Par ailleurs la signature numérique se distingue
nettement de la signature numérisée, qui n’est qu’une simple image numérique de
la signature manuscrite pouvant facilement être copiée. De maniéré simplifiée la
signature numérique est un code qu’on rattache à un document.
Objectifs
La signature numérique permet d’assurer plusieurs services ; ainsi elle répond à
trois objectifs fondamentaux qui sont :
— Garantir l’intégrité d’un document : il permet d’assurer que le document n’a
pas été altéré entre sa signature et sa consultation ceci en utilisant les fonctions
de hachage ;
— Authentifier son auteur : c’est à dire s’assurer de l’identité de la personne
signataire à l’aide des fonctions de chiffrement et déchiffrement ;
— Assurer la non-répudiation.
Une signature numérique doit avoir les caractéristique suivantes :
— authentique : l’identité de l’utilisateur doit pouvoir être retrouvée de manière
certaine ;
— infalsifiable : une personne ne peut pas se faire passer pour un autre ;
— non-réutilisable : la signature fait partie du document signé et ne peut être
déplacée sur un autre document ;
— inaltéré : une fois que le document est signé, on ne peut plus modifier ;
— irrévocable : la personne qui signe ne peut le contester.
2.2.1 Les types de signatures numériques
La fiabilité d’une signature numérique est aussi fonction du niveau de sécurité
qu’elle apporte à cet effet nous en distinguons trois types à savoir simple, avancée,
et qualifiée.
— La signature électronique simple dit de premier niveau ou signature par griffe
Très utilisé dans nos société actuelle, elle favorise un usage rapide et fluide en
établissant entre deux ensemble de données numériques un lien notionnel et
se limite à un signe marquant au bas du message électronique ne garantissant
pas réellement l’intégrité de données. Elle est utilisée le plus souvent pour des
documents tels que des contrats d’adhésion, devis, facture, contrat fournisseur,
contrat de bail contrat de travail ;etc.
— La signature électronique avancée ou dit de niveau 2
Elle est plus sécurisée et est conseillée dans le cadre de transactions financières
conséquentes ou de signature de documents pouvant présenter des enjeux juri-
diques importants. Elle répond à un certain nombre de critère d’identification
plus poussé et dispose ainsi de niveau de sécurité supérieurs tel qu’énoncé
dans le règlement EiDAS. A cet effet la signature numérique dite avancée doit
répondre aux attentes suivante :
— Garantir que l’acte auquel elle s’attache ne pourra pas être modifié ;
— Être créée par des moyens sous le contrôle exclusif du signataire comme
son téléphone ou ordinateur personnel ;
Rédigé par Ing. Neyom Elvine Patricia 16
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
— Permettre d’identifier formellement le signataire ;
— Être liée à son signataire univoque( de manière unique et claire).
Impliquant les moyens cryptographique, elle est le plus souvent utilisée pour
les compromis de ventes, contrat d’ouverture de compte bancaire,etc.
— La signature électronique qualifiée
C’est le stade le plus poussé de sécurité en matière de signature électro-
[Link] le code civil seule cette signature est l’équivalent de la signature
manuscrite car elle exige non seulement que l’identité du signataire soit validée
en amont par une autorité de certification ou prestataire de service de certi-
fication électronique ; une clé du signataire un dispositif qualifié de créations
de signature électronique de plus elle est basée sur un certificat qualifié.
2.2.2 Comment fonctionne la signature numérique
La signature numérique repose en gros sur les opérations cryptographiques (cryp-
tographie à clé publique et les fonctions de hachages).
La cryptographie asymétrique ou cryptographie à clé publique
Définition
La cryptographie à clé publique : est l’art selon laquelle le message échangé entre
les internautes est crypté à l’aide d’une clé publique et décrypté à l’aide d’une clé
privée. Ainsi ces clé à savoir :
— La clé publique : elle sert non seulement à chiffrer un document mais aussi à
vérifier la signature d’un document ;
— La clé privée : cette clé permet de déchiffrer, et signer un document. Voici une
figure donnant une brève présentation de la définition de la cryptographie à
clef publique.
Figure 2.2 – Cryptographie asymétrique
Principe de fonctionnement de la cryptographie asymétrique
Deux individus habituellement appelés Alice et Bob veulent communiquer, Alice
possède sa paire de clé (une clé publique et une clé privée) et Bob possède aussi sa
paire de clé (une clé publique et une clef privée).Tout se passe comme suit :
— Alice et Bob s’échange chacun leur clé publique qui leur servira à chacun de
chiffrer le message à envoyer.
Rédigé par Ing. Neyom Elvine Patricia 17
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
Figure 2.3 – Échange de clé de Bob à Alice
— Alice veux envoyer un message à Bob, elle chiffre le message avec la clé publique
de Bob et lui à son tour pour lire le message il le déchiffre avec sa clé privée
comme représente sur cette figure :
Figure 2.4 – Envoi d’un message à Bob par Alice
Rédigé par Ing. Neyom Elvine Patricia 18
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
De manière générale voici une représentation du fonctionnement de la crypto-
graphie asymétrique :
Figure 2.5 – Schéma fonctionnel de la cryptographie asymétrique
Exemples d’algorithmes de chiffrement asymétrique
Il existe plusieurs algorithmes de chiffrements asymé[Link] algorithmes per-
mettent aussi de réaliser les signatures numériques parmi ceux-ci nous avons :
— L’algorithme RSA(Rivest Shamir Adelman) : c’est un algorithme basé sur le
choix des clés .Son principe de génération de clé est le suivant :
1. Prendre 2 nombres premiers très grands : p et q ;
2. Calculer n = p * q ;
3. Calculer z = φ(n)= (p-1) * (q-1) ;
4. Prendre un nombre e premier avec z : PGCD (z,e) = 1 avec 1 < e < z ;
5. Calculer d tel que d * e = 1 mod z ;
6. La clé publique correspond au couple : {e, n} ; elle va permettre de chiffrer
un message mais aussi de vérifier la signature d’un message ;
7. La clé privée correspond au couple : {d, n} ; elle va permettre de déchiffrer
un message mais aussi de signer un message.
— L’algorithme DSA(Gigital Signature Algorithme) : son principe de génération
de clé repose sur le problème de logarithme discrète et d’exponentiation mo-
dulaire ;
— L’algorithme ECDSA : c’est une version amélioré de DSA reposant sur les
courbes elliptique.
— Algorithme de chiffrement de Miller Rabin ;
— Algorithme de El Gamal ;
— Etc...
Les fonctions de hachage
Les fonctions de hachages associées aux algorithmes de chiffrement symétrique
et asymétrique permettent d’assurer une meilleure qualité de sécurité d’un système
d’information, ceci en offrant de multiples services. Communément appelé fonctions
à sens unique, les fonctions de hachages sont des fonctions à sens uniques et sans
collision, autrement dit elles permettent de créer un résumé du message de longueur
fixe encore appelé empreinte. Une fonction de hachage doit avoir les propriétés sui-
vantes : [9]
Rédigé par Ing. Neyom Elvine Patricia 19
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
— Étant donné M il est facile de calculer RM (M) ;
— Étant donné RM (M, il est impossible de trouver M ;
— Personne ne peut engendrer deux messages différents ayant le même résumé.
Ainsi les fonctions de hachages permettent d’assurer l’intégrité d’une donné[Link]
figure ci-dessous illustre le hachage d’un message :
Figure 2.6 – Fonction de hachage
Cette figure décris le hachage d’un message. On a un message en claire, sur ce
message on y applique la primitive hachage en utilisant la fonction de hachage
MD5 ; au sorti nous obtenons un condensat régulièrement appelé haché ou empreint
du message ; le condensat obtenu nous permettra d’assurer l’intégrité du message
ceci en établissant une comparaison entre le message haché au moyen de la même
fonction de hachage et le condensat obtenu. Il existe plusieurs types de fonctions de
hachages parmi ceci nous pouvons citer :
— MD5 (Ron Rivest,1992) :empreinte de 128 bits, il est peu sur ;
— SHA1 (Secure Hash Algoritm 1 ) :empreinte de 160 bits, il est encore très
utilisé ;
— SHA2 :empreinte de 224, 256, 384 ou 512 bits. Cette famille de fonctions de
hachage a été introduite en vue du remplacement de SHA-1.
— Etc...
Le principe de fonctionnement de la signature numérique
Le processus de signature numérique repose en gros sur 03 algorithmes à savoir
l’algorithme de génération de clé(il consiste à générer la paire de clé qui sera utilisé
tout au long de la signature numérique à savoir la clé publique et la clé privée), de
signature(qui va permettre de générer la signature quand elle est présentée avec le
message et la clé privée) et de vérification(responsable de la validation ou du rejet
des revendications de l’authenticité).
Ainsi, la signature numérique se passe en deux phases à savoir la phase de signature
et la phase de vérification.
— La phase de signature
Pour signer un message on commence par :
— Mettre en place une architecture de signature ; cette opération consiste à
générer une paire de clé du signataire(émetteur) et à transmettre sa clé
publique à son récepteur par un canal quelconque ;
Rédigé par Ing. Neyom Elvine Patricia 20
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
— Préparer le message à signer en générant une empreinte encore appelée
condensé du message que l’on souhaite envoyer ceci grâce au fonction
mathématique dite de hachage ; puis chiffrer l’empreinte ou le condensé
à l’aide de la clé privée de l’émetteur. Le couple message original et le
chiffré de l’empreinte constitue le message signé par l’émetteur, c’est ce
couple qui sera envoyé au récepteur(destinataire). Notons que l’empreinte
sert uniquement à vérifier l’intégrité du message source et donc il n’est
pas d’une obligation de hacher le message avant de le signer tout fois c’est
le cas idéal.
— La phase de vérification
Cette phase se passe du côté du destinataire ; une fois qu’il a reçu le message signer
c’est à dire le couple chiffré (empreinte et message en clair), il procède de la même
manière en générant l’empreinte du message clair en utilisant la même fonction
mathématique de hachage, ensuite il décrypte l’empreinte reçu et il compare les
deux hachés, s’il y a égalité alors le message n’a pas été altéré sinon c’est dire que
les deux hachés ne correspondent pas alors le message à été altéré durant. La figure
ci-dessous représente le fonctionnement global de la signature numérique.
Rédigé par Ing. Neyom Elvine Patricia 21
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
Figure 2.7 – Principe de fonctionnement de la signature numérique
[10]
2.2.3 Quels sont les normes, standards et cadres juridiques
de la signature
Les norme et standard pour la signature numérique
La signature numérique est régit par plusieurs normes qui sont :[Roger Frost. «
Des signatures électroniques authentifiées pour longtemps avec une norme ISO ».
In : ISO (20 février 2013).]
1. La norme ISO 14533 au niveau internationale
La norme ISO 14533 garantie l’interopérabilité des signatures électroniques
lorsque les documents qu’elle authentifie sont transformées et traités par des
systèmes d’informations diffé[Link] propose une solution en fournissant un
cadre pour le développement de systèmes et/ou de services grâce auxquels il
est possible d’authentifier des documents électroniques sur une période qui va
au-delà des limites des technologies dont nous disposons actuellement. Cette
norme présente un intérêt notamment pour les organisations et gouvernements
qui souhaitent ou ont pour tâche de conserver des documents électroniques à
long terme, en particulier les organisations désireuses d’archiver des messages
électroniques (comme ceux basés sur les protocoles EDI et XML), accords,
contrats, ou autres plus longtemps que ce qui est possible à l’heure [Link]
nouvelle norme est composée de deux parties à savoir l’ISO 14533-1 et 14533-2 :
— ISO 14533-1 : publié en 2012 et révisée en 2014, elle est intitulée : Proces-
sus, éléments d’informations et documents dans le commerces, industrie
et l’administration - Profils de signature à long terme - Partie 1 : Profils
de signature à long terme pour les signature électronique avancée CMS
(CAdES) (Cryptographc Message Syntax, Advanced Electronic Signa-
tures) ;
— ISO 14533-2 : publié en 2012, intitulée : Processus, éléments d’informa-
tions et documents dans le commerces, industrie et l’administration -
Profils de signature à long terme - Partie 2 : Profils de signature à long
terme pour les signature électronique avancée XML (XAdES) (XML Ad-
vanced Electronic Signatures).
Rédigé par Ing. Neyom Elvine Patricia 22
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
2. La norme eiDAS (Electronic Identification And trust Services) au niveau eu-
ropéen. Cette norme est entré en vigueur en 2014, et réellement applicable
depuis le 1er Juillet 2016 elle régit des normes juridiques pour l’authentifica-
tion électronique et entretien un service de confiance à l’égard de toutes les
transactions électroniques[Grégory Coste. Comment faire une signature élec-
tronique de document légale ? In : Appvizer (21 février 2018).].
3. Le Référentiel Général de Sécurité version 2 du 13 juin 2014 (RGS v2 2014)
Il définit les réglés que les administrations et collectivités doivent respecter
en matière de sécurité des systèmes d’informations, notamment pour la signa-
ture électronique d’une administration n’est valable que si l’on recourt à un
procédé "qui permette l’identification du signataire, garantisse le lien de la si-
gnature avec la décision à laquelle elle s’attache et assure l’intégrité de cette
décision"(article L212-3, Codes des relations entre le public et l’administra-
tion).
Pour la signature numérique le standard le plus recommandé pour les formats
est le standard technique de l’ETSI :
— Le format CAdES : c’est un ensemble d’extensions au standard de signature
Cryptographic Message Syntax (CMS) le rendant compatible avec la signature
électronique avancée, il permet de signer les documents comme Word, Excel,
txt, image et PDF en signature disjointe avec 2 fichiers ;
— Le format PAdES (PDF Advanced Electronic and Services) : i1 permet de
signer des documents PDF en signature jointe, avec un seul fichier ;
— Le format XAdES : c’est un ensemble d’extensions à la norme XML-DSig 2 qui
la rendent compatibles avec la signature électronique avancée. Pour spécifier
l’utilisation d’algorithmes de chiffrement ou échanges de clés, les interfaces
avec des modules cryptographiques, les certificats, les requêtes de certificats,
les conteneurs de diverses natures ; nous disposons du standard PKCS (Public-
Key Cryptography Standards).
Le standard PKCS douze standards (de PKCS#1 à PKCS#12), c’est l’exemple
du PKCS#6 qui décrit les certificats. C’est un sur-ensemble des certificats
[Link] PKCS les plus utilisés sont PKCS#7 qui décrit les conteneurs de
données. Il peut s’agir de données signées, chiffrées, signées et chiffrées ou
bien d’une liste de certificats d’autorités de certification, etc ; et le PKCS#12,
également connu sous le nom de PFX, il décrit les mécanismes qui permettent
de garantir l’intégrité et la confidentialité de données comme des clés privées,
des certificats d’utilisateurs ou d’autorités de certification.
— Etc.
Le cadre juridique et la signature numérique au Cameroun
Au Cameroun de nombreuse loi on été établis afin de spécifier en détail le fonc-
tionnement d’une signature électronique mais aussi son application, pour éviter tout
faux et usage de faux. A cet effet nous avons entre autre :
— L’article 21 de la loi n 2010/012 du 21 décembre 2010 relative à la cybersécurité
et la cybercriminalité au Cameroun dispose que «toute personne désirant ap-
poser sa signature électronique sur un document peut créer cette signature par
un dispositif fiable dont les caractéristiques techniques sont fixées par un texte
du ministre chargé des Télécommunications» ; l’arrêté numéro 00000014/MIN-
POSTEL du 27 juin 2012 fixant les critères de qualification des certificats et
Rédigé par Ing. Neyom Elvine Patricia 23
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
les caractéristiques techniques du dispositif de création des signatures électro-
niques.
— L’article 4 de la loi n 2010/012 du 21 décembre 2010 relative à la cybersécurité
et la cybercriminalité au Cameroun définit la signature électronique (propre-
ment dite) comme la «signature obtenue par un algorithme de chiffrement
asymétrique permettant d’authentifier l’émetteur d’un message et d’en vérifier
l’intégrité ».
— L’article 83 de l’acte uniforme OHADA portant droit commercial général pré-
sente comme composants techniques de la signature électronique les éléments
suivants : un logiciel de création de signature et un logiciel de vérification de
signature d’une part, et un certificat électronique, authentifiant le signataire,
produit par un prestataire de services de certification électronique d’autre part.
Pour ce qui est des logiciels de création et de vérification de signature il n’est
point question de l’utilisation exclusive de certains logiciels, mais plutôt de
tout logiciel répondant au besoin sollicité, et remplissant de manière générale
les conditions en matière de sécurité informatique.
— L’acte uniforme OHADA portant sur le droit commercial général, consacre
en son article 82 paragraphe 2 l’égalité entre la signature manuscrite et la
signature électronique, moyennant le respect d’un « procédé technique fiable,
qui garantit, à tout moment, l’origine du document sous forme électronique et
son intégrité au cours des traitements et des transmissions électroniques ».[11]
— ETC.
2.2.4 Quels sont les différents outils permettant de produire
une signature numérique
Il existe une panoplie d’outils permettant d’assurer la signature numérique selon
qu’ils soient payant ou pas ses outils se diffèrent.
Les outils de signature numérique version libre
Comme on le dit libre et open source, ceux sont en effet des outils de signature
numérique permettant à tout utilisateur de signer une ou plusieurs données ceci
sans pour autant engendré des frais d’utilisation. Pour certain outil le code source
est disponible et peut être modifié en fonction du besoin de ce dernier. Parmi ces
outils nous avons entre autre :
— OpenSSL : c’est une boite à outils qui comporte deux bibliothèques « libcrypto
» et « libssl ». Elles implémentent respectivement une variété d’algorithmes
de la cryptographie(Chiffrement symétrique/asymétrique, hachage, signature
numérique, certificats, . . . ) et le protocole de communication SSL/TLS. Elle
offre également une interface en ligne de commande qui s’appelle « openssl
».OpenSSL donne accès à une bibliothèque de fonctionnalité écrite en C permet
de réaliser des applications client/serveur sécurisées s’appuyant sur le protocole
SSL/TSL ; Un ensemble d’exécutables en ligne de commande permettant : [12]
— La création de clés RSA, DSA (pour les signatures) ;
— La création de certificat X509 (identification) ;
— Le calcul d’empreinte (MD5, SHA, RIPEMD160, . . . ) ;
— Le chiffrement et le déchiffrement (RSA, DES, IDEA, RC2, RC4, Blow-
fish, . . . ) ;
Rédigé par Ing. Neyom Elvine Patricia 24
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
— La réalisation de de tests de clients et serveurs SSL/TSL ;
— La signature et le chiffrement de courriers (S/MIME).
En générale, OpenSSL est installé par défaut sur les système d’exploitation
Linux..
— Kleopatra : c’est un gestionnaire de certificats et une interface graphique pour
GnuPG. Il vous permet de créer des certificats, de signer et de chiffrer vos
fichiers en quelques clics. Compte tenu de ses capacités, cet outil est assez
simple à utiliser et à comprendre. Il cache toutes les complexités inhérentes
aux opérations telles que la signature et le cryptage.[13]
— LinSign : C’est une application de signature électronique de documents, en
open source Spécialement conçue pour signer électroniquement des documents,
des contrats et des données sensibles, LinSign garantit l’authentification du si-
gnataire, l’intégrité, la non-répudiation et l’invariance sémantique des données
signées. LinSign apporte une solution simple à mettre en œuvre qui s’adapte
à de nombreux formats de documents à signer (PDF, OpenDocument, XML,
etc.), de signatures et supporte divers types de magasins de certificats (PKCS
#12, carte à puce, token USB, navigateur web).[14]
Les outils de signature numérique version payante
Ces outils donne la possibilité à tous utilisateur de signer une donnée quelconque,
en retour en fonction de la politique de vente de l’outil des frais d’utilisation seront
réclamés aux [Link] ces outils nous pouvons citer :
— Acrobat XI
Il permet de signer les fichiers numérique de type PDF ; il est compatible avec
tous les logiciels de la suite [Link] période d’essai est gratuit d’une journée
de 30 jours.
— DocuSign
Très complète, la plateforme s’intègre aux principaux systèmes utilisés par
les entreprises, cette plateforme est compatible avec de nombreux formats de
fichiers à savoir PDF, Doc(x), et bien d’autre. L’outil DocuSign est aussi dis-
ponible aux forfaits immobiliers. Il y a donc la formule Real Estate Starter qui
est à 9 euros par mois et par utilisateur et celle Real Estate est à 23 euros par
mois et par utilisateur. Enfin, il y a les forfaits API dont la formule API Essen-
tiel est à 50 euros par mois, l’API intermédiaire à 282 euros par mois et l’API
avancé à 480 euros par mois. Néanmoins, une version d’essai gratuite et sans
engagement offre à tous la possibilité d’effectuer des transactions ponctuelles
pendant 30 jours.[15]
— Yousing
Concurrent français de DocuSign, Yousign coche toutes les cases de la signature
avancée et qualifiée. Prestataire de confiance validé par l’ANSSI, certifiée par
la réglementation eIDAS et conforme au RGPD, la plateforme s’adresse aux
(micro)entreprises et libéraux travaillant quotidiennement avec des contrats
juridiquement réglementés. Yousign est une solution payante ; pour un forfait
API, il faudra au moins rajouter 75 euros par mois. Une version d’essai de 30
jours permet d’en tester les fonctionnalités avant de s’engager.
— Signaturit
Comme tous les outils de signature électronique, Signaturit vous permet éga-
lement de signer tous vos documents de manière facile et rapide, et ce depuis
Rédigé par Ing. Neyom Elvine Patricia 25
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
n’importe quel support. En plus de cela, Signaturit vous permet d’ajouter le
nombre de personnes que vous voulez à vos procédures de signature et d’au-
tomatiser vos envois récurrents. De plus, vous pouvez stocker vos documents
signés, avoir accès à un historique de transactions puis envoyer des rappels
lorsque vos collaborateurs tardent à [Link] pouvez accéder à l’outil Si-
gnaturit en payant 30 euros par mois et par utilisateur pour un forfait business
ou 50 euros par mois et par utilisateur pour un forfait business+.
— Etc.
2.2.5 Quels sont ses avantages
L’on applique la signature numérique sur plusieurs données informatique :
— Les documents électroniques ;
— les codes sources ;
— Les documents word ;
— Les documents pdf ;
— Etc.
Ainsi l’application de la signature numérique sur une donnée présente de nombreuses
avantages :
— Assurer la non-répudiation ;
— Assurer l’authentification ;
— Assurer l’authenticité ;
— Assurer l’intégrité ;
— Faciliter l’envoi et l’échange des documents ;
— Accélérer la procédure de signature ;
— Suivre en temps réel l’avancement des dossiers ;
— Sécuriser les données dématérialisées ;
— Etc.
En ce qui concerne les signatures numériques et le niveau de sécurité apporté en
plus, nous pouvons utilisé comme mentionné sur la figure 2.9 les PKI .
2.2.6 Les PKI(Public Keys Infrastructure)
Définition
La PKI ou Infrastructures de Gestion de Clés (IGC), est un système de gestion de
clé publique qui permet de gérer des listes important de clés publiques et d’en assurer
la fiabilité, pour des entités généralement dans un réseau. Dans son fonctionnement
une PKI fourni quatre services principaux :
— Fabrication de bi-clés ;
— Certification de clé publique et publication de certificats ;
— Révocation de certificats ;
— Gestion des certification.
Rédigé par Ing. Neyom Elvine Patricia 26
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
. Une infrastructure à clé publique assiste les utilisateurs pour obtenir les clés pu-
bliques leur permettant d’effectuer des opérations cryptographiques tel que le chiffre-
ment et la signature des données afin d’assurer la confidentialité, la non-répudiation,
l’authenticité, et l’intégrité. Communément appelé autorité de confiance, la PKI per-
met de garantir le lien entre la clé publique et l’identité du signataire engageant ainsi
leur responsabilité.Elle permet de créer et délivrer les certificats numérique qui sont
des fichiers de données à la structure normalisée X.509 ou OpenPGP renferment des
informations descriptives concernant notamment le propriétaire d’une clé publique
et l’usage de cette clé. la figure ci-dessous représente la structure minimale d’un
certificat numérique au format X.509 est la suivante :
Figure 2.8 – Structure minimal d’un certificat numérique[signature électronique
Les principaux composants d’une PKI
L’infrastructure de gestions de clé est une autorité de confiance constitué de plu-
sieurs entités organisées de manière à ce que chaque entité assure une tache bien
pré[Link] sont :
1. L’Autorité de certification Autorité de Certification en abrégé (AC) est l’en-
tité qui généré des certificats. C’est une autorité morale qui définit les règles
d’entrées des ressources et des individus ; dans la PKI elle garantit que les cer-
tificats qu’elle délivre sont conformes à sa Politique de Certification qui définit
à la fois les types de certificats qu’elle émet, à qui elle peut les délivrer, ainsi
que les procédures de production et de gestion associées. L’AC a aussi pour
rôle la mise à jour de la liste des certificats qu’il a signé fin de connaitre la
date de validité de ses certificats.
2. L’Autorité d’enregistrement : en Abrégé AE, l’autorité d’enregistrement est
une entité chargée de vérifier la demande d’enregistrement d’un nouveau uti-
lisateur dans l’infrastructure ; ainsi elle permet de recueillir les demandes de
certificats et de contrôler l’identité de la personne ainsi que les critères d’at-
tribution. Elle dépend au moins d’une AC et effectue tout ou une partie des
fonctions administratives telles que :
— Vérifier l’identité du demandeur en obtenant les pièces justificatives cor-
respondant à la Politique de Certification sous laquelle le certificat doit
être émis ;
Rédigé par Ing. Neyom Elvine Patricia 27
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
— Valider que le demandeur est habilité à obtenir les droits ou qualités qui
seront mentionnés dans le certificat ;
— Obtenir la clé publique du demandeur ;
— Vérifier que le demandeur est en possession de la clé privée associée à la
clé publique ;
— Soumettre les demandes de génération de certificat à l’autorité de certi-
fication émettrice du certificat ;
— Recevoir et traiter les demandes de révocation, de suspension ou de ré-
activation des certificats
3. Un annuaire : Il est indépendant de la PKI cependant essentiel pour le fonc-
tionnement de cette dernière ; elle permet de gérer le stockage des certificats
révoquées et par la même occasion, les certificats en cours de validité afin
d’avoir un accès rapide à ces certificats. Pour un bon fonctionnement de la
PKI, l’annuaire doit accepter le protocol X.509 pour le stockage des certificats
révoqués et le protocole LDAP.
4. L’Autorité de validation : Avant d’utiliser un certificat, et dans le cas de la
signature électronique, la clé publique qu’il contient, il est nécessaire de vérifier
sa validité. Il s’agit d’un processus comprenant des opérations visant entre
autres à contrôler :
— L’intégrité du certificat,
— Sa validité,
— Sa politique d’usage.
5. Autorité d’horodatage : en abrégé(AH, l’autorité d’horodatage peut être une
composante d’une PKI permet d’attester qu’une donnée existe à un moment
précis en assurant l’association de la donnée et du temps, et en signant une
structure (jeton d’horodatage) permettant cette association. Une Autorité
d’Horodatage peut faire fonctionner plusieurs unités d’horodatage chacune
ayant son certificat et sa clé privée.
6. Service de publication : il permet de diffuser les certificats émis par l’AC à
l’ensemble des utilisateurs. Toute signature effectuée avec un certificat après
sa date de révocation doit être considérée comme invalide.
La gestion des clefs par la PKI
La gestion des clés de l’infrastructure doit être rigoureuse, à cet effet l’échange
des clés doit être fait avec la plus grande prudence car il représente le point de vul-
nérabilité de tout le système. La gestion des clés elle même repose sur les opérations
suivantes :
— La génération : les clés doivent être générées de manière aléatoirement, de
manière à ce qu’elle soient non prédictibles.
— La distribution : c’est l’action de déplacer une clef de cryptage.
— La suppression : elle intervient quand la clef à atteint sa fin de validité ou
lorsqu’un doute subsiste sur sa confidentialité.
— L’archivage : elle permet de conserver une copie des clefs même si elles ne sont
plus utilisées.
— Le recouvrement : c’est une procédure délicate qui permet de retrouver la clé
privée d’un client. Toutes ces étapes doivent être minutieusement effectuées et
contrôlées pour que la PKI ne soit pas sujette à diverses attaques.
Rédigé par Ing. Neyom Elvine Patricia 28
2.2. C’EST QUOI LA SIGNATURE NUMÉRIQUE
principe de fonctionnement de la PKI
Dans une infrastructure de gestions de clé des certificats sont générés, ces certificat
sont de plusieurs types à savoir les certificat de messagerie (permet de crypter et de
signer ses e-mails) ; les certificats d’authentification IPSec pour un accès distant par
VPN ; les certificats d’authentification Internet pour les pages Web sécurisées ; les
certificats de cryptage des données avec EFS ; les certificats de signature de logiciel.
Pour obtenir un certificat numérique il faut suivre la procédure suivante :
— Demande d’un certificat auprès de l’autorité d’enregistrement par l’utilisateur ;
— Génération de la bi-clé qui peut être réalisée directement par l’utilisateur, par
l’autorité d’enregistrement (avec généralement la remise d’un support phy-
sique) ou par l’autorité de certification ;
— Vérification de l’identité de l’utilisateur par l’autorité d’enregistrement ;
— Transmission de la demande à l’autorité de certification ;
— Génération du certificat par l’autorité de certification ;
— Transmission du certificat à l’autorité d’enregistrement afin d’être remis à
l’utilisateur ;
— Remise du certificat à l’utilisateur.
[16] voici une image représentant de manière générale le processus d’obtention d’un
certificat au près de la PKI. Sur notre figure nous avons :
Figure 2.9 – Processus d’obtention d’un certificat numérique
1 : Un demandeur soumet une requête d’obtention d’un certificat auprès de l’autorité
d’enregistrement ceci en envoyant un certain nombre d’information lui concernant ;
2 : L’autorité d’enregistrement reçoit la requête de l’utilisateur ; en interne il fais des
vérifications sur l’identité de l’utilisateur et un certain nombre d’information ;
3 : L’autorité d’enregistrement à son tour se charge d’envoyer les informations du
demandeur à l’autorité de certification ;
4 : L’autorité de certification lui à son tour génère le certificat du demandeur et
l’envoie à l’autorité d’horodatage et de validation ;
A : L’autorité d’horodatage se charge de dater le certificat en renseignant la date
d’expiration du certificat ;
B : L’autorité de validation vérifie la validité de la clé ; 5 : Le certificat étant daté,
vérifié et validé, il est renvoyé à validation à l’autorité de certificat qui le renvoie )
l’autorité d’enregistrement ;
Rédigé par Ing. Neyom Elvine Patricia 29
2.3. QU’EST-CE QU’UN DOCUMENT ÉLECTRONIQUE
6 : L’autorité d’enregistrement lui transmet le certificat généré au demandeur.
Le cadre juridique des certificats au Cameroun
En ce qui concerne le certificat électronique au Cameroun, l’article 84 de l’acte
uniforme OHADA portant droit commercial général la définit comme « (. . . ) une
attestation électronique qui lie des données afférentes à la vérification de signature à
une personne et confirme l’identité de cette personne ». Le même article poursuit en
précisant le minimum de mentions mises en exergue sur un certificat électronique,
telles : le nom du titulaire du certificat ; la clé cryptographique publique du titu-
laire ; la période de validité du certificat ; un numéro de série unique ; la signature
électronique du prestataire de services de certification électronique (pour l’instant le
seul prestataire de certification électronique au Cameroun c’est l’ANTIC). L’agence
nationale des technologies de l’information et de la communication (ANTIC), précise
que le certificat électronique est un fichier numérique infalsifiable, contenant les in-
formations sur le propriétaire, l’autorité de certification l’ayant émis, l’usage que l’on
peut en faire, la période de validité. Ainsi selon l’arrêté n 00000014/MINPOSTEL
du 27 juin 2012 fixant les critères de qualification des certificats et les caractéris-
tiques techniques du dispositif de création des signatures électroniques utiliser un
dispositif comprenant :
— D’une part, une paire de clés composée d’une clé privée pour la création de la
signature et d’une clé publique pour la vérification de la signature ;
— D’autre part, un mot de passe ou tout autre procédé de sécurisation
2.3 Qu’est-ce qu’un document électronique
2.3.1 Définition
Un document électronique est une donnée informatique,une forme de représen-
tation de l’information consultable à l’écran d’un appareil électronique.
2.3.2 Types de formats de documents électroniques
Au-cours d’une communication les données échangées peuvent être sous format :
— Format texte : représente le texte brut qui peut être utilisé pour représenter
l’information (sans mise en forme). Exemple : les fichiers html, xml, xhtml,
css ;
— Format PDF pour Portable Document Format ; ce type de format permet la
diffusion et l’archivage ;
— Etc.
2.4 Quels intérêts à protéger les documents élec-
troniques échangés
Au cour d’une échange entre deux individus A et B, les documents électronique
échangés entre ses individus sont sujets de nombreux attaque pouvant provoquer une
incompréhension entre les deux interlocuteurs. Ces documents échangés peuvent être
Rédigé par Ing. Neyom Elvine Patricia 30
2.5. QUELS IMPORTANCE Y A T-IL À APPLIQUER UNE
SIGNATURE NUMÉRIQUE SUR UN DOCUMENT ÉLECTRONIQUES
capturer par un individus mal-intentionné ;ce dernier peut donc falsifier le document,
changer le document par un autre [Link] pour éviter ce type d’attaque et
assurer la sécurité des documents électroniques l’administrateur de sécurité se doit
de mettre en place un mécanisme de sécurité permettant d’assurer :
— l’intégrité du document ;
— l’authenticité du document ;
— la confidentialité du document ;
— Etc.
2.5 Quels importance y a t-il à appliquer une si-
gnature numérique sur un document électro-
niques
Il y a plus d’avantage à appliquer une signature numérique sur un document
é[Link] effet la signature numérique imposée sur un document électronique
permet d’apporter un niveau supplémentaire de sécurité et d’intégrité sur le do-
cument, contrairement à la signature numérisé ou par griffe qui elle est une simple
image de votre signature manuscrite collée dans un document word. voici un exemple
des signatures numérisées (signatures manuscrite scannées)
Figure 2.10 – Exemple des signature électronique
De plus, une signature numérique imposée sur un document permet de pallier aux
différents problèmes de sécurité qui peuvent survenir l’or d’une échange entre deux
entités. Pour mieux présenter l’utilité d’une signature numérique sur un document
électronique nous allons présenter deux scénarios entre Amina et Issa s’échangeant
un document.
— Scénario 1 (Utilisation de la signature numérisée) : Amina et Issa veulent signer
un contrat pour cela Amina doit imposer sa signature pour donner son accord.
Pour signer le document et l’envoyer à Issa, Amina imprime le contrat impose
sa signature manuscrite, numérise le document signé en le scannant puis le
renvoi à Bob. Au-cours de la transaction, Jean intercepte le document et se
rend compte que c’est un contrat et décide de modifier un certain nombre de
chose il capture la signature de Alice modifie le document à sa guise et appose
la signature de Amina qu’il avait capturé puis envois le document à Issa.
Issa reçois le document modifié par Jean, toutefois l’on constate qu’il y a eu
altération du document par contre Bob ne peut le savoir, vue que c’est la
signature de Amina qui est sur le document et donc il est impossible à Issa
de vérifier l’intégrité du document ou même l’authenticité de ce document ce
qui pose un grand problèmes. De plus Alice ne peux justifier qu’elle n’est pas
l’auteur de ces modifications.
Rédigé par Ing. Neyom Elvine Patricia 31
2.5. QUELS IMPORTANCE Y A T-IL À APPLIQUER UNE
SIGNATURE NUMÉRIQUE SUR UN DOCUMENT ÉLECTRONIQUES
Figure 2.11 – Échange de document entre Amina et Issa en utilisant la signature
numérisée
— Scénario 2 (Utilisation de la signature numérique) : Alice et Bob veulent signer
un contrat pour cela Alice doit imposer sa signature pour donner son accord.
Figure 2.12 – Échange entre Alice et Bob en utilisant la signature numérique
Alice envois une donnée à Bob, avant cela Alice signe la donnée électronique
en utilisant la signature numérique ceci sans tout fois avoir besoin d’imprimer
le document et le [Link] la signature de la données Alice utilise sa clé
privée qui a été généré ainsi le document envoyé à Bob peut être vérifié sans
contrainte. Si Jean(personne malveillant) intercepte la donnée et la modifie, il
est possible pour Bob de vérifier l’intégrité de la donnée via les fonctions de
hachage mais aussi d’assurer l’authenticité du document et de prouver que le
document à bien et bel été signé par Alice.
Rédigé par Ing. Neyom Elvine Patricia 32
2.5. QUELS IMPORTANCE Y A T-IL À APPLIQUER UNE
SIGNATURE NUMÉRIQUE SUR UN DOCUMENT ÉLECTRONIQUES
Conclusion
Parvenu au terme de ce chapitre il était question pour nous de présenter les
généralité sur la signature numérique, la sécurisation des document et code sources
au moyens de la signature numérique. Il en ressort que la signature numérique peut
être appliqué tant bien sur les codes source que sur les documents électronique ceci
dans le but d’assurer l’intégrité, l’authenticité et la non-répudiation. Nous pouvons
noter que la signature numérique reconnue valide (qualifié) d’après l’EiDas repose sur
les opération cryptographique(hachage, chiffrement et déchiffrement à clé publique) ;
et les infrastructure de gestion à clé publique.
Rédigé par Ing. Neyom Elvine Patricia 33
Chapitre 3
Cahier de charge
Introduction
Le cahier de charge est un outil d’analyse, permettant de décrire de manière pré-
cis le projet dont il est question. En effet il fourni les informations sur les exigences du
projet, pour la plupart il permet d’avoir une estimation du coût du projet,mais aussi
d’avoir en fonction de la méthode choisi un chronogramme des différentes activités à
effectuer pour parvenir au terme du projet. Le contenu d’un cahier de charge dépend
du type de cahier de charge, dans notre cas c’est un cahier de charge destiné à l’en-
treprise car dans ce cahier de charge nous allons présenter le contexte de la structure,
résencer les problèmes et trouver solution qui pourra pallier le problème,présenter
l’objectif du projet, présenter les exigences face à la solution, présenter notre chro-
nogramme d’activité et pour finir présenter le coup d’estimation du projet.
3.1 Contexte et définition du problème
La CAMTEL dispose d’une application open source (e-courrier), permettant de
gérer les courriers électroniques et les différentes échanges entre ses employés. Cette
application est accessible aux utilisateurs par le biais d’un navigateur et d’un compte
utilisateur valide. Pour faciliter les échanges et gagner en temps, la CAMTEL offre
la possibilité aux utilisateurs de signer leur documents électronique par griffe via la
plateforme. Ainsi tous les employés de la CAMTEL disposant d’un compte valide
peuvent signer des documents électroniques et les envoyer via la plateforme. Bien que
bonne, cette solution de signature des documents au moyen d’une griffe(signature
manuscrite scanner) s’avère présenter de nombreux limites :
— L’impossibilité de vérifier l’authenticité d’un document ;
— L’impossibilité de vérifier l’intégrité d’un document en cas de falsification ;
— En cas d’usurpation de compte, impossibilité de prouver l’identité d’un utili-
sateur ;
3.2 Objectifs du projet
Afin d’apporter un niveau de sécurité plus élever concernant les documents élec-
troniques mais aussi de pallier aux limites que pose l’utilisation de la signature par
griffe, nous avons opté concevoir et mettre sur pied un module de signature numé-
34
3.3. ÉTUDE DE FAISABILITÉ
rique des documents. A cet effet notre module doit nous permettre de répondre aux
objectifs suivants :
— Générer une paire de clé ;
— Chiffrer un document ;
— Singer un document ;
— Vérifier la signature d’un document ;
— Déchiffrer un document ;
— Envoyer un document ;
Dont les principales fonctionnalités sont :
1. Signer un document ;
2. Vérifier un document.
3.3 Étude de faisabilité
Notre projet, intitulé « Conception et déploiement d’une solution de sécurisation
des échanges de documents électroniques au moyen de la signature numérique » est
issu d’une réflexion murie portant sur le comment assurer la sécurité des documents
électroniques échangés entre les employés au sein de la CAMTEL. Toute fois, bien
qu’ils existent de nombreux outils de signature numérique tels que Docsing, Adobe
Reader ; etc, ceux-ci ne sont pas tous accessibles et pour la plupart requière une
certaine somme d’utilisation. De plus, remarquons que la plupart des applications
utilisées à la CAMTEL sont open source. Bien que souvent préalablement conçu
par d’autre développeur, ces applications sont modifiées et adaptées au contexte de
la CAMTEL ; c’est le cas du e-courrier. Ces différentes raisons nous encourage à
concevoir un module de signature libre d’utilisation pour la CAMTEL.
L’utilisation de cette solution, permettra aux employés de la CAMTEL de :
— Faciliter les transactions des documents administratifs des différents employés ;
— Permettre aux employés d’envoyer des documents signés ceci sans avoir besoin
de s’inquiéter sur l’altération de la donnée en question ;
— Avoir son propre outil de signature numérique .
Ce projet vient contribué à la sécurité du système d’information et de l’authentifi-
cation des documents numériques au sein de la CAMTEL ; chose qui de nos jours
est très capital au regard de l’ampleur que prend l’économie numérique et la déma-
térialisation des données. Au regard des différents avantages qu’apporte ce projet
tant bien pour l’entreprise, que pour ses employés,nous pouvont conclure que notre
solution de signature numérique est logiquement et techniquement faisable.
3.4 Exigences spécifiques
3.4.1 Exigences fonctionnelles
Il est question pour nous dans cette section de définir les besoins fonctionnelles de
notre système de signature numérique. Ces exigences spécifient les différents actions
ou comportements d’entrée ou sortie du systè[Link] le système doit permettre :
1. A l’administrateur de :
Rédigé par Ing. Neyom Elvine Patricia 35
3.4. EXIGENCES SPÉCIFIQUES
— Se faire authentifier
Pour se faire l’utilisateur doit entrer son login et son mot de passe afin
d’accéder au fonctionnalité du système. Authentifier un utilisateur permet
de sécuriser l’application et de restreint les accès ;
— Gérer les comptes utilisateurs
Un administrateur après son authentification à le droit de créer des
comptes utilisateurs, de les supprimer dans la base de donnée ;
— Générer une paire de clé
l’administrateur peut générer une paire de clé lui permettant d’effectuer
les différentes opérations tel que signer, chiffrer, et bien d’autre ;
— Signer un document
Un administrateur peut signer un document au moyen de sa clé privée
ceci afin de le sécuriser ;
— Vérifier la signature d’un document
L’administrateur peut vérifier la signature d’un document électronique
au moyen de la clé public du destinataire ceci afin de s’assurer que le
document n’a pas été altéré, et qu’il est authentique ;
— Chiffrer et déchiffrer un document électronique
L’administrateur peut chiffrer ou déchiffrer un document ceci au moyen
de la clé public du destinataire en cas de chiffrement ou de sa clé privée
en cas de déchiffrement avec pour objectif d’empêcher tout personne non-
autorisée à prendre connaissance du contenu du document.
2. A l’utilisateur
il doit permettre à l’utilisateur de :
— Se faire authentifier
— Générer une paire de clé ;
— Signer un document électronique au moyen de sa clé privée ;
— Vérifier la signature d’un document au moyen de la clé public du desti-
nataire ;
— Chiffrer et déchiffrer un document.
3.4.2 Exigences non-fonctionnelles
Nous entendons par exigences(besoin) non-fonctionnel, les besoins qui caracté-
risent le système. En réalité, ce sont des besoins en matière de performance, de type
de matériel ou le type de conception. Ces besoins peuvent concerner les contraintes
d’implémentation (langages de programmation, types de SGBD, de Système d’ex-
ploitation...).
— Le système doit être facile à utiliser ;
— Le système doit garantir un temps de réponse très court ;
— Le systèmes doit fonctionner suivant l’architecture client-serveur (trois ni-
veaux) ;
— Le système doit être évolutif ; Le module de signature numérique devra aussi
être capable de
— Tourne en réseaux pour qu’il soit accessible de tous
Rédigé par Ing. Neyom Elvine Patricia 36
3.5. CHRONOGRAMME D’ACTIVITÉS
3.4.3 Méthode adoptée
Pour concevoir et implémenter notre projet, il est important comme toute dé-
marche d’ingénierie de suivre une méthodologie. Pour mener à bien ce travail, nous
avons opter pour la méthode agile [Link] est le cadre de développement agile
le plus populaire car il est relativement simple à mettre en œuvre ; en effet c’est une
méthodologie de gestion de projet qui propose des principes et des processus pour
améliorer la livraison. Dans le domaine du développement logiciel, la méthodologie
Scrum est l’un des cadres les plus populaires et les plus simples pour mettre en
pratique les principes d’Agil[17]
L’objectif de Scrum est d’améliorer la communication, le travail d’équipe et la
vitesse de développement. Si vous entendez les gens parler de sprints, de mêlées, de
backlogs et de brûlures, c’est probablement de Scrum, ou d’un dérivé de [Link]
méthodes Agile placent les besoins du client au centre des priorités du projet. Elles
offrent une plus grande flexibilité et une meilleure visibilité dans la gestion du projet,
ce qui permet à l’équipe d’être plus réactive aux attentes du client.
3.5 Chronogramme d’activités
Pour mener à bien notre projet nous avons reparti les différents activités à effec-
tuer comme suit :
Figure 3.1 – hronogramme des activités suivant le diagramme de GANT
3.6 Budgétisation
La budgétisation consiste à définir le coût du projet. En réalité définir le coût
exacte d’un projet n’est pas souvent évident ; pour la plupart du temps plus com-
plexe, car il faut prendre en compte plusieurs paramètres tels que les imprévus,
les cas d’incidents ; et bien d’autre. Pour ce projet nous allons estimer le coût en
fonction des ressources à utiliser à savoir les ressources matériels, et humains.
— Ressources matériels
1. Un serveur de base de donnée où sera notre base de données ;
Rédigé par Ing. Neyom Elvine Patricia 37
3.6. BUDGÉTISATION
2. Un serveur web où sera hébergé notre application ;
3. Un poste de contrôle pour l’administrateur (HP core i5, 8Go de RAM,
1To de stockage système) .
— Ressources humaines
nous aurons besoin :
1. Un ingénieurs de conception en cryptographie et sécurité informatique ;
2. Un ingénieurs de conception en génie logiciel ;
3. Un ingénieur de conception en réseau vue que l’application est sensé tour-
ner dans un réseau ;
4. Un ingénieur de travaux en génie logiciel.
— Ressource logiciels
Pour assurer la sécurité de notre serveur web l’on aura besoin d’un certificat
SSL/TLS de et donc faire appel à un autorité de certification
En fonction de ses besoins l’on peut estimer un coût à ce projet.
— Pour un hébergement avec dotation d’un serveur personnel
Table 3.1 – Estimation du budget en cas d’achat des serveurs
Spécification Quantité Prix unitaire Totaux en FCF
Ingénieur de 1 300000 FCF 300000 FCF
conception en
cryptographie
sécurité infor-
matique
Ingénieur de 1 3000000 FCF 300000 FCF
conception en
génie logiciel
Ingénieur de 1 3000000 FCF 300000 FCF
conception en
réseau
Ingénieur de tra- 1 1100000 FCF 110000 FCF
vaux en génie lo-
giciel
Serveur(web, 2 640000 FCF 1 280 000 FCF
bd)
Ordinateur 1 3500000 FCF 350000 FCF
d’administration
Total 2 640 000 FCF
— Pour un hébergement en ligne, on aura :
Rédigé par Ing. Neyom Elvine Patricia 38
3.6. BUDGÉTISATION
Table 3.2 – Estimation du budget en cas d’hébergement en ligne
Spécification Quantité Prix unitair Totaux en FCF
Ingénieur de 1 300000 FCF 300000 FCF
conception en
cryptographie
sécurité infor-
matique
Ingénieur de 1 3000000 FCF 300000 FCF
conception en
génie logiciel
Ingénieur de 1 3000000 FCF 300000 FCF
conception en
réseau
Ingénieur de tra- 1 1100000 FCF 110000 FCF
vaux en génie lo-
giciel
Hébergeur web 1 4554,98 FCF 4554,98 FCF
avec certificat
SSL inclut par
mois
Ordinateur 1 350000 FCF 350000 FCF
d’administration
Total 1 364 554,98 FCF
Conclusion
Parvenu au terme de ce chapitre, il était question pour nous de présenter notre
cahier de charge ; dans cette partie nous avons rappelé le contexte de notre pro-
jet ; rappelé l’objectif du projet ; les exigence pour la réalisation de ce projet ; le
chronogramme d’activité lié au projet et la budgétisation.
Rédigé par Ing. Neyom Elvine Patricia 39
Chapitre 4
Conception, Modélisation et
Implémentation
Introduction
Pour une réalisation à désirer, il est important de mettre l’accès sur les moindres
détails. Ainsi implémenter une solution requière à priori une conception et modé-
lisation de la [Link] conception, la modélisation ainsi que l’implémentation se
trouvant au cœur du travail d’ingénieur, permettent de définir plus explicitement
les divers aspects de son systè[Link] aborderons tout au long de ce chapitre la
conception, la modélisation de façon bien détaillé de notre système où nous utili-
serons le standard Unified Modeling Language (UML), mais aussi l’implémentation
ou nous allons faire mention des différentes technologies utilisées.
4.1 Conception et modélisation
Dans cette section nous illustrons les différentes architectures et diagrammes uti-
lisé[Link] mentionné plus haut dans l’introduction, nous allons utiliser le standard
de modélisation UML, pour modéliser notre système de signature numérique.
4.1.1 Schémas du contexte du domaine d’étude
40
4.1. CONCEPTION ET MODÉLISATION
Figure 4.1 – Architecture existante
4.1.2 Approche conceptuelle de la solution
Pour concevoir notre solution nous avons opté pour l’architecture suivante
Figure 4.2 – Architecture réseau de la solution
Rédigé par Ing. Neyom Elvine Patricia 41
4.1. CONCEPTION ET MODÉLISATION
4.1.3 Le langage UML
UML pour Unifie Modeling Language, est un langage de modélisation orienté
objet. Étant graphique, UML permet de visualiser le système réalisé ; de représenter
l’architecture et le fonctionnement des systèmes informatiques complexes en tenant
compte des relations entre les concepts utilisés et l’implémentation qui en découle ;
ceci grâce à un ensemble de diagrammes très [Link], il est très utilisé dans
les projets de développement informatiques pour la représentation visuelle des objets,
des états et des processus dans un logiciel ou un système.[18] La version UML 2 met
à la disposition de ses développeurs 14 types de diagrammes dont sept (7)servent
à décrire les aspects structurels d’un système informatique (logiciel et matériel) ; et
les 07 autres servent à décrire les aspects dynamiques (comportement) du système.
— Les diagrammes de structure ceux sont entre autres :
— Les diagrammes de classes ;
— Les diagrammes de structures composites ;
— Les diagrammes de d’objets ;
— Les diagrammes de paquetages ;
— Les diagrammes de profils ;
— Les diagrammes de déploiement
— Les diagrammes de composants.
— Les diagrammes de comportement à savoir :
— Les diagrammes de cas d’utilisations ;
— Les diagrammes de d’états-transition ;
— Les diagrammes de d’activités ;
— Les diagrammes de communication ;
— Les diagrammes de d’interaction ;
— Les diagrammes de séquence ;
— Les diagrammes de temps ;
4.1.4 Outils de modélisations utilisés
Pour modéliser notre système de signature numérique avec le standard UML l’on
s’est servit d’un certain nombre d’outils logiciels à savoir :
— Microsoft Visio 2010 ;
— Astah Community 6_6_4-41775-jre-64bi ;
— [Link]-13.9.9-windows-installer ;
Dans la modélisation de notre système nous allons utiliser 04 types de diagrammes
à savoir le diagramme de cas d’utilisation, de séquence, de classe et de déploiement.
4.1.5 Diagramme de cas d’utilisations
Les diagrammes de cas d’utilisations sont des diagrammes qui capturent le com-
portement d’un système, d’un sous-système, d’une classe ou d’un composant tel
qu’un utilisateur extérieur le voit. Ils scindent la fonctionnalité du système en unités
cohérentes appelées cas d’utilisations. Les cas d’utilisation permettent d’exprimer le
besoin des utilisateurs d’un système, ils présentent ainsi un point de vu centré sur
les exigences fonctionnelles. Ces cas d’utilisations permettent aussi de visualiser les
limites du système par rapport à son environnement.
Rédigé par Ing. Neyom Elvine Patricia 42
4.1. CONCEPTION ET MODÉLISATION
Les acteurs du système Avant de faire ces différents diagrammes, il est impor-
tant de recenser et de connaitre les différents acteurs de son systè[Link] système
comporte au total deux acteurs qui sont :
— L’administrateur : Il s’agit de celui qui est chargé de gérer les utilisateurs de la
[Link] un administrateur est d’abord un utilisateur et donc
il hérite des fonctionnalité de l’utilisateur l’utilisateur ;
— Un utilisateur : il s’agit de celui qui peut effectuer certains action qui lui sont
autorisées sur le système.
La figure ci-dessous représente notre diagramme de cas d’utilisation générale.
Figure 4.3 – Cas d’utilisation générale
Analyse des cas d’utilisations Nous allons procéder à l’analyse de certains cas
d’utilisations de l’utilisateur :
Rédigé par Ing. Neyom Elvine Patricia 43
4.1. CONCEPTION ET MODÉLISATION
— Analyse du cas d’utilisation « Générer paire de clé »
Table 4.1 – Description textuelle du cas d’utilisation « générer une paire de clé »
Nom Générer une paire de clé
Objectifs permet a un utilisateur de générer la clé qui lui servira
d’effectuer les opérations de signature
Parties prenantes système et utilisateur
Acteur principal l’utilisateur
Préconditions Application démarrée, être authentifié
Postconditions la clé est générée
Scénarios nominaux - S1 : L’utilisateur fait une demande de génération de clé ;
- S2 : Il remplis les informations nécessaire à la génération
de la clé, envoie ses informations avec une confirmation ;
- S3 : la clé lui est généré et stocker dans un dossier
Scénarios alternatifs En cas de présence d’une clé le système lui rappelé qu’il a
déjà une clé et donc impossible d’en générer une autre
— Analyse du cas d’utilisation « Signer un document »
Table 4.2 – Description textuelle du cas d’utilisation « Signer un document »
Nom Signer un document
Objectifs permet a Un utilisateur de signer un document
Parties prenantes Système et utilisateur
Acteur principal L’utilisateur
Préconditions Application démarrée, être authentifié, avoir une clé privée
préalablement générée
Postconditions Le document est signé
Scénarios nominaux - S1 : L’utilisateur fait une demande de signature ;
- S2 : Il remplis les informations nécessaire pour signer un
document, envoie ses informations avec une confirmation ;
- S3 : le document est signé et stocker dans un fichier
Scénarios alternatifs Le document n’est pas signé, retour à S2
— Analyse du cas d’utilisation « Vérifier un document»
Rédigé par Ing. Neyom Elvine Patricia 44
4.1. CONCEPTION ET MODÉLISATION
Table 4.3 – Description textuelle du cas d’utilisation « Vérifier un document »
Nom Vérifier un document
Objectifs Permet à un utilisateur de vérifier la signature d’un docu-
ment
Parties prenantes Système et utilisateur
Acteur principal L’utilisateur
Préconditions Application démarrée, être authentifié, avoir la clé publique
du destinataire
Postconditions le document est vérifié
Scénarios nominaux - S1 : L’utilisateur fait une demande de vérification de si-
gnature ;
- S2 : Il remplis les informations nécessaire pour vérifier la
signature d’un document, envoie ses informations avec une
confirmation ;
- S3 : le document est vérifié
Scénarios alternatifs La signature du document n’est pas vérifié, retour à S2
— Analyse du cas d’utilisation « Chiffrer un document »
Table 4.4 – Description textuelle du cas d’utilisation « Chiffrer un document »
Nom Chiffrer un document
Objectifs Permet à un utilisateur de chiffrer un document
Parties prenantes Système et utilisateur
Acteur principal L’utilisateur
Préconditions Application démarrée, être authentifié, avoir la clé publique
du destinataire
Postconditions Le document est chiffré
Scénarios nominaux - S1 : L’utilisateur fait une demande ;
- S2 : Il remplis les informations nécessaire pour chiffrer un
document, envoie ses informations avec une confirmation ;
- S3 : le document est chiffré
Scénarios alternatifs Le document n’est pas chiffré, retour à S2
Rédigé par Ing. Neyom Elvine Patricia 45
4.1. CONCEPTION ET MODÉLISATION
— Analyse du cas d’utilisation « Déchiffrer un document »
Table 4.5 – Description textuelle du cas d’utilisation « Déchiffré un document »
Nom Signer un document
Objectifs permet a Un utilisateur de signer un document
Parties prenantes Système et utilisateur
Acteur principal L’utilisateur
Préconditions Application démarrée, être authentifié, avoir sa clé privée
préalablement générée
Postconditions Le document est déchiffré
Scénarios nominaux - S1 : L’utilisateur fait une demande de signature ;
- S2 : Il remplis les informations nécessaire pour signer un
document, envois ses informations avec une confirmation ;
- S3 : le document est déchiffré et stocker dans un fichier
Scénarios alternatifs Le document n’est pas signé, retour à S2
4.1.6 Diagrammes de séquences
les diagrammes de séquences sont la représentation graphique des interactions
entre les acteurs et le système selon un ordre chronologique. Ils montre l’ordre des
échanges de messages et le passage du [Link] d’autre terme ce sont des enchaîne-
ments précis et ordonnés d’opérations en vue de la réalisation d’un cas d’utilisation
ou fonctionnalité du système. Voici quelques diagrammes de séquence des cas d’uti-
lisations phares de notre système.
— Cas d’utilisation S’authentifier
Figure 4.4 – Diagramme de séquence du cas d’utilisation « S’authentifier »
Rédigé par Ing. Neyom Elvine Patricia 46
4.1. CONCEPTION ET MODÉLISATION
— Cas d’utilisation Générer une paire de clé
Figure 4.5 – Diagramme de séquence du cas d’utilisation « Générer une paire de
clé »
Rédigé par Ing. Neyom Elvine Patricia 47
4.1. CONCEPTION ET MODÉLISATION
— Cas d’utilisation Signer un document
Figure 4.6 – Diagramme de séquence du cas d’utilisation « Signer un document »
Rédigé par Ing. Neyom Elvine Patricia 48
4.1. CONCEPTION ET MODÉLISATION
— Cas d’utilisation Vérifier une signature
Figure 4.7 – Diagramme de séquence du cas d’utilisation « Vérifier une signature
»
Rédigé par Ing. Neyom Elvine Patricia 49
4.1. CONCEPTION ET MODÉLISATION
— Cas d’utilisation Chiffrer un document
Figure 4.8 – Diagramme de séquence du cas d’utilisation « Chiffrer un document
»
Rédigé par Ing. Neyom Elvine Patricia 50
4.1. CONCEPTION ET MODÉLISATION
— Cas d’utilisation Déchiffrer un document
Figure 4.9 – Diagramme de séquence du cas d’utilisation « Déchiffrer un document
»
4.1.7 Diagrammes de classes
Ceux sont des schémas utilisés pour présenter les classes et les interfaces des
systèmes ainsi que leurs [Link] permettent de décrire clairement la structure
d’un système en fournissant une représentation abstraite des objets du système qui
vont interagir pour réaliser les cas d’utilisation. La figure ci-dessous représente notre
diagramme de classes.
Rédigé par Ing. Neyom Elvine Patricia 51
4.1. CONCEPTION ET MODÉLISATION
Figure 4.10 – Diagramme de classes
4.1.8 Diagramme de déploiement
Le diagramme de déploiement décrit la disposition physique des ressources ma-
térielles qui composent le système et montre la répartition des composants sur ces
matériels. Il montre la manière dont les composants du système sont répartis ainsi
que leurs relations entre eux. La figure ci-dessous représente notre diagramme de
déploiement.
Figure 4.11 – Diagramme de déploiement
Rédigé par Ing. Neyom Elvine Patricia 52
4.2. IMPLÉMENTATION
4.1.9 Architecture de l’application
Pour notre application, nous avons opté utiliser l’architecture à trois niveau ré-
gulièrement appelée architecture 3-tier. C’est une d’architecture client-serveur dans
laquelle l’on retrouve :
— Un client : c’est l’ordinateur demandeur de ressources, équipée d’une interface
utilisateur (généralement un navigateur web) chargée de la présentation ;
— Un serveur d’application : appelé également middleware,il est chargé de fournir
la ressource mais faisant appel à un autre serveur ;
— Un serveur de base de données : c’est le serveur fournissant au serveur d’ap-
plication les données dont il a besoin.
La figure si-dessous représente notre architecture.
Figure 4.12 – Architecture client-serveur à trois niveau
4.2 Implémentation
4.2.1 Présentation générales des outils d’implémentation
Pour implémenter notre système nous avons fait recourt à un certain nombre
d’outils tant bien matériels que logiciels. Ainsi qu’il s’agit de notre backen() ou
frontend(interface web coté utilisateur) il est important de savoir que chacun de ses
parties est important pour la réalisation de notre système.
Outils Backend
Pour l’implémentation de notre backend, nous avons utilisé divers outils à savoir :
— Microframework FLASK
C’est un petit framework web python léger construit sur la bibliothèque WSGI
de Werkzeug. Constitué de plusieurs modules, il fournit des outils et des fonc-
tionnalités utiles afin de faciliter la création des applications web en python.
Il est flexible et extensible. LA version utilisé est la 2.0.1.
Rédigé par Ing. Neyom Elvine Patricia 53
4.2. IMPLÉMENTATION
— Langage de programmation python
En effet, python est un langage de programmation portable, dynamique, exten-
sible, gratuit, qui permet (sans l’imposer) une approche modulaire et orientée
objet de la [Link] version utilisé dans ce projet est la 3.9 64Bits.
Il a été utilisé pour l’implémentation de notre module de signature numérique.
— IDE(Environnement de développement intégré) Visual Studio Code
C’est un environnement de développement donnant la possibilité de compiler
et visualiser le résultat de son code ; il supporter plusieurs type de langage
à savoir Python, C, C++,HTML [Link] notre travail, nous avons utilisé la
version 1.57.0 64bits ;
— SGBD(Système de Gestion de Base de Donnée) MySQL MySQL est un SGBD
(Système de Gestion de Base de Données)tournant sur les systèmes tant bien
LINUX que Windows. Depuis la version 3.23.19, MySQL est sous licence Ge-
neral Public License (GPL), ce qui signifie qu’il peut être utilisé gratuitement.
dans notre implementation ous utilisons la version 5.7.33 winx64.
— Connecteur de base de donnée python mysql-connector-python
C’est un module python considéré qui permet d’établir une liaison entre la
base de donnée et notre application conçu en langage python. Pour ce projet
nous avons utilisé la version 8.0.25
Outils Frontend
Pour implementer notre interface web nous avons utilisons :
— Comme langages de programmations
— Le HTML (HyperText Markup Language)
C’est un langage permettant d’écrire de l’hypertexte, conçu pour repré-
senter les pages web. C’est un langage de balisage.
— Le CSS(Cascading Style Sheets)
C’est un langage informatique qui décrit la présentation des documents
HTML et XML. Ses standards sont définis par le World Wide Web
Consortium (W3C).
— IDE Visual Studio Code ;
— Le framework bootstrap version4
Il met à la disposition des codeurs de nombreux templetes html et css afin
de faciliter la tache aux [Link] fonction du bésoin il existe un type de
templete bien défini.
Outils global
Parmi ses outil nous avons :
— Laragon
C’est un environnement de développement web complet de Windows il met à
la disposition des utilisateur un serveur d’application apache ; un serveur de
base de données MySQL ; un serveur Nginx,.... et bien d’autre il est le plus
souvent utilisé pour le déploiement des application web.
— PhpMyAdmin
C’est l’interface une interface graphique nous permettant d’administrer les
bases de donné[Link] notre projet nous avons utilisé la version 5.1.1.
Rédigé par Ing. Neyom Elvine Patricia 54
4.2. IMPLÉMENTATION
4.2.2 Module de signature
Un module est en réalité un fichier qui regroupe plusieurs fonctions bien définit, et
qui peut être utilisé dans un autre programme. Notre module de signature numérique
repose sur l’algorithme de chiffrement RSA et renferme au totale 08 fonctions qui
sont :
— La fonction de génération de paire de clé ;
— Les deux fonctions d’importation de clé dont l’une pour la clé public et l’autre
pour la clé privée ;
— la fonction d’hachage ;
— La fonction de signature ;
— La fonction de vérification de signature ;
— La fonction de Chiffrement ;
— La fonction de déchiffrement.
Pour nous simplifier la tache nous avons utilisé le package crypto, ce dernier renferme
une panoplie de modules conçu en langage python et utilisé pour les opérations
[Link] ces modules nous utilisons :
— Le module de Hash ;
— Le module Cipher ;
— Le module PublicKey ;
— Le module Signature.
Pour chaque module nous avons importé des fonctions que nous avons utilisé, ceux-
sont :
— La fonction RSA : elle nous facilite la tache pour générer nos paire de clé en
utilisant ; l’algorithme RSA ;
— La fonction Random : elle permet de générer un nombre aléatoire ;
— La fonction SHA256 : elle nous donne la possibilité de produire un condensé
au moyen de la fonction de hachage SHA256 ;
—
Conclusion
Dans ce chapitre, il était question pour nous de présenter la partie conception,
modélisation et implémentation de notre systè[Link] avons fais ressortir les dif-
férents diagrammes ceci afin de faciliter la compréhension et l’implémentation de
notre système.
Rédigé par Ing. Neyom Elvine Patricia 55
Chapitre 5
Résultats et commentaires
Introduction
Dans ce chapitre nous allons présenter les résultats et commentaires de notre
implémentation. Pour une meilleur compréhension de notre système, nous allons
vous présenter les fonctionnalités principales et quelques fonctionnalité secondaire
de notre application.
5.1 Page d’accueil
Figure 5.1 – Page d’accueil
C’est la page qui s’affiche à l’ouverture de notre application
5.2 Cas d’utilisation authentification
Le schéma ci-dessous représente l’interface d’authentification d’un utilisateur au
système
Comme expliqué plus haut,l’authentification donne la possibilité à tout utilisateur
authentifié d’effectuer ou poser un acte quelconque qui lui est autorisé par le système.
56
5.2. CAS D’UTILISATION AUTHENTIFICATION
Figure 5.2 – Page d’authentification
5.2.1 Page d’accueil
En fonction de l’utilisateur une page d’accueil spécifique est affiché.
— Utilisateur simple
Pour un simple utilisateur, il a la possibilité de signer et envoyer un document ;
chiffrer et envoyer un document ; déchiffrer un document, vérifier la signature
d’un document, générer une paire de clé comme le montre la page ci-dessous.
Figure 5.3 – Page d’accueil administrateur
— Administrateur
Rédigé par Ing. Neyom Elvine Patricia 57
5.3. CAS D’UTILISATION GÉNÉRER PAIRE DE CLÉ
Sachant que l’administrateur est d’abord un utilisateur il hérité de tous ce
que peut faire u utilisateur mais en plus il a le droit de gérer les comptes
[Link] voici la page d’accueil utilisateur.
Figure 5.4 – Page d’accueil administrateur
Pour effectuer les autres opérations du système l’on se rend sur profil. Voici
un exemple pour l’administrateur
Figure 5.5 – Profil administrateur
5.3 Cas d’utilisation générer paire de clé
Pour générer la paire de clé, l’utilisateur clique sur générer clé et remplis les
informations nécessaire. Exemple de clé RSA 2048Bits généré par un utilisateur.
Rédigé par Ing. Neyom Elvine Patricia 58
5.3. CAS D’UTILISATION GÉNÉRER PAIRE DE CLÉ
Figure 5.6 – Paire de clé RSA générée
La clé étant générer peut être stocker dans la BD et en même temps dans le
magasin de clé de l’utilisateur.
— Clé stoker dans la BD ; L-image ci-dessous est la clé générer par un utilisateur
et stocker dans la BD.
Figure 5.7 – Clé stocker dans la BD
Rédigé par Ing. Neyom Elvine Patricia 59
5.4. CAS D’UTILISATION SIGNER DOCUMENT
— Clé stocker dans le magasin de clé L’image ci-dessous représente les clé public
stocker dans le magasin de clé
Figure 5.8 – Clé stocker dans le magasin
5.4 Cas d’utilisation signer document
Pour signer et envoyer un document l’on clique sur signer et envoyer. L’image ci-
dessous représente la page qui s’affiche. Par la suite l’on clique sur signer et envoyer,
Figure 5.9 – Page d’information a remplir pour signer
pour signer et envoyé le document. la figure ci-dessous s’affiche après une signature
validé.
Rédigé par Ing. Neyom Elvine Patricia 60
5.5. CAS D’UTILISATION VÉRIFIER SIGNATURE DOCUMENT
Figure 5.10 – Page d’information a remplir pour signer
5.5 Cas d’utilisation vérifier signature document
La page ci-dessous permet de renseigner les information nécessaire pour vérifier
une signature En cas de document non corrompu et de clé correct la signature du
Figure 5.11 – Page d’information a remplir pour signer
document est vérifié sans erreur et l’on obtient le résultat suivant
Dans le cas contraire l’on obtient en retour
Rédigé par Ing. Neyom Elvine Patricia 61
5.6. CAS D’UTILISATION TÉLÉCHARGER CLÉ
Figure 5.12 – Page d’information a remplir pour signer
Figure 5.13 – Page d’information a remplir pour signer
5.6 Cas d’utilisation télécharger clé
Pour télécharger la clé l’on se rend dans le magasin de clé choisi, la clé et le
télécharger comme l’indique la figure ci-dessous
Figure 5.14 – Télécharger une clé
Rédigé par Ing. Neyom Elvine Patricia 62
5.7. CAS D’UTILISATION SUPPRIMER CLÉ
5.7 Cas d’utilisation supprimer clé
L’on peut supprimer une clé dans le magasin de clé si cette clé nous appartient,
dans le cas contraire il nous est impossible de le faire.
— Suppression d’une clé nous appartenant
Figure 5.15 – Confirmation de suppression de clé
Figure 5.16 – Clé supprimée
— Suppression d’une clé qui ne nous appartient pas
Rédigé par Ing. Neyom Elvine Patricia 63
5.7. CAS D’UTILISATION SUPPRIMER CLÉ
Figure 5.17 – Suppression invalide
Conclusion
Il était question pour nous dans ce chapitre, de présenter les différents résultats
obtenus après l’implémentation de notre systè[Link] nous avons pu ressortir les
résultats concernant certain cas d’utilisation tel que signer document ; authentifica-
tion ; générer clé ; etc.
Rédigé par Ing. Neyom Elvine Patricia 64
Conclusion générale
Assurer la sécurité d’un système d’information garantit en parti l’évolution de ce
système d’information. L’information étant au centre de tout système d’information
il est donc important de s’assurer de la disponibilité, la confidentialité, l’intégrité
de cette dernière afin de la protéger contre toute attaque malveillante. C’est dans
cette optique que la CAMTEL nous soumet le problème de savoir comment assurer
la sécurité des documents électroniques échangé entre ses employés. Pour pallier le
problème posé, nous avons débuté par une analyse de l’existant avec pour objectif de
recueillir un maximum d’information afin de produire un cahier de charges pour la
réalisation de notre solution ; ensuite, nous avons fait une réalisation conceptuelle de
la solution proprement dite, en faisant une présentation architecturale, une concep-
tion et une modélisation de la solution au moyen du standard UML ; et pour finir
nous avons implémenté notre solution qui n’est outre qu’un module de signature
numérique intégré dans un application web qu’on a conçu afin de faciliter la mani-
pulation de la solution par les employés. Notre solution permet d’assurer la sécu-
rité(intégrité, non-répudiation, authenticité) des documents électroniques échangés ;
Elle offre la possibilité à tout utilisateur autorisé de générer sa propre paire de clé,
de signer un document, de vérifier la signature d’un document. Toutefois notre so-
lution bien que bonne, présente un certain nombre de limite et peut être améliorée
en utilisant une infrastructure à clé public(PKI).
65
Webographie
[1] S. Nsangou, Etude d’une offre technique innovante de
téléphonie sur IP à Camtel Cameroun, 2020. [On-
line]. Available : [Link]
Etude-d-une-offre-technique-innovante-de-telephonie-sur-IP--Camtel-Cameroun13.
html
[2] Camtel, La vie en bleu, 2021. [Online]. Available : [Link]
[3] CAMTEL, Notre organisation, 2021. [Online]. Available : [Link]
cm/a-propos/organisation/
[4] D. Conan and Cie, Sécurité des systèmes d’information, 2021. [Online].
Available : [Link]
C3%A8mes_d%27information
[5] P. Security, Attaques informatiques : quelles sont les plus courantes ?,
2021. [Online]. Available : [Link]
malware/attaques-informatiques-courantes/
[6] S. en cybersécurité, Introduction et initiation à la Sécurité Informatique, 2021.
[Online]. Available : [Link]
[7] I. Logo, La Sécurité informatique, 2021. [Online]. Available : https:
//[Link]/securite-informatique/
[8] Wikipédia, ISO/CEI 27002, 2021. [Online]. Available : [Link]
org/wiki/ISO/CEI_27002
[9] ——, Fonction de hachage, 2021. [Online]. Available : https:
//[Link]/wiki/Fonction_de_hachage#:~:text=On%20nomme%
20fonction%20de%20hachage,au%20m%C3%AAme%20titre%20qu’une
[10] Wikipédi, Signature numérique, 2021. [Online]. Avai-
lable : [Link]
[Link]%2Fwikipedia%2Fcommons%2Fthumb%2Fd%
2Fdc%2FDigital_Signature_diagram_fr.svg%2F440px-Digital_Signature_
diagram_fr.[Link]&imgrefurl=https%3A%2F%[Link]%
2Fwiki%2FSignature_num%25C3%25A9rique&tbnid=6xzAif9_9Q4g5M&
vet=12ahUKEwi7i5S3gfTxAhWO04UKHdmiDDEQMygAegUIARCpAQ.
.i&docid=fYv2D0wA41Yl0M&w=440&h=330&q=image%20principe%
20de%20fonctionnement%20signature%20num%C3%A9rique&ved=
2ahUKEwi7i5S3gfTxAhWO04UKHdmiDDEQMygAegUIARCpAQ
[11] T. Justice, L’usage de la signature électronique
au Cameroun, Par Cédric Djanko, Juriste d’entre-
prise, 2021. [Online]. Available : [Link]
lusage-de-la-signature-electronique-au-cameroun-par-cedric-djanko-juriste-dentreprise/
[12] Touatil, Signer et chiffrer des fichiers avec Kleopatra, 2021. [Online]. Available :
[Link]
66
WEBOGRAPHIE
[13] Touatily, Tutoriel : Utilisation de base de OpenSSL, 2020. [Online]. Available :
[Link]
[14] C. SAS, Les meilleurs logiciels et applications de signature électronique,
2021. [Online]. Available : [Link]
actualite-13227-signature-electronique-quels-logiciels-et-applications-choisir-.
html
[15] Capterra, Logiciels de signature électronique gratuits, 2021. [Online]. Avai-
lable : [Link]
free/software
[16] Wikipédia, Infrastructure à clés publiques, 2019. [Online]. Available : https:
//[Link]/directory/30739/digital-signature/pricing/free/software
[17] Wrike, PROJECT MANAGEMENT GUIDE Méthodologies de ges-
tion de projet, 2021. [Online]. Available : [Link]
project-management-guide/methodologies-de-gestion-de-projet/
[18] S. systems, Langue de Modélisation Unifiée (UML), 2021. [Online]. Available :
[Link]
Rédigé par Ing. Neyom Elvine Patricia 67
Annexes
Models
1
2 from datetime import datetime , timedelta
3 from Camtel_sign import db , login_manager
4 from flask_login import UserMixin
5
6
7 @login_manager . user_loader
8 def load_user ( user_id ) :
9 return User . query . get ( int ( user_id ) )
10
11
12 class User ( db . Model , UserMixin ) :
13
14 __tablename__ = " users "
15
16 id = db . Column ( db . Integer , primary_key = True )
17 nom = db . Column ( db . String (100) )
18 prenom = db . Column ( db . String (100) )
19 nomuser = db . Column ( db . String (80) , unique = True , nullable = False )
20 email = db . Column ( db . String (120) , unique = True , nullable = False )
21 password = db . Column ( db . String (255) )
22 profile = db . Column ( db . String (150) , default = ’ default . jpg ’)
23 id_trole = db . Column ( db . ForeignKey ( ’ role . id_role ’ , ondelete = ’
CASCADE ’) , nullable = False )
24
25 def __repr__ ( self ) :
26 return ’ < User % r % r % r % r % r > ’ % ( self . nom , self . prenom , self .
nomuser , self . email , self . password )
27
28 class Documents ( db . Model ) :
29
30 __tablename__ = " document "
31
32 id_doc = db . Column ( db . Integer , primary_key = True )
33 contenu = db . Column ( db . Text )
34 signature = db . Column ( db . Text )
35 fichier = db . Column ( db . String (255) , default = " docs . txt " )
36 user_id = db . Column ( db . Integer , db . ForeignKey ( ’ users . id ’ ,
ondelete = ’ CASCADE ’) , nullable = False )
37 author = db . relationship ( ’ User ’ , backref = db . backref ( ’ author ’ ,
lazy = True ) )
38 date_envoi = db . Column ( db . DateTime , nullable = False , default =
datetime . utcnow )
39 date_recep = db . Column ( db . DateTime , nullable = False , default =
datetime . utcnow )
40 data = db . Column ( db . LargeBinary )
Présenté par , Niveau Page 68 sur ??
41
42
43
44
45 def __repr__ ( self ) :
46 return ’ < Documents % r % r % r % r % r > ’ % ( self . contenu , self .
signature , self . fichier , self . date_envoi , self . date_recep )
47
48 class Clees ( db . Model ) :
49
50 __tablename__ = " cles "
51
52 id_key = db . Column ( db . Integer , primary_key = True )
53 nom_public_key = db . Column ( db . String (100) , unique = True )
54 date_create_key = db . Column ( db . DateTime , nullable = False , default =
datetime . utcnow )
55 date_end_key = db . Column ( db . DateTime , nullable = False , default =
timedelta ( days =365) )
56
57
58 def __repr__ ( self ) :
59 return " < Cle (% r % r ) >" % ( self . id_key , self . nom_public_key )
60 class Role ( db . Model ) :
61
62 __tablename__ = " role "
63 id_role = db . Column ( db . Integer , primary_key = True )
64 nom_role = db . Column ( db . String (100) , unique = True )
65 def __repr__ ( self ) :
66 return " < Role (% r % r ) >" % ( self . id_role , self . nom_role )
67 class Magasincles ( db . Model ) :
68
69 __tablename__ = " magasincles "
70
71 id_stocke = db . Column ( db . Integer , primary_key = True )
72
73 id_user = db . Column ( db . Integer , db . ForeignKey ( ’ users . id ’ , ondelete
= ’ CASCADE ’) , nullable = False )
74 key_id = db . Column ( db . Integer , db . ForeignKey ( ’ cles . id_key ’ ,
ondelete = ’ CASCADE ’) , nullable = False )
75
76 user = db . relationship ( ’ User ’)
77 cles = db . relationship ( ’ Clees ’)
78
79
80 def __repr__ ( self ) :
81 return " < magasincles % r % r % r >" % ( self . id_stocke , self .
user_id , self . key_id )
Initialisation de l’appliacation
1 from flask import Flask
2 from flask_sqlalchemy import SQLAlchemy
3 from flask_bcrypt import Bcrypt
4 from flask_login import LoginManager
5 from werkzeug . utils import secure_filename
6 # from flask_wtf . csrf import CSRFProtect
7
8
9 from flask_avatars import Avatars
10
Rédigé par Ing. Neyom Elvine Patricia 69
11
12 UPLOAD_FOLDER = ’ signs_docs / static / medias / uploads / ’
13 A LLO WE D_ EX TE NS IO NS = set ([ ’ txt ’ , ’ pdf ’ , ’ png ’ , ’ jpg ’ , ’ jpeg ’ , ’ gif ’
, ’ odt ’ , ’ docx ’ ])
14 app = Flask ( __name__ )
15 app . config [ ’ SECRET_KEY ’ ]= ’3
c1b7edd44ba83ce77bb09d146627ff3f24e74553fd13eda ’
16 app . config [ ’ S Q L A L C H E M Y _ D A T A B A S E _ U R I ’] = ’ mysql :// docsign :
c a mt e l do c @ lo c a lh o s t / docsigncamtel1 ’
17 app . config [ ’ S Q L A L C H E M Y _ T R A C K _ M O D I F I C A T I O N S ’] = True
18 app . config [ ’ UPLOAD_FOLDER ’] = UPLOAD_FOLDER
19 db = SQLAlchemy ( app )
20 # csrf = CSRFProtect ( app )
21 # app . config . from_object ( ’ config . settings ’)
22 # csrf . init_app ( app )
23
24 avatars = Avatars ( app )
25 bcrypt = Bcrypt ( app )
26 login_manager = LoginManager ( app )
27 login_manager . login_view = ’ login ’
28 login_manager . l o g i n _ m e s s a g e _ c a t e g o r y = " info "
29
30
31 def allowed_file ( filename ) :
32 return ’. ’ in filename and \
33 filename . rsplit ( ’. ’ , 1) [1]. lower () in A LL OW ED _E XT EN SI ON S
34
35 def create_app () :
36
37
38 app . config . from_object ( ’ config . settings ’)
39
40 csrf . init_app ( app )
41
42 from Camtel_sign import routes
Connexion de la base de donnee
1 from flask import ( Flask , render_template , redirect ,
2 request , url_for , session , flash , jsonify ,g , current_app , send_file
, abort )
3 from Camtel_sign import db , bcrypt , app , login_manager ,
allowed_file
4 from flask_login import login_user , logout_user , login_required ,
current_user
5 from Camtel_sign . models import User , Documents , Clees , Magasincles ,
Role
6 from sqlalchemy import text
7 from werkzeug . utils import secure_filename
8
9 import smtplib
10 import ssl
11 from email . mime . text import MIMEText
12 from email . mime . application import MIMEApplication
13 from email . mime . multipart import MIMEMultipart
14 from email . mime . image import MIMEImage
15
16 # from Camtel_sign . module import *
17 from . CamtelSing import *
18 import os
Rédigé par Ing. Neyom Elvine Patricia 70
19 import secrets
20 from base64 import b64encode
21 from pathlib import Path
22
23
24
25
26 def save_file ( fichier ) :
27 hash_fichier = secrets . token_urlsafe (10)
28 _ , file_extention = os . path . splitext ( fichier . filename )
29 nom_fichier = fichier . filename
30 path_fichier = os . path . join ( current_app . root_path , " static / medias
/ uploads / " , nom_fichier )
31 fichier . save ( path_fichier )
32 return nom_fichier
33
34
35 # APP_ROOT = os . path . dirname ( os . path . abspath ( __file__ ) )
36
37 # Route qui retourne la page d ’ accueil
38 @app . route ( ’/ home ’)
39 @app . route ( ’/ ’)
40 def home () :
41 return render_template ( " home . html " )
42 # Route qui retourne la page d ’ accueil
Rédigé par Ing. Neyom Elvine Patricia 71