21
1Password や LastPass の代わりに Keychain を選んでみてはいかがでしょうか?

私は、サイトやサービスごとに、解読が困難なパスワード(短くて複雑なものでも、長くて覚えやすいものでも)を独自に設定でき、必要なときにどこでもそのパスワードを入力できる、なんらかのパスワード管理システムを使用することを常に推奨しています。

数週間前、ローウェル・ネルソンからメールが届き、なぜ私が1Password、Dashlane、LastPassといったサードパーティ製のソリューションにこだわるのかと尋ねられました。Appleには、同期機能を備えた堅牢なマルチプラットフォームソリューション「Keychain」があるのに、なぜでしょうか。(KeychainはOS Xの部分をより具体的に表しており、iCloud Keychainはデバイス間の同期とiOSでの使用を可能にします。)

素晴らしい質問です。有料サービス(一回限りの料金でも定期購読でも)を購入するのは、そのサービスの有用性がコストを上回る場合を除いて、勧めないほうがいいと思います。

詳細を見ていきましょう。私は1PasswordとLastPassを徹底的にテスト・研究してきたので、これらを比較の基準としています。十分に堅牢な代替サービスであれば、以下の各ポイントに対する回答はFAQや機能説明で見つけられるはずです。

Apple の Keychain、1Password、LastPass はすべて他の種類のデータを安全に保存できますが、エコシステム全体とプラットフォーム全体で使用できる最も信頼性の高い要素はパスワードです。

あなたのデータはどれくらい安全ですか?

パスワードを「安全」に保つには、次の 3 つの主要な領域でパスワードを安全に保つ必要があります。

  • デバイス上に保存されているデータ。デバイス上のパスワードは、所有者以外がアクセスできないよう安全に管理する必要があります。

  • サーバーに保存されたデータ。攻撃者がクラウドに保存されたパスワードにアクセスして解読することは困難、または不可能である必要があります。

  • 同期中またはWebベースのアクセス中に転送中のデータ。強力な暗号化により、新規エントリ、取得、更新、そしてインタラクティブセッションを解読する不正行為者を阻止できます。

キーチェーンとiCloudキーチェーンは、この点において非常に堅牢です。キーチェーンのエントリを埋めるにはOS XとiOSのロックを解除する必要があり、OS Xのキーチェーンアクセスアプリでは、ロックを解除してパスワードを表示するには管理者パスワードまたはユーザーパスワードが必要です。iOSではTouch IDまたはパスコード、OS XではFileVault 2を使用すれば、シャットダウン時(OS X)やロック時(iOS)でもパスワードは非常に安全です。iCloudキーチェーンはデバイスベースの暗号化を採用しており、Appleがパスワードを解読できない(または解読を強いられる)のを防いでいます。

1PasswordとLastPassは、ローカルに保存されたデータベースに「高価な」パスフレーズ暗号化方式を使用しています。そのため、たとえ誰かがデータベースにアクセスしたとしても、クラッカーはパスワードの総当たり攻撃を非常に遅い速度でしか実行できません。LastPassはハッキング後にこの方法を意図せずテストしましたが、パスワードボルトのロックが解除されたという報告はありませんでした。

LastPass はすべてを自社のサーバー経由で同期しますが、ユーザーのみが知っているキーで暗号化します。1Password は、Dropbox やその他のクラウドベースのサービス (それぞれのセキュリティと保存時の暗号化方式に依存) 経由で同期するほか、家族やチーム メンバーと共有するためのアドオン サブスクリプション経由でも同期しますが、すべてをユーザー所有のキーでロックします。

LastPassや1Passwordのチームまたはファミリー向けオプションもWebブラウザ経由でアクセスでき、ネイティブクライアントソフトウェアではなくブラウザベースの復号化を使用します。つまり、これらの企業はユーザーのキーを所有していません。しかし、ブラウザに依存することには弱点があります。マルウェアやその他のブラウザベースの脆弱性により、ブラウザはネイティブアプリやクラウド同期で利用できるセキュリティレベルに比べてはるかに脆弱になります。iOSとOS XのSafariの脆弱性は定期的に発見されています(ただし、実際に確認されているのはごくわずかです)。そのため、別のOSを実行している見慣れないマシンからパスワードにアクセスしたくなるかもしれません。

このシステムはどれくらい使いやすいですか?

パスワードシステムは簡単に呼び出せるものでなければなりません。そうでなければ、人間の性質上、継続的に使用することはないでしょう。さらに悪いことに、誰かのセキュリティ強化のためにパスワードシステムを導入する場合、常にリマインダーとして表示され、非常に分かりやすくなければ、その人は全く使用しない可能性があります。

ラストパス

iOS アプリは、iCloud キーチェーンよりも LastPass と 1Password の拡張機能をサポートする可能性が高くなります。 

Keychainは主にAppleによって、ウェブページ上の特定のフィールドのパスワードを記憶する手段として、また、Appleのソフトウェア(OSのAirPort Adminなど)やAppleのKeychainフックを利用するサードパーティ製ソフトウェアで自動取得・バイパスできるようにパスワードを保存する手段として使用されています。モバイル版とデスクトップ版のSafariでは、Keychainは非常に効果的に機能し、強力なパスワードの提案から保存、そしてパスワードの復元や保存済みの代替パスワードの使用を可能にします。

しかし、OS Xでは多くの開発者が採用し、キーチェーンアクセスを使って直接検索・取得できるようになったため、広く利用されていますが、iOSでは「設定」>「Safari」>「パスワード」と操作してパスワードを表示、編集、あるいは(一番下までスワイプして)追加する必要があります。さらに、AppleのWeb以外のログインダイアログではキーチェーンを呼び出すことができないため、一般的な用途には役に立ちません。必要なときにパスワードを作成することはできますが、アクセスが面倒で、対応するWebページでしか簡単に取得できません。

iOS 8以降、Appleが拡張機能を追加したことで、1Password、LastPass、その他のツールをSafariなどのアプリから呼び出せるようになりました。私が使っているiOSアプリの多くは、1PasswordのAPIに直接連携しており、直接呼び出すことができます。最悪の場合でも、LastPassや1Passwordに切り替えてパスワードを探し、コピーしてから、アプリに戻って貼り付けるだけで済みます。

また、このアプリを使用して、作成時に保持され、自動的に同期され、他のアプリで使用するためにクリップボードにコピーされる強力なパスワードを作成することもできます。

1パスワードウォッチ 1パスワード

1Password の Pro ユーザーであれば、パスワードを Apple Watch に保存することもできます。また、LastPass にも Apple Watch アプリがあります。 

クロスプラットフォームの状況はさらに深刻です。AppleはiCloudキーチェーンを自社OS以外では利用できないようにしています。1PasswordとLastPass(およびその他のアプリ)は、幅広い主要プラットフォームで利用可能であり、ブラウザベースのアクセスも提供しています(LastPassはデフォルトで、1Passwordはサブスクリプションオプションとして利用可能です)。

iCloudキーチェーンには他の人と共有する仕組みがありません。これは、Appleが人々がグループや家族で作業することを前提にシステムを根本から設計していないという、私が長年議論してきた主張の一部です。(ファミリー共有の問題については触れないでおきます。)

ほとんどのパスワードシステムには、アカウントを持つ他のユーザーと秘密情報を共有する何らかの仕組みが備わっています。1Passwordは、サブスクリプションなしで直接送信できるほか、最近では企業や家族グループのメンバー間で選択的にアクセスを共有することもできます。LastPassは、アイテムが一元的に保存されるため、長年この機能を提供してきました。

どちらかを選ぶ

パスワードをほぼウェブサイトのみで使用し、iOSとOS Xのみを使用し、Appleのサービスで要求されるパスワードを記憶して入力することに抵抗がないなら、Keychain with iCloud Keychainが最適です。これらの条件がすべて満たされない場合は、パスワード管理システムに投資する価値があります。

追記:この記事の以前のバージョンでは、iOSでは保存されたパスワードへのアクセスや新しいパスワードの作成はできないと書いていました。実際には可能ですが、設定の中に隠れているだけです。