| Security Tips | ||
|
OpenSSLを使って公開鍵暗号でファイルを暗号化 りょうわあきら |
||
共通鍵暗号方式では、暗号化の際に鍵となるパスワードを手動で入力する必要がある。これはシェルスクリプトなどで指定ファイルを自動的に暗号化して保護したいような場合、例えばログローテーションの際に自動的にログを暗号化して保存するといったような用途では障害になる。パスワードをコマンドライン引数として渡すこともできるが、そうするとそこから鍵が漏えいする危険性が極めて高いため、やめた方がよい。そのような場合には、公開鍵暗号方式の使用をお勧めする。
公開鍵方式を使用するコマンドとしてはGnuPGコマンドが広く知られているが、opensslのsmimeコマンドを使用しても同様に暗号化を行うことができる。
S/MIME用公開鍵証明書をsmime.cer、これに対応するRSA秘密鍵をsmime.keyとする。鍵の対は暗号化を行うシステムとは別の信頼の置けるシステム上で作成し、公開鍵だけを暗号化を実行するシステムにコピーしておく。対象ファイルをoriginal.txt、暗号化後のファイルをencrypted.txtとすると、以下のコマンドで暗号化を実行できる。公開鍵を用いるので、暗号化は自動で完了しパスワードなどは要求されない。
$ openssl smime -encrypt -aes256
-in original.txt -out encrypted.txt smime.cer
|
一方、暗号化したファイルを復号する場合には、以下のようなコマンドを実行すればよい。秘密鍵がパスフレーズを鍵にして暗号化されている場合は、引き続いてパスフレーズを入力すると元のデータが復号される。
$ openssl smime -decrypt -aes256
-in encrypted.txt -out original.txt -inkey smime.key -recip smime.cer |
秘密鍵のファイルは設定ミスや侵害によって漏えいしないように、システム上には保存せずUSBメモリなどのリムーバブルメディアに書き出して常に持ち歩くようにするとよい。このような運用をすれば、秘密鍵の不正使用防止にもつながる。
| Security Tips Index |
TechTargetジャパン
- 実録、「Hardening Zero」の舞台裏 (2012/5/25)
コラムの更新頻度を落として何をやっていたかって? 「守る技術」に焦点を当てたこんなイベントを開催しました - 複雑化、巧妙化する脅威への対策は? (2012/5/23)
データ保護や標的型攻撃対策、クラウドセキュリティ……「第9回 情報セキュリティEXPO」の会場で見つけた製品を一挙に紹介 - 仮想化がはらむ新たなリスク (2012/5/17)
仮想化に伴って生じるセキュリティやパフォーマンスへの影響を慎重に考慮し、うまく制御していく方法を紹介します - 新入生も新入社員も勉強会に寄っといで! (2012/5/14)
週末ともなれば至るところでセキュリティ系勉強会やCTFなどのイベントがあり、ツイートも盛り上がりました
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -
