J'ai (enfin) fini de lire Cryptonomicon de Neal Stephenson. Si les scénaristes de films et séries télé pouvaient avoir la même approche vis-à-vis de la crypto, voire de la sécurité, de l'informatique et des maths en général que dans ce bouquin on ferait un grand pas dans la démystification. On sent l'auteur qui s'est informé au lieu d'écrire des âneries.
L'intrigue est suffisamment captivante pour les 900 pages de l'édition que j'ai lue, avec les histoires d'une petite dizaine de personnes qui s'entre-mêlent entre l'époque contemporaine et la seconde guerre mondiale. Mon personnage préféré est sans doute Lawrence Waterhouse, un cryptanalyste légèrement autiste qui élabore une modélisation mathématique de la frustration sexuelle, entre deux cryptosystèmes à casser (son petit-fils, hacker cypherpunk n'est pas mal non plus).
En bonus dans le bouquin se trouve la description d'un véritable stream-cipher appelé solitaire qui s'utilise sans ordinateur, avec un simple jeu de 54 cartes. Dommage qu'il soit biaisé, le mode opératoire est amusant et on atteint tout de même une taille de clef potentielle de 237 bits.
Ok, c'était ça le Cryptonomicon dont tu parlais de temps en temps. Et donc ça veut dire que ça vaut le coup (voire le coût ?). Rajouté à la To-Read list.
Bravo, je pensais que tu allais mettre plus de temps, surtout en VO. Et le prochain Stephenson ? L'âge de diamant a l'air assez space et Zodiac est plus un polar, moins SF. Sinon pour le cryptage par solitaire, je me suis accroché pour lire l'algo, et je suppose que l'intérêt est juste de générer des nombres entre 1 et 26 de la façon la plus aléatoire possible, c'est ça ? Ensuite le fait que ça soit reversible ou pas par exemple, ça dépasse mon entendement actuel, mais on dirait que si c'est réversible c'est mieux, bon soit.
Est-ce quelqu'un aurait une URL qui explique sans trop de prérequis en quoi le fait que ce soit biaisé pose un problème ? Parce que techniquement le machin me donne l'impression d'être juste un générateur de nombres pseudo-aléatoire(s) (je ne sais jamais si c'est le générateur ou les nombres qui sont (pseudo-)aléatoire(s)), et donc je vois en quoi un biais peut être gênant dans certaines utilisations, mais pour la crypto', je ne vois. Quelqu'un a une lanterne ?
Les nombres pseudo-aléatoires produits sont ajoutés au texte clair pour produire le chiffré, à la One-Time-Pad. Si les nombres produits présentent un biais, un adversaire pourra distinguer le flux d'un flux aléatoire, or c'est un propriété que l'on demande pour assurer la sécurité du système. Ça ne veut pas dire qu'en pratique tu vas pouvoir tout facilement déchiffrer, mais un tel biais est une faiblesse trop forte pour envisager d'utiliser sérieusement un tel système.
J'ai encore du mal à voir en quoi avoir un flux distinguable d'un flux aléatoire pose problème pour la sécurité du système. En fait je pensais même qu'on partait de l'hypothèse que l'adversaire sait exactement quel système a été employé, donc qu'il puisse constater que le flux n'est pas aléatoire mais est un flux construit par telle technique ne me semble pas donner d'information qu'il n'a pas déjà. Où est-ce que j'ai faux ?
L'adversaire connait l'algorithme mais pas la clef (l'état initial dans ce système) donc il ne peut pas reproduire le flux. Et le fait de pouvoir distinguer le flux d'un flux aléatoire rend le système vulnérable aux attaques par distingueur. Prends un cas extrême de biais dans un flux binaire, où le flux produit contient massivement plus de 1 que de 0: si tu sais qu'en dessous c'est du texte fraçais tu n'as aucun mal à déchiffrer. Et la philosophie c'est qu'un petit biais c'est déjà trop.