よくある混乱の原因は、暗号化とアクセス制御の違い、およびAxCrypt 2のサインインの目的です。
アクセス制御
アクセス制御とは、特定のアイデンティティが上位の権限を持つ主体によって(認証されて)ファイルの読み取りなどの操作を実行するための権限が付与される仕組みです。
アクセス制御を機能させるためには、アイデンティティの主張が実際に正当であることを保証する認証が必要です。つまり、私が本当に自分が主張する人物であるということを確認する必要があります。また、その認証を行う主体(通常はオペレーティングシステムやサーバー)も必要です。
ネットワークサーバーやクラウドストレージにファイルを保存するなど、アクセス制御を使ってファイルへのアクセスを制限する場合、オペレーティングシステムやクラウドストレージサーバーが、ユーザーにパスワードなどの資格情報を要求してユーザーの身元を確認し、ファイルに設定した制限を適用する責任を負います。認証は、たとえば2要素認証を導入することでさらに強化できます。
しかし、結局のところ、これはソフトウェアがユーザーにアイデンティティの証明を求め、その情報に基づいてファイルに対する操作の可否を判断しているにすぎません。管理者権限を持つユーザーは常にこれらのルールを回避できてしまいます。なぜなら、それが管理者の定義だからです。また、データベースのバックアップなど、データにバックチャネル経由でアクセスできる者は、アクセス制御を無視するソフトウェアを使って管理者でなくてもデータにアクセスできます。
暗号化
暗号化は、あなたが誰であるかを考慮しません。復号は、正しい暗号鍵が復号ソフトウェアに提供されたかどうかによって、成功するか失敗するかのいずれかです。
ここにはセキュリティを強制するソフトウェアは存在せず、データは暗号化によって実際の内容が一切わからない形に変換されます。この変換を元に戻し、つまり復号するには、正しい暗号鍵が必要です。間違った鍵が提供された場合、復号ソフトウェアは失敗するしかありません。管理者権限を持つことや、バックチャネル経由でデータにアクセスしても、この制限を回避することはできません。
これはつまり、アクセス制御とは異なり、正しい鍵を持っている人であれば誰でもデータを復号できることを意味します。あなたが誰であるか、あるいは誰であると主張するかは関係ありません。鍵を持っていれば、復号できます。
そのため、復号鍵は秘密にしておく必要があります。また、復号鍵を紛失すれば、暗号化されたデータは完全に復旧不可能になるため、そのようなことが起こるのです。
AxCryptはファイル暗号化ソフトウェアです。ファイルを暗号化しますが、コンテンツの閲覧を「許可」するためにユーザーを認証するわけではありません。
AxCrypt 2 サインイン
AxCryptは暗号化によって動作するのに、なぜAxCrypt 2はサインインを求めてくるのでしょうか?
私たちは通常の使用方法を「サインイン」という比喩で表現することにしました。その操作は非常に似ており、多くの人が「サインイン」に慣れ親しんでいるからです。実際に行われているのは、メールアドレスそのものの身元を認証するのではなく、提供されたパスワードが正しいものであり、そのメールアドレスに関連付けられていることを確認するという処理です。ここに微妙な違いがあります。AxCryptは検証済みのパスワードを使ってファイルの暗号化と復号を行います。一方、アクセス制御システムは認証された身元(ID)を許可設定と照合します。
つまり、2人のユーザーが実際に同じパスワードを持っている場合、お互いのファイルを復号できてしまうということです。そのため、このようなリスクを実質ゼロにまで減らすために、非常に長くて優れた強力なパスワードを選ぶことが重要です。
暗号化の際にパスワードを検証する理由の一つは、ファイルの暗号化時に誤ってパスワードを入力してしまうリスクを減らすためです。これは残念ながらAxCrypt 1では頻繁に発生しており、パスワードを2回入力させる必要がある場合でも起こってしまいます。
このAxCryptの「サインイン」という比喩は実際の利点をもたらします。セッションごとに一度だけパスワードを入力すればよく、新しく暗号化されるファイルは、実際に使用したいパスワード(前回使用したパスワードと一致していることが確認された正しいパスワード)で確実に暗号化されます。