Problème du consensusLe problème du consensus est un problème fondamental en théorie du calcul distribué. Il consiste pour un ensemble de machines à se mettre d'accord sur une valeur ou, par extension, sur une séquence de valeurs. La résolution du consensus est primordiale pour la coordination des systèmes distribués. Elle permet notamment la consistance des systèmes répliqués malgré la défaillance d'une partie de leurs composants.
Paxos (informatique)En informatique distribuée, Paxos est une famille de protocoles permettant de résoudre le consensus dans un réseau de nœuds faillibles, c'est-à-dire susceptible d'avoir des pannes. Le consensus désigne ici le fait que les différents nœuds se mettent d'accord sur un résultat, et c'est une opération difficile quand les nœuds ou leurs moyens de communications ont des pannes. Les protocoles de consensus sont les bases de l' à l'informatique distribuée, comme suggéré par Leslie Lamport et par Fred Schneider.
Linear network codingIn computer networking, linear network coding is a program in which intermediate nodes transmit data from source nodes to sink nodes by means of linear combinations. Linear network coding may be used to improve a network's throughput, efficiency, and scalability, as well as reducing attacks and eavesdropping. The nodes of a network take several packets and combine for transmission. This process may be used to attain the maximum possible information flow in a network.
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.
Problème des généraux byzantinsEn informatique, le problème des généraux byzantins est une métaphore qui traite de la remise en cause de la fiabilité des transmissions et de l'intégrité des interlocuteurs. La question est donc de savoir comment, et dans quelle mesure, il est possible de prendre en compte une information dont la source ou le canal de transmission est suspect. La solution implique l'établissement d'un algorithme (d'une stratégie) adapté. Ce problème a été traité en profondeur pour la première fois dans l'article The Byzantine Generals Problem publié en 1982.
Error correction codeIn computing, telecommunication, information theory, and coding theory, forward error correction (FEC) or channel coding is a technique used for controlling errors in data transmission over unreliable or noisy communication channels. The central idea is that the sender encodes the message in a redundant way, most often by using an error correction code or error correcting code (ECC). The redundancy allows the receiver not only to detect errors that may occur anywhere in the message, but often to correct a limited number of errors.
Contrat intelligentLes contrats intelligents (en anglais : smart contracts) sont des protocoles informatiques qui facilitent, vérifient et exécutent la négociation ou l'exécution d'un contrat, ou qui rendent une clause contractuelle inutile (car rattachée au contrat intelligent). Les contrats intelligents ont généralement une interface utilisateur et émulent la logique des clauses contractuelles. Cependant, les contrats intelligents sont du code informatique, et si l'interface utilisateur venait à disparaître, il serait toujours possible d'interagir avec ceux-ci.
BitcoinLe 'Bitcoin' (₿, BTC, XBT) (de l'anglais bit : unité d'information binaire et coin ) est une cryptomonnaie autrement appelée monnaie cryptographique. Dans le cas de la dénomination unitaire, on l'écrit et, dans le cas du système de paiement pair-à-pair on l'écrit . L'idée fut présentée pour la première fois en novembre 2008 par une personne, ou un groupe de personnes, sous le pseudonyme de Satoshi Nakamoto. Le code source de l'implémentation de référence fut quant à lui publié en 2009.
Réseau bitcoinvignette| Un schéma d'un transfert de bitcoin vignette| Nombre de transactions en bitcoins par mois (échelle logarithmique) Le 'réseau bitcoin' est un réseau de paiement pair-à-pair qui fonctionne sur un protocole cryptographique. Les utilisateurs envoient et reçoivent des bitcoins, les unités monétaires, en diffusant des messages signés numériquement sur le réseau à l'aide d'un logiciel de portefeuille de crypto-monnaie bitcoin.
Théorie de la complexité (informatique théorique)vignette|Quelques classes de complexité étudiées dans le domaine de la théorie de la complexité. Par exemple, P est la classe des problèmes décidés en temps polynomial par une machine de Turing déterministe. La théorie de la complexité est le domaine des mathématiques, et plus précisément de l'informatique théorique, qui étudie formellement le temps de calcul, l'espace mémoire (et plus marginalement la taille d'un circuit, le nombre de processeurs, l'énergie consommée ...) requis par un algorithme pour résoudre un problème algorithmique.
Empire byzantinL’'Empire byzantin' ou Empire romain d'Orient désigne l'État apparu vers le dans la partie orientale de l'Empire romain, au moment où celui-ci se divise progressivement en deux. Il se caractérise par sa longévité : il puise ses origines dans la fondation même de Rome, et la datation de ses débuts change selon les critères choisis par chaque historien. La fondation de Constantinople, sa capitale, par en 330, autant que la division d’un Empire romain de plus en plus difficile à gouverner et qui devient définitive en 395, sont parfois citées.
Calcul distribuéUn calcul distribué, ou réparti ou encore partagé, est un calcul ou un traitement réparti sur plusieurs microprocesseurs et plus généralement sur plusieurs unités centrales informatiques, et on parle alors d'architecture distribuée ou de système distribué. Le calcul distribué est souvent réalisé sur des clusters de calcul spécialisés, mais peut aussi être réalisé sur des stations informatiques individuelles à plusieurs cœurs. La distribution d'un calcul est un domaine de recherche des sciences mathématiques et informatiques.
Table de hachageUne table de hachage est, en informatique, une structure de données qui permet une association clé–valeur, c'est-à-dire une implémentation du type abstrait tableau associatif. Son but principal est de permettre de retrouver une clé donnée très rapidement, en la cherchant à un emplacement de la table correspondant au résultat d'une fonction de hachage calculée en O(1). Cela constitue un gain de temps très important pour les grosses tables, lors d'une recherche ou d'un besoin d'accès aux données en utilisant la clé définie.
Dynastie des ComnènesAprès un net recul de ses frontières en Asie Mineure et la perte de ses possessions en Italie dans la deuxième moitié du , l’Empire byzantin entreprit sous les Comnènes une période de redressement continu bien qu’incomplet. Cinq empereurs (Alexis , Jean II, Manuel , Alexis II et Andronic ) tentèrent pendant 104 ans et par divers moyens de tenir tête aux noblesses terrienne et militaire, soit en favorisant des membres de leur propre famille (Alexis ), soit en faisant appel à des conseillers de l’extérieur (Jean II), soit en privilégiant l’une d’elles (Manuel ), soit en persécutant l’une et l’autre (Andronic ).
Fonction de hachageQuand il s'agit de mettre dans un tableau de taille raisonnable (typiquement résidant dans la mémoire principale de l'ordinateur) un ensemble de données de taille variable et arbitraire, on utilise une fonction de hachage pour attribuer à ces données des indices de ce tableau. Par conséquent, une fonction de hachage est une fonction qui associe des valeurs de taille fixe à des données de taille quelconque. Les valeurs renvoyées par une fonction de hachage sont appelées valeurs de hachage, codes de hachage, résumés, signatures ou simplement hachages.