「OpenSSLコマンドを用いた共通鍵暗号」の版間の差分
提供: セキュリティ
(ページの作成:「<!-- vim: filetype=mediawiki --> __TOC__ == 概要 == ここでは、OpenSSL コマンドを用いて、共通鍵暗号のやり方を紹介します。 [[...」) |
|||
行22: | 行22: | ||
=== AES によるデータの暗号化と復号 === | === AES によるデータの暗号化と復号 === | ||
− | [[AES]] 128 で[[暗号化]]する例です。 | + | [[AES暗号|AES]] 128 で[[暗号化]]する例です。 |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
行40: | 行40: | ||
==== 共通鍵の準備 ==== | ==== 共通鍵の準備 ==== | ||
− | [[AES]]は、[[共通鍵暗号]]方式です。そのため、[[共通鍵]](パスワード)を事前に用意しておきます。 | + | [[AES暗号|AES]]は、[[共通鍵暗号]]方式です。そのため、[[共通鍵]](パスワード)を事前に用意しておきます。 |
ここでは、[[OpenSSL]] コマンドで[[共通鍵]]を作成します。 | ここでは、[[OpenSSL]] コマンドで[[共通鍵]]を作成します。 | ||
行78: | 行78: | ||
== 関連項目 == | == 関連項目 == | ||
+ | * [[AES暗号|AES]] | ||
* [[OpenSSLコマンドを用いた公開鍵暗号]] | * [[OpenSSLコマンドを用いた公開鍵暗号]] | ||
* [[OpenSSL]] | * [[OpenSSL]] | ||
* [[公開鍵暗号]] | * [[公開鍵暗号]] | ||
* [[RSA]] | * [[RSA]] |
2013年1月19日 (土) 14:26時点における版
目次
概要
ここでは、OpenSSL コマンドを用いて、共通鍵暗号のやり方を紹介します。
公開鍵暗号の場合は、OpenSSLコマンドを用いた公開鍵暗号をご参照下さい。
インストール
使い方
AES によるデータの暗号化と復号
echo hoge > file.txt openssl rand 32 -out rand.txt -base64 openssl enc -e -aes128 -kfile rand.txt -in file.txt -out file.aes128_64 -base64 openssl enc -d -aes128 -kfile rand.txt -in file.aes128_64 -base64
データの用意
暗号化するデータを用意します。これは、なんでも構いません。
echo hoge > file.txt
共通鍵の準備
AESは、共通鍵暗号方式です。そのため、共通鍵(パスワード)を事前に用意しておきます。
openssl rand 32 -out rand.txt -base64
データの暗号化
暗号化するデータは、 file.txt です。 暗号に使う共通鍵は、 rand.txt の1行目です。 暗号化したデータは、 file.aes128_64 に入ります。 暗号化したデータは、BASE64 エンコードします。
openssl enc -e -aes128 -kfile rand.txt -in file.txt -out file.aes128_64 -base64
暗号化したデータを BASE64 エンコードする必要がなければ、 -base64 のオプションは不要です。 暗号化するときに、-base64 を指定した場合、復号のときも-base64を指定します。
データの復号
復号する暗号化したデータは、 file.aes128_64 に入っています。 暗号に使う共通鍵は、 rand.txt の1行目です。 復号したデータは、標準出力に表示します。
openssl enc -d -aes128 -kfile rand.txt -in file.aes128_64 -base64
ファイルに出力する場合は、-out オプションを使って、ファイルに書き出します。
openssl enc -d -aes128 -kfile rand.txt -in file.aes128_64 -out file.aes128_64_decrypted -base64