защита файла на диске с помощью защиты паролем. Шифрованный ssl-шифр и просмотр файла более защищенным способом.

Я пытался расшифровать файл для стандартного вывода и передал его содержимое в заданную команду. например, команда cat , команда wc и т. д. Однако я почувствовал, что следующая команда может быть упрощена, любые дальнейшие мысли?

 echo "openssl enc -aes-256-cbc -in "$(read -p "enter file:" fp && echo \"$fp\")" -k "$(read -s -p "enter passwd:" pswd && echo \"$pswd\")" -d | "$(read -p "enter command:" cmd && echo \"$cmd\")" " | xargs -0 -I{} /usr/bin/bash -c {} 

для полноты, команды для шифрования и дешифрования файла, например.

шифровать файл (защищенный паролем)

 openssl enc -aes-256-cbc -in in.txt -out out.txt -e 

расшифровать файл

 openssl enc -aes-256-cbc -in out.txt -k hello -d 

конечно, мы могли бы использовать любой поддерживаемый шифр.

  • Ошибка загрузки ядра 4.5.0-rc1 на зашифрованном жестком диске
  • Где хранятся пароли и как они шифруются в OS X?
  • монтировать другой зашифрованный том при неправильном вводе пароля
  • Как перенести папку, зашифрованную с помощью eCryptfs, в EncFS
  • Быстрое шифрование для домашнего каталога с Scientific Linux (ala 'RedHat)
  • Как я могу зашифровать устройство с помощью loop-aes под Linux?
  • SSD-шифрование / dm-crypt
  • Системное шифрование Dm-Crypt с разными ключами для каждого пользователя
  • One Solution collect form web for “защита файла на диске с помощью защиты паролем. Шифрованный ssl-шифр и просмотр файла более защищенным способом.”

    Вы делаете это излишне сложным. Вам просто нужно несколько полезных псевдонимов:

     alias enc='openssl enc -aes-256-cbc -in "$@"' alias dec='openssl enc -d -aes-256-cbc -in "$@"' 

    Если вы не дадите openssl пароль или ключ, он предложит вам его, что означает, что вам не нужно его вносить в вашу команду.

    Чтобы зашифровать файл:

     enc foo > foo.enc 

    Чтобы расшифровать файл:

     dec foo.enc 

    Который, естественно, может быть подключен к другим командам:

     dec foo.enc | wc -l 
    Linux и Unix - лучшая ОС в мире.