(58)【調査した分野】(Int.Cl.,DB名)
第1の通信端末(TC1)が、サービスにアクセスするためにアプリケーションサーバ(SApp)に接続されており、アプリケーションサーバ(SApp)が、通信端末(TC2)および第1の通信端末(TC1)と通信することが可能な認証サーバ(SAuth)に接続されている、第1の通信端末(TC1)および第2の通信端末(TC2)を持っているユーザを認証するための方法であって、認証サーバ(SAuth)内で、
第1の通信端末(TC1)から送信されたユーザ識別子(IdU)を受信した後で、受信されたユーザ識別子(IdU)に基づいて、第2の通信端末(TC2)を識別するステップ(E3)と、
コーディングデータ(DonC)を生成するステップ(E4)と、
生成されたコーディングデータ(DonC)を、第1の通信端末または第2の通信端末のいずれか一方に送信するステップ(E4)と、
第1の通信端末または第2の通信端末の前記いずれか一方により受信されたコーディングデータ(DonC)を使用して秘密データ(DonS)を変換することによってデータのセット(EnsD)を提供するようユーザを促すために、第1の通信端末および第2の通信端末のうちのもう一方にコマンドを送信するステップ(E5)と、
第1の通信端末(TC1)を介したアプリケーションサーバ(SApp)へのユーザアクセスを許可するために、生成されたコーディングデータ(DonC)に基づいて、ユーザにより入力されて第1の通信端末および第2の通信端末のうちの前記もう一方により送信されたデータのセット(EnsD)を、秘密データ(DonS)と比較するステップ(E6)と
を含む、方法。
ユーザ識別子(IdU)に対応するものとして第2の通信端末の識別子(IdTC2)をあらかじめ保存している認証サーバ(SAuth)が、受信されたユーザ識別子(IdU)に基づいて、第2の通信端末(TC2)を暗黙的に識別する、請求項1に記載の方法。
ユーザが、第2の通信端末の識別子(IdTC2)に対応した追加的な情報でユーザ識別子(IdU)を書き込んでおり、認証サーバ(SAuth)が、第2の通信端末(TC2)を明示的に識別する、請求項1に記載の方法。
ユーザにより提供されて第2の通信端末(TC2)から送信された最初の識別子を受信した後で、認証サーバ(SAuth)が、受信された最初の識別子からユーザの識別情報を推定し、一時的な識別子であるユーザ識別子(IdU)を生成し、一時的な識別子を第2の端末の識別子(IdTC2)に対応するものとして一時的に保存し、ユーザ識別子(IdU)を第2の通信端末(TC2)に送信する、請求項1から3のいずれか一項に記載の方法。
第2の通信端末(TC2)から送信された要求を受信した後で、認証サーバ(SAuth)が、要求に関連付けられた第2の通信端末の識別子(IdTC2)からユーザの識別情報を推定し、一時的な識別子であるユーザ識別子(IdU)を生成し、一時的な識別子を第2の端末の識別子(IdTC2)に対応するものとして一時的に保存し、ユーザ識別子(IdU)を第2の通信端末(TC2)に送信する、請求項1から3のいずれか一項に記載の方法。
コーディングデータ(DonC)の目的が、ユーザがデータのセット(EnsD)を介してスクランブル型で一連の文字列を提供するために、文字列の2つのセットの間に対応を確立することである、請求項1から5のいずれか一項に記載の方法。
コーディングデータ(DonC)が、第1の通信端末または第2の通信端末のいずれか一方に、テキスト形式、表形式、画像形式、または音声形式で送信される、請求項1から7のいずれか一項に記載の方法。
第1の通信端末が、サービスにアクセスするためにアプリケーションサーバ(SApp)に接続されており、アプリケーションサーバ(SApp)が、第2の通信端末(TC2)および第1の通信端末(TC1)と通信することが可能な認証サーバ(SAuth)に接続されている、第1の通信端末(TC1)および第2の通信端末(TC2)を持っているユーザを認証するための認証サーバ(SAuth)であって、
第1の通信端末(TC1)から送信されたユーザ識別子(IdU)を受信した後で、受信されたユーザ識別子(IdU)に基づいて、第2の通信端末(TC2)を識別するための手段(IDE)と、
コーディングデータ(DonC)を生成するための手段(AUT)と、
生成されたコーディングデータ(DonC)を、第1の通信端末または第2の通信端末のいずれか一方に送信するための手段(AUT)と、
第1の通信端末または第2の通信端末の前記いずれか一方により受信されたコーディングデータ(DonC)を使用して秘密データ(DonS)を変換することによってデータのセット(EnsD)を提供するようユーザを促すために、第1の通信端末および第2の通信端末のうちのもう一方にコマンドを送信するための手段(AUT)と、
第1の通信端末(TC1)を介したアプリケーションサーバ(SApp)へのユーザアクセスを許可するために、生成されたコーディングデータ(DonC)を使用することによって、ユーザにより提供されて第1の通信端末および第2の通信端末のうちの前記もう一方により送信されたデータのセット(EnsD)を、秘密データ(DonS)と比較するための手段(AUT)と
を含む、認証サーバ(SAuth)。
第1の通信端末が、サービスにアクセスするためにアプリケーションサーバ(SApp)に接続されており、アプリケーションサーバ(SApp)が、第2の通信端末(TC2)および第1の通信端末(TC1)と通信することが可能な認証サーバ(SAuth)に接続されている、第1の通信端末(TC1)および第2の通信端末(TC2)を持っているユーザを認証するための認証サーバ(SAuth)内で実施されることが可能なコンピュータプログラムであって、前記プログラムが、前記認証サーバ(SAuth)にロードされ、動作するときに、
第1の通信端末(TC1)から送信されたユーザ識別子(IdU)を受信した後で、受信されたユーザ識別子(IdU)に基づいて、第2の通信端末(TC2)を識別するステップ(E3)と、
コーディングデータ(DonC)を生成するステップ(E4)と、
生成されたコーディングデータ(DonC)を、第1の通信端末または第2の通信端末のいずれか一方に送信するステップ(E4)と、
第1の通信端末または第2の通信端末の前記いずれか一方により受信されたコーディングデータ(DonC)を使用して秘密データ(DonS)を変換することによってデータのセット(EnsD)を提供するようユーザを促すために、第1の通信端末および第2の通信端末のうちのもう一方にコマンドを送信するステップ(E5)と、
第1の通信端末(TC1)を介したアプリケーションサーバ(SApp)へのユーザアクセスを許可するために、生成されたコーディングデータ(DonC)に基づいて、ユーザにより入力されて第1の通信端末および第2の通信端末のうちの前記もう一方により送信されたデータのセット(EnsD)を、秘密データ(DonS)と比較するステップ(E6)と
を実施する命令を含む、コンピュータプログラム。
【発明の概要】
【課題を解決するための手段】
【0005】
上述した欠点を改善するために、第1の通信端末が、サービスにアクセスするためにアプリケーションサーバに接続されており、アプリケーションサーバが、第2の通信端末および第1の通信端末と通信することが可能な認証サーバに接続されている、第1の通信端末および第2の通信端末を持っているユーザを認証するための方法が、認証サーバ内で、以下のステップを含む:
第1の通信端末から送信されたユーザ識別子を受信した後で、受信されたユーザ識別子から第2の通信端末を識別するステップ、
コーディングデータを生成するステップ、
生成されたコーディングデータを、第1の通信端末または第2の通信端末のいずれか一方に送信するステップ、
第1の通信端末または第2の通信端末の前記いずれか一方により受信されたコーディングデータを使用することによってデータのセットを提供するようユーザを促すために、第1の通信端末および第2の通信端末のうちのもう一方にコマンドを送信するステップ、および
第1の通信端末を介したアプリケーションサーバへのユーザアクセスを許可するために、生成されたコーディングデータを使用して、ユーザにより提供されて第1の通信端末および第2の通信端末のうちの前記もう一方により送信されたデータセットを、秘密データと比較するステップ。
【0006】
有利なことに、本発明は、本来信頼のおけない2つの通信端末からPINコードまたはパスワードを使用するために、信頼できるやり方を提案する。このやり方は、コンピュータまたは移動電話機などの通信端末にインストールされた任意のマルウェアが、永続的な機密情報を読み出すのを妨げる。したがって、ユーザは、危険にさらされる恐れなしに、パスワードを使用することができる。
【0007】
本発明の別の特徴によれば、ユーザ識別子に対応するものとして第2の通信端末の識別子をあらかじめ保存している認証サーバが、受信されたユーザ識別子に基づいて、第2の通信端末を暗黙的に識別することができる。
【0008】
本発明の別の特徴によれば、ユーザが、第2の通信端末の識別子に対応した追加的な情報でユーザ識別子を書き込んでおり、認証サーバが、第2の通信端末を明示的に識別することができる。
【0009】
本発明の別の特徴によれば、ユーザにより提供されて第2の通信端末から送信された最初の識別子を受信した後で、認証サーバは、受信された最初の識別子からユーザの識別情報を推定し、一時的な識別子であるユーザ識別子を生成し、一時的な識別子を第2の端末の識別子に対応するものとして一時的に保存し、ユーザ識別子を第2の通信端末に送信する。
【0010】
本発明の別の特徴によれば、第2の通信端末から送信された要求を受信した後で、認証サーバは、要求に関連付けられた第2の通信端末の識別子からユーザの識別情報を推定し、一時的な識別子であるユーザ識別子を生成し、一時的な識別子を第2の端末の識別子に対応するものとして一時的に保存し、ユーザ識別子を第2の通信端末に送信する。
【0011】
本発明の別の特徴によれば、コーディングデータの目的は、ユーザがデータのセットを介してスクランブル型で一連の文字列を提供するために、文字列の2つのセットの間に対応を確立することである。
【0012】
本発明の別の特徴によれば、コーディングデータは、動的であり、所定の文字数がユーザによって提供される度に変化する。
【0013】
本発明の別の特徴によれば、コーディングデータは、第1の通信端末または第2の通信端末のいずれか一方に、テキスト形式、表形式、画像形式、または音声形式で送信される。
【0014】
本発明の別の特徴によれば、秘密データは、パスワード、コード、または銀行カード番号である。
【0015】
本発明はまた、第1の通信端末が、サービスにアクセスするためにアプリケーションサーバに接続されており、アプリケーションサーバが、第2の通信端末および第1の通信端末と通信することが可能な認証サーバに接続されている、第1の通信端末および第2の通信端末を持っているユーザを認証するための認証サーバに関し、認証サーバは以下を含む:
第1の通信端末から送信されたユーザ識別子を受信した後で、受信されたユーザ識別子から第2の通信端末を識別するための手段、
コーディングデータを生成するための手段、
生成されたコーディングデータを、第1の通信端末または第2の通信端末のいずれか一方に送信するための手段、
第1の通信端末または第2の通信端末の前記いずれか一方により受信されたコーディングデータを使用することによってデータのセットを提供するようユーザを促すために、第1の通信端末および第2の通信端末のうちのもう一方にコマンドを送信するための手段、および
第1の通信端末を介したアプリケーションサーバへのユーザアクセスを許可するために、生成されたコーディングデータを使用して、ユーザにより提供されて第1の通信端末および第2の通信端末のうちの前記もう一方により送信されたデータセットを、秘密データと比較するための手段。
【0016】
本発明はまた、サーバ内で実施されることが可能なコンピュータプログラムに関し、前記プログラムは、前記サーバ内でプログラムが実行される度に、本発明の方法によるステップを実行する命令を含む。
【0017】
本発明およびその利点は、添付の図面を参照する以下の説明を検討する際に、よりよく理解されることになる。
【発明を実施するための形態】
【0019】
図1を参照すると、通信システムが、アプリケーションサーバSAppと、認証サーバSAuthと、第1の通信端末TC1と、第2の通信端末TC2とを含み、アプリケーションサーバSAppおよび認証サーバSAuthは、通信ネットワークRT上で、互いに、かつ第1の通信端末TC1および第2の通信端末TC2の両方と、通信することが可能である。
【0020】
通信ネットワークRTは、有線またはワイヤレスネットワーク、あるいは有線ネットワークとワイヤレスネットワークとの組み合わせであってよい。
【0021】
一例において、通信ネットワークRTは、インターネットまたはイントラネットなどの、高速IP(「インターネットプロトコル」)パケットネットワークである。
【0022】
別の例において、通信ネットワークRTは、TDM(「時分割多重化」)ネットワーク、または独自のプロトコルをサポートする会社に固有の私設ネットワークである。
【0023】
ユーザの通信端末TC1またはTC2は、通信ネットワークRT上で、アプリケーションサーバSAに接続されている。
【0024】
一例において、通信端末は、通信ネットワークRTに接続されたxDSL(「デジタル加入者ライン」)リンクまたはISDN(「統合化サービスデジタルネットワーク」)リンクに、モデムによって直接連結された、パーソナルコンピュータである。
【0025】
別の例において、通信端末は、無線通信チャネルによって通信ネットワークに連結された、たとえば、GSM(登録商標)(「移動通信用グローバルシステム」)タイプまたはUMTS(「ユニバーサル移動通信システム」)タイプの移動セルラ式無線通信端末である。
【0026】
別の例において、通信端末は、電子的な通信デバイスまたはオブジェクトを含み、これらは、通信ネットワークに接続された、公共のワイヤレスローカルエリアネットワークWLAN、802.1x標準を使用するネットワーク、またはWIMAX(ワールドワイドインターオペラビリティマイクロウェーブアクセス)プロトコルを使用するワイドエリアネットワークでアンテナに接続されることが可能な、携帯情報端末(PDA)またはスマートフォンであってよい。
【0027】
たとえば、通信端末は、TDM地上通信線電話機またはボイスオーバIP地上通信線電話機である。別の例によれば、通信端末は、イーサネット(登録商標)接続を介して電力供給されるPOE(「パワーオーバーイーサネット」)地上通信線電話機である。
【0028】
アプリケーションサーバSAppは、ユーザの身元確認および認証の後で、ユーザに所与のサービスを提供するサーバである。
【0029】
一例によれば、アプリケーションサーバSAppは、イーコマースサイトなどの、所与のサービスを提供するウェブサイトをホストするウェブサーバである。
【0030】
別の例によれば、アプリケーションサーバSAppは、たとえば、所与の製品を購入するなどのために、所与のサービスを提供する音声サーバである。
【0031】
アプリケーションサーバSAppは、データベース内に、さまざまなユーザに関する情報、とりわけ、ユーザごとのプロファイルを含み、情報は、パスワードもしくはコード、または銀行カード番号などの特定の配列の英数文字などの識別子DonS、第1の通信端末の識別子IdTC1、および第2の通信端末の識別子IdTC2を含む。識別子TC1およびTC2は、IPアドレスもしくはMAC(「メディアアクセスコントロール」)アドレスなどの端末のアドレス、または電話番号、あるいは端末を識別することを可能にする任意のタイプのデータであってよい。
【0032】
認証サーバSAuthは、身元確認モジュールIDEと、認証モジュールAUTとを含む。説明の以下の部分において、用語モジュールは、少なくとも1つの特定のタスクを実行するように構成された、デバイス、ソフトウェアプログラム、またはコンピュータハードウェアとソフトウェアとの組み合わせを指してよい。
【0033】
身元確認モジュールIDEは、ウェブサイトによって配信されるサービスなどの特定のリソースにアクセスするために、ユーザによって提供された識別子IdUを読み出す。
【0034】
ユーザ識別子IdUは、永続的な、または単回使用のログインであってよい。
【0035】
ユーザは、明示的にまたは暗黙的に、一時的な識別子IdU、すなわち、単回使用の識別子を要求することができる。明示的な要求は、最初の識別子、たとえば、永続的な識別子を認証サーバに送信することによって、認証サーバに対して行われてよく、それにより、ユーザ、生成する認証サーバ、およびその後一時的な識別子を識別することを可能にする。暗黙的な要求は、認証サーバに既に知られている通信端末からそのサーバに対して行われてよく、要求に関連付けられた識別子の通信端末が既にサーバに知られていることを意味しており、それにより、識別子からユーザの識別情報を推定し、その後一時的な識別子を生成する。
【0036】
身元確認モジュールIDEは、2つの通信端末を合わせてペアにする。ペアリングは、明示的にまたは暗黙的に行われてよい。
【0037】
暗黙的なペアリングでは、第1の通信端末からユーザによって入力されたユーザ識別子IdUが、追加的なオプションとして第1の通信端末の識別子IdTC1を使用しながら、第2の通信端末の識別子IdTC2を捜し出すために使用されてよい。それによって、サーバSAuthは、ユーザの識別子IdUに基づいて、端末の識別子IdTC1とIdTC2との間に対応を捜し出す。
【0038】
明示的なペアリングでは、ユーザが、第2の通信端末の識別子IdTC2に対応した追加的な情報でユーザ識別子IdUを入力する。
【0039】
身元確認モジュールIDEは、端末の一方を介してコーディングデータDonCを取得するために、端末のもう一方を介して秘密データDonSを入力するための、ユーザによる所望の端末を識別し、選択する。この身元確認は、そのユーザによって先に提供されたユーザの選好に基づいて実行されてもよいし、または、アプリケーションサーバSAppにアクセスが要求された時点で、ユーザにより使用される端末のタイプに応じたコンテキストに基づいて推定されてもよい。
【0040】
認証モジュールAUTは、ユーザを認証するために使用されるコーディングデータDonCを生成する。コーディングデータDonCの目的は、ユーザが、スクランブル式で、コードまたはパスワードなどの秘密情報に対応した一連の文字列を提供するために、文字列の2つのセットの間に対応を確立することである。たとえば、コーディングデータは、一方のセットの各数字がもう一方のセットの異なる数字に対応する、数字1から9を含む2つのセットの間に関係を作るための指示を含む。
【0041】
認証モジュールAUTは、コーディングデータDonCを、身元確認モジュールIDEによって選択された通信端末のうちの一方に送信する。通信端末は次いで、通信端末の能力に応じて、およびオプションとしてユーザの選好に応じて、コーディングデータをそれぞれ可能なフォーマットでユーザに提供する。一例によれば、コーディングデータは、通信端末のスクリーンに、テキスト形式、表形式、または画像形式で表示される。別の例によれば、コーディングデータは、通信端末のスピーカを介してユーザに話される。
【0042】
認証AUTは、身元確認モジュールIDEによって選択された通信端末のうちのもう一方にコマンドを送信して、あらかじめ受信されたコーディングデータDonCを使用して秘密データDonSに対応したデータのセットを提供するようユーザに求める。このコマンドを受信する通信端末は、そのコマンドを解釈するための手段と、グラフィカルインターフェースまたは音声インターフェースを介して秘密情報を入力するようユーザに求めるための手段とを含む。たとえば、通信端末は、認証サーバSAuthから受信されたあらゆるメッセージを解釈する、バックグラウンドで動作するアプリケーションを含む。このアプリケーションは、通信端末のオペレーティングシステムによって管理されるアプリケーションであってよいし、または、SIMカードによって管理されてもよく、たとえば、端末がGSM移動電話機である場合には、通信ネットワークの構成要素と、とりわけ認証サーバSAuthと、直接通信することが可能な、STK(「SIMアプリケーションツールキット」)アプリケーションの形式であってよい。
【0043】
2つの通信端末は、コーディングデータDonCおよびコマンドを受信して、ほぼ同時に、秘密データDonSを提供することが想定される。
【0044】
説明目的のための一例において、認証サーバSAuthは、アプリケーションサーバSAによってホストされるウェブサイトに接続されたパーソナルコンピュータである第1の通信端末TC1に、コーディングデータを送信する。第1の端末TC1は、番号パッドを表す3つのカラムグリッドによる3行の形式でコーディングデータを表示し、この中で数字1から9が、左から右へ、かつ上から下へ降順で配置されている。さらに、認証サーバSAuthは、スマートフォンである第2の通信端末TC1に、コマンドを送信する。第2の端末TC2は、番号パッドを表す3つのカラムグリッドによる3行を表示し、この中で数字1から9が、左から右へ、かつ上から下へ昇順で配置されている。ユーザはここから、数字1が数字9に対応すること、数字2が数字8に対応することなどを推定することができる。入力されるべき秘密データが3589などの4桁のコードであれば、ユーザは、配列7521であるデータのすべてを入力することができる。
【0045】
一実施形態において、コーディングデータは動的であり、それにより、経時的に変化してよい。第1の例では、ユーザが文字を提供する度に、またはユーザによって所定の文字数が提供される度に、文字列の2つのセットの間で対応が変化する。この目的のために、文字が入力される端末は、認証サーバにメッセージを送信することができ、認証サーバは、コーディングデータを表示している端末に、新しいコーディングデータを送信する。第2の例では、文字列の2つのセットの間での対応が、1つまたは複数の時間の間隔が終了する度に変化する。コーディングデータを表示している端末と認証サーバとは、共通して同じコーディングデータを有するので、認証サーバは、ユーザにより入力された文字配列を解釈できることになり、たとえば、日付が、端末のアプリケーションによって、ユーザにより入力されたそれぞれの文字に関連付けられる。
【0046】
認証モジュールAUTは、入力された文字列の配列、すなわち、入力されたデータのセットEnsDが、ユーザの認証のためにユーザに要求された秘密データDonSに対応するかどうかを検査するために、コーディングデータDonCの助けを得て、ユーザによって入力された文字列を解読する。
【0047】
一実施形態において、認証サーバSAuthおよびアプリケーションサーバSAppは、単一の構成要素に一体化されている。
【0048】
図2を参照すると、本発明の一実施形態による認証方法が、通信システム内で自動的に実行されるステップE1からE6を含む。
【0049】
ステップE1で、ユーザは、第1の通信端末TC1を介してアプリケーションサーバSAppに接続し、アプリケーションサーバSAppによって配信されるサービスにアクセスすることを希望する。サーバSAppは、認証システムを使用して、ユーザ名または「ログイン」などのユーザ識別子IdU、およびパスワードもしくはコード、または銀行カード番号など特定の配列の文字列のなどの秘密データDonSを提供するようユーザに求めることによって、サービスへのアクセスをユーザに許可する。
【0050】
ステップE2で、ユーザは、ユーザ識別子IdUを入力し、第1の通信端末TC1は、識別子IdUをアプリケーションサーバSAppに送信し、アプリケーションサーバSAppは、識別子IdUを認証サーバSAuthに再送信する。一変形において、第1の端末TC1は、識別子IdUを認証サーバSAuthに直接送信する。
【0051】
先に説明された通り、ユーザは、明示的にまたは暗示的に、一時的なユーザ識別子IdU、すなわち単回使用の識別子を、認証サーバに要求することができる。一時的な識別子を用いることによって、ユーザは、自分の永続的な識別子を発信するのを回避することが可能になる。
【0052】
明示的な要求は、第2の通信端末TC2から、最初の識別子、たとえば永続的な識別子を、認証サーバに送信することによって、認証サーバに行われてよい。認証サーバは、受信された最初の識別子からユーザの識別情報を推定し、一時的な識別子であるユーザ識別子IdUを生成する。認証サーバは次いで、一時的な識別子を第2の端末の識別子IdTC2に対応するものとして一時的に保存し、識別子IdTC2は、たとえば、明示的な要求のコンテキストから推定される。
【0053】
暗黙的な要求は、認証サーバに既に知られている第2の通信端末TC2から、認証サーバに対して行われてよく、すなわち、要求に関連付けられた識別子IdTC2の通信端末が既にサーバに知られている。認証サーバは、第2の端末の識別子IdTC2からユーザの識別情報を推定し、一時的な識別子であるユーザ識別子IdUを生成する。認証サーバは次いで、一時的な識別子を第2の端末の識別子IdTC2に対応するものとして一時的に保存する。このケースでは、認証サーバは既に、識別子IdTC2とユーザの永続的な識別子との対応を、メモリの中に有していることが想定される。
【0054】
暗黙的なまたは明示的な要求についてのいずれのケースにおいても、認証サーバは、一時的なユーザ識別子を第2の通信端末TC2に送信し、ユーザは次いで、第1の通信端末TC1からユーザ識別子IdUを入力することができる。
【0055】
オプションとして、第1の通信端末TC1の識別子TC1が、認証サーバSAuthに送信される。
【0056】
ステップE3で、認証サーバSAuthは、第1の通信端末TC1を第2の通信端末TC2とペアにする。
【0057】
その目的のために、身元確認モジュールIDEは、ユーザ識別子IdUの助けを得て、第2の通信端末の識別子IdTC2をデータベースの中で捜し出す。
【0058】
先に説明された通り、ペアリングは暗黙的であってよく、第2の端末の識別子IdTC2は、ユーザ識別子IdUの助けを得て、およびオプションとして第1の端末の識別子IdTC1の助けを得て、自動的に捜し出される。第1の端末の識別子IdTC1は、ユーザの選好、および潜在的には端末のそれぞれに関連付けられたコンテキストに基づいて、第2の端末の選択に影響を与えてよい。ペアリングはまた、明示的であってもよく、第2の端末の識別子IdTC2は、第2の通信端末の識別子IdTC2に対応する追加的な情報で入力されたユーザ識別子IdUの助けを得て、捜し出される。このケースでは、ユーザ自身が、使用を希望する第2の通信端末を指定する。
【0059】
ユーザ識別子IdUが一時的な識別子である場合、ユーザはともかく明示的なペアリングを選ぶことができるにも関わらず、ユーザが暗黙的なペアリングを選んでいることが想定される。
【0060】
認証サーバSAuthは次いで、通信端末の一方をコーディングデータをユーザに提供するための専用とし、もう一方をユーザの秘密データを入力するようユーザに求めるための専用として、通信端末の両方に役割を割り当て、第1の端末および第2の端末の両方が潜在的にいずれかの役割を果たす。わかりやすさのために、方法の以下の部分では、第2の通信端末TC1が、コーディングデータをユーザに提供するために選択され、一方、第2の通信端末TC2が、秘密データを入力するようユーザに求めるために選択されることが想定される。
【0061】
ステップE4で、認証モジュールAUTは、ユーザを認証するために使用されるコーディングデータDonCを生成する。認証モジュールAUTは、コーディングデータDonCを第1の通信端末TC1に送信し、第1の通信端末TC1は、たとえば、数字の2つのセットの間の対応を見せる画像の形式で、スクリーンにコーディングデータDonCを表示することによって、それをユーザに提供する。
【0062】
ステップE5で、認証モジュールAUTは、秘密データDonSに対応するデータのセットEnsDを入力するようにユーザに求めるために、第2の通信端末TC2にコマンドを送信する。第2の通信端末TC2は、たとえば、バックグラウンドで動作するアプリケーションを用いてこのコマンドを解釈し、グラフィカルインターフェースを介してデータのセットEnsDを入力するようユーザに求める。たとえば、第2の端末は、番号パッドが表示されるタッチスクリーンを含み、ユーザは、第1の通信端末TC1に表示されたコーディングデータDonCを使用することによって、秘密データDonSに対応するコードを入力することが可能である。
【0063】
第2の通信端末TC2は次いで、データのセットEnsDを認証サーバSAuthに送信する。
【0064】
ステップE4およびE5は、ほぼ同時に実行されてもよいし、または、ステップE4およびE5の順序が潜在的に逆にされて、認証サーバSAuthが最初に第2の端末にコマンドを送信し、その後、ユーザがデータのセットを入力する前に、第1の端末にコーディングデータを送信してもよい。
【0065】
ステップE6で、認証サーバSAuthは、あらかじめ生成されて第1の通信端末TC1に送信されたコーディングデータDonCに基づいて、ユーザにより入力されて第2の通信端末TC2により送信されたデータのセットEnsDを、秘密データDonSと比較する。
【0066】
認証サーバSAuthは、データのセットEnsDが秘密データDonSに対応する場合に、アプリケーションサーバSAppによって配信されるサービスへのアクセスを許可する。
【0067】
説明のための例として、4つの例示的な実施形態が、
図3A、3B、3C、および3Dを参照して説明される。
【0068】
図3Aを参照すると、識別子IdUがユーザによって明示的に提供され、2つの通信端末が暗黙的にペアにされる間に、認証方法が実行される。第1の端末TC1および第2の端末TC2がユーザの届く範囲内にあること、および、認証サーバSAuthが、そのメモリ内に、ユーザ識別子IdUと第1の端末の識別子IdTC1との対応を有することが想定される。
【0069】
ステップ3A1で、ユーザは、第2の端末TC2から、第1位の端末TC1を識別する認証サーバSAuthに、自分のユーザ識別子IdUを送信する。
【0070】
ステップ3A2aで、認証サーバSAuthは、第2の端末TC2に表示されることになる仮想キーボード、ならびに秘密情報を入力するようユーザに求めるコマンドを送信する。
【0071】
ステップ3A2bで、認証サーバSAuthは、端末TC1に表示されることになるコーディングデータを送信する。
【0072】
ステップ3A3で、ユーザは、秘密データに対応するデータのセットを、第2の端末TC2の仮想キーボード上で入力する。このデータのセットは次いで、データのセットの有効性を検査する認証サーバSAuthに送信される。
【0073】
図3Bを参照すると、2つの通信端末が一時的な識別子の助けを得て暗黙的にペアにされる間に、認証方法が実行される。
【0074】
ステップ3B1で、第1の端末TC1から、ユーザは、認証サーバSAuthに一時的な識別子を要求する。
【0075】
ステップ3B2で、認証サーバSAuthは、一時的な識別子を生成し、それを第1の端末TC1に送信する。
【0076】
ステップ3B3で、ユーザは、第2の端末TC2から、一時的な識別子を使用することを希望する。一実施形態において、ユーザは、第2の端末から一時的な識別子を使用するために、第2の端末TC2、たとえばスマートフォンから、一時的な識別子の写真を撮り、それを読み出す。いかなるセキュリティ問題をも回避するために、第1の端末および第2の端末は、互いに通信しないことが想定される。
【0077】
ステップ3B4で、ユーザは、端末から一時的な識別子を認証サーバSAuthに送信し、サーバSAuthは、端末とのペアリングを実施することが可能である。
【0078】
ステップ3B5aで、認証サーバSAuthは、第2の端末TC2に表示されることになる仮想キーボード、ならびに秘密情報を入力するようユーザに求めるコマンドを送信する。
【0079】
ステップ3B5bで、認証サーバSAuthは、コーディングデータを第1の端末TC1に送信する。
【0080】
図3Cを参照すると、2つの通信端末が一時的な識別子の助けを得て暗黙的にペアにされる間に、認証方法が実行される。ユーザは、第2の端末の識別子を提供し、第2の端末は、ユーザの届く範囲内にない、たとえば、公共の場におけるワイドスクリーン端末である。
【0081】
ステップ3C1で、第1の端末TC1から、ユーザは、認証サーバSAuthに一時的な識別子を要求する。
【0082】
ステップ3C2aで、認証サーバSAuthは、一時的な識別子を生成し、それを第1の端末TC1に送信する。
【0083】
ステップ3C2bで、認証サーバSAuthは、一時的な識別子を第2の端末TC2に送信する。これにより、ユーザは、自分が所望の第2の端末を占有していることを確認することが可能になる。
【0084】
次いで前の例と同じように、認証が実行され、認証サーバSAuthは、第2の端末TC2に表示されることになる仮想キーボード、ならびに秘密情報を入力するようユーザに求めるコマンドを送信し、認証サーバSAuthは、コーディングデータを第1の端末TC1に送信する。
【0085】
図3Dを参照すると、ユーザが「オンデマンドによる」ペアリングのためのコードを要求する間に、認証方法が実行される。コードは、コードそれ自体であっても、またはURLアドレス(「ユニファイドリソースロケータ」)と組み合わされたコードであってもよい。
【0086】
ステップ3D1で、ユーザは、第2の端末TC2から、認証サーバSAuthに自分のユーザ識別子IdUを送信し、コードをそのサーバに要求する。
【0087】
ステップ3D2で、認証サーバSAuthは、第2の端末TC2で表示するための仮想キーボード、ならびに秘密情報を入力するようユーザに求めるコマンドを送信し、あらかじめ要求されたコードもまた送信する。
【0088】
ステップ3D3で、ユーザは、第1の端末TC1から、読み出されたコードを使用することを希望する。一実施形態において、ユーザは、第1の端末から一時的な識別子を使用するために、第2の端末TC1、たとえばスマートフォンから、一時的な識別子の写真を撮り、それを読み出す。
【0089】
ステップ3D4で、第1の端末TC1から、ユーザは認証サーバSAuthにコードを提供する。認証サーバSAuthは、ユーザと、2つの端末TC1およびTC2との間に明示的なリンクを作る。
【0090】
ステップ3D5で、認証サーバSAuthは、コーディングデータを第1の端末TC1に送信する。
【0091】
ここで説明された本発明は、ユーザの認証のための方法およびサーバに関する。本発明の一実施形態によれば、本発明の方法のステップは、サーバSAuthなどのサーバの中に組み込まれたコンピュータプログラムの命令によって決定される。プログラムは、前記プログラムがロードされ、サーバ内で実行されるときに、本発明の方法のステップを実行するプログラム命令を含む。
【0092】
結果として、本発明はまた、コンピュータプログラム、とりわけ本発明を実施するために好適な、情報媒体上または情報媒体内のコンピュータプログラムに適用される。このプログラムは、任意のプログラミング言語を使用することができ、ソースコードの形式、オブジェクトコードの形式、または部分的にコンパイルされた形式などでのソースコードとオブジェクトコードとの中間コードの形式、あるいは、本発明の方法を実施するために望ましい任意の他の形式であってよい。