2024年3月26日9:00
クレジットカードによる非対面決済の取引が拡大。これにともない、不正利用の脅威も増加している。このような中、パスワードが持つ潜在的なリスクを回避し、カード利用者を保護しつつ利便性も損なわないセキュリティ対策が求められている。非対面決済時におけるPasskeys(パスキー、FIDO)とEMV 3-Dセキュアの活用法について解説する。(2024年3月5日開催「ペイメント・セキュリティフォーラム2024」より【PR】)
Nok Nok Labs, Inc. シニアセールスマネージャ 大久保 勇次氏
Passkeys(FIDO)の導入により
非対面決済が抱える課題が一挙に解決
弊社はPasskeys(FIDO)の製品を提供しているベンダーです。今回はPasskeysを活用した不正利用対策についてご説明させていただきます。
EMV 3-Dセキュアを利用した非対面決済においては、低リスクのユーザについてはフリクションレスの仕組みによって利便性が向上していると思いますが、ハイリスクのユーザのチャレンジフロー時の際にはいくつか課題があると認識しております。
課題を列挙してみますと、まずパスワード認証(SMS OTP)の入力の手間と、カゴ落ちの発生。次に、SMS配信コストの発生。1件あたり10円前後発生していると見られ、今後この配信費用が重くのしかかってくるのではないかと思っております。そして、認証システムのサイロ化。アプリケーションごとに認証の仕組みが異なり、それぞれにコストが発生して、コスト増となっています。利用者側も、ここまでは固定パスワード、ここはワンタイムパスワードといったように面倒な対応を強いられています。さらには、サイバー攻撃への対処。このように数々の課題が存在しています。
それらの課題を解決するのが、Passkeysの導入です。Passkeysを適用することによって、まず、パスワードレスによる利便性向上を図ることが可能になり、カゴ落ちリスクも改善します。PasskeysはSMS認証ではないので、そもそもSMS配信コストは発生しません。また、マルチアプリケーション連携が可能なため、すべての認証システムを統一でき、利用者に対しても統一されたユーザエクスペリエンスを提供することができます。さらにPasskeysにはフィッシング攻撃への耐性があります。このようにPasskeysを導入することによって、非常に効果的な認証を実装することが可能になるのです。
高いセキュリティを実現し
なおかつ利便性も損なわない
PasskeysとFIDOという2つの言葉が出てきて混乱されているかもしれません。Passkeys(Any passwordless FIDO credential)はFIDOをベースとした仕組みです。スキームの詳細の解説は割愛させていただきますが、本セッションに限りPasskeys=FIDOと読み換えて下さい。
FIDOは、Fast IDentity Onlineの略です。生体情報などを利用した次世代のオンライン認証ということで、現在約250の団体で構成されているFIDOアライアンスという団体が技術仕様の策定を行っています。FIDOアライアンスは2012年に6社によって設立されており、弊社は設立メンバーの1社です。
安全性を高めると、利便性が損なわれてしまうことがあります。FIDOアライアンスは、安全性を高めつつ、利便性を損なわない認証を目指しています。
これにはどういう技術的な要素が利用されているかというと、公開鍵暗号方式が採用されています。ユーザはまずFIDOクライアント(スマートフォンなど)で鍵のペアを生成します。1つは公開鍵、もう1つは秘密鍵です。公開鍵はFIDOサーバ側に、自分のユーザIDと紐づけて保管します。秘密鍵はFIDOクライアント内に安全なかたちで保管して、自分の生体情報と連携をとります。FIDO認証に対応したアプリケーションにアクセスすると、サーバ側ではチャレンジを生成し、これをFIDOクライアントに送ります。同時にFIDOクライアントには生体認証の画面が表示されますので、ユーザは自分自身の生体情報を提示します。それが正しい情報であれば事前に保管した秘密鍵を取り出して、チャレンジに対して署名を行い、FIDOサーバに送り返します。FIDOサーバ側では、事前に登録された公開鍵を取り出して、署名検証を行います。正しく署名検証が行われればユーザ認証を許可するという仕組みです。この仕組みを使うことによって、パスワードレスの認証が実現します。
FIDOの特徴の1つに、プラグアンドプレイアプローチがあります。現状は生体認証との連携がメインになっていますが、たとえば数年後、なにかしら新しい認証の仕組みが出てきたときに、それをFIDOの仕組みに取り込むことが可能です。こうしてサービスをどんどん追加することによって、マルチアプリケーション連携が可能になります。こういったことからFIDOは世界最大のエコシステムと言われています。
セキュリティ面で特筆すべきは、フィッシング攻撃への耐性です。FIDOの認証情報は特定のオリジンと1対1の関係性にあるため、システムは中間者攻撃やフィッシング攻撃についての耐性があります。非常にセキュリティが高く、安心して利用していただける仕組みになっております。
イシュアと加盟店どちらが認証するかによって
FIDOの実現方法は3パターンに分かれる
ここから本題に入ります。非対面決済時におけるPasskeys(FIDO)の適用ということですが、EMV 3-Dセキュア上で利用することが前提です。EMV 3-Dセキュアの仕様に関しては、最新の2.3.1の仕様書を参照しています。
FIDOの実現方法には、利用者をカードイシュアが認証する方法と、マーチャントが認証する方法があります。
まずカードイシュアが認証する場合の仕組みを解説させていただきます。これにはさらに2通りあり、1つ目は、Out Of Band Authenticationという機能を利用する方法です。バージョン2.2からサポートされています。これは3-Dセキュアから外部の認証アプリを起動する方法です。2番目が、Secure Payment Confirmationで、バージョン2.3からサポートされている仕様です。これはWebAuthnを利用したFIDO認証を実現する方法です。
次にマーチャント側が認証する場合です。ここではバージョン2.2からサポートされているDelegated Authenticationの仕組みを利用します。加盟店がオンライン決済時にカード利用者を認証して、認証されたユーザ情報をイシュア側に渡す方法です。以上3つの方法で、FIDO認証の実現が可能になります。
これらをもう少し詳しく説明しましょう。まずカードイシュアが認証するパターンです。この場合、FIDOサーバはイシュア側に設置されています。クレジットカード利用者がオンラインショッピングで買い物をして、チェックアウトすると、リスクベースが走って、ハイリスクのユーザであればチャレンジフローに移行します。ここでFIDOを起動させるのですが、起動の方法には先ほど申し上げた2つのパターン、つまりOut Of Band AuthenticationとSecure Payment Confirmationがあって、そのどちらかを実装して起動していただくことになります。
Out Of Band Authenticationの場合には、利用者が加盟店のページでチェックアウトを行うと、イシュアのページに遷移し、認証アプリが起動して利用者の認証を行い、認証が済むとイシュアのページに戻ってチェックアウトが終了する流れになります。
一方の加盟店が認証するパターンでは、FIDOサーバは加盟店側に設置されています。カード利用者がオンラインショッピングでチェックアウトをすると、FIDO認証が実行され、認証が終了するとFIDOサーバ側で、さまざまなユーザ情報が入ったAuthentication data(FIDO Blob)を生成します。このFIDO Blobを3-Dセキュアのメッセージとともにイシュア側に送信。イシュア側ではこれを検証してカード利用者が正しいかどうかを判断するという仕組みです。
弊社の製品は、以上3つのパターンすべてに対応しております。
多様なシーンで活用が可能
コールセンターのコスト削減にも貢献
Passkeysは3-Dセキュア以外にもさまざまなアプリケーションに対して認証を行うことができ、そのすべてにおいて統一されたユーザエクスペリエンスを提供することが可能です。例としては、ポイント利用・交換、会員サイトへのログイン、PC/スマホ連携、ネットキャッシング、支払方法の変更、コールセンターへの問い合わせ、利用限度額の変更などに適用できます。
たとえばログイン認証では、ワンタイムパスワードの認証方式と比べて認証の成功率を上げたり、認証に要する時間を短縮することが可能になります。弊社の既存のお客様の事例では、認証の成功率が99.9%と非常に高くなった実績があります。
厳格な認証が求められるネットキャッシングやポイントの利用・交換といった場面でも、Passkeysの活用は有効です。ポイントの不正利用という話がよく聞かれますが、Passkeysの認証を用いることで不正を防止することが可能です。
また、コールセンターへの問い合わせ時の認証に使われている例もあります。通常コールセンターに問い合わせをするときは、住所・氏名・年齢・生年月日などの聞き取りによる本人確認作業が行われています。しかしこれにかかる時間自体がコールセンターのコストになります。この部分をFIDO認証に置き換えることで、時間短縮、コスト削減、顧客の利便性向上を実現することが可能です。実際の流れとしては、コールセンターへの問い合わせボタンを押すと、FIDO認証が開始され、そのリクエストがFIDOサーバに行って、チャレンジが生成されます。このチャレンジをクライアント側に送ると同時に、生体認証の画面が起動しますので、ユーザは自分の生体情報を提示して秘密鍵を取り出し、チャレンジに対して証明して、レスポンスとしてサーバ側に送ります。FIDOサーバ側では事前に登録された公開鍵を使って署名検証をして、検証できれば認証を許可。ここからコールセンターでの問い合わせ対応が開始される運びになります。
弊社の既存のお客様の例では、利用者から毎月140万件という非常に多くの問い合わせを受けており、本人を特定する作業に、1分あたり1ドル、1カ月あたり70万ドルという大きなコストを要していました。これをFIDOに置き換えることによって、コールセンターのコストを大幅に削減することができました。セキュリティにかかる費用は通常コストとしか見られないのですが、使い方によってはコスト削減に貢献することができます。
スマートフォン連携についてご紹介します。すべてのパソコンが生体認証の機能を持っているわけではありませんので、その機能がない場合は、スマートフォンと連携することによって、連携したスマートフォン側でFIDO認証を肩代わりすることができます。こうしていろいろな端末からFIDO認証を実現することが可能になります。