« 機能は多い方がいい? | トップページ | 複数の設定ファイルを一度にバックアップ »

2005/05/05

どの暗号化アルゴリズムが安全?

現在のBunBackupは暗号アルゴリズムを選択することができませんので、直接BunBackupには関係ありませんが、どの暗号化アルゴリズムが安全なのかについて考えてみました。

古くから使われている暗号化アルゴリズムにDESというものがあります。
DESは古い暗号方法のため、いくつかの解読方法が発見されていて、現状では数十時間で解読可能といわれています。また鍵長が56bitと短いため、全数探索法にも弱いと考えられます。そのため、今後はDESのような古いアルゴリズムは使用しない方がいいと思います。

では、どの暗号化アルゴリズムが安全なのでしょうか?
まず、公開されていないアルゴリズムはあまり信用しない方がいいかもしれません。公開されていないということは、そのアルゴリズムを作成した人しか、安全性を確認していないことになります。もしかすると解読の専門家には簡単に解けてしまうアルゴリズムかもしれません。その点、公開されているアルゴリズムは、さまざまな専門家からチェックされていて、解読方法が発見されれば、それを一般に公開されますので、安全性が高いと考えられます。もちろん、解読方法を発見しても一般に公開されない場合もあると思いますが、より多くの人がチェックしているという意味では非公開のアルゴリズムよりは安全だと考えられます。

今後は、さまざまな解読方法に強く、ブロック長が128Byte以上のものが採用されていくと考えられます。基本的にはAESに採用されたRijndeal、またはAESの候補となったアルゴリズムなどが今後の主流になっていくと考えられます。
暗号アルゴリズム

どのアルゴリズムが安全なのかを考える前に、もっと考えなければいけないことがあります。
それは、情報を暗号化するときの「キー」を何にするかということです。どんなに安全性の高いアルゴリズムでも、キーがわかってしまえば簡単に解読できてしまうからです。
キーは忘れてしまうと、二度とその情報を復号化できなくなります。そのため、ついついキーを覚えやすいものにしてしまいますが、覚えやすいキーは逆に考えると推測されやすいキーといえます。

暗号を解読するための一つの方法として「辞書攻撃」というものがあります。辞書攻撃は一般的にキーによく使用される辞書を作成しておき、この辞書を使って総当たり的にキーを探していく方法です。実際、辞書攻撃をすると、30~40%のキーは推測できるといわれています。
そのため、キーに名前や地名、辞書にあるような単語、生年月日、またはそれらの組み合わせは使用するべきではありません。

キーを考える場合には、絶対に忘れないキーということは大前提ですが、できるだけ長く、辞書攻撃に強く、できるだけ他の人には意味不明な組み合わせにする必要があります。

|

« 機能は多い方がいい? | トップページ | 複数の設定ファイルを一度にバックアップ »

トラックバック


この記事へのトラックバック一覧です: どの暗号化アルゴリズムが安全?:

« 機能は多い方がいい? | トップページ | 複数の設定ファイルを一度にバックアップ »