Lorsque vous mentionnez OpenSSL, SSL doit être mentionné en premier. Personne ne souhaite probablement que ses activités en ligne soient surveillées par d’autres utilisateurs d’Internet lorsque nous nous connectons quotidiennement. Par conséquent, un protocole est nécessaire pour protéger nos communications réseau. Le protocole SSL a été développé sur la base de ce contexte de travail. Il peut empêcher la communication entre l'utilisateur et l'application serveur d'être écoutée par des attaquants, et toujours authentifier le serveur et éventuellement authentifier l'utilisateur.
Normalement, le protocole SSL est construit sur le protocole TCP (Transport Layer Protocol) fiable. L'avantage du protocole SSL est qu'il est indépendant des protocoles de couche application de haut niveau (tels que HTTP, FTP, TELNET, etc.) peuvent être construits de manière transparente sur le protocole SSL. Avant la communication du protocole de couche application, le protocole SSL a déjà terminé le traitement des algorithmes de cryptage, la négociation des clés de communication et l'authentification du serveur. Toutes les données transmises via les protocoles de couche application seront cryptées pour garantir la confidentialité des communications.
sLe soi-disant cryptage n'est rien d'autre que la conversion du texte brut en texte chiffré via un mécanisme quelconque. Lors de la communication réseau, les mécanismes de sécurité de cryptage utilisés sont : le cryptage symétrique, le cryptage à clé publique et le cryptage unidirectionnel.
Caractéristiques et défauts du chiffrement symétrique : Le chiffrement et le déchiffrement utilisent la même clé pour diviser le texte brut en blocs de taille fixe et les chiffrer un par un. L'inconvénient est que les deux parties communicantes ont trop de clés à gérer et que la distribution des clés est difficile. Ses algorithmes de cryptage sont : DES, 3DES et AES.
Le cryptage à clé publique présente les caractéristiques suivantes : ses clés apparaissent par paires et les algorithmes de cryptage couramment utilisés incluent RSA et DSA. Ses utilisations sont : premièrement, pour l'authentification de l'identité : l'expéditeur utilise sa propre clé privée pour chiffrer les données, et le destinataire utilise sa clé publique pour déchiffrer, deuxièmement, pour l'échange de clés : l'expéditeur utilise la clé publique du destinataire pour chiffrer les données, et le destinataire utilise sa clé publique pour chiffrer les données. récepteur La partie le déchiffre en utilisant sa propre clé privée. La clé publique est extraite de la clé privée
Caractéristiques du chiffrement unidirectionnel : sortie directionnelle, avec effet avalanche. Les algorithmes de cryptage incluent MD5, SHA1, SHA256, SHA384 et SHA512. Caractéristiques couramment utilisées pour extraire des données.
Le 10 avril de cette année, le protocole de sécurité OpenSSL a révélé la faille de sécurité la plus grave de l'année, "Heartbleed". Faites en sorte que les gens commencent à prêter attention à ce protocole open source. Alors, qu’est-ce qu’OpenSSL exactement ? En fait, OpenSSL peut être considéré comme une bibliothèque SSL, composée de trois composants principaux : l'outil de ligne de commande polyvalent openssl, la bibliothèque publique de chiffrement libcrypto et la bibliothèque de protocole SSL libssl.多 Les outils de ligne de commande polyvalents OpenSSL peuvent être utilisés pour obtenir un cryptage symétrique
:Fichiers Opensl Enc -E -E -A -SALT -IN qui nécessitent des chemins de sortie de fichier cryptés -out -cryptés
Par exemple, utilisez l'algorithme DES3 pour chiffrer le fichier /etc/fstab : openssl enc -e -des3 -a -salt -in /etc/fstab -out /tmp/fstab
openssl enc -d - algorithme de chiffrement symétrique -a -salt -in fichier à déchiffrer -out chemin de sortie du fichier après le décryptage
Par exemple, décryptez le fichier crypté ci-dessus : openssl enc -d -des3 -a -salt -in /tmp/fstab -out /tmp/Fstab
Résultat du décryptage : Il peut également être utilisé pour l'échange de clés dans le cryptage à clé publique : (umask 077 ; openssl genrsa -out sortie clé privée Chemin du fichier) Extraire la clé publique de la clé privée : openssl rsa -in Chemin du fichier de clé privée - pubout
Il peut également être utilisé pour le
Cryptage unidirectionnel : openssl dgst -md5|-sha1 - out Chemin de sortie du fichier Le fichier à chiffrer
Par exemple, utilisez le cryptage md5 pour /etc/passwd : openssl dgst - md5 -out /tmp/md5passwd /etc/passwd peut également être utilisé pour générer mots de passe utilisateur : openssl passwd -1 -salt SALT_STRING mot de passe utilisateur
Il peut également être utilisé pour générer des nombres aléatoires : openssl rand -hex nombre d'octets
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!