最新のアプリがサイバー攻撃の標的になることが多いことは秘密ではありません. ガートナーは次のように報告しています 95% 盗まれたユーザーパスワードが原因で攻撃を経験するWebアプリケーションの. これは、一連の記号が個人データを保護するための信頼できる方法ではなくなったことを意味します, これにより、企業はこの記事で検討するより高度なセキュリティ手法に取り組むようになりました。.
ユーザー認証の方法
まず、使用する可能性のある認証方法について考えてみましょう。 アプリ開発.
デジタル証明書
特定の機関によって発行された電子文書です. このような証明書には識別情報が含まれており、信頼できる会社によって発行されているため、簡単に確認できます。.
デジタル証明書には、次の情報が含まれている必要があります:
– 所有者の名前;
– シリアルナンバー;
– 有効期限;
– 所有者が所有する公開鍵のコピー;
– 当局の電子署名.
公開鍵はメッセージの暗号化に使用されます, 電子署名はデータの検証に使用されます. ブラウザとオペレーティングシステムには権限のリストがあります, そのため、その署名がそれらの1つに属しているかどうかを識別できます。.
スマートカード
スマートカードは、所有者の秘密鍵を安全に保管し、認証が行われたときにそれを入力するように設計されています. スマートカードは基本的に、デバイスに直接挿入したり、ワイヤレスで使用したりできるセキュリティチップです。.
スマートカードがデバイスに挿入または接続されている場合, 暗号化アルゴリズムがデータをデコードし、ユーザーは暗号化されたものすべてにアクセスできます, 例えば, アプリまたはデバイス自体.
ハードウェアキー
これは、通常1分以内に有効な使い捨てパスワードを生成するために作成された物理デバイスです。. 特別に設計されたアルゴリズムは、論理シーケンスで一意のシンボルセットを作成します.
バイオメトリクス
それは 認証の優れた方法 生体認証データは個人ごとに異なるため、パスワードはまったく必要ありません。. データは指紋の助けを借りて暗号化および復号化することができます, 顔と虹彩スキャン, 声, サイン, 等.
この方法は、唯一の認証方法として、または多要素認証の一部として使用できます。. 言い換えると, アカウントにログインしたり、デバイスのロックを解除したりすることができます.
近接性
これは、設定された条件が満たされるときにデバイスまたはアプリのロックが解除されることを意味します. これらの条件には、ジオロケーションまたはサードパーティ製デバイスの存在が含まれる場合があります. こちらです, スマートフォンは、Bluetooth経由で特定のデバイスに接続するとき、または特定のエリアにあるときにロックを解除できます (例えば, ユーザーの家で).
認証技術
今, 開発者がモバイルアプリやウェブサイトの堅牢なセキュリティを構築するために使用できるソリューションとサービスについて考えてみましょう。.
KodeKey
この認証フレームワークは、開発者が生体認証ベースの認証プロセスを構築するのに役立ちます. その助けを借りて, 必要なのはスマートフォンと独自の生体認証データだけなので、ユーザーはパスワードを作成する必要はありません。.
このフレームワークのサーバーは、すべてのユーザーのアカウントに関する情報を保存し、それらを電話番号またはPINにリンクします. 彼らのうまく設計されたAPIは、このサービスをWebサイトに統合するプロセスをパイのように簡単にします.
KodeKeyの作業のスキームは次のとおりです:
1.電話番号またはPINは、ユーザーがログインフィールドに入力します;
2.この試みはKodeKeyに送信されます;
3.ユーザーIDは、指紋スキャンを使用して認証されます.
LaunchKey
このプラットフォームは、身元を確認するためのいくつかの方法を提供します: 古き良きパスワードとより高度な2要素認証. ユーザーは、パブリックAPIを使用してLaunchKeyのエンジンにアクセスできます。. このサービスの良いところは、他の場所にプライベートレコードを保存しないことです, それらはすべてユーザーデバイスに保存されます.
また, LaunchKeyは、ユーザーが独自のセキュリティメカニズムを作成できるようにします. 例えば, 企業データを保護するため, システムへのアクセスが試みられたときに、個人の身元確認と地理的位置の組み合わせを設定できます. 言い換えると, プラットフォームが提供するさまざまなセキュリティメカニズムを組み合わせることで、独自の2要素認証を作成できます.
音部記号
このサービスは、カメラと非対称キーを使用して、時折生成される画像とキーを使用してIDを検証します.
ユーザーは、アカウントを登録してClefのモバイルアプリをインストールした直後に秘密鍵を取得します. この秘密鍵は常にユーザーデバイスに保存されます, 公開鍵がClefサーバーに送信されている間.
残りは簡単です. ユーザーがClefを使用するサービスにログインしようとしたとき, 生成された画像がブラウザに表示されます. それで, ユーザーはスマートフォンをその画像に向けます, アプリはそれをスキャンします, 秘密鍵を使用して暗号化します, このデータをClefサーバーに送り返します. 送信された画像が正しいキーの助けを借りて復号化されていることをサーバーが認識した場合 — 操作は成功します.
Mピン
このソリューションは、Web製品とモバイル製品の両方に適しています. Web製品にMピンが必要な場合, 特殊なJavaScriptベースのコードとライブラリをWebアプリケーションに統合する必要があります. モバイル製品にMピンを使用したい場合, アプリケーションに組み込まれているモバイルブラウザを使用してアカウントにアクセスします.
Mピンを使用してサービスで認証する必要がある場合, アカウントに特定のモバイルデバイスまたはデスクトップブラウザを接続し、PINを設定します. それで, 接続されたデバイスはトークンを受け取り、簡単にログインできます.
YubiKey NEO
これは、Googleなどの巨人が使用する物理的なUSBキーです。, ドロップボックス, およびGithub. キーはNFCを搭載しています, そのため、このテクノロジーをサポートするモバイルデバイスで簡単に使用できます. あなたがする必要があるのは、デバイスをスマートフォンの裏側に置き、ボタンを押すだけで、デバイスは一意の番号のセットを生成できます.
ラップトップまたはデスクトップで作業する場合, 特定のサービスにログインするときに、USBポートに接続するだけです。.
安全な認証プロセスを提供するために設計されたテクノロジーはたくさんあります. 選択はあなた次第です.
著者について: ナタリア・カルチェンコ
Nataliia Kharchenkoは、Webおよびモバイルアプリ開発サービスを提供するCleveroad社のテクニカルライターです。. 私はデジタルの世界を人々に近づけ、テクノロジーについて書くことを楽しんでいます, モバイルアプリ, イノベーション, 進歩的な管理モデル.