Comment effectuer le cryptage et le déchiffrement dans les bases d'OpenSSL

WBOY
Libérer: 2023-05-22 09:20:06
avant
3254 Les gens l'ont consulté

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

Résultat du chiffrement :

Comment effectuer le cryptage et le déchiffrement dans les bases dOpenSSL

Décryptage :

openssl enc -d - algorithme de chiffrement symétrique -a -salt -in fichier à déchiffrer -out chemin de sortie du fichier après le décryptageComment effectuer le cryptage et le déchiffrement dans les bases dOpenSSL

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 :

Comment effectuer le cryptage et le déchiffrement dans les bases dOpenSSL

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)

Comment effectuer le cryptage et le déchiffrement dans les bases dOpenSSL

                                                                            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

Comment effectuer le cryptage et le déchiffrement dans les bases dOpenSSL

Par exemple, utilisez le cryptage md5 pour /etc/passwd : openssl dgst - md5 -out /tmp/md5passwd /etc/passwd

Comment effectuer le cryptage et le déchiffrement dans les bases dOpenSSL

peut également être utilisé pour générer mots de passe utilisateur : openssl passwd -1 -salt SALT_STRING mot de passe utilisateur

Comment effectuer le cryptage et le déchiffrement dans les bases dOpenSSL

Il peut également être utilisé pour générer des nombres aléatoires : openssl rand -hex nombre d'octets

Comment effectuer le cryptage et le déchiffrement dans les bases dOpenSSL

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!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal