ファイルを組み込みデバイスに送信するための暗号化スキームを考案しています。開発者は共有公開鍵を介してログインできるため、この同じ鍵を使用して、送信されたファイルを暗号化/復号化することは理にかなっています。ファイルは開発者によってのみパッケージ化されるため、この公開鍵は決して配布されません。
送信されるファイルは、NSA の品質などではなく、解読を困難にするのに十分なだけ安全である必要があります。
次のようなものを使用して暗号化/復号化できます。
cat file | openssl [-d] aes-256-cbc -kfile path/to/public/key > outfile.aes
サーバーコードでこれを行いたいことを除いて、これはうまく機能しています。シェルアウトすることもできますが、コードで行うほうがよいでしょう。
キーから base64 データを取得しましたが、デコードすると 279 バイトの配列が得られますが、256 ビットのキー (32 バイト) が必要です。
openssl はキーファイルに対して正確に何を行い、コードでそれをどのようにエミュレートできますか?
を試しman openssl
ましたが、有用なものは見つかりませんでした。
問題がある場合は、Go でこれを行っています。