Comment nous utilisons l'ordinateur comme générateur de nombres aléatoires

générateur de nombres aléatoires Les ordinateurs génèrent un nombre aléatoire pour tout, de la cryptographie aux jeux vidéo et aux jeux d'argent. Il existe deux catégories de nombres aléatoires - vrai nombres aléatoires et nombres pseudo-aléatoires. Et la différence est importante pour la sécurité des systèmes de cryptage. Dans cet article, nous allons parler de la façon dont nous utilisons l'ordinateur comme générateur de nombres aléatoires. Commençons!





Ce sujet est devenu plus controversé récemment, et de nombreuses personnes se demandent si la puce de générateur de nombres aléatoires intégrée à Intel est digne de confiance ou non. Pour comprendre pourquoi cela n'est pas digne de confiance, vous devrez comprendre. C'est ainsi que les nombres aléatoires sont générés en premier lieu et à quoi ils servent.



À quoi servent les nombres aléatoires | générateur de nombres aléatoires

Les nombres aléatoires sont utilisés depuis des milliers d'années. Qu'il s'agisse de lancer une pièce ou de lancer un dé, le but est de laisser le résultat final au hasard. Le générateur de nombres aléatoires dans un ordinateur est similaire. Ils tentent d'obtenir un résultat aléatoire et imprévisible.

Les générateurs de nombres aléatoires sont très utiles à de nombreuses fins différentes. Outre les applications évidentes telles que la génération de nombres aléatoires à des fins de jeu ou la création de résultats imprévisibles dans un jeu informatique, le caractère aléatoire est vraiment important pour la cryptographie.



La cryptographie nécessite des chiffres que les attaquants ne peuvent pas deviner. Nous ne pouvons pas simplement utiliser les mêmes chiffres encore et encore. Nous voulons générer ces chiffres de manière très imprévisible afin que les attaquants ne puissent pas les deviner. Ces nombres aléatoires sont importants pour un cryptage sécurisé. que vous cryptez vos propres fichiers ou que vous utilisez simplement un site HTTPS sur Internet.



Vrais nombres aléatoires | générateur de nombres aléatoires

Vous vous demandez peut-être comment un ordinateur peut générer un nombre aléatoire. Où est-ce hasard viens de? S'il ne s'agit que d'un morceau de code informatique, n'est-il pas possible que les nombres générés par l'ordinateur soient prévisibles?

Nous regroupons généralement les ordinateurs du nombre aléatoire généré en deux types. Cela dépend de la manière dont ils sont générés: Vrai nombres aléatoires et nombres pseudo-aléatoires.



magicien de canard malchanceux kodi

Pour générer un vrai nombre aléatoire, l'ordinateur mesure un certain type de phénomène physique qui a lieu à l'extérieur de l'ordinateur. Par exemple, l'ordinateur pourrait mesurer la désintégration radioactive d'un atome. Selon la théorie quantique, il n'y a aucun moyen de savoir avec certitude quand la désintégration radioactive se produira. Donc c'est essentiellement pur hasard de l'univers. Un attaquant ne serait pas en mesure de prédire le moment de la désintégration radioactive. Ils ne sauraient donc pas la valeur aléatoire.



Pour un exemple plus quotidien, l'ordinateur peut s'appuyer sur le bruit atmosphérique ou simplement utiliser l'heure exacte à laquelle vous appuyez sur les touches de votre clavier comme source de données ou d'entropie imprévisibles. Par exemple, votre ordinateur peut remarquer que vous avez appuyé sur une touche exactement à 0,23423523 secondes après 14 heures. Prenez suffisamment de temps spécifiques associés à ces pressions sur les touches et vous aurez une source d'entropie que vous pouvez utiliser pour générer un vrai nombre aléatoire. Vous n'êtes pas une machine prévisible. Un attaquant ne peut donc pas deviner le moment précis où vous appuyez sur ces touches. Le périphérique / dev / random sous Linux, qui génère des nombres aléatoires, blocs et ne renvoie pas de résultat tant qu'il n'a pas recueilli suffisamment d'entropie pour renvoyer un nombre vraiment aléatoire.

Nombres pseudo-aléatoires | générateur de nombres aléatoires

Les nombres pseudo-aléatoires sont une alternative à vrai nombres aléatoires. Un ordinateur pourrait utiliser une valeur de départ et un algorithme pour générer des nombres qui semblent aléatoires, mais qui sont en fait prévisibles. L'ordinateur ne collecte aucune donnée aléatoire de l'environnement.

Ce n'est pas nécessairement une mauvaise chose dans toutes les situations. Par exemple, si vous jouez à un jeu vidéo. Peu importe que les événements qui se produisent dans ce jeu soient causés par vrai nombres aléatoires ou nombres pseudo-aléatoires. D'autre part. Si vous utilisez le chiffrement, vous ne souhaitez pas utiliser de nombres pseudo-aléatoires qu'un attaquant pourrait deviner.

Par exemple, disons qu'un attaquant connaît l'algorithme et la valeur de départ qu'un générateur de nombres pseudo-aléatoires utilise. Et disons qu'un algorithme de chiffrement obtient un nombre pseudo-aléatoire de cet algorithme. Et l'utilise pour générer une clé de cryptage sans ajouter de caractère aléatoire supplémentaire. Si un attaquant en sait assez, il pourrait travailler en arrière et déterminer le nombre pseudo-aléatoire. L'algorithme de cryptage doit avoir choisi dans ce cas, rompant le cryptage.

La NSA et le générateur de nombres aléatoires de matériel d'Intel

Pour faciliter les choses pour les développeurs et aider à générer des nombres aléatoires sécurisés. Les puces Intel incluent un générateur de nombres aléatoires basé sur le matériel appelé RdRand. Cette puce utilise une source d'entropie sur le processeur et donne des nombres aléatoires au logiciel lorsque le logiciel les demande.

Le problème ici est que le générateur de nombres aléatoires est essentiellement une boîte noire et nous ne savons pas ce qui se passe à l'intérieur. Si RdRand contenait une porte dérobée NSA, le gouvernement serait en mesure de casser les clés de chiffrement. Cela a été généré avec uniquement les données fournies par ce générateur de nombres aléatoires.

C'est un problème sérieux. En décembre 2013, les développeurs de FreeBSD ont supprimé la prise en charge de l'utilisation directe de RdRand comme source d'aléatoire, affirmant qu'ils ne pouvaient pas lui faire confiance. [Source] La sortie du périphérique RdRand serait introduite dans un autre algorithme qui ajoute une entropie supplémentaire. Cela garantit que les portes dérobées du générateur de nombres aléatoires n'auraient pas d'importance. Linux fonctionnait déjà de cette manière, en randomisant davantage les données aléatoires provenant de RdRand afin qu'elles ne soient pas prévisibles même s'il y avait une porte dérobée. [Source] Dans une AMA récente ( Demande-moi n'importe quoi ) sur Reddit, le PDG d'Intel, Brian Krzanich, n'a pas répondu aux questions sur ces préoccupations. [La source]

Bien sûr, ce n'est probablement pas seulement un problème avec les puces Intel. Les développeurs de FreeBSD ont également appelé les puces de Via par leur nom. Cette controverse montre pourquoi il est si important de générer des nombres aléatoires qui sont vraiment aléatoires et non prévisibles.

Générer vrai nombres aléatoires, les générateurs de nombres aléatoires se rassemblent entropie, ou des données apparemment aléatoires du monde physique qui les entoure. Pour les nombres aléatoires qui ne vraiment doivent être aléatoires, ils peuvent simplement utiliser un algorithme et une valeur de départ.

Conclusion

D'accord, c'était tout le monde! J'espère que vous aimez cet article sur le générateur de nombres aléatoires et que vous le trouverez utile. Donnez-nous votre avis là-dessus. Aussi si vous souhaitez poser d'autres questions à ce sujet. Alors faites-le nous savoir dans la section commentaires ci-dessous. Nous vous répondrons dans les plus brefs délais.

comment installer les shaders minecraft windows 10

Passe une bonne journée!

Regarde aussi: NSFW: signification et fonctionnement réel