web-dev-qa-db-fra.com

Différence entre l'authentification, l'intégrité et l'authentification de l'origine des données

J'ai d'abord pensé que tous ces termes étaient synonymes, mais je vois parfois ces termes utilisés dans le même document. Par exemple, sur MSDN:

l'authentification de l'origine des données, qui permet au destinataire de vérifier que les messages n'ont pas été falsifiés en transit (intégrité des données) et qu'ils proviennent de l'expéditeur attendu (authenticité).

Je ne comprends pas complètement en quoi l'intégrité est différente de l'authenticité.

Comment pourrait-il être possible de garantir uniquement l'authenticité de l'expéditeur sans l'intégrité des données? Si un attaquant est en mesure de modifier le contenu, comment pouvons-nous faire en sorte que le champ expéditeur soit correct?

De même, que signifie savoir que certaines données sont intègres, mais ne pas connaître l'expéditeur?

Pour moi, il s'agit simplement d'inclure ou non le champ "Expéditeur" de l'en-tête dans la partie du message dont l'intégrité est vérifiée (ou l'authenticité, je suis confus maintenant)

Pour autant que je sache, les signatures numériques résolvent à la fois l'intégrité et l'authenticité, c'est peut-être pourquoi je ne vois pas la différence entre les deux.

13
Jacques

Intégrité consiste à s'assurer que certains éléments de données n'ont pas été modifiés à partir d'une "version de référence". Authenticité est un cas particulier d'intégrité, où la "version de référence" est définie comme "quoi qu'elle était lorsqu'elle était sous le contrôle d'une entité spécifique". Authentification consiste à s'assurer qu'une entité donnée (avec laquelle vous interagissez) est bien celle que vous croyez.

En ce sens, vous obtenez l'authenticité lorsque l'intégrité et l'authentification sont réunies. Si vous préférez, l'authenticité est l'authentification appliquée à un morceau de données via l'intégrité.

Par exemple, considérez que vous utilisez votre navigateur pour vous connecter à certains https:// Site Internet. Cela signifie SSL. Il y a authentification lors de la prise de contact initiale: le serveur envoie son certificat et utilise sa clé privée, et le certificat du serveur contient le nom du serveur; votre navigateur vérifie que le nom du serveur correspond à ce qui était attendu (la partie du nom du serveur dans l'URL). Ensuite, toutes les données échangées sont envoyées comme des "enregistrements" qui sont cryptés et protégés contre l'altération: c'est l'intégrité . Étant donné que votre navigateur reçoit des données qui sont garanties non modifiées par rapport à ce qu'elles étaient lorsqu'elles ont été envoyées par un serveur dûment authentifié, les données peuvent être dites "authentiques".

Ne pensez pas trop aux choses. La terminologie est au moins à moitié traditionnelle, ce qui signifie qu'elle n'est pas nécessairement pratique. Nous aimons parler de la triade "Confidentialité - Intégrité - Authenticité" principalement parce qu'elle rend l'acronyme "CIA", qui a l'air cool.

23
Thomas Pornin

Il semble qu'il existe déjà une bonne réponse, mais permettez-moi d'expliquer la disponibilité par rapport à l'authentification dans la triade CIA. Ce que le "A" signifie change avec le contexte.

L'authentification est utilisée si nous parlons de sécurité intégrée basée sur le matériel. Lorsque nous discutons des fonctions crypto-primitives d'un élément sécurisé ou d'un TPM complet, le "A" signifie "authentification".

La disponibilité est une construction de cybersécurité/sécurité de l'information (SI). Les systèmes "disponibles" visent à rester à la disposition des utilisateurs à tout moment, en prévenant ou en atténuant les interruptions de service dues aux pannes de courant (alimentation de secours), aux pannes matérielles (redondance), aux mises à niveau du système et aux attaques par déni de service.

La sécurité intégrée offre des informations à la cybersécurité, qui décide ensuite comment agir sur ces informations, mais tout impact sur la disponibilité de la sécurité intégrée est, au mieux, indirect. Par conséquent, parler de disponibilité lorsque vous discutez des fonctions basées sur le matériel, comme IPsec, est incorrect.

0
Dan Ujvari