openssl は、パスワードの代わりに AES 256 キーを指定して暗号化します。

openssl は、パスワードの代わりに AES 256 キーを指定して暗号化します。

バックエンドコードでは構成が必要なため、aes-256-ecbを使用して一部のデータを暗号化する必要があります。パスワードから派生したキーを使用して暗号化できます。

openssl enc -p -aes-256-ecb -nosalt -pbkdf2 -base64 -in data-plain.txt -out data-encrypted.txt | sed 's/key=//g'

その後、派生キーを使用して暗号化し、コンソールにキーを印刷します。

ただし、生成されたキーを使用してこれを行う方法を見つけることはできません。たとえば、次のようになります。

  1. 次のコマンドを使用して256ビットキーを生成します。

    openssl rand -base64 32 > key.data

  2. その後、このキーは暗号化プロセス中に使用されます。たとえば、次のようになります。

    openssl enc -p -aes-256-ecb-キー=キー。データ-nosalt -pbkdf2 -base64 -in data-plain.txt -out data-encrypted.txt

可能ですか?

答え1

指定された16進キーを使用する必要があります-K-iv特定のパスワードと動作モードのIVも指定する必要があります。-nopad生のAESブロック(つまりパディングなし)を復号化する場合は、ECB復号化も追加する必要があります。複数のブロックを暗号化するために使用される場合、ECBは非常に安全ではありません。

関連情報