私は(ディレクトリが良い場合)即座にファイルを暗号化して復号化し、cliを介して1つのプロセスでのみ実行するプログラムを探しています。私が見るにはsudoのように動作するはずです。実行するとcat $crypted_file
(スーパーユーザーモードでも)暗号化されたバイトのみが表示され、実行するとprogram cat $crypted_file
ファイルを読み取ることができます。上部はフォルダ全体(またはパーティション)を暗号化し、コマンドを介してのみprogram bash
読み取ることができます。そんなことがありますか?
答え1
解決策gpg
は、ファイルを標準出力に復号化し、それをプログラムにパイプすることです。これにはプログラムの読み取りが必要ですstdin
が、そうでない可能性があります。私のシステムにこれのエイリアスを作成しました。
$ gpg -q --output -
$ alias gpgcat='gpg -q --output -'
それから...
$ gpgcat encryptedfile.gpg | ./myprogram
user236012のコメントに基づいて、次のOpenSSLの代替案を作成できます。
$ echo "Hello, World!" > secrets.txt
$ openssl aes-256-cbc -a -salt -in secrets.txt -out secrets.txt.enc
$ openssl aes-256-cbc -d -a -in secrets.txt.enc
Hello, World!
復号化に興味があるため、最後のエイリアスが1つ必要になる場合があります。
$ alias opensslcat='openssl aes-256-cbc -d -a -in'
(これは使用したくないパスワードとソルトオプションを定義します。)
また、多くのプログラムが-
標準入力を表すファイル引数を受け入れることを覚えておいてください。たとえば、
$ gpgcat MyBigSecret.gpg | gzip - > NoMoreSecret.gz
ここではgzip
暗号化されていないバージョンのファイルを入手し、解凍して結果を読み取ることができますgzip -dc NoMoreSecret.gz
。