web-dev-qa-db-fra.com

Comment changer le cryptage selon *** AVERTISSEMENT: dérivation de clé obsolète utilisée

Lorsque je chiffre ou déchiffre 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 changer les 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

4
Tommy Pollák

En comparant les Synopsys des deux versions principales et récentes d’OpenSSL, permettez-moi de citer les pages de manuel.

OpenSSL 1.1.0

openssl enc -ciphername [-help] [-ciphers] [-in filename] [-out filename] [-pass arg] [-e] [-d] [-a/-base64] [-A] [-k password] [-kfile filename] [-K key] [-iv IV] [-S salt] [-salt] [-nosalt] [-z] [-md digest] [-p] [-P] [-bufsize number] [-nopad] [-debug] [-none] [-engine id]

OpenSSL 1.1.1

openssl enc -cipher [-help] [-ciphers] [-in filename] [-out filename] [-pass arg] [-e] [-d] [-a] [-base64] [-A] [-k password] [-kfile filename] [-K key] [-iv IV] [-S salt] [-salt] [-nosalt] [-z] [-md digest] [-iter count] [-pbkdf2] [-p] [-P] [-bufsize number] [-nopad] [-debug] [-none] [-Rand file...] [-writerand file] [-engine id]

Il existe évidemment de plus grandes différences, à savoir si l'on considère cette question, il manque ces deux commutateurs dans la version 1.1.0:

  • pbkdf2

  • itername__


Vous avez essentiellement deux options maintenant. Ignorer l'avertissement ou ajuster votre commande de chiffrement à quelque chose comme:

openssl enc -aes-256-cbc -md sha512 -pbkdf2 -iter 1000 -salt -in InputFilePath -out OutputFilePath

Où ces commutateurs:

  • -aes-256-cbc est ce que vous devriez utiliser pour une protection maximale ou la version 128 bits, le 3DES (Triple DES) a été abandonné il y a quelque temps, alors que tous les processeurs modernes accélèrent AES. lot; vous pouvez simplement vérifier si votre CPU a le jeu d'instructions AES-NI , par exemple, à l'aide de grep aes /proc/cpuinfo; gagner, gagner

  • -md sha512est la variante la plus rapide de la famille de fonctions SHA-2 par rapport à SHA-256 alors que cela pourrait être un peu plus sécurisé; gagner, gagner

  • -pbkdf2: use PBKDF2 Algorithme (fonction de dérivation de clé basée sur le mot de passe 2)

  • -iter 1000 remplace le nombre par défaut d'itérations pour le mot de passe, en citant la page de manuel:

    Utilisez un nombre donné d'itérations sur le mot de passe pour dériver la clé de cryptage. Les valeurs élevées augmentent le temps nécessaire pour forcer brutalement le fichier résultant. Cette option permet d'utiliser l'algorithme PBKDF2 pour dériver la clé.

3
LinuxSecurityFreak