Cryptographically secure pseudorandom number generatorA cryptographically secure pseudorandom number generator (CSPRNG) or cryptographic pseudorandom number generator (CPRNG) is a pseudorandom number generator (PRNG) with properties that make it suitable for use in cryptography. It is also loosely known as a cryptographic random number generator (CRNG). Most cryptographic applications require random numbers, for example: key generation nonces salts in certain signature schemes, including ECDSA, RSASSA-PSS The "quality" of the randomness required for these applications varies.
Cryptographiethumb|La machine de Lorenz utilisée par les nazis durant la Seconde Guerre mondiale pour chiffrer les communications militaires de haut niveau entre Berlin et les quartiers-généraux des différentes armées. La cryptographie est une des disciplines de la cryptologie s'attachant à protéger des messages (assurant confidentialité, authenticité et intégrité) en s'aidant souvent de secrets ou clés. Elle se distingue de la stéganographie qui fait passer inaperçu un message dans un autre message alors que la cryptographie rend un message supposément inintelligible à autre que qui de droit.
Expérience aléatoirevignette|Exemple d'expérience aléatoire: pile ou face En théorie des probabilités, une expérience aléatoire est une expérience renouvelable (en théorie si ce n'est en pratique), dont le résultat ne peut être prévu, et qui, renouvelée dans des conditions identiques –pour autant que l'observateur puisse s'en assurer– ne donne pas forcément le même résultat à chaque renouvellement. Une succession de lancers d'une même pièce en est un exemple classique. Le tirage au hasard d'un élément dans un ensemble en est un autre exemple.
Générateur de nombres aléatoiresUn générateur de nombres aléatoires, random number generator (RNG) en anglais, est un dispositif capable de produire une suite de nombres pour lesquels il n'existe aucun lien calculable entre un nombre et ses prédécesseurs, de façon que cette séquence puisse être appelée « suite de nombres aléatoires ». Par extension, on utilise ce terme pour désigner des générateurs de nombres pseudo aléatoires, pour lesquels ce lien calculable existe, mais ne peut pas « facilement » être déduit.
StochastiqueLe mot stochastique est synonyme d', en référence au hasard et s’oppose par définition au déterminisme. Stochastique est un terme d'origine grecque qui signifie « basé sur la conjecture ». En français, il est couramment utilisé pour décrire des phénomènes aléatoires ou imprévisibles. Dans les mathématiques et la statistique, « stochastique » fait référence à des processus qui sont déterminés par des séquences de mouvements aléatoires. Cela inclut tout ce qui est aléatoire ou imprévisible en fonction des informations actuellement disponibles.
Émile BorelÉmile Borel, né à Saint-Affrique le et mort à Paris le , est un mathématicien français, professeur à la Faculté des sciences de Paris. Il était spécialiste de la théorie des fonctions et des probabilités, membre de l'Académie des sciences, ainsi qu'un homme politique français, député et ministre. Ses actions pour la Société des Nations et au sein de son Comité fédéral de Coopération européenne font de lui un des précurseurs de l'idée européenne. Félix Édouard Justin Émile Borel est le fils d'un pasteur protestant.
Algorithmically random sequenceIntuitively, an algorithmically random sequence (or random sequence) is a sequence of binary digits that appears random to any algorithm running on a (prefix-free or not) universal Turing machine. The notion can be applied analogously to sequences on any finite alphabet (e.g. decimal digits). Random sequences are key objects of study in algorithmic information theory. As different types of algorithms are sometimes considered, ranging from algorithms with specific bounds on their running time to algorithms which may ask questions of an oracle machine, there are different notions of randomness.
Suite aléatoirevignette|Cette suite est-elle aléatoire ? En mathématiques, une suite aléatoire, ou suite infinie aléatoire, est une suite de symboles d'un alphabet ne possédant aucune structure, régularité, ou règle de prédiction identifiable. Une telle suite correspond à la notion intuitive de nombres tirés au hasard. La caractérisation mathématique de cette notion est extrêmement difficile, et a fait l'objet d'études et de débats tout au long du . Une première tentative de définition mathématique (insatisfaisante) a été réalisée en 1919 par Richard von Mises.
Deterministic systemIn mathematics, computer science and physics, a deterministic system is a system in which no randomness is involved in the development of future states of the system. A deterministic model will thus always produce the same output from a given starting condition or initial state. Physical laws that are described by differential equations represent deterministic systems, even though the state of the system at a given point in time may be difficult to describe explicitly.
Jeu de hasardUn jeu de hasard est un jeu dont le déroulement est partiellement ou totalement soumis à la chance. Celle-ci peut provenir d'un tirage ou d'une distribution de cartes, d'un jet de dé, etc. Lorsque le jeu est totalement soumis au hasard, on parle de jeu de hasard pur. Lorsque le joueur doit déterminer son action en fonction d'événements aléatoires passés ou futurs et de probabilités, on parle plus volontiers de jeu de hasard raisonné. Le terme « jeu de hasard » désigne également les jeux d'argent, les jeux de grattage comme les machines à sous.
Méthode de Monte-CarloUne méthode de Monte-Carlo, ou méthode Monte-Carlo, est une méthode algorithmique visant à calculer une valeur numérique approchée en utilisant des procédés aléatoires, c'est-à-dire des techniques probabilistes. Les méthodes de Monte-Carlo sont particulièrement utilisées pour calculer des intégrales en dimensions plus grandes que 1 (en particulier, pour calculer des surfaces et des volumes). Elles sont également couramment utilisées en physique des particules, où des simulations probabilistes permettent d'estimer la forme d'un signal ou la sensibilité d'un détecteur.
Algorithme déterministeEn Informatique, un algorithme déterministe est un algorithme qui, étant donné une entrée particulière, produira toujours la même sortie, avec la machine sous-jacente passant toujours par la même séquence d'états. Les algorithmes déterministes forment, de loin, la famille d'algorithme la plus étudiée. Formellement, un algorithme déterministe calcule une fonction mathématique ; une fonction ayant une valeur unique pour n'importe quelle entrée dans son ensemble de définition, l'algorithme produit cette valeur en sortie.
Nonce (cryptographie)En cryptographie, un nonce est un nombre arbitraire destiné à être utilisé une seule fois. Il s'agit souvent d'un nombre aléatoire ou pseudo-aléatoire émis dans un protocole d'authentification pour garantir que les anciennes communications ne peuvent pas être réutilisées dans des attaques par rejeu. Le mot nonce peut également désigner un vecteur d'initialisation. Les nonces peuvent aussi être utilisés dans des fonctions de hachage cryptographiques, en particulier en relation avec des preuves de travail.
Randomness testA randomness test (or test for randomness), in data evaluation, is a test used to analyze the distribution of a set of data to see whether it can be described as random (patternless). In stochastic modeling, as in some computer simulations, the hoped-for randomness of potential input data can be verified, by a formal test for randomness, to show that the data are valid for use in simulation runs. In some cases, data reveals an obvious non-random pattern, as with so-called "runs in the data" (such as expecting random 0–9 but finding "4 3 2 1 0 4 3 2 1.
Statistical randomnessA numeric sequence is said to be statistically random when it contains no recognizable patterns or regularities; sequences such as the results of an ideal dice roll or the digits of π exhibit statistical randomness. Statistical randomness does not necessarily imply "true" randomness, i.e., objective unpredictability. Pseudorandomness is sufficient for many uses, such as statistics, hence the name statistical randomness. Global randomness and local randomness are different.
Suite à discrépance faibleEn mathématiques, une suite à discrépance faible est une suite ayant la propriété que pour tout entier N, la sous-suite x1, ..., xN a une discrépance basse. Dans les faits, la discrépance d'une suite est faible si la proportion des points de la suite sur un ensemble B est proche de la valeur de la mesure de B, ce qui est le cas en moyenne (mais pas pour des échantillons particuliers) pour une suite équidistribuée. Plusieurs définitions de la discrépance existent selon la forme de B (hypersphères, hypercubes, etc.
Graine aléatoireUne graine aléatoire (aussi appelée germe aléatoire) est un nombre utilisé pour l'initialisation d'un générateur de nombres pseudo-aléatoires. Toute la suite de nombres aléatoires produits par le générateur découle de façon déterministe de la valeur de la graine. Par contre, deux graines différentes produiront des suites de nombres aléatoires complètement différentes. Le choix d'une graine aléatoire est une étape cruciale en cryptologie et en sécurité informatique.
Nombre normalEn mathématiques, un nombre normal en base 10 est un nombre réel tel que dans la suite de ses décimales, toute suite finie de décimales consécutives (ou séquence) apparaît avec la même fréquence limite que n'importe laquelle des séquences de même longueur. Par exemple, la séquence 1789 y apparaît avec une fréquence limite 1/10 000. Émile Borel les a ainsi nommés lors de sa démonstration du fait que presque tout réel possède cette propriété. Notons l'ensemble des chiffres en base , et soit un nombre réel.
Pseudo-aléatoirethumb|Représentation graphique d'une suite pseudoaléatoire. Le terme pseudo-aléatoire est utilisé en mathématiques et en informatique pour désigner une suite de nombres qui s'approche d'un aléa statistiquement parfait. Les procédés algorithmiques utilisés pour la créer et les sources employées font que la suite ne peut être complètement considérée comme aléatoire. La majorité des nombres pseudo-aléatoires en informatique sont créés à partir d'algorithmes qui produisent une séquence de nombres présentant certaines propriétés du hasard.
RandomizationRandomization is the process of making something random. Randomization is not haphazard; instead, a random process is a sequence of random variables describing a process whose outcomes do not follow a deterministic pattern, but follow an evolution described by probability distributions. For example, a random sample of individuals from a population refers to a sample where every individual has a known probability of being sampled. This would be contrasted with nonprobability sampling where arbitrary individuals are selected.