Avantages de ~ d'intimité de réseau et inconvénients sans fil du chiffrage RC4
Comme précédemment mentionné, RC4 est un algorithme de chiffrage employé pour brouiller des données tellement complètement que cela prendrait des années au déchiffrement en utilisant la technologie courante. Ce qui fait RC4 si puissant est sa vitesse et force. Pour analyser RC4, nous devons d'abord commencer par quelques définitions. AlgorithmeUn algorithme est un ensemble explicite d'instructions qui ont un point commençant et final défini. Par exemple, les instructions que vous suivriez pour installer un magnétoscope sont considérées un algorithme (bien que certains pourraient discuter ceci). En réalité, vous exécutez des étapes algorithmiques toute l'heure. Tout de mettre en marche une voiture à faire un gâteau peut être défini par un algorithme. Cryptology (Encryption/Decryption)Le cryptology est l'étude des algorithmes de chiffrage et de déchiffrage. Le chiffrage est simplement le brouillage d'un message ou des données par l'utilisation d'un algorithme ; l'opposé de ceci est déchiffrage. Le chiffrage est typiquement accompli avec l'aide d'un morceau externe de données, qui viennent souvent sous forme d'expression utilisateur-choisie de mot de passe ou de passage. Ceci rend non seulement le chiffrage plus fort en imposant une clef unique, mais il garde également n'importe qui qui ne sait pas le mot de passe d'accéder aux données. Il y a deux types principaux de chiffrage : symétrique et asymétrique. Chacun a ses forces et faiblesses et est plus adapté aux applications spécifiques. Chiffrage SymétriqueLes procédés symétriques tous les deux de chiffrage et de déchiffrage sont accomplis en utilisant la même clef. C'est la forme la plus répandue de chiffrage. Comme exemple, laissez-nous chiffrent la radio de mot.
Vous avez maintenant exécuté un algorithme de chiffrage sur la radio de mot ; pour déchiffrer le texte chiffré, simplement étape par l'algorithme précédent à l'envers l'ordre.
Cet algorithme est un bon exemple de la façon dont les ordinateurs ont révolutionné le chiffrage de données. À la main, ce type de traitement aurait besoin de des heures pour même le plus simple et le plus court des messages. Cependant, donnez un ordinateur que ceci chargent, et cela prendra des secondes pour déchiffrer la valeur d'une page des données. Comme mentionné précédemment, les utilisations symétriques de chiffrage passent des expressions ou des mots clés pour l'aider dans le chiffrage d'un message. En utilisant l'exemple précédent, nous chiffrerons maintenant la radio de mot en utilisant le wep de mot.
Ainsi, vous avez maintenant un exemple de chiffrage symétrique. Pour le déchiffrer, vous devriez savoir (ou déduire) que la clef était wep. Bien que notre exemple ait employé un mot court, imaginez le rendement d'une page-longue clef. Les résultats seraient une longue corde des nombres qui n'ont rien à faire avec la valeur originale, et demeureraient sans valeur sans wep de mot de passe. Le chiffrage symétrique est beaucoup plus rapide que le chiffrage asymétrique. Cependant, la difficulté avec le chiffrage symétrique est que sa sécurité dépend de maintenir son mot de passe secret. Chiffrage AsymétriqueL'autre type de chiffrage est connu en tant que chiffrage asymétrique. Ce chiffrage est beaucoup plus complexe, mais il a le potentiel d'être plus bloqué. Un nombre de plus en plus important des applications incorporent ce type de sécurité. Les applications d'email, le VPNs, les PKI, et même les fournisseurs de service d'application emploient le chiffrage asymétrique. Le chiffrage asymétrique exige l'utilisation de deux clefs, d'un public et d'un privés. Chaque clef exige l'utilisation de l'autre de déchiffrer un message. En d'autres termes, imaginez que votre patron veut vous envoyer un message bloqué, et pour être assez confiant que seulement vous pouvez l'ouvrir. Elle pourrait sceller le message dans une boîte à l'aide d'un cadenas pour lequel seulement vous prenez la clef. Ainsi, sans votre clef privée, ne pas égaliser votre patron peut rouvrir le message après qu'il soit fixé. Notez que le chiffrage asymétrique exige de chacun d'avoir accès à une copie de votre "serrure publique," également connu comme clef publique. Typiquement, cette information est fournie par un serveur central ou un emplacement de Web et peut être recherchée avec l'effort minimal. Cependant, cette étape un supplémentaire augmente le niveau de la complexité juste assez pour limiter l'adoption universelle du chiffrage asymétrique. Inconvénients de chiffrageIl y a les avantages multiples avec le chiffrage. Par exemple, il peut être employé pour authentifier des utilisateurs, pour autoriser l'accès aux ressources, pour assurer la confidentialité de données, et pour garantir la intégrité des données. Il peut également être employé pour fournir le nonrepudiation pour des transactions. Cependant, il y a également plusieurs inconvénients potentiels avec le chiffrage. Ces inconvénients incluent des mots de passe perdus, un sens faux de sécurité, et les frais généraux de traitement d'employer le chiffrage. Cette section abordera brièvement ces questions comme elles s'appliquent à la gestion de réseau sans fil. Mot de passe PerduEst un problème avec le chiffrage ce qui à faire en cas d'un mot de passe perdu. Dans ce cas-ci, la seule option doit trouver une méthode de fendre le mot de passe. Cependant, selon la méthode de chiffrage, ce pourrait être beaucoup d'années avant que vous extrayiez n'importe quelles données. En outre, quelques pays, y compris les Etats-Unis, considèrent même l'acte de fendre un mot de passe illégal—même si les données appartiennent à vous. Demandez juste au chercheur Dmitry Sklyarov, un programmeur de sécurité pour la compagnie russe Elcomsoft. À la demande des systèmes d'adobe, le FBI a de façon controversée arrêté Sklyarov après qu'il ait donné une présentation d'universitaire sur le rétablissement de mot de passe. Employer Le Chiffrage Ne garantit pas La SécuritéLa deuxième issue est l'une des plus grandes menaces aux utilisateurs sans fil. Beaucoup de gens considèrent comme étant leurs réseaux bloqués basés seulement sur le fait qu'elles emploient WEP. Cette prétention est défectueuse, car le mot de passe est habituellement laissé le blanc ou comme défaut. En outre, WEP ne se protège pas contre la plupart des attaques traditionnelles d'intrus. En conclusion, WEP lui-même est fondamentalement défectueux. Je vous encourage à employer WEP, mais ne l'emploie jamais en tant que votre seulement ligne de la défense. Les clefs de Password/shared-secret-based sont seulement aussi bonnes que l'humain qui les crée. Si des mots de passe sont facilement devinés ou apparaissent dans un dictionnaire, alors il est bien plus facile à guess/lookup le password/key que la brute-force le keyspace entier. Ceci s'applique à tous les systèmes d'authentication/crypto basés par mot de passe. En plus, si un crypto système a les pailles algorithmiques ou les pailles d'exécution, le crypto peut être évité. WEP est un exemple d'un bon chiffre (RC4) mis en application mal. RC4 peut être dû inefficace rendu aux pailles d'exécution dans WEP. Chiffrage AérienLa dernière issue s'applique également à la gestion de réseau sans fil—les frais généraux ou le temps- CPU qu'elle prend pour chiffrer et pour déchiffrer des données de réseau. Ces frais généraux peuvent avoir un impact sérieux sur la productivité d'une application de réseau, et peuvent avoir des résultats nuisibles dans des situations temps-critiques. N'importe quel chiffrage s'ajoute au-dessus aux conditions de traitement d'un système de gestion de réseau. Le chiffrage retarde le processus de transmission et peut également compromettre la capacité des processeurs de dispositif de réseau de traiter d'autres fonctions de critical/needed. ChiffresEn discutant le chiffrage symétrique, il y a deux méthodes principales par lesquelles un gros morceau des données peut être chiffré. Il est important de comprendre les différences et les avantages de la façon dont ils travaillent afin de comprendre comment RC4 chiffre des données. BlocUn chiffre de bloc (tel que le DES ou le 3DES) prend un grand gros morceau des données et le chiffre avec la clef. Ce processus est répété à plusieurs reprises encore jusqu'à ce que le message entier soit complètement chiffré. En général il y a une variable de taille cette des commandes comment grand le gros morceau des données peut être. Indépendamment de la taille, la clef entière est employée pour chiffrer le gros morceau des données. Par exemple, supposez que vous voulez envoyer à votre patron un email en utilisant un chiffre de bloc. Dans ce cas-ci, vous entreriez un mot de passe, et le message entier serait chiffré en même temps. L'équation suivante illustre la simplicité de ce type de chiffrage, aussi bien que sa faiblesse. Chiffrez la fonction (les données, passent l'expression) = produit Notez que l'expression entière de passage est employée chaque fois sous son forme originale pour chiffrer les données. Avec l'utilisation continue, un chiffre de bloc est fonctionellement faible. Si même deux blocs sont chiffrés avec le même chiffre, l'expression de passage pourrait être extraite à partir du texte chiffré. En d'autres termes, si un attaquant peut déterminer les données originales de juste un message, il peut comparer le texte chiffré au plaintext et calculer la différence. Cette différence serait alors le code pour fendre tous les futurs messages chiffrés. En outre, les deux messages peuvent être analysés et comparés. Selon la méthode de chiffrage, les deux messages peuvent être fusionnés, qui décommanderaient hors du chiffrage, et fournissent essentiellement un intrus toute l'information qu'il doit regarder les données. Chiffre De JetUn chiffre de jet emploie également une expression de passage. Cependant, il chiffre des données sur une échelle beaucoup plus petite. Considérant qu'un chiffre de bloc pourrait chiffrer une page entière de texte en même temps, un chiffre de jet peut chiffrer le peu qui composent une lettre d'une page de texte. Pour illustrer, la lettre A est équivalente à la valeur décimale de 65, qui peuvent être convertis en un byte, qui alternativement est composé de huit bits. Un chiffre de jet peut chiffrer ce un bit avant de l'envoyer dehors, et répète le chiffrage sept fois supplémentaires pour juste une lettre. Ceci peut avoir comme conséquence les milliers de valeurs chiffrées pour un email ou un message complet. Un chiffre coulant est capable du chiffrage à un niveau détaillé parce qu'il emploie un état d'état, en plus de l'expression et des données de passage. Ceci signifie que les données sont chiffrées différemment pour chaque gros morceau qui traverse le programme de chiffrage. Pour exécuter un chiffre de jet, deux jets sont produits, un qui introduisent dans l'autre. Le premier jet s'appelle le jet principal, qui combine une valeur d'état, la valeur de données, et la valeur d'expression de passage pour produire d'un jet changeant aléatoirement des données. Le jet principal alternativement est employé pour produire le chiffre de rendement en combinant la nouvelle valeur d'état (du jet principal), la valeur de données, et la valeur de clef. Mathématiquement, ceci est accompli en utilisant deux fonctions, par rapport à l'une fonction d'un chiffre de bloc. Ceci peut être dépeint comme montré dans la section suivante. Chiffre De Jet De art de l'auto-portrait-synchronizingCe qui suit sont les deux fonctions du chiffre de jet de art de l'auto-portrait-synchronizing : État Time+1 = Temps De Function(State D'État, Temps De Données, Temps Produit De Temps De Mot de passe) = Temps De Function(State De Chiffre, Temps De Données, Temps De Mot de passe) Comme illustré, le rendement dépend maintenant de trois variables, dont deux changeront (le mot de passe est constant). La première fonction est connue comme générateur principal de jet, et la seconde est la fonction de chiffre. La force de ce type de chiffrage est trouvée dans le fait qu'il y a maintenant deux variables qui changent. Par conséquent, même s'il y a une valeur prévisible dans les données, l'état sera aléatoirement différent, qui diminue de manière significative les chances d'un attaquant pouvant extraire des données appropriées à partir du chiffre. Il y a des variations d'un couple des chiffres de jet que nous devons définir avant que nous discutions des faiblesses avec l'exécution du chiffre RC4 dans WEP. Celles-ci sont connues pendant que le jet synchrone chiffre et les chiffres de jet de art de l'auto-portrait-synchronizing. La différence entre les deux est trouvée dedans si le jet principal se fonde sur les données pour produire le jet. L'exemple précédent illustre comment un jet de art de l'auto-portrait-synchronizing chiffre, car il se fonde sur les données pour produire le jet principal. En revanche, l'exemple suivant illustre comment un chiffre synchrone de jet crée le rendement. Dans ce type de chiffre, les deux premières fonctions combinées sont considérées le générateur principal de jet. - Stream-2 : État Synchrone De Chiffre De Jet Time+1 = Temps De Function(State D'État, Temps De Valeur De Jet De Temps De Mot de passe) = Temps De Keystream Function(State, Temps Produit De Temps De Mot de passe) = Temps De Valeur De Function(Stream De Chiffre, Temps De Données) Bien que le chiffre synchrone pourrait sembler plus compliqué, il est réellement plus faible que le chiffre de art de l'auto-portrait-synchronizing. Notification de la dernière fonction de ce type de chiffre que seulement un "" valeur inconnue est nécessaire pour renverser le chiffrage. D'autre part, le chiffrage de art de l'auto-portrait-synchronizing emploie trois variables. Les fonctions précédentes représentent un processus par lequel les données sont combinées. Ce processus peut être composé de n'importe quoi qui s'étend des calculs mathématiques complexes à une addition simple des deux valeurs. Dans notre cas, parce que RC4 la dernière fonction est un procédé binaire d'addition de XOR. La volonté suivante expliquent la fonction de XOR, car elle est employée pour produire le texte chiffré RC4 final. XORXOR est une opération logique simple. Dans notre cas, il sert d'arrangement rudimentaire de chiffrage qui combine un segment des données avec des autres pour produire un résultat brouillé. XOR est l'une des méthodes les plus populaires pour chiffrer des données en raison de sa vitesse et du fait que cela fonctionne au niveau de peu. Pour comprendre XOR, vous devez comprendre des structures de logique. Voyez si vous pouvez déterminer comment le peu final est calculé
De cet exemple, vous devriez pouvoir déterminer un modèle. En comparant le peu du byte 1 au peu correspondant du byte de XOR, vous pouvez rapidement déduire l'algorithme. Quand il y a les caractères semblables de peu (par exemple, 0 - 0, 1 - 1) le peu résultant est un 0, et quand il y a différents caractères de peu (par exemple, 0 - 1, 1 -0) le peu résultant est un 1.
Bien que ce type de chiffrage soit rapide et fonctionne au niveau de peu, il est problématique. Illustrons, examinent le calcul de XOR d'une série de deux bytes. La première volonté XOR la valeur binaire de la lettre A, et la volonté XOR de seconde la valeur de la NULLE (c'est-à-dire, zéro), chacun employant le byte de XOR de 1111111
La lettre A est transformée en valeur complètement différente, qui s'avère justement être équivalente au tilde (~) dans ACSII. Cependant, la valeur résultante est identique comme la clef de XOR ! En d'autres termes, si un attaquant peut déterminer qu'un gros morceau des données est NUL, il peut rapidement déterminer le XOR verouillent utilisé pour chiffrer ce morceau particulier de code. Bien que ce soit une question concernant la sécurité, dans une exécution appropriée de RC4, la valeur d'état devrait aléatoirement changer, qui change alors la clef de XOR. Par conséquent, toute transposition de la valeur de XOR se produirait aléatoirement, et serait impossible presque à prévoir. Par exemple, si la clef au temps 1 était 10101010, et les données étaient 01010101, la valeur résultante seraient 11111111. Cette valeur serait identique si au temps 2 la clef était 11111111 et les données étaient 00000000.
Comme vous pouvez voir de la table, un attaquant n'aurait aucune manière de savoir si la valeur résultante était un résultat d'un caractère NUL ou le résultat d'un morceau valide de données. Cependant, c'est non pertinent si l'attaquant peut déterminer quels paquets des données ont contenu les caractères NULS. c'est un article supplémentaire par Brian Rodrigues
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|