DDBMS - Sécurité et cryptographie des bases de données

Dans ce chapitre, nous examinerons les menaces auxquelles un système de base de données est confronté et les mesures de contrôle. Nous étudierons également la cryptographie comme outil de sécurité.

Sécurité de la base de données et menaces

La sécurité des données est un aspect impératif de tout système de base de données. Il est particulièrement important dans les systèmes distribués en raison du grand nombre d'utilisateurs, des données fragmentées et répliquées, de la multiplicité des sites et du contrôle distribué.

Menaces dans une base de données

  • Availability loss - La perte de disponibilité fait référence à la non-disponibilité des objets de base de données par des utilisateurs légitimes.

  • Integrity loss- La perte d'intégrité se produit lorsque des opérations inacceptables sont effectuées sur la base de données par accident ou par malveillance. Cela peut se produire lors de la création, de l'insertion, de la mise à jour ou de la suppression de données. Il en résulte des données corrompues menant à des décisions incorrectes.

  • Confidentiality loss- La perte de confidentialité est due à la divulgation non autorisée ou non intentionnelle d'informations confidentielles. Cela peut entraîner des actions illégales, des menaces pour la sécurité et une perte de confiance du public.

Mesures de contrôle

Les mesures de contrôle peuvent être globalement divisées dans les catégories suivantes -

  • Access Control- Le contrôle d'accès comprend des mécanismes de sécurité dans un système de gestion de base de données pour se protéger contre les accès non autorisés. Un utilisateur peut accéder à la base de données après avoir effacé le processus de connexion via uniquement des comptes d'utilisateurs valides. Chaque compte utilisateur est protégé par mot de passe.

  • Flow Control- Les systèmes distribués englobent beaucoup de flux de données d'un site à un autre et également au sein d'un site. Le contrôle de flux empêche les données d'être transférées de manière à ce qu'elles soient accessibles par des agents non autorisés. Une politique de flux répertorie les canaux par lesquels les informations peuvent circuler. Il définit également des classes de sécurité pour les données ainsi que pour les transactions.

  • Data Encryption- Le cryptage des données fait référence au codage des données lorsque des données sensibles doivent être communiquées sur des canaux publics. Même si un agent non autorisé accède aux données, il ne peut pas les comprendre car elles sont dans un format incompréhensible.

Qu'est-ce que la cryptographie?

Cryptography est la science du codage des informations avant de les envoyer via des voies de communication non fiables afin que seul un récepteur autorisé puisse les décoder et les utiliser.

Le message codé est appelé cipher text et le message d'origine est appelé plain text. Le processus de conversion de texte brut en texte chiffré par l'expéditeur est appelé encodage ouencryption. Le processus de conversion du texte chiffré en texte brut par le récepteur est appelé décodage oudecryption.

L'ensemble de la procédure de communication à l'aide de la cryptographie peut être illustrée par le diagramme suivant -

Méthodes de cryptage conventionnelles

Dans la cryptographie conventionnelle, le cryptage et le décryptage sont effectués à l'aide de la même clé secrète. Ici, l'expéditeur crypte le message avec un algorithme de cryptage en utilisant une copie de la clé secrète. Le message chiffré est ensuite envoyé sur les canaux de communication publics. A la réception du message chiffré, le récepteur le déchiffre avec un algorithme de déchiffrement correspondant utilisant la même clé secrète.

La sécurité dans la cryptographie conventionnelle dépend de deux facteurs -

  • Un algorithme sonore connu de tous.

  • Une clé secrète, de préférence longue, générée aléatoirement, connue uniquement de l'expéditeur et du destinataire.

L'algorithme de cryptographie conventionnel le plus connu est Data Encryption Standard ou DES.

L'avantage de cette méthode est sa facilité d'application. Cependant, le plus grand problème de la cryptographie conventionnelle est le partage de la clé secrète entre les parties communicantes. Les méthodes d'envoi de la clé sont lourdes et très susceptibles d'être écoutées.

Cryptographie à clé publique

Contrairement à la cryptographie conventionnelle, la cryptographie à clé publique utilise deux clés différentes, appelées clé publique et clé privée. Chaque utilisateur génère la paire de clé publique et de clé privée. L'utilisateur place ensuite la clé publique dans un endroit accessible. Lorsqu'un expéditeur souhaite envoyer un message, il le crypte à l'aide de la clé publique du destinataire. A la réception du message chiffré, le destinataire le déchiffre à l'aide de sa clé privée. Puisque la clé privée n'est connue de personne d'autre que du destinataire, aucune autre personne qui reçoit le message ne peut le déchiffrer.

Les algorithmes de cryptographie à clé publique les plus populaires sont RSA algorithme et Diffie– Hellmanalgorithme. Cette méthode est très sécurisée pour envoyer des messages privés. Cependant, le problème est que cela implique beaucoup de calculs et s'avère donc inefficace pour les messages longs.

La solution consiste à utiliser une combinaison de cryptographie conventionnelle et à clé publique. La clé secrète est cryptée à l'aide de la cryptographie à clé publique avant d'être partagée entre les parties communicantes. Ensuite, le message est envoyé en utilisant la cryptographie conventionnelle à l'aide de la clé secrète partagée.

Signatures numériques

Une signature numérique (DS) est une technique d'authentification basée sur la cryptographie à clé publique utilisée dans les applications de commerce électronique. Il associe une marque unique à un individu dans le corps de son message. Cela aide les autres à authentifier les expéditeurs valides de messages.

En règle générale, la signature numérique d'un utilisateur varie d'un message à l'autre afin d'assurer une sécurité contre la contrefaçon. La méthode est la suivante -

  • L'expéditeur prend un message, calcule le résumé de message du message et le signe avec une clé privée.

  • L'expéditeur ajoute ensuite le résumé signé avec le message en texte brut.

  • Le message est envoyé via le canal de communication.

  • Le récepteur supprime le résumé signé ajouté et vérifie le résumé à l'aide de la clé publique correspondante.

  • Le destinataire prend alors le message en clair et l'exécute via le même algorithme de résumé de message.

  • Si les résultats de l'étape 4 et de l'étape 5 correspondent, alors le récepteur sait que le message est intègre et authentique.