ウェブサービス利用時のセキュリティを強固にする手法の1つに「ワンタイムパスワード発行アプリを用いて二要素認証を行う」とうものがあります。しかし、ワンタイムパスワード発行アプリとして広く使われている「Google認証システム(Google Authenticator)」には「アプリ公開から長らくエクスポート機能がサポートされていなかった」「端末を壊すとバックアップコードの再発行が不可能になる」といった問題が存在しています。オープンソースで開発されている「Aegis Authenticator」なら、無料でワンタイムパスワード発行環境を整えつつ「認証情報を自由にエクスポート可能」「ワンタイムパスワードの閲覧にパスコードや指紋認証を要求可能」といった便利機能も使えるとのことなので、実際にインストールする手順や使い方をまとめてみました。

Aegis Authenticator - Secure 2FA app for Android

https://getaegis.app/

・目次

◆1:Aegis Authenticatorのインストール&初期設定

◆2:二要素認証の情報を登録する手順&認証手順

◆3:Aegis Authenticatorから認証情報をエクスポートしてバックアップする手順

◆4:Aegis Authenticatorに認証情報をインポートする手順

◆5:その他の機能

・クラウドなどへ自動バックアップ

・外観カスタマイズ

・動作設定

・アイコンパックの取得&登録

・セキュリティ設定

◆1:Aegis Authenticatorのインストール&初期設定

Aegis AuthenticatorはAndroid向けに開発されているアプリで、Google PlayとF-Droidで配布されています。今回は、Google Playからインストールしてみます。

まず、Google PlayでAegis Authenticatorを検索して「インストール」をタップ。



インストールが完了したら「開く」をタップします。



Aegis Authenticatorが起動したら、画面右下の矢印ボタンをタップします。



セキュリティの設定画面が表示されたら、「なし」「パスワード」「生体認証」のいずれかを選択します。ここでパスワードや生体認証を設定しておけば、Aegis Authenticatorの起動時や認証データのインポート時にパスワード認証を要求できるようになるので、セキュリティを重視する場合は「パスワード」もしくは「生体認証」を選択するのが無難です。ただし、生体認証を用いるには使用中のデバイスが指紋認証や顔認証に対応している必要があります。今回は、指紋認証を使いたいので「生体認証」を選択して矢印ボタンをタップしました。



生体認証を選択した場合でもパスワードの登録は必須なので、好みのパスワードを2回入力してから矢印ボタンをタップします。



パスワードの登録が完了すると、画面下部に指紋認証画面が表示されます。



デバイスのロック解除に使っている指で指紋認証を行えばOK。



「セットアップが完了しました」と表示されたら、画面右下のチェックマークをタップ。これでAegis Authenticatorのインストール&初期設定は完了です。



◆2:二要素認証の情報を登録する手順&認証手順

次に、Aegis Authenticatorを用いてワンタイムパスワードによる二要素認証を実行する手順を確認してみます。

まずは、ウェブサービス側で二要素認証を有効化しておく必要があります。有効化手順はサービスごとに異なりますが、今回はDiscordでの設定手順を確認してみます。

最初にユーザー設定画面を開き、「二要素認証を有効化」をクリック。



続いて、アカウントのパスワードを入力し、「はい」をクリックします。



すると、以下のようにQRコードが表示されます。ここまで設定できたら、Aegis Authenticatorを操作します。



まずは画面右下の+ボタンをタップ。



「QRコードをスキャン」をタップ。



カメラの使用許可を求められたら「アプリの使用時のみ」を選択します。



カメラを使用可能になったら、Discordの設定画面上に表示されているQRコードをスキャン。



以下のような画面が表示されたら「保存」をタップします。



これで、Discordでの二要素認証に使える6桁のワンタイムパスワードが表示されるようになりました。設定を続けるために、画面上に表示されているワンタイムパスワードを覚えます。



続いて、Discordの設定画面にワンタイムパスワードを入力してから「有効にする」をクリック。



「二要素認証がアクティベートされました」と表示されたら設定は完了です。今後は、Discordへのログイン時にAegis Authenticatorに表示されるワンタイムパスワードを入力するように求められます。



実際のログイン手順はこんな感じ。まず、通常の手順通りにメールアドレスとパスワードを入力して「ログイン」をタップします。



すると、以下のような二要素認証画面が表示されるので、Aegis Authenticatorを用意します。



Aegis Authenticatorを起動して、ワンタイムパスワードを確認。



ワンタイムパスワードが他の番号に代わる前に入力欄にパスワードを入力して「ログイン」をタップします。



これでログインに成功しました。ワンタイムパスワードを用いることで、万が一パスワードが流出してしまってもアカウントを安全に保つことができます。



◆3:Aegis Authenticatorから認証情報をエクスポートしてバックアップする手順

Aegis Authenticatorには、二要素認証情報を簡単にエクスポートしてバックアップできる機能が搭載されています。情報をエクスポートするには、まず画面右上のメニューボタンをタップします。



続いて、「設定」をタップ。



設定画面が表示されたら「インポートとエクスポート」をタップします。



「エクスポート」をタップ。



以下の画面が表示されたら「OK」をタップします。この時「保管庫を暗号化」を有効にしておくと、インポート時に初期設定時に設定したパスワードを要求するようになります。万が一エクスポートしたデータが盗み取られるとすべての二要素認証を突破されてしまうので、暗号化は有効にしておくのがベターです。



保存場所を選択したら「保存」をタップ。これで認証情報のエクスポートは完了です。



◆4:Aegis Authenticatorに認証情報をインポートする手順

他のデバイスにインストールしたAegis Authenticatorへ認証情報をインポートする手順は以下の通り。まず、Aegis Authenticatorの初回起動時に「IMPORT VAULT」をタップします。



続いて、インポートしたいファイルを選択。



インポート元のデバイスで設定していたパスワードを入力して「OK」をタップ。



「セットアップが完了しました」と表示されたらチェックマークをタップ。



これで、バックアップした認証情報をインポートできました。Aegis Authenticatorではこんな感じに、認証情報を手軽にエクスポート&インポートできます。



◆5:その他の機能

Aegis Authenticatorには他にも自動バックアップ機能や外観カスタム機能などが搭載されています。各種機能の使い方は以下の通り。

・クラウドなどへ自動バックアップ

設定画面で「バックアップ」をタップ。



バックアップ設定では、新たな認証情報を追加するたびに自動的に指定の場所に認証情報データをバックアップするように設定できます。また、保存先はデバイス内や外部ストレージの任意のフォルダの他、クラウドストレージサービスを指定することも可能です。



バックアップをローカルに保存したい場合は「保管庫を自動的にバックアップする」の右側のトグルスイッチをタップ。



すると、バックアップの保存場所選択画面が表示されます。ここで、内部ストレージや外部ストレージの任意のフォルダを選択すれば、認証情報を新規追加するたびに自動的にバックアップが保存されます。



「Androidクラウドバックアップ」の右側に配置されたトグルスイッチをタップすると、クラウドバックアップを有効化できます。ただし、クラウドバックアップを使うにはAndroidのシステム設定でクラウドバックアップを有効化しておく必要があります。



・外観カスタマイズ

Aegis Authenticatorには、外観カスタマイズ機能も用意されています。



外観の設定では認証情報の表示サイズや表示テーマを選択可能。テーマを変更するには「テーマ」をタップします。



テーマは「ライトテーマ」「ダークテーマ」「AMOLEDテーマ」「バッテリーセーバーで設定」「バッテリーセーバーの設定(AMOLED)」の5種から選択可能。今回はライトテーマを選択してみました。



ライトテーマの見た目はこんな感じです。



「表示モード」では、ワンタイムパスワードの表示サイズを設定可能。



表示モードは「標準」「コンパクト」「スモール」の3種から選択できます。試しに「コンパクト」を選択。



コンパクトモードの表示は以下。大量のワンタイムパスワードを管理する場合は、表示領域を小さくして一覧性を高められます。



「コードの桁数のグループ化」では、ワンタイムパスワードを何桁ごとに区切って表示するか設定できます。



今回は、2桁ずつ区切りたいので「Groups of 2」を選択。



ワンタイムパスワードを2桁ずつ区切った際の表示はこんな感じです。自分の覚えやすい桁数ごとに区切れるのでかなりお役立ち。



「グループを編集」をタップすれば、認証情報のグループを管理できます。



グループの管理画面はこんな感じ。グループの一覧を表示できる他、ごみ箱ボタンをタップすればグループを解除できます。



グループの割り当ては各認証情報の編集画面から行います。まず、認証情報を長押ししてから鉛筆型の編集ボタンをタップ。



「グループ」のプルダウンメニューから新規グループを作成したりグループを割り当てたりできます。



・動作設定

動作設定では、ワンタイムパスワードのコピー方法などを設定できます。



動作設定画面は以下の通り。「認証情報をタップするだけでワンタイムパスワードをクリップボードにコピーし、自動的にAegis Authenticatorを閉じる」といった設定も可能です。



・アイコンパックの取得&登録

Aegis Authenticatorの標準状態では、各種サービスの頭文字が画面左側に表示されます。この状態では「Discord」と「Dropbox」のような頭文字が同じサービスを見分けにくくて不便ですが、Aegis Authenticatorではアイコンパックを追加することで各種サービスを見分けやすくできます。



アイコンパックを追加するには設定画面で「アイコンパック」をタップ。



続いて、画面内の「aegis-icons」をタップします。



すると、アイコンパックの配布ページにアクセスできるので「Download icon pack」をタップしてアイコンパックをダウンロードします。



ダウンロードが完了したらAegis Authenticatorの画面に戻って右下の+ボタンをタップ。



ダウンロードしたアイコンパックを選択します。



以下のようにアイコンパックを追加できたら準備は完了。



続いて、アイコンを設定したい認証情報を長押しします。



上部にメニューが表示されたら鉛筆型の編集ボタンをタップ。



上部の円形部分をタップ。



登録したいアイコンを選択します。



アイコンを登録できたら「保存」をタップ。



これで、認証情報が複数ある場合でも見分けやすくなりました。



・セキュリティ設定

Aegis Authenticatorのパスワード設定などは「セキュリティ」から行います。



セキュリティの設定ではAegis Authenticatorを起動した際のパスワード要求を無効化したり、起動時のパスワードと認証情報インポート時のパスワードを分けたりといった設定が可能です。