Transport Layer SecurityLa Transport Layer Security (TLS) ou « Sécurité de la couche de transport », et son prédécesseur la Secure Sockets Layer (SSL) ou « Couche de sockets sécurisée », sont des protocoles de sécurisation des échanges par réseau informatique, notamment par Internet. Le protocole SSL a été développé à l'origine par Netscape Communications Corporation pour son navigateur Web. L'organisme de normalisation Internet Engineering Task Force (IETF) en a poursuivi le développement en le rebaptisant Transport Layer Security (TLS).
Chosen-ciphertext attackA chosen-ciphertext attack (CCA) is an attack model for cryptanalysis where the cryptanalyst can gather information by obtaining the decryptions of chosen ciphertexts. From these pieces of information the adversary can attempt to recover the hidden secret key used for decryption. For formal definitions of security against chosen-ciphertext attacks, see for example: Michael Luby and Mihir Bellare et al. A number of otherwise secure schemes can be defeated under chosen-ciphertext attack.
Primitive cryptographiqueUne primitive cryptographique est un algorithme cryptographique de bas niveau, bien documenté, et sur la base duquel est bâti tout système de sécurité informatique. Ces algorithmes fournissent notamment des fonctions de hachage cryptographique et de chiffrement. À la création d’un système cryptographique (ou cryptosystème), le concepteur se fonde sur des briques appelées « primitives cryptographiques ». Pour cette raison les primitives cryptographiques sont conçues pour effectuer une tâche précise et ce de la façon la plus fiable possible.
Key-agreement protocolIn cryptography, a key-agreement protocol is a protocol whereby two or more parties can agree on a cryptographic key in such a way that both influence the outcome. If properly done, this precludes undesired third parties from forcing a key choice on the agreeing parties. Protocols that are useful in practice also do not reveal to any eavesdropping party what key has been agreed upon. Many key exchange systems have one party generate the key, and simply send that key to the other party—the other party has no influence on the key.
Sécurité sémantiqueLa sécurité sémantique est une notion de sécurité importante dans le cadre des preuves de sécurité des protocoles cryptographiques. Cette notion a été introduite en 1984 par Shafi Goldwasser et Silvio Micali. Elle est définie indépendamment du type de cryptographie du système (c’est-à-dire symétrique ou asymétrique), mais est principalement utilisée dans les preuves des schémas à clef publique. La sécurité sémantique traduit formellement le fait qu’il doit être difficile de retrouver de l’information sur le message originel en ayant accès au chiffrement de ce message et aux informations publiques du protocole.
Cryptographie asymétriquevignette|320x320px|Schéma du chiffrement asymétrique: une clé sert à chiffrer et une seconde à déchiffrer La cryptographie asymétrique, ou cryptographie à clé publique est un domaine relativement récent de la cryptographie. Elle permet d'assurer la confidentialité d'une communication, ou d'authentifier les participants, sans que cela repose sur une donnée secrète partagée entre ceux-ci, contrairement à la cryptographie symétrique qui nécessite ce secret partagé préalable.
Protocole cryptographiqueUn protocole de sécurité (protocole cryptographique ou protocole de chiffrement) est un protocole abstrait ou concret qui remplit une fonction liée à la sécurité et applique des méthodes cryptographiques, souvent sous forme de séquences de primitives cryptographiques. Un protocole décrit comment les algorithmes doivent être utilisés et inclut des détails sur les structures de données et les représentations, à quel point il peut être utilisé pour implémenter plusieurs versions interopérables d'un programme.
Pile de protocolesUne pile de protocoles est une mise en œuvre particulière d'un ensemble de protocoles de communication réseau. L'intitulé « pile » implique que chaque couche de protocole s'appuie sur celles qui sont en dessous afin d'y apporter un supplément de fonctionnalité. Il en existe de plusieurs : thumb|Position de la couche réseau dans le modèle OSI et dans TCP-IP • Le « modèle de référence OSI » — OSI signifiant « Open Systems Interconnection » soit en français « Interconnexion de systèmes ouverts » — défini par l'ISO décrit ainsi sept couches empilées les unes sur les autres.
Protocole de communicationDans les réseaux informatiques et les télécommunications, un protocole de communication est une spécification de plusieurs règles pour un type de communication particulier. Initialement, on nommait protocole ce qui est utilisé pour communiquer sur une même couche d'abstraction entre deux machines différentes. Par extension de langage, on utilise parfois ce mot aussi aujourd'hui pour désigner les règles de communication entre deux couches sur une même machine.
Cryptographie symétriquevignette|320x320px|Schéma du chiffrement symétrique: la même clé est utilisée pour le chiffrement et le déchiffrement La cryptographie symétrique, également dite à clé secrète (par opposition à la cryptographie asymétrique), est la plus ancienne forme de chiffrement. Elle permet à la fois de chiffrer et de déchiffrer des messages à l'aide d'un même mot clé. On a des traces de son utilisation par les Égyptiens vers 2000 av. J.-C. Plus proche de nous, on peut citer le chiffre de Jules César, dont le ROT13 est une variante.
Échange de clévignette|Paramètres de configuration pour la machine de cryptographie Enigma, en fonction du jour, du mois, etc. On peut lire sur ce document plusieurs mises en garde concernant son caractère secret. Avant l'avènement de la cryptographie moderne, la nécessité de tels mécanismes d'échange de clé constituaient une vulnérabilité majeure. En informatique, et plus particulièrement en cryptologie, un protocole déchange de clé (ou de négociation de clé, ou d'établissement de clé, ou de distribution de clé) est un mécanisme par lequel plusieurs participants se mettent d'accord sur une clé cryptographique.
Point-to-Point ProtocolPoint-to-Point Protocol (PPP, protocole point à point) est un protocole de transmission pour internet, décrit par le standard RFC 1661, fortement basé sur HDLC, qui permet d'établir une connexion entre deux hôtes sur une liaison point à point. Il fait partie de la couche liaison de données (couche 2) du modèle OSI. PPP s'appuie sur trois composants : L'encapsulation des datagrammes. Le contrôle de la liaison avec LCP (Link Control Protocol). Le contrôle de la couche réseau avec NCP (Network Control Protocol).
Science forensiqueL’analyse scientifique de cas, appelée par calque de l'anglais science forensique ou la forensique, regroupe l'ensemble des méthodes d'analyse fondées sur les sciences (chimie, physique, biologie, neurosciences, informatique, mathématique, , statistique) afin de servir au travail d' de manière large. Cette analyse scientifique a pour but « la découverte de faits, l'amélioration des connaissances ou la résolution de doutes et de problèmes.
Tunnel (réseau informatique)Un tunnel, dans le contexte des réseaux informatiques, est une encapsulation de données d'un protocole réseau dans un autre, situé dans la même couche du modèle en couches, ou dans une couche de niveau supérieur. D'abord, le paquet est enveloppé dans un en-tête supplémentaire (additional header), c'est ce qu'on appelle l'encapsulation. Cet en-tête supplémentaire contient les informations de routage nécessaires pour envoyer le paquet encapsulé à travers l'inter-réseau intermédiaire.
Protocol Data UnitLa Protocol Data Unit ou Unité de données de protocole (PDU) est l'unité de mesure des informations échangées dans un réseau informatique. Appliqué au système de couches du modèle OSI, le PDU : de la couche physique est le bit ; de la couche liaison est la trame ; de la couche réseau est le paquet ; de la couche transport est le segment pour TCP, et le datagramme pour UDP ; des couches application, présentation et session sont les données. Le (N)-PDU est l'unité de données pour une couche (numéro N).
CaténaireUne caténaire est un ensemble de câbles porteurs et de fils conducteurs destinés à l’alimentation des moyens de transports électriques à captage du courant par dispositif aérien. Les câbles porteurs sont en cuivre, en bronze ou en aluminium-acier, quant aux fils conducteurs, ils sont en cuivre pur à 98 %, ou en cuivre allié à l'étain, au magnésium ou au cadmium. La caténaire permet de faire circuler la plupart des trains et des trams, mais aussi les trolleybus.
Programmation concurrenteLa programmation concurrente est un paradigme de programmation tenant compte, dans un programme, de l'existence de plusieurs piles sémantiques qui peuvent être appelées threads, processus ou tâches. Elles sont matérialisées en machine par une pile d'exécution et un ensemble de données privées. La concurrence est indispensable lorsque l'on souhaite écrire des programmes interagissant avec le monde réel (qui est concurrent) ou tirant parti de multiples unités centrales (couplées, comme dans un système multiprocesseurs, ou distribuées, éventuellement en grille ou en grappe).
Malléabilité (cryptographie)La malléabilité est une propriété que peuvent posséder des protocoles cryptographiques. Un cryptosystème est dit malléable s’il est possible de transformer un chiffré d’un message m en un chiffré pour un message f(m) pour une fonction f connue sans connaître le message originel m ni obtenir d’information sur lui. Cette propriété n’est pas toujours désirable, puisqu’elle peut permettre à un attaquant de modifier le contenus de messages.
Bootstrap (compilateur)Le bootstrapping décrit en informatique les techniques fondées sur l'écriture d'un compilateur (ou d'un assembleur) dans le langage de programmation cible qu'il doit compiler. De ce fait, il s'agit d'une technique de développement (sur un même système) ou de portage (d'un système à l'autre), qui part d'un premier compilateur minimal écrit de façon classique, amorçant une suite de versions, chacune préférable à la précédente. un dialecte d'Algol 58, a été le premier langage à fournir un tel bootstrap.
CompilateurEn informatique, un compilateur est un programme qui transforme un code source en un code objet. Généralement, le code source est écrit dans un langage de programmation (le langage source), il est de haut niveau d'abstraction, et facilement compréhensible par l'humain. Le code objet est généralement écrit en langage de plus bas niveau (appelé langage cible), par exemple un langage d'assemblage ou langage machine, afin de créer un programme exécutable par une machine.