Lorsque je crypte ou décrypte un fichier, je reçois *** WARNING : deprecated key derivation used.
Using -iter or -pbkdf2 would be better.
Je ne comprends pas ce que cela signifie, comment je devrais modifier mes procédures. Pourriez-vous m'aider? Je crypte avec openssl des3 <input >output.des3
et décrypte avec openssl des3 -d <input.des3 >output
À propos de l'environnement
Ubuntu 18.10
~$ openssl version
OpenSSL 1.1.1 11 Sep 2018
encryption
openssl
Tommy Pollák
la source
la source
openssl des3 -e -pbkdf2 < input > output.des3
etopenssl des3 -d -pbkdf2 < input.des3 > output
. Il se trouve que je suis également d'accord avec le premier commentaire selon lequel vous devriez utiliser un chiffrement de bloc différent au lieu de 3DES (DES date de 1977), un moyen facile de le faire est simplement de permuteraes256
là où vous en avez actuellementdes3
dans ces commandes, d'utiliser AES ( AES 256 bits répond aux normes de sécurité actuelles).Réponses:
En comparant le Synopsys des deux versions principales et récentes d'OpenSSL, permettez-moi de citer les pages de manuel.
OpenSSL 1.1.0
OpenSSL 1.1.1
Il y a évidemment de plus grandes différences, à savoir compte tenu de cette question, il manque ces deux commutateurs dans le 1.1.0:
pbkdf2
iter
Vous avez maintenant essentiellement deux options. Ignorez l'avertissement ou ajustez votre commande de chiffrement à quelque chose comme:
Où ces commutateurs:
-aes-256-cbc
est ce que vous devez utiliser pour une protection maximale ou la version 128 bits, le 3DES (Triple DES) a obtenu abandonné il y a quelque temps, voir Triple DES a été désapprouvée par le NIST en 2017 , alors que AES s'accéléré par les processeurs modernes par beaucoup; vous pouvez simplement vérifier si votre CPU dispose du jeu d'instructions AES-NI, par exemple en utilisantgrep aes /proc/cpuinfo
; gagner, gagner-md sha512
est la variante la plus rapide de la famille de fonctions SHA-2 par rapport à SHA-256 alors qu'elle pourrait être un peu plus sécurisée; gagner, gagner-pbkdf2
: utiliser l' algorithme PBKDF2 (fonction de dérivation de clé basée sur un mot de passe 2)-iter 100000
remplace le nombre d'itérations par défaut du mot de passe, en citant la page de manuel:la source
openssl enc -aes-256-cbc -md sha512 -pbkdf2 -iter 1000 -salt -in InputFilePath -out OutputFilePath
。-d
à la commande:openssl enc -aes-256-cbc -md sha512 -pbkdf2 -iter 1000 -salt -d -in InputFilePath
in the year 2000 the recommended minimum number of iterations was 1000, but the parameter is intended to be increased over time as CPU speeds increase
- je recommanderais donc entre 10 000 et 100 000 itérations plutôt que 1000.