どうも、たくチャレ(@takuchalle)です。

AES256で暗号・復号を行うために 256bit長の鍵が必要になります。

鍵は第三者にバレなければいいので中身は何でも良いですが、当然推測されにくいものが良いです。

ここでは Linux のコマンドラインでランダムなバイナリ列を生成する方法を紹介します。

openssl コマンドを使用する方法

$ openssl rand -base64 1000 | dd of=sample.key bs=32 count=1

opensslコマンドのrandddコマンドを使ってランダムなバイナリ列を生成する方法です。256bit 長(32byte)ですので、ddコマンドに32を指定しています。

sample.keyに 256bit 長のバイナリ列が生成されます。

/dev/urandom を使用する方法

$ dd if=/dev/urandom of=sample.key bs=32 count=1

こちらでは/dev/urandomからランダムなバイナリ列を生成する方法です。

ddコマンドを使用しないでもheadコマンドで先頭の32byteを取ってくる方法でもできます。

$ head -c 32 /dev/urandom > sample.key

まとめ

今回紹介した方法のいずれかでAES256用の鍵を生成することができます。

Go 言語で AES 暗号を行う方法で紹介した鍵は脆弱すぎるので今回紹介した方法で生成した鍵を使うことをオススメします。

同じカテゴリの記事