(57)【要約】【課題】  モバイルデバイスを介したアカウントの作成を提供する。【解決手段】  アカウントを作成する要求は、ユーザからモバイルデバイスを介して受信される。この要求はモバイルデバイスから、無線通信プロトコルに従って受信される。受信された要求に応答して、確認メッセージがモバイルデバイスへ、ユーザにチャレンジとしてレンダリングするために配信される。レンダリングされたチャレンジに対するレスポンスは、ユーザからモバイルデバイスを介して受信される。レンダリングされたチャレンジに対して受信されたレスポンスが配信された確認メッセージに対応するかどうかが判断される。また、レンダリングされたチャレンジに対して受信されたレスポンスが配信された確認メッセージに対応すると判断される場合、ユーザのためのアカウントが作成される。本発明の他の態様はモバイルデバイスを介したアカウント作成と共に使用するためのコンピュータ可読媒体を対象とする。【選択図】  図２
2005317022.tif 000002
【特許請求の範囲】
【請求項１】
モバイルデバイスを介してアカウントを作成する方法であって、
モバイルデバイスを介して、ユーザからアカウントを作成するための要求を受信するステップであって、前記要求は前記モバイルデバイスから、無線通信プロトコルに従って受信されるステップと、
前記受信された要求に応答して、確認メッセージを前記モバイルデバイスへ、前記ユーザにチャレンジとしてレンダリングするために配信するステップと、
前記レンダリングされたチャレンジに対するレスポンスを前記ユーザから前記モバイルデバイスを介して受信するステップと、
前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応するかどうかを判断するステップと、
前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応すると判断される場合、前記ユーザのための前記アカウントを作成するステップとを備えることを特徴とする方法。
【請求項２】
前記モバイルデバイスは無線アプリケーションプロトコル（ＷＡＰ）デバイスであり、前記確認メッセージは、ショートメッセージサービス（ＳＭＳ）メッセージおよび無線アプリケーションプロトコル（ＷＡＰ）プッシュメッセージのうち１つまたは複数を備えることを特徴とする請求項１に記載の方法。
【請求項３】
前記要求を受信するステップは、前記モバイルデバイスと、無線アプリケーションプロトコル（ＷＡＰ）に従って通信するステップを備えることを特徴とする請求項１に記載の方法。
【請求項４】
前記確認メッセージを配信するステップは、前記確認メッセージを前記モバイルデバイスに、無線通信プロトコルに従って配信するステップを備えることを特徴とする請求項１に記載の方法。
【請求項５】
前記確認メッセージは６桁の数字コードを備えることを特徴とする請求項１に記載の方法。
【請求項６】
前記ユーザのための前記アカウントを作成するステップに応答して、前記ユーザがアフィリエイトサービスにアクセスすることを可能にするステップをさらに備え、前記ユーザのための前記アカウントを作成するステップは、ユーザプロファイル情報を前記ユーザから前記モバイルデバイスを介して受信するステップと、前記受信されたユーザプロファイル情報に応答して前記ユーザのための前記アカウントを作成するステップとを備えることを特徴とする請求項１に記載の方法。
【請求項７】
デバイス識別子およびプロバイダ識別子を前記ユーザから前記モバイルデバイスを介して受信するステップであって、前記デバイス識別子は前記モバイルデバイスを識別し、前記プロバイダ識別子は、前記ユーザに前記モバイルデバイスを介してサービスを提供するサービスプロバイダを識別するステップと、
データを前記モバイルデバイス上に格納するステップであって、前記データは前記受信されたデバイス識別子および前記受信されたプロバイダ識別子を指定し、前記データは前記モバイルデバイス上に所定の期間に渡って格納されるステップとをさらに備えることを特徴とする請求項１に記載の方法。
【請求項８】
前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応すると判断される場合、前記格納されたデータを前記モバイルデバイスから除去するステップをさらに備えることを特徴とする請求項７に記載の方法。
【請求項９】
デバイス識別子およびプロバイダ識別子を前記ユーザから前記モバイルデバイスを介して受信するステップであって、前記デバイス識別子は前記モバイルデバイスを識別し、前記プロバイダ識別子は、前記ユーザに前記モバイルデバイスを介してサービスを提供するサービスプロバイダを識別するステップをさらに備え、前記ユーザのための前記アカウントを作成するステップは、前記作成されたアカウントを表すデータをメモリエリア内に格納するステップを備え、前記データは、前記受信されたデバイス識別子、前記受信されたプロバイダ識別子、前記レンダリングされたチャレンジに対する前記受信されたレスポンス、および、前記アカウントが作成される時間のうち、１つまたは複数を備えることを特徴とする請求項１に記載の方法。
【請求項１０】
前記作成されたアカウントを表す前記データを前記メモリエリア内に格納するステップは、前記受信されたデバイス識別子、前記受信されたプロバイダ識別子、および、前記レンダリングされたチャレンジに対する前記受信されたレスポンスを、前記メモリエリア内にハッシュとして格納するステップをさらに備えることを特徴とする請求項９に記載の方法。
【請求項１１】
デバイス識別子およびプロバイダ識別子を前記ユーザから前記モバイルデバイスを介して受信するステップであって、前記デバイス識別子は前記モバイルデバイスを識別し、前記プロバイダ識別子は、前記ユーザに前記モバイルデバイスを介してサービスを提供するサービスプロバイダを識別するステップと、
前記受信されたデバイス識別子、前記受信されたプロバイダ識別子、前記受信されたデバイス識別子および前記受信されたプロバイダ識別子のハッシュ、前記配信された確認メッセージ、確認メッセージが前記モバイルデバイスに配信される回数、チャレンジに対するレスポンスが前記ユーザから受信される回数、前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応すると判断されるかどうかの指示、ならびに、前記確認メッセージが前記モバイルデバイスに配信される時間を示すタイムスタンプのうち、１つまたは複数をメモリエリア内に格納するステップとをさらに備えることを特徴とする請求項１に記載の方法。
【請求項１２】
前記メモリエリア内に格納された前記タイムスタンプが事前定義された期間より古いとき、前記メモリエリア内に格納された前記データを除去するステップをさらに備えることを特徴とする請求項１１に記載の方法。
【請求項１３】
前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応しないと判断されるとき、および、前記格納された、確認メッセージが前記モバイルデバイスに配信される回数が所定の数より少ないとき、前記ユーザが別の確認メッセージを受信することを望むかどうかを問い合わせるステップと、
前記ユーザからの指示を、前記モバイルデバイスを介して受信するステップであって、前記指示は、前記ユーザが他の確認メッセージを受信するための要望を指定するステップと、
他の確認メッセージを前記モバイルデバイスへ、前記ユーザに別のチャレンジとしてレンダリングするために配信するステップとをさらに備えることを特徴とする請求項１１に記載の方法。
【請求項１４】
他の確認メッセージを前記モバイルデバイスに配信するステップに応答して、前記格納されたタイムスタンプを、他の確認メッセージが前記モバイルデバイスに配信される時間により更新するステップ、前記メモリエリア内に格納された前記確認メッセージを、前記モバイルデバイスに配信された他の確認メッセージにより更新するステップ、前記格納された、確認メッセージが前記モバイルデバイスに配信される回数を増分するステップ、および、前記格納された、チャレンジに対するレスポンスが受信される回数をゼロに設定するステップのうち、１つまたは複数を実行するステップをさらに備えることを特徴とする請求項１３に記載の方法。
【請求項１５】
データをメモリエリア内に格納するステップであって、前記データは、チャレンジに対するレスポンスが前記ユーザから受信される回数を示すステップと、
前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応しないと判断される場合、および、前記示された、チャレンジに対するレスポンスが前記ユーザから受信される回数が、事前定義された期間内で所定の数より少ない場合、前記ユーザからの前記レンダリングされたチャレンジに対する別のレスポンスを促すステップと、
前記レンダリングされたチャレンジに対する他のレスポンスを、前記ユーザから前記モバイルデバイスを介して受信するステップと、
前記レンダリングされたチャレンジに対する他のレスポンスが前記配信された確認メッセージに対応するかどうかを判断するステップと、
前記レンダリングされたチャレンジに対する他のレスポンスが前記配信された確認メッセージに対応すると判断される場合、前記ユーザのための前記アカウントを作成するステップとをさらに備えることを特徴とする請求項１に記載の方法。
【請求項１６】
デバイス識別子およびプロバイダ識別子を前記ユーザから前記モバイルデバイスを介して受信するステップであって、前記デバイス識別子は前記モバイルデバイスを識別し、前記プロバイダ識別子は、前記ユーザに前記モバイルデバイスを介してサービスを提供するサービスプロバイダを識別するステップと、
前記ユーザのための前記アカウントを作成するステップに応答して、前記受信されたデバイス識別子および前記受信されたプロバイダ識別子をアフィリエイトサービスに配信するステップとをさらに備えることを特徴とする請求項１に記載の方法。
【請求項１７】
前記要求を受信するステップは、前記要求を前記ユーザからアフィリエイトサーバで受信するステップであって、前記アフィリエイトサーバは認証サーバに関連付けられ、アフィリエイトサービスを前記ユーザに提供するステップを備え、前記アカウントを作成するステップは、前記ユーザのための前記アカウントを前記認証サーバで作成するステップを備えることを特徴とする請求項１に記載の方法。
【請求項１８】
１つまたは複数のコンピュータ可読媒体が請求項１に記載の方法を実行するためのコンピュータ実行可能命令を有することを特徴とする請求項１に記載の方法。
【請求項１９】
モバイルデバイスを介してアカウントを作成するためのシステムであって、
ユーザからモバイルデバイスを介してアカウントを作成するための要求を受信するためのネットワークサーバであって、前記要求は前記モバイルデバイスから、無線通信プロトコルに従って受信され、前記ネットワークサーバは、前記要求を受信することに応答して、確認メッセージを前記モバイルデバイスに配信するように構成され、前記確認メッセージは、前記ユーザにチャレンジとしてレンダリングするために前記モバイルデバイスに配信され、
前記レンダリングされたチャレンジに対するレスポンスを前記ユーザから前記モバイルデバイスを介して受信するように、および、前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応するかどうかを判断するようにさらに構成されたネットワークサーバと、
前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応すると前記ネットワークサーバが判断する場合、前記ユーザのための前記アカウントを作成するための認証サーバとを備えることを特徴とするシステム。
【請求項２０】
前記モバイルデバイスは無線アプリケーションプロトコル（ＷＡＰ）デバイスであり、前記確認メッセージは、ショートメッセージサービス（ＳＭＳ）メッセージおよび無線アプリケーションプロトコル（ＷＡＰ）プッシュメッセージのうち１つまたは複数を備えることを特徴とする請求項１９に記載のシステム。
【請求項２１】
前記ネットワークサーバは、前記確認メッセージを前記モバイルデバイスへ、無線通信プロトコルに従って配信するように構成されることを特徴とする請求項１９に記載のシステム。
【請求項２２】
前記ネットワークサーバおよび前記認証サーバに関連付けられたアフィリエイトサーバをさらに備え、前記アフィリエイトサーバは、最初に前記要求を前記ユーザから前記モバイルデバイスを介して受信するように、および、前記要求を前記ネットワークサーバへ、データ通信ネットワークを介して通信するように構成されることを特徴とする請求項１９に記載のシステム。
【請求項２３】
前記ネットワークサーバは、デバイス識別子およびプロバイダ識別子を前記ユーザから前記モバイルデバイスを介して受信するように構成され、前記デバイス識別子は前記モバイルデバイスを識別し、前記プロバイダ識別子は、前記ユーザに前記モバイルデバイスを介してサービスを提供するサービスプロバイダを識別し、前記ネットワークサーバは、前記受信されたデバイス識別子および前記受信されたプロバイダ識別子を前記認証サーバに配信するようにさらに構成されることを特徴とする請求項１９に記載のシステム。
【請求項２４】
前記ネットワークサーバおよび前記認証サーバに関連付けられたアフィリエイトサーバをさらに備え、前記認証サーバは、ユーザプロファイル情報を前記ユーザから前記モバイルデバイスを介して受信するように、および、前記受信されたユーザプロファイル情報に応答して前記ユーザのための前記アカウントを作成するように構成され、前記認証サーバは、前記受信されたデバイス識別子および前記受信されたプロバイダ識別子を前記アフィリエイトサーバに配信し、前記ユーザのための前記アカウントを作成することに応答して、前記ユーザが、前記アフィリエイトサーバによって提供されたアフィリエイトサービスにアクセスすることを可能にするようにさらに構成されることを特徴とする請求項２３に記載のシステム。
【請求項２５】
前記認証サーバに関連付けられた認証データベースをさらに備え、前記認証データベースは、前記認証サーバによって作成された前記アカウントを表すデータを格納するように構成され、前記データは、前記受信されたデバイス識別子、前記受信されたプロバイダ識別子、前記レンダリングされたチャレンジに対する前記受信されたレスポンス、および、前記アカウントが前記認証サーバによって作成される時間のうち、１つまたは複数を備えることを特徴とする請求項２３に記載のシステム。
【請求項２６】
前記ネットワークサーバに関連付けられた確認データベースをさらに備え、前記確認データベースは、前記受信されたデバイス識別子、前記受信されたプロバイダ識別子、前記受信されたデバイス識別子および前記受信されたプロバイダ識別子のハッシュ、前記配信された確認メッセージ、確認メッセージが前記モバイルデバイスに配信される回数、チャレンジに対するレスポンスが前記ユーザから受信される回数、前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応すると判断されるかどうかの指示、および、前記確認メッセージが前記モバイルデバイスに配信される時間を示すタイムスタンプのうち、１つまたは複数を格納するように構成されることを特徴とする請求項２３に記載のシステム。
【請求項２７】
前記ネットワークサーバは、前記確認データベース内に格納された前記タイムスタンプが事前定義された期間より古いとき、前記確認データベース内に格納された前記データを除去するように構成されることを特徴とする請求項２６に記載のシステム。
【請求項２８】
前記ネットワークサーバは、前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応しないと前記ネットワークサーバが判断する場合、および、前記格納された、チャレンジに対するレスポンスが前記ユーザから受信される回数が所定の数より少ない場合、前記ユーザからの前記レンダリングされたチャレンジに対する別のレスポンスを促すように構成されることを特徴とする請求項２６に記載のシステム。
【請求項２９】
前記ネットワークサーバは、前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応しないと、前記ネットワークサーバが判断するとき、および、前記格納された、確認メッセージが前記モバイルデバイスに配信される回数が所定の数より少ないとき、前記ユーザが別の確認メッセージを受信することを望むかどうかを問い合わせるように構成され、前記ネットワークサーバは、前記ネットワークサーバが、前記ユーザが他の確認メッセージを受信することを望むことを指定する指示を前記ユーザから受信する場合、他の確認メッセージを前記モバイルデバイスへ、前記ユーザに別のチャレンジとしてレンダリングするために配信するようにさらに構成されることを特徴とする請求項２６に記載のシステム。
【請求項３０】
前記ネットワークサーバは、前記確認データベースにアクセスするように構成され、他の確認メッセージを前記モバイルデバイスに配信することに応答して、前記格納されたタイムスタンプを、他の確認メッセージが前記モバイルデバイスに配信される時間により更新すること、前記確認データベース内に格納された前記確認メッセージを、前記モバイルデバイスに配信された他の確認メッセージにより更新すること、前記格納された、確認メッセージが前記モバイルデバイスに配信される回数を増分すること、および、前記格納された、チャレンジに対するレスポンスが受信される回数をゼロに設定することのうち、１つまたは複数を実行するように構成されることを特徴とする請求項２９に記載のシステム。
【請求項３１】
モバイルデバイスを介してアカウントを作成するためのデータ構造をその上に格納した１つまたは複数のコンピュータ可読媒体であって、
デバイス識別子を格納するためのデバイス識別子フィールドであって、前記デバイス識別子はユーザのモバイルデバイスを識別するデバイス識別子フィールドと、
プロバイダ識別子を格納するためのプロバイダ識別子フィールドであって、前記プロバイダ識別子は前記ユーザに前記モバイルデバイスを介してサービスを提供するサービスプロバイダを識別するプロバイダ識別子フィールドと、
前記ユーザにチャレンジとしてレンダリングするために前記モバイルデバイスへ配信された確認メッセージを格納するための確認メッセージフィールドと、
前記格納された確認メッセージが前記モバイルデバイスに配信される回数を格納するためのメッセージカウンタフィールドと、
前記レンダリングされたチャレンジに対するレスポンスが前記ユーザから受信される回数を格納するためのレスポンスカウンタフィールドとを備えることを特徴とするコンピュータ可読媒体。
【請求項３２】
前記データ構造は、
前記格納されたデバイス識別子および前記格納されたプロバイダ識別子のハッシュを格納するためのハッシュ識別フィールドと、
前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応するかどうかの指示を格納するための検証フィールドと、
前記格納された確認メッセージが前記モバイルデバイスに配信される時間を格納するためのタイムスタンプフィールドとをさらに備えることを特徴とする請求項３１に記載のコンピュータ可読媒体。
【請求項３３】
前記検証フィールド内に格納された前記指示が、前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記配信された確認メッセージに対応しないと指定する場合、および、前記メッセージカウンタフィールド内に格納された前記回数が所定の数より少ない場合、前記確認メッセージフィールドは別の確認メッセージにより更新され、前記メッセージカウンタフィールド内に格納された前記回数は増分され、前記レスポンスカウンタフィールド内に格納された前記回数はゼロに設定され、前記タイムスタンプフィールドは、他の確認メッセージが前記モバイルデバイスへ、前記ユーザに別のチャレンジとしてレンダリングするために配信される時間により更新されることを特徴とする請求項３２に記載のコンピュータ可読媒体。
【請求項３４】
前記確認メッセージフィールド内に格納された前記確認メッセージは、ショートメッセージサービス（ＳＭＳ）メッセージおよび無線アプリケーションプロトコル（ＷＡＰ）プッシュメッセージのうち１つまたは複数を備えることを特徴とする請求項３１に記載のコンピュータ可読媒体。
【請求項３５】
前記確認メッセージフィールド内に格納された前記確認メッセージは６桁の数字コードを備えることを特徴とする請求項３１に記載のコンピュータ可読媒体。
【請求項３６】
モバイルデバイスを介してアカウントを作成するためのコンピュータ実行可能コンポーネントを有する１つまたは複数のコンピュータ可読媒体であって、
ユーザからアカウントを作成するための要求を受信するためのインターフェイスコンポーネントであって、前記ユーザは、モバイルデバイスを介して前記アカウントを作成することを要求し、前記要求は前記モバイルデバイスから、無線通信プロトコルに従って受信されるインターフェイスコンポーネントと、
前記受信された要求に応答して、確認メッセージを前記モバイルデバイスに送信するための確認コンポーネントであって、前記確認メッセージは、前記ユーザにチャレンジとしてレンダリングするために前記モバイルデバイスへ送信される確認コンポーネントと、
前記レンダリングされたチャレンジに対するレスポンスを前記ユーザから前記モバイルデバイスを介して受信するため、および、前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記送信された確認メッセージに対応するかどうかを判断するための検証コンポーネントと、
前記レンダリングされたチャレンジに対する前記受信されたレスポンスが、前記送信された確認メッセージに対応すると判断される場合、前記ユーザのための前記アカウントを作成するためのアカウントコンポーネントとを備えることを特徴とするコンピュータ可読媒体。
【請求項３７】
前記インターフェイスコンポーネントは、デバイス識別子およびプロバイダ識別子を前記ユーザから前記モバイルデバイスを介して受信するように構成され、前記デバイス識別子は前記モバイルデバイスを識別し、前記プロバイダ識別子は、前記ユーザに前記モバイルデバイスを介してサービスを提供するサービスプロバイダを識別し、前記アカウントコンポーネントは、ユーザプロファイル情報を前記ユーザから前記モバイルデバイスを介して受信するように、および、前記受信されたユーザプロファイル情報に応答して前記ユーザのための前記アカウントを作成するように構成され、前記アカウントコンポーネントは、前記ユーザのための前記アカウントを作成することに応答して、前記受信されたデバイス識別子および前記受信されたプロバイダ識別子をアフィリエイトサーバに送信するようにさらに構成されることを特徴とする請求項３６に記載のコンピュータ可読媒体。
【請求項３８】
前記受信されたデバイス識別子、前記受信されたプロバイダ識別子、前記受信されたデバイス識別子および前記受信されたプロバイダ識別子のハッシュ、前記送信された確認メッセージ、確認メッセージが前記モバイルデバイスに送信される回数、チャレンジに対するレスポンスが前記ユーザから受信される回数、前記レンダリングされたチャレンジに対する前記受信されたレスポンスが、前記送信された確認メッセージに対応するかどうかの指示、および、前記確認メッセージが前記モバイルデバイスに送信される時間を示すタイムスタンプのうち、１つまたは複数を格納するためのメモリコンポーネントをさらに備えることを特徴とする請求項３７に記載のコンピュータ可読媒体。
【請求項３９】
前記インターフェイスコンポーネントは、前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記送信された確認メッセージに対応しないと、前記検証コンポーネントが判断するとき、および、前記格納された、確認メッセージが前記モバイルデバイスに送信される回数が、事前定義された期間内で所定の数より少ないとき、前記ユーザが別の確認メッセージを受信することを望むかどうかを問い合わせるように構成され、前記確認コンポーネントは、前記インターフェイスコンポーネントが、前記ユーザが他の確認メッセージを受信することを望むことを指定する指示を前記ユーザから受信する場合、他の確認メッセージを前記モバイルデバイスへ、前記ユーザに別のチャレンジとしてレンダリングするために送信するように構成されることを特徴とする請求項３８に記載のコンピュータ可読媒体。
【請求項４０】
前記インターフェイスコンポーネントは、前記レンダリングされたチャレンジに対する前記受信されたレスポンスが前記送信された確認メッセージに対応しないと、前記検証コンポーネントが判断する場合、および、前記格納された、チャレンジに対するレスポンスが前記ユーザから受信される回数が、事前定義された期間内で所定の数より少ない場合、前記ユーザからの前記レンダリングされたチャレンジに対する別のレスポンスを促すように構成されることを特徴とする請求項３８に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態はコンピュータネットワーク環境の分野に関する。詳細には、本発明の実施形態は、モバイルデバイスからアカウントを作成すること、および、自動スクリプトがこのようなコンピュータネットワーク環境内でモバイルデバイスを介してアカウントを作成するためにタスクを実行することを防止することに関する。
【背景技術】
【０００２】
ウェブサイトまたはインターネットサイトはしばしば、情報、製品、サービスなどをそれらのユーザに提供する。多数のウェブサイトは、それらのウェブサーバがユーザにアクセスを付与する前に、ユーザが「登録」することを希望する。登録中に、ユーザは通常、ユーザ名、アカウント番号、住所、電話番号、ｅメールアドレス、コンピュータプラットフォーム、年齢、性別および／または趣味を、登録ウェブサイトに供給する。
【０００３】
ユーザを初めて登録するとき、ウェブサイトは、ユーザがログイン識別子またはログインＩＤおよび関連付けられたパスワードを選択することを要求する場合がある。ログインＩＤにより、ウェブサイトはユーザを識別し、後にユーザがウェブサイトに訪れる間にユーザについての情報を検索することができる。一般に、ログインＩＤはウェブサイトに対して一意であり、２人のユーザが同じログインＩＤを有することがないようにする。ログインＩＤ、および、このログインＩＤに関連付けられたパスワードの組み合わせにより、ウェブサイトは、後にウェブサイトに訪問中にユーザを認証することができる。パスワードはまた、他者（パスワードを知らない者）がウェブサイトに、そのユーザのログインＩＤを使用してアクセスすることを防止する。多数のユーザはインターネットに、モバイルデバイスを介してアクセスする。しかし現在は、このようなユーザは、自分のモバイルデバイスを介してインターネットにアクセスすることを許可される前に、しばしば自分のアカウントを、従来のデスクトップまたはラップトップパーソナルコンピュータ（ＰＣ）を介して登録する必要がある。
【０００４】
また、スクリプト（例えば、自動ボット）は、悪意のあるユーザが、架空のユーザに関連付けられた多数の新しいアカウントを登録するために、人とウェブサイトとの対話をエミュレートすることを可能にする。このような自動スクリプト登録は、いくつかの望ましくない結果を有する場合がある。例えば、多数の電子メール（またはｅメール）サービスにより、ユーザは未承認の大量メール（すなわち、スパム）を送信者のアドレスに基づいてフィルタリングして除くことができるので、新しいｅメールアカウントを登録するためのスクリプトを実行することにより、悪意のあるユーザは、このようなフィルタリングをものともせずに、スパムを新しいアカウントから送信し続けることができる。とりわけ、新しいアカウントはまた、ソフトウェアの違法コピーを格納するための容易にアクセス可能なスペースをも提供する。
【０００５】
いくつかの従来の技術は、自動スクリプト登録を防止するように設計されている。たとえば、２つの目に見えない応答者である、人間とコンピュータに問い合わせるための「チューリングテスト」の概念は、２つのうちどちらがコンピュータであるかを判断するために開発されている。コンピュータおよび人間を区別するための完全に自動化された公開チューリングテスト（ＣＡＰＴＣＨＡ）は、ネットワークを介して人間およびコンピュータを区別するために、コンピュータによってではなく人間によって解決可能となるように設計されたパズルを作成する周知のプロジェクトである。通常、このパズルはユーザに、視覚的に散らされたイメージから一連の文字を読ませることを伴う。ＣＡＰＴＣＨＡについてのさらなる情報は入手可能である（例えば、非特許文献１参照。）。
【０００６】
携帯電話または携帯情報端末（ＰＤＡ）などのモバイルデバイスを介した自動スクリプト登録を防止することは、もう１つの課題を提示する。現在、従来のＣＡＰＴＣＨＡまたはＨＩＰの実施はＰＣに制限される。これは、モバイルデバイスは通常、ＣＡＰＴＣＨＡまたはＨＩＰをイメージまたはオーディオ認識に基づいてうまく実施するために十分な画面解像度、グラフィックス機能、オーディオ機能またはメモリを有していないからである。また、モバイルデバイスへの伝送チャネルは通常、従来のＣＡＰＴＣＨＡまたはＨＩＰをモバイルデバイスに有効に送信するために十分なネットワーク帯域幅および／または速度を有していない。
【０００７】
前述のことを考慮して、人間によって実行されると想定される反復タスクを自動スクリプトが実行することを可能にすることなく、ユーザがモバイルデバイスを介してアカウントを作成することを有効に可能にするための解決法が望まれる。
【０００８】
【非特許文献１】www.captcha.net
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明の実施形態は、従来技術における１つまたは複数の不具合を、とりわけ、モバイルデバイスを介した正当なアカウントの作成を提供することによって克服する。
【課題を解決するための手段】
【００１０】
一実施態様によれば、本発明は、モバイルデバイス（例えば、携帯電話またはＰＤＡなどの無線デバイス）を介してアカウントを作成するための要求を受信するためのネットワークサーバを提供する。この実施形態では、ネットワークサーバは、要求を受信した後、確認メッセージをモバイルデバイスに配信する。本発明の１つまたは複数の実施形態によれば、配信された確認メッセージは、モバイルデバイスのユーザにセキュアチャレンジ（ｓｅｃｕｒｅ  ｃｈａｌｌｅｎｇｅ）としてレンダリングされ、６桁の数字のショートメッセージサービス（ＳＭＳ）メッセージまたは無線アプリケーションプロトコル（ＷＡＰ）プッシュメッセージの形態にすることができる。次いで、ユーザは、レンダリングされたチャレンジに対するレスポンスをネットワークサーバに送信することができる。本発明の別の実施形態では、ネットワークサーバは、レンダリングされたチャレンジに対するレスポンスが、配送された確認メッセージに対応することを検証する場合、ユーザがアカウント登録プロセス（例えば、所望のユーザ名、パスワードなどのユーザプロファイル情報を入力すること）を継続することを可能にする。次いで、認証サーバは、ユーザがアカウント登録プロセスの完了に成功する場合、ユーザのためのアカウントを作成する。
【００１１】
本発明の一実施態様によれば、認証サーバは、所与のモバイルデバイス（例えば、モバイルデバイスに関連付けられたデバイス識別子（またはデバイスＩＤ）および／またはプロバイダ識別子（またはプロバイダＩＤ）によって識別される）から作成されたアカウントの数を追跡して、ユーザが事前定義された期間内にそのモバイルデバイスから所定数を超えるアカウントを作成することを防止する。また、認証サーバは、成功したレスポンスのブラックリストを保持して、悪意のあるユーザがチャレンジに対するレスポンスを認証サーバにリプレイする（すなわち、ネットワークサーバまたはリソースドメインをバイパスする）ことを防止する。
【００１２】
本発明の別の実施形態では、ユーザが、レンダリングされたチャレンジに対する成功したレスポンスを提供することができない場合、ネットワークサーバは、ユーザが別の確認メッセージを受信することを望むかどうかを問い合わせる。ユーザが別の確認を受信するための要望を示す場合、ネットワークサーバは新しい確認メッセージをモバイルデバイスへ、ユーザに別のチャレンジとしてレンダリングするために配信する。しかし、自動スクリプトがモバイルデバイスを介して１つまたは複数のアカウントを作成することを防止するために、本発明の実施形態は、このような新しい確認メッセージがモバイルデバイスに事前定義された期間内に配信されることが可能である回数を制限する。本発明の１つまたは複数の他の実施形態はさらに、ユーザが、事前定義された期間内に配信された確認メッセージに応答しようと試みることができる回数を制限する。
【００１３】
簡単に説明すると、本発明の態様を使用する方法は、モバイルデバイスを介してアカウントを作成する。この方法は、モバイルデバイスを介して、ユーザからアカウントを作成するための要求を受信することを含む。この要求はモバイルデバイスから、無線通信プロトコルに従って受信される。この方法はまた、受信された要求に応答して、確認メッセージをモバイルデバイスへ、ユーザにチャレンジとしてレンダリングするために配信することをも含む。この方法はまた、レンダリングされたチャレンジに対するレスポンスをユーザからモバイルデバイスを介して受信することをも含む。この方法はさらに、レンダリングされたチャレンジに対して受信されたレスポンスが、配信された確認メッセージに対応するかどうかを判断することを含む。また、この方法は、レンダリングされたチャレンジに対して受信されたレスポンスが、配信された確認メッセージに対応すると判断される場合、ユーザのためのアカウントを作成することを含む。
【００１４】
本発明の別の実施形態では、本発明の態様を使用するシステムは、モバイルデバイスを介してアカウントを作成する。このシステムは、ユーザからモバイルデバイスを介してアカウントを作成するための要求を受信するためのネットワークサーバを含む。ネットワークサーバはこの要求をモバイルデバイスから、無線通信プロトコルに従って受信する。受信された要求に応答して、ネットワークサーバは、確認メッセージをモバイルデバイスへ、ユーザにチャレンジとしてレンダリングするために配信するように構成される。ネットワークサーバはさらに、レンダリングされたチャレンジに対するレスポンスをユーザからモバイルデバイスを介して受信するように、および、レンダリングされたチャレンジに対して受信されたレスポンスが、配信された確認メッセージに対応するかどうかを判断するように構成される。このシステムはまた、レンダリングされたチャレンジに対して受信されたレスポンスが、配信された確認メッセージに対応すると、ネットワークサーバが判断する場合、ユーザのためのアカウントを作成するための認証サーバをも含む。
【００１５】
本発明のさらに別の実施形態では、本発明の態様を使用するコンピュータ可読媒体は、モバイルデバイスを介してアカウントを作成するためのデータ構造をその上に格納している。このデータ構造は、デバイス識別子を格納するためのデバイス識別子フィールドを含む。デバイス識別子は、ユーザのモバイルデバイスを識別する。このデータ構造はまた、プロバイダ識別子を格納するためのプロバイダ識別子フィールドをも含む。プロバイダ識別子は、ユーザにモバイルデバイスを介してサービスを提供するサービスプロバイダを識別する。このデータ構造はまた、ユーザにチャレンジとしてレンダリングするためにモバイルデバイスへ配信された確認メッセージを格納するための確認メッセージフィールドをも含む。このデータ構造は、格納された確認メッセージがモバイルデバイスに配信される回数を格納するためのメッセージカウンタフィールドを含む。さらに、このデータ構造は、レンダリングされたチャレンジに対するレスポンスがユーザから受信される回数を格納するためのレスポンスカウンタフィールドを含む。
【００１６】
本発明のさらに別の実施形態では、本発明の態様を使用するコンピュータ可読媒体は、モバイルデバイスを介してアカウントを作成するためのコンピュータ実行可能コンポーネントを有する。コンピュータ可読媒体は、ユーザからアカウントを作成するための要求を受信するためのインターフェイスコンポーネントを含む。ユーザは、モバイルデバイスを介してアカウントを作成することを要求する。インターフェイスコンポーネントは、この要求をモバイルデバイスから、無線通信プロトコルに従って受信する。コンピュータ可読媒体はまた、受信された要求に応答して、確認メッセージをモバイルデバイスに送信するための確認コンポーネントをも含む。確認コンポーネントは、確認メッセージをモバイルデバイスへ、ユーザにチャレンジとしてレンダリングするために送信する。コンピュータ可読媒体はさらに、レンダリングされたチャレンジに対するレスポンスをユーザからモバイルデバイスを介して受信するため、および、レンダリングされたチャレンジに対して受信されたレスポンスが、送信された確認メッセージに対応するかどうかを判断するための、検証コンポーネントを含む。コンピュータ可読媒体はまた、レンダリングされたチャレンジに対して受信されたレスポンスが、送信された確認メッセージに対応すると判断される場合、ユーザのためのアカウントを作成するためのアカウントコンポーネントをも含む。
【００１７】
モバイルデバイスを介してアカウントを作成する方法を実行するためのコンピュータ実行可能命令を有するコンピュータ可読媒体は、本発明のさらなる態様を具体化する。
【００１８】
代替として、本発明の実施形態は、様々な他の方法および装置を備えることができる。
【００１９】
他の特徴は以下で部分的に明らかになり、部分的に指摘される。
【００２０】
対応する参照符号は、図面の全体に渡って対応する部分を示す。
【発明を実施するための最良の形態】
【００２１】
例示的ネットワーク環境
ここで図面を参照すると、図１は、本発明を利用して、自動スクリプト（またはボット）がモバイルデバイスを介して多数のアカウントを登録または作成することを防止することができる、例示的ネットワーク環境を全体的に例示する。この例では、図１は、複数のウェブサイトの間のネットワーク間コラボレーションを、分散されたマルチサイトユーザ認証システムの一部として概略的に示す。このようなサービスはユーザに、１つまたは複数の参加ウェブサイトまたはリソースへ単一のサインインによりアクセスするための機能を提供する。参加サイト（「アフィリエイト」または「アフィリエイトサイト」と称する）はアクセス権のコントロールを維持するが、それら自体のメーカ独自の認証システムをホストおよび維持するよりむしろ認証サービスを使用する。図１の例では、本発明の実施形態を、マルチサイトユーザ認証システムによる自動スクリプト登録の防止との関連で説明する。しかし、本発明は、ユーザがサーバへのアクセスを求めるいかなる環境内でも適用可能であり、いかなるタイプおよび数の認証システムとも共に動作可能であることを理解されたい。
【００２２】
モバイルデバイスを含むことができる１つまたは複数のクライアントコンピュータシステム１０２は、図１で、データ通信ネットワーク１０４に直接結合される。代替として、クライアントコンピュータシステム１０２はネットワーク１０４に、電話通信ネットワーク１０５（例えば、無線電話サービス用）を介して接続される。この例では、ネットワーク１０４はインターネット（またはワールドワイドウェブ）である。しかし、本発明の実施形態は、いかなるデータ通信ネットワークにも適用することができる。複数のアフィリエイトサーバ１０６もまたネットワーク１０４に結合される。同様に、クライアントコンピュータシステム１０２は、ネットワーク１０４を介してアフィリエイトサーバ１０６にアクセスすることができる。アフィリエイトサーバ１０６はまた、一般に「ウェブサーバ」とも呼ばれる。
【００２３】
図１はまた、データ通信ネットワーク１０４に直接、または電話通信ネットワーク１０５を介して接続されたモバイルデバイス１０８（例えば、携帯電話またはＰＤＡなどの無線デバイス）での権限のないユーザをも例示する。大部分の認証サービスは、人間と対話するように設計される。しかし、人間と認証サービスとの対話は、権限のないユーザによってスクリプトの使用により容易にエミュレートされる場合がある。認証サーバは、機械と対比して人間と対話するときを知る信頼できる方法を有していない。悪意のあるユーザ、例えば、モバイルデバイス１０８のユーザなどは、ウェブサーバによって提供されたサービスに対して様々な目的でスクリプトを実行する（例えば、多数の新しいアカウントを架空のユーザに登録する、スパムのためにｅメールサービスを不正使用するなど）。
【００２４】
認証プロセスを実行する前に、クライアントコンピュータシステム１０２のユーザおよびアフィリエイトサーバ１０６のオペレータは、認証サーバ１１０に「登録」する。認証サーバ１１０もまたネットワーク１０４に結合され、それ自体とクライアントコンピュータシステム１０２とアフィリエイトサーバ１０６の間の通信を可能にする。この例では、モバイルデバイス１０８によって表された権限のないユーザは、多数のアカウントを認証サーバ１１０に自動的に登録するためのスクリプトを実行しようと試みる。一般に、この登録は、必要な情報を認証サーバ１１０に提供する１回限りのプロセスである。クライアントコンピュータシステム１０２のユーザは、ユーザ名、郵送先住所およびｅメールアドレスなど、ユーザおよび／またはクライアントコンピュータシステム１０２についての情報を提供することによって、認証サーバ１１０に登録する。ユーザ登録プロセスの一部として、ユーザにログインＩＤが割り当てられ（またはユーザが選択し）、このＩＤは共通ログインＩＤであり、アフィリエイトサーバ１０６にアクセスするために使用される。ログインＩＤは本明細書で「ユーザ名」、「メンバー名」または「ログイン名」と称する場合もある。
【００２５】
加えて、ユーザは、認証のために使用されるログインＩＤに関連付けられたパスワードを選択する。認証サーバ１１０に登録およびログインした後、ユーザは、関連付けられたユーザプロファイル内にすでに含まれるユーザのクリデンシャルおよび／または他の情報を再入力することなく、アフィリエイトサーバ１０６（すなわち、同じく認証サーバ１１０に登録されるアフィリエイトサーバ）をしばしば訪れることができる。
【００２６】
図１に示すように、データベース１１２（例えば、認証データベース）など、メモリエリアが認証サーバ１１０に結合される。データベース１１２には、例えば、クライアントコンピュータシステム１０２の１ユーザ（ならびに、ネットワーク上の他のユーザ）を認証するために必要な情報（例えば、信用証明情報（クリデンシャル））が含まれる。データベース１１２を、認証サーバ１１０から分離した単一のストレージユニットとして示すが、本発明の他の実施形態では、データベース１１２は、認証サーバ１１０内に含まれた、あるいは認証サーバ１１０から分離した１つまたは複数のメモリであってもよいことを理解されたい。連合された環境では、例えば、認証サーバ１１０など、複数の認証サーバを使用して認証を提供することができる。
【００２７】
ときとして図１に関連して「中央サーバ」または「ログインサーバ」と呼ばれるが、例示の実施形態における認証サーバ１１０はまた、ウェブブラウザおよび他のウェブサーバと対話することができるウェブサーバでもある。この例では、認証サーバ１１０、クライアントコンピュータシステム１０２、およびアフィリエイトサーバ１０６はそれら自体の間で、一般にインターネット上で情報を交換するために使用されるプロトコルであるハイパーテキスト転送プロトコル（ＨＴＴＰ）を使用して、データを通信する。
【００２８】
本発明の実施形態は、オペレーションのあるエリア内での悪意のあるスクリプト防止のために、確認メッセージを含む、チャレンジ（「テスト」とも呼ばれる）の使用を含む。制限された量の確認メッセージがモバイルデバイスのユーザに送信されて、ユーザがモバイルデバイスを介してアカウントを登録することが可能となる。確認メッセージをモバイルデバイスへ、ユーザにセキュアチャレンジとしてレンダリングするために送信することによって、本発明の実施形態は、悪意のあるスクリプトがモバイルデバイスを使用してアカウントを登録することを抑止する。また、制限された数の確認メッセージがモバイルデバイスに送信されること、および、ユーザによってチャレンジされることを可能にすることによって、本発明の実施形態は多数のアカウントの強引な登録を防止する。
【００２９】
モバイルデバイスを介したアカウント作成
図２は、本発明の一実施形態によるモバイルデバイスを介してアカウントを作成するための（全体的に参照符号２００によって示す）一方法の例示的プロセスの流れを全体的に例示する。図２に示した例は、モバイルデバイスのユーザがまだアフィリエイトサーバにログインしておらず、まだ認証サーバに登録していない状況を説明する。図２で「Ａ」から「Ｏ」のラベルが付いた線は、例示的プロセス中の情報またはアクティビティの流れを表す。これらの線の矢印は、例示的プロセスの流れの方向を示す。
【００３０】
Ａで、ユーザはモバイルデバイス２０２のブラウザを使用して、アフィリエイトサーバ２０４によって提供されたサービス（例えば、ウェブサイト）を訪れる。本発明の一実施形態では、モバイルデバイス２０２はポータブル（または携帯）電話またはＰＤＡなどの無線デバイスであり、ＷＡＰなどの無線通信プロトコルに従ってアフィリエイトサーバ、ネットワークサーバ、認証サーバ、および／または他のデバイスと通信する。本発明の代替実施形態では、モバイルデバイス２０２は、ネットワークサーバ２０８によって、モバイルデバイス２０２の一意の識別子（例えば、以下で論じるようなデバイスＩＤおよび／またはプロバイダＩＤ）を使用して直接到達することができるデバイスである。
【００３１】
図２に示した例では、ユーザは認証サーバ２０６に登録されないので、アフィリエイトサーバ２０４は、ユーザがモバイルデバイス２０２を介してそのサービスにアクセスすることを可能にしない。その代わりに、アフィリエイトサーバ２０４はＢで、モバイルデバイス２０２のブラウザをネットワークサーバ２０８にリダイレクトする。このリダイレクトと共に、アフィリエイトサーバ２０４は、サインインクエリ文字列パラメータを有するサインイン要求をネットワークサーバ２０８に渡す。
【００３２】
サインイン要求をアフィリエイトサーバ２０４から受信した後、ネットワークサーバ２０８はＣで、サインインユーザインターフェイス（ＵＩ）をモバイルデバイス２０２のブラウザ内でレンダリングして、ユーザに自分の認証クリデンシャル（例えば、ユーザ名および／またはパスワード）の入力を促す。サインインＵＩに含まれるものは、ユーザがすでにそのようにしていない場合にアカウントを認証サーバ２０６に登録するためのユーザ選択可能オプションである。図２の例のユーザはまだ認証サーバ２０６に登録していないので、Ｄで、ユーザはユーザ選択可能オプションを選択してアカウントを登録し、アカウント登録のための要求をネットワークサーバ２０８に送信することができる。このアカウント登録のための要求をモバイルデバイス２０２から受信した後、Ｅで、ネットワークサーバ２０８は識別ＵＩをモバイルデバイス２０２のブラウザ内でレンダリングして、プロバイダＩＤおよびデバイスＩＤをユーザから要求する。
【００３３】
本発明の一実施形態によれば、プロバイダＩＤは、１つまたは複数のサービス（例えば、携帯電話サービス）をユーザに、モバイルデバイス２０２を介して提供する一意のサービスプロバイダを識別する。本発明のこの実施形態では、デバイスＩＤはモバイルデバイス２０２を一意に識別し、モバイルデバイス２０２の電話番号または他の識別子であってもよい。ネットワークサーバ２０８に関連付けられた確認データベース２１０など、メモリエリアはプロバイダＩＤのリストを格納し、これによりそれらのユーザは認証サーバ２０６にモバイルデバイスを介して登録することができる。したがって、モバイルデバイス２０２のブラウザ内でレンダリングされた識別ＵＩはこのプロバイダＩＤのリストを含んで、ユーザがモバイルデバイス２０２に関連付けられた特定のプロバイダＩＤを選択することができるようにする。また、識別ＵＩ内に含まれたプロバイダＩＤのリストを、ユーザが位置する領域に従ってフィルタリングすることができる。具体的には、アフィリエイトサーバ２０４からネットワークサーバ２０８に渡されたサインインクエリ文字列には、ユーザの領域を識別するロケール識別子（またはロケールＩＤ）が含まれ、ネットワークサーバ２０８は、識別された領域内でサービスを提供しないこれらのプロバイダＩＤを除外する識別ＵＩをレンダリングする。また、ネットワークサーバ２０８は、サインイン文字列パラメータ内に含まれたロケールＩＤに従ってローカライズされるＵＩをレンダリングするように構成される（例えば、ＵＩ内で使用された言語はユーザの識別された領域に基づく）。したがって、確認データベース２１０にはまた、ＵＩの仕様（例えば、使用される言語）と特定のロケールＩＤの間の組み合わせのリストを指定するデータも含まれる。
【００３４】
本発明の代替実施形態では、アフィリエイトサーバ２０４によって提供されたサービスが特定のプロバイダＩＤに特有である場合、識別ＵＩはプロバイダＩＤをユーザから要求しない。ネットワークサーバ２０８は、アフィリエイトサーバ２０４から渡されたクエリ文字列パラメータを解析して、アフィリエイトサーバ２０４のサービスが特定のプロバイダＩＤに特有であるかどうかを判断するように、および、この特定のプロバイダＩＤをモバイルデバイス２０２のユーザに関連付けるように構成される。Ｆで、ユーザはモバイルデバイス２０２を介して、モバイルデバイス２０２のデバイスＩＤ、および／または、選択されたプロバイダＩＤをネットワークサーバ２０８にサブミットする。
【００３５】
ネットワークサーバ２０８は、プロバイダＩＤおよびデバイスＩＤをユーザから受信した後、Ｇで、ネットワークサーバ２０８のドメイン内で書かれたクッキー（または他のデータ）を発行し、このクッキーをモバイルデバイス２０２上で格納する。このクッキーは、受信されたプロバイダＩＤおよび受信されたデバイスＩＤにより暗号化され、事前定義された期間（例えば、２４時間）に渡ってモバイルデバイス２０２上で格納される。また、ユーザがモバイルデバイス２０２を介して認証サーバ２０６によりアカウントを作成した後、ネットワークサーバ２０８はこのクッキーをモバイルデバイス２０２から除去する。このクッキーの目的は、ネットワークサーバ２０８が、特に、ユーザがモバイルデバイス２０２のブラウザを閉じて再度開いた後で登録プロセスを再開する場合に、登録プロセス中にどのモバイルデバイスがアカウントの作成を試行中であるかを判断することを可能にすることである。
【００３６】
Ｈで、ネットワークサーバ２０８は確認メッセージをモバイルデバイス２０２に配信する。本発明の一実施形態によれば、確認メッセージを、ＳＭＳメッセージなどの安全なメッセージにすることができる。ＳＭＳメッセージには、事前定義された数の数字（例えば、６桁の数のＳＭＳメッセージ）が含まれる場合がある。本発明の代替実施形態では、確認メッセージを、確認メッセージへのリンクを含むＷＡＰプッシュメッセージの形態にすることができる。しかし、他のタイプのメッセージを確認メッセージとして使用することができることが企図される。
【００３７】
Ｉで、ネットワークサーバ２０８は検証ＵＩをモバイルデバイス２０２のブラウザ内でレンダリングして、ユーザに、モバイルデバイス２０２に配信された確認メッセージを入力するように要求する。ユーザに対してレンダリングされた検証ＵＩにはまた、配信された確認メッセージをどのように得るかの指示も含まれる。したがって、ネットワークサーバ２０８が確認メッセージをモバイルデバイス２０２のメモリエリア（例えば、モバイルデバイス２０２上のユーザのメールボックス）に配信した場合、検証ＵＩはユーザに、このメモリエリアにアクセスして、配信された確認メッセージを得るように指示する。一方、ネットワークサーバ２０８が確認メッセージをユーザに、確認メッセージへのリンクを含むＷＡＰプッシュメッセージの形態で配信した場合、検証ＵＩはユーザに、リンクをクリックして、配信された確認メッセージを得るように指示する。
【００３８】
Ｊで、ユーザは、得られた確認メッセージを検証ＵＩ内で入力し、自分のエントリをネットワークサーバ２０８へ、モバイルデバイス２０２を介してサブミットする。したがって、ネットワークサーバ２０８は確認メッセージをモバイルデバイス２０２へ、ユーザにセキュアチャレンジとしてレンダリングするために配信し、ユーザは、配信された確認メッセージを得ること、および、得られたメッセージをネットワークサーバ２０８にサブミットすることによって、レンダリングされたチャンレンジに対するレスポンスをサブミットする。さらに、ネットワークサーバ２０８が確認メッセージをモバイルデバイス２０２へ、安全なチャネルを介して配信する場合、他のモバイルデバイスはこの確認メッセージを受信すること、および、レスポンスをサブミットすることができない場合があり、これは、他のモバイルデバイスがモバイルデバイス２０２の一意のデバイスＩＤを有していないからである。したがって、本発明の実施形態は、自動スクリプトが確認メッセージを受信すること、および、受信された確認メッセージに自動的に応答してアカウントを登録することを防止する。
【００３９】
ネットワークサーバ２０８は、レンダリングされたチャレンジに対するレスポンスを確認メッセージの形態でユーザから受信した後、受信されたレスポンスが、モバイルデバイス２０２に配信された元の確認メッセージに対応するかどうかを判断する。受信されたレスポンスが最初に配信された確認メッセージに対応しない場合、ネットワークサーバ２０８はユーザに、別の確認メッセージを受信することを望むかどうかを問い合わせることができる。ユーザが、別の確認メッセージを受信するための要望を示す場合、ネットワークサーバ２０８は新しい確認メッセージをモバイルデバイス２０２へ、ユーザに別のチャレンジとしてレンダリングするために配信する。代替として、ネットワークサーバ２０８は、最初に配信された確認メッセージに対する別のレスポンスをユーザから要求することができる。また、ユーザは登録プロセスをキャンセルするか、あるいは、別のデバイスＩＤを有する別のモバイルデバイスから別の登録プロセスを再開するかを決定することができる。しかし、ネットワークサーバ２０８への強引な攻撃を防止するため、ネットワークサーバ２０８はメッセージ制限を課し、所定の数の確認メッセージ（例えば、５つの確認メッセージ）より多くが所与のデバイスＩＤへ事前定義された期間（例えば、２４時間）以内に送信されることを可能としない。ネットワークサーバ２０８はまた試行制限をも課し、所定の数の試行（例えば、５回の試行）より多くが正しい確認メッセージを事前定義された期間（例えば、２４時間）以内に入力することを可能としない。ネットワークサーバ２０８はさらに、メッセージ制限または試行制限を越える場合、所与のデバイスＩＤがアカウントを認証サーバ２０６に登録することをブロックする。
【００４０】
ネットワークサーバ２０８は、モバイルデバイス２０２のユーザが正しい確認メッセージをサブミットしている（すなわち、受信されたレスポンスが、配信された確認メッセージに対応する）と判断する場合、Ｋで、登録ＵＩをモバイルデバイス２０２のブラウザ内にレンダリングして、ユーザにユーザプロファイル情報（例えば、所望のユーザ名および／またはパスワード）を、モバイルデバイス２０２を介して入力するように促す。ネットワークサーバ２０８はまた、ｅメールアドレスまたは他の情報をユーザから、登録ＵＩを介して要求することもできる。Ｌで、ユーザがユーザプロファイル情報を入力し、ユーザ選択可能オプションを選択して、アカウントを入力情報と共に登録した後、ネットワークサーバ２０８によって提供された登録ＵＩ、または、登録ＵＩをバイパスするスクリプトは次いで、モバイルデバイス２０２のブラウザを認証サーバ２０６へ、ＨＴＴＰ  ＰＯＳＴインターフェイスを介してダイレクトする。したがって、ユーザによって入力されたユーザプロファイル情報（例えば、ユーザ名、パスワード、ｅメールアドレスなど）、ユーザが登録ＵＩのユーザ選択可能オプションを選択する時間を示すタイムスタンプ、および、サインイン要求を表すサインインクエリ文字列パラメータが、認証サーバ２０６に送信される。加えて、Ｌで、要求されたアカウントを表すブラックリストデータが作成され、認証サーバ２０６に送信される。ブラックリストデータは、登録ＵＩがモバイルデバイス２０６のブラウザ内で再表示されるとき、または、スクリプトが登録ＵＩをバイパスしてＨＴＴＰ  ＰＯＳＴインターフェイスにアクセスするとき、認証サーバ２０６が多数のアカウントの作成を回避することを可能にする、暗号化されたフィールドである。本発明の一実施形態では、ブラックリストデータは、以下の形式でエンコードされた暗号化データの集まりである。
【００４１】
Ｃｒｙｐｔ｛ｃｏｎｆｉｒｍａｔｉｏｎ＿ｉｄ＝ｈｈｈ＆ｔｉｍｅ＝ｔｔｔ｝
この形式のブラックリストデータでは、ｈｈｈは、デバイスＩＤ、プロバイダＩＤ、および、配信された確認メッセージに対する正しいレスポンスから組み合わせられた確認識別子（確認ＩＤ）を表す、３２ビットハッシュを示す。また、ｔｔｔは、ユーザが登録ＵＩのユーザ選択可能オプションを選択する時間を示す。このように、ブラックリストデータはベース６４エンコードされた文字列を表すことができる。認証サーバ２０６に関連付けられた認証データベース２１２などのメモリエリアは、ユーザにより提供された情報および作成されたブラックリストデータを格納する。認証サーバ２０６は、所定の数のアカウント（例えば、１つのアカウント）が、ブラックリストデータ内で指定された所与の確認ＩＤについて、事前定義された期間（例えば、１０分）以内で作成されることを可能にする。したがって、ユーザが受け入れ不可能な登録情報を認証サーバ２０６に提供する場合、および／または、ネットワークの問題またはサーバが使用できないためにＨＴＴＰ  ＰＯＳＴが失敗する場合、ユーザはアカウント登録を再試行することができる。
【００４２】
Ｍで、ユーザプロファイル情報およびブラックリストデータを受信および検証した後、認証サーバ２０６はユーザのためのアカウントを作成し、認証サーバクッキーをモバイルデバイス２０２上に（例えば、将来のサイレント認証のために）設定し、モバイルデバイス２０２のブラウザをネットワークサーバ２０８に、サインインクエリ文字列パラメータによりリダイレクトする。認証サーバ２０６は、ユーザのためのアカウントを作成することができない場合、エラーコードをリダイレクトに含め、ネットワークサーバ２０８が適切なエラーメッセージを表示すること、および、ユーザが所望の情報を再入力するためにモバイルデバイス２０２のブラウザ内で登録ＵＩを再表示することを可能にする。認証サーバ２０６は、ユーザのためのアカウントの作成に成功する場合、暗号化された認証チケットおよびユーザのプロファイルデータ（例えば、ユーザ名、ｅメールおよび／または他のユーザプロファイル情報）を、リダイレクトのクエリ文字列に添付し、暗号化された認証チケットおよびプロファイルデータをネットワークサーバ２０８に渡す。暗号化された認証チケットには「アクセス」トークンが含まれる場合があり、アクセストークンは、ユーザが自分がそうであると主張する人物であることを検証する。認証チケットおよびプロファイルデータを認証サーバ２０６から受信した後、ネットワークサーバ２０８はＮで、ウェブページをモバイルデバイス２０２のブラウザ内で表示して、ユーザがアカウントを認証サーバ２０６に登録することに成功したことを示す。加えて、ネットワークサーバ２０８は、以前にそのドメイン内で発行されたクッキーをモバイルデバイス２０２から除去する。
【００４３】
Ｏで、ネットワークサーバ２０８は、アフィリエイトサーバ２０４によって提供されたサービスのサービス識別子（またはサービスＩＤ）またはサイト識別子（またはサイトＩＤ）を、確認データベース２１０内に格納されたサービス／サイトＩＤのリストに対して探索する。ネットワークサーバ２０８は、アフィリエイトサーバ２０４によって提供されたサービスのサービス／サイトＩＤを、このサービス／サイトＩＤのリスト内で検出する場合、モバイルデバイス２０２のデバイスＩＤ、および／または、ユーザにより選択されたプロバイダＩＤを、検出されたサービス／サイトＩＤにより暗号化する。ネットワークサーバ２０８はＯでさらに、暗号化された情報を、サインインパラメータを含むクエリ文字列に追加し、モバイルデバイス２０２のブラウザをアフィリエイトサーバ２０４にリダイレクトする。したがって、アフィリエイトサーバ２０４は、ユーザのプロバイダＩＤおよびデバイスＩＤを受信し、アフィリエイトサーバ２０４によって提供された１つまたは複数のサービスにユーザがアクセスすることができるようにする。本発明の実施形態はこのように、モバイルデバイス２０２のユーザが、アカウントを認証サーバ２０６に登録することに成功した後、１つまたは複数のアフィリエイトサービスにアクセスすることができるようにする。
【００４４】
モバイルデバイスを介してアカウントを作成する例示的方法
図３Ａおよび３Ｂは、本発明の一実施形態によるモバイルデバイスを介してアカウントを作成する例示的方法を例示する。３０２で、アカウントを作成するための要求がモバイルデバイスを介して受信される。この要求を、ＷＡＰなどの無線通信プロトコルに従ってモバイルデバイスと通信することによって受信することができ、モバイルデバイスはＷＡＰデバイスであってもよい。また、この要求をモバイルデバイスからアフィリエイトサーバで受信することができる。このアフィリエイトサーバは、アフィリエイトサービスをモバイルデバイスのユーザに提供する。３０４で、デバイスＩＤおよびプロバイダＩＤが、モバイルデバイスのユーザから受信される。３０６で、受信されたデバイスＩＤおよび受信されたプロバイダＩＤを指定するクッキーなどのデータが、モバイルデバイス上に格納される。このデータは、所定の期間（例えば、２４時間）に渡って、または、ユーザがアカウントの登録に成功するまで、モバイルデバイス上に格納される。
【００４５】
３０８で、受信された要求に応答して、確認メッセージがモバイルデバイスへ、ユーザにチャレンジとしてレンダリングするために配信される。本発明の一実施形態では、確認メッセージはモバイルデバイスへ、ＷＡＰなどの無線通信プロトコルに従って配信される。さらに、確認メッセージには、ＷＡＰプッシュメッセージまたはＳＭＳメッセージ（例えば、６桁の数字のＳＭＳコード）が含まれる場合がある。３１０で、レンダリングされたチャレンジに対するレスポンスが、ユーザからモバイルデバイスを介して受信される。
【００４６】
加えて、以下のデータのうち１つまたは複数が、確認データベースなどのメモリエリア内に格納され、これらのデータは、受信されたデバイスＩＤ、受信されたプロバイダＩＤ、受信されたデバイスＩＤおよび受信されたプロバイダＩＤのハッシュ、配信された確認メッセージ、確認メッセージがモバイルデバイスに配信される回数、チャレンジに対するレスポンスがユーザから受信される回数、レンダリングされたチャレンジに対して受信されたレスポンスが、配信された確認メッセージに対応すると判断されるかどうかの指示、確認メッセージがモバイルデバイスに配信される時間を示すタイムスタンプ、それらの組み合わせなどである。このような格納されたデータは、メモリエリア内に格納されたタイムスタンプが事前定義された期間（例えば、２４時間）より古いとき、メモリエリアから除去される。
【００４７】
３１２で、レンダリングされたチャレンジに対して受信されたレスポンスが、配信された確認メッセージに対応するかどうかが判断される。レンダリングされたチャレンジに対して受信されたレスポンスが、配信された確認メッセージに対応しないと判断される場合、および、格納された、確認メッセージがモバイルデバイスに配信される回数が所定の数（例えば、５）より少ない場合、ユーザは、別の確認メッセージを受信することを望むかどうかを尋ねられる。ユーザがこのような要望を示す場合、別の確認メッセージがモバイルデバイスへ、ユーザに別のチャレンジとしてレンダリングするために配信される。他の確認メッセージをモバイルデバイスに配信することに応答して、格納されたタイムスタンプは、他の確認メッセージがモバイルデバイスに配信される時間により更新され、メモリエリア内に格納された確認メッセージは、モバイルデバイスに配信された他の確認メッセージにより更新され、格納された、確認メッセージがモバイルデバイスに配信される回数は増分され、格納された、チャレンジに対するレスポンスが受信される回数はゼロに設定される。
【００４８】
代替として、レンダリングされたチャレンジに対して受信されたレスポンスが、配信された確認メッセージに対応しないと判断される場合、および、格納された、チャレンジに対するレスポンスがユーザから受信される回数が所定の数（例えば、５）より少ない場合、レンダリングされたチャレンジに対する別のレスポンスがユーザから促される。この場合、レンダリングされたチャレンジに対する他のレスポンスがユーザからモバイルデバイスを介して受信され、レンダリングされたチャレンジに対する他のレスポンスが、配信された確認メッセージに対応するかどうかが判断される。
【００４９】
３１４で、レンダリングされたチャレンジに対して直前に受信されたレスポンスが、直前に配信された確認メッセージに対応すると判断される場合、ユーザのためのアカウントが作成される。一実施形態では、ユーザのためのアカウントを、アカウントを作成するための要求を受信するアフィリエイトサーバに関連付けられた認証サーバで作成することができる。また、作成されたアカウントを表すデータは、認証データベースなどのメモリエリア内に格納される。このようなデータには、受信されたデバイスＩＤ、受信されたプロバイダＩＤ、レンダリングされたチャレンジに対する正しいレスポンス、アカウントが作成される時間、それらの組み合わせなどのうち、１つまたは複数が含まれる場合がある。受信されたデバイスＩＤ、受信されたプロバイダＩＤ、および、レンダリングされたチャレンジに対する正しいレスポンスを、メモリエリア内にハッシュとして格納することができる。
【００５０】
３１６で、以前にモバイルデバイス上に格納されたクッキーなどのデータがモバイルデバイスから除去される。３１８で、受信されたデバイスＩＤおよび受信されたプロバイダＩＤがアフィリエイトサービスに配信される。３２０で、ユーザのためのアカウントを作成することに応答して、ユーザはアフィリエイトサービスへのアクセスを可能にされる。
【００５１】
例示的データベーススキーマ
図４で、本発明の一実施形態による例示的コンピュータ可読媒体４００は、モバイルデバイスを介してアカウントを作成するためのデータ構造をその上に格納する。一実施形態では、データ構造は、確認データベース２１０など、確認データベースの例示的データベーススキーマを表す。コンピュータ可読媒体４００はいかなる量のコンピュータ可読媒体であってもよく、各構造に関連付けられたデータ構造および機能性の様々な組み合わせを備える場合があることが企図される。
【００５２】
本発明の一実施形態によれば、コンピュータ可読媒体４００のデータ構造には、デバイスＩＤフィールド４０２を含む複数のフィールドが含まれる。デバイスＩＤフィールド４０２は、ユーザのモバイルデバイスを識別するデバイスＩＤを格納するように構成される。具体的には、デバイスＩＤフィールド４０２は、確認メッセージが配信される（例えば、安全なチャネルを介する）先のモバイルデバイスのデバイスＩＤを格納する。データ構造はまた、ユーザにモバイルデバイスを介してサービスを提供するサービスプロバイダを識別するプロバイダＩＤを格納するように構成された、プロバイダＩＤフィールド４０４も含まれる。また、データ構造のハッシュ識別子（またはハッシュＩＤ）フィールド４０６は、デバイスＩＤおよびプロバイダＩＤの３２ビットハッシュを格納するように構成される。３２ビットハッシュを使用して、データベースをパーティションで区切ることができる。
【００５３】
図４に例示するように、コンピュータ可読媒体４００のデータ構造にはまた、ユーザにチャレンジとしてレンダリングするためにモバイルデバイスへ配信された最新の確認メッセージを格納するための確認メッセージフィールド４０８も含まれる。メッセージカウンタフィールド４１０は、確認メッセージが生成されてモバイルデバイスに配信される回数を格納するように構成される。また、レスポンスカウンタフィールド４１２は、レンダリングされたチャレンジに対するレスポンスを送信することによってユーザがアカウントを作成しようと試みた回数を格納するように構成される。データ構造にはまた、レンダリングされたチャレンジに対して受信されたレスポンスが、直前に配信された確認メッセージに対応するかどうかの指示を格納するための検証フィールド４１４、および、最新の確認メッセージが生成されてモバイルデバイスに配信される時間を格納するためのタイムスタンプフィールド４１６も含まれる。
【００５４】
データ構造によって表されたデータスキーマに関連付けられるものは、２つの例示的プロシージャである。具体的には、ＣｒｅａｔｅＮｅｗＣｏｎｆｉｒｍａｔｉｏｎＭｅｓｓａｇｅプロシージャは、新しい確認メッセージが生成され、モバイルデバイスに配信されるときにコールされる。ＣｒｅａｔｅＮｅｗＣｏｎｆｉｒｍａｔｉｏｎＭｅｓｓａｇｅプロシージャへの入力には、デバイスＩＤ、プロバイダＩＤ、デバイスＩＤおよびプロバイダＩＤを表すハッシュ、および確認メッセージが含まれる。入力デバイスＩＤおよびプロバイダＩＤがすでに確認データベース内に存在しない場合、プロシージャは新しいエントリをデータベース内で、入力デバイスＩＤおよびプロバイダＩＤにより作成する。さらに、メッセージカウンタフィールド４１０は１に設定され、レスポンスカウンタフィールド４１２は０に設定され、検証フィールド４１４はｆａｌｓｅに設定され、タイムスタンプフィールド４１６は、確認メッセージがモバイルデバイスに配信される時間に（例えば、協定世界時（ＵＴＣ）で）設定される。
【００５５】
入力デバイスＩＤおよびプロバイダＩＤに対応するデータエントリがすでに確認データベース内に存在し、メッセージカウンタフィールド４１０内に格納された数が所定の数（例えば、５）より大きい場合、ＣｒｅａｔｅＮｅｗＣｏｎｆｉｒｍａｔｉｏｎＭｅｓｓａｇｅプロシージャはエラーコードをスローする。しかし、メッセージカウンタフィールド４１０内に格納された数が所定の数より大きくない場合、プロシージャは確認メッセージフィールド４０８を入力確認メッセージにより更新する。さらに、ＣｒｅａｔｅＮｅｗＣｏｎｆｉｒｍａｔｉｏｎＭｅｓｓａｇｅプロシージャはタイムスタンプフィールド４１６を、入力確認メッセージが生成されてモバイルデバイスに配信される時間により更新し、メッセージカウンタフィールド４１０内に格納された数を１ずつ増分し、レスポンスカウンタフィールド４１２内に格納された数をゼロに設定する。
【００５６】
さらに、データベーススキーマに関連付けられるものは、ユーザが配信された確認メッセージに対するレスポンスをサブミットするときにコールされる、ＶｅｒｉｆｙＣｏｎｆｉｒｍａｔｉｏｎＭｅｓｓａｇｅプロシージャである。ＶｅｒｉｆｙＣｏｎｆｉｒｍａｔｉｏｎＭｅｓｓａｇｅプロシージャへの入力には、デバイスＩＤ、プロバイダＩＤ、および、ユーザによってサブミットされたレスポンスが含まれる。プロシージャの出力は、サブミットされたレスポンスの検証が成功するかどうか、または、ユーザがリトライ制限を越えているかどうかを示す。このように、配信された確認メッセージに対して受信されたレスポンスに応答して、レスポンスカウンタフィールド４１２内に格納された数が所定の数（例えば、５）より大きい場合、ＶｅｒｉｆｙＣｏｎｆｉｒｍａｔｉｏｎＭｅｓｓａｇｅプロシージャはＳｕｃｃｅｓｓ＝ｆａｌｓｅおよびＲｅｔｒｉｅｓＥｘｃｅｅｄｅｄ＝ｔｒｕｅを返す。検証フィールド４１４が、ユーザが入力ＩＤおよびプロバイダＩＤを使用してすでにアカウントを登録していることを示す場合、ＶｅｒｉｆｙＣｏｎｆｉｒｍａｔｉｏｎＭｅｓｓａｇｅプロシージャは、Ｓｕｃｃｅｓｓ＝ｆａｌｓｅおよびＲｅｔｒｉｅｓＥｘｃｅｅｄｅｄ＝ｆａｌｓｅを返す。
【００５７】
一方、レスポンスカウンタフィールド４１２内に格納された数が所定の数より大きくない場合、ＶｅｒｉｆｙＣｏｎｆｉｒｍａｔｉｏｎＭｅｓｓａｇｅプロシージャは、レスポンスカウンタフィールド４１２内に格納された数を１ずつ増分する。また、受信されたレスポンスが直前に配信された確認に対応する場合、および、レスポンスカウンタフィールド４１２内に格納された数が増分の後に所定の数より大きくない場合、ＶｅｒｉｆｙＣｏｎｆｉｒｍａｔｉｏｎＭｅｓｓａｇｅプロシージャはＳｕｃｃｅｓｓ＝ｔｒｕｅおよびＲｅｔｒｉｅｓＥｘｃｅｅｄｅｄ＝ｆａｌｓｅを返す。この場合、プロシージャはさらに、レンダリングされたチャレンジに対して受信されたレスポンスが、直前に配信された確認メッセージに対応すること、および、ユーザがアカウントの登録に成功していることを示すように、検証フィールド４１４を設定する。しかし、受信されたレスポンスが、直前に配信された確認メッセージに対応しない場合、ＶｅｒｉｆｙＣｏｎｆｉｒｍａｔｉｏｎＭｅｓｓａｇｅプロシージャはＳｕｃｃｅｓｓ＝ｆａｌｓｅを返す。レスポンスカウンタフィールド４１２内に格納された数が増分の後に所定の数より大きい場合、ＶｅｒｉｆｙＣｏｎｆｉｒｍａｔｉｏｎＭｅｓｓａｇｅプロシージャはＲｅｔｒｉｅｓＥｘｃｅｅｄｅｄ＝ｔｒｕｅを返す。このような場合、プロシージャは、ユーザがアカウントの登録に成功していないことを示すように、検証フィールド４１４を設定する。
【００５８】
本発明の一実施形態では、クリーンアッププロセスは、確認データベース内で、事前定義された期間（例えば、２４時間）より古い、タイムスタンプフィールド４１６内に格納された時間を有するデータエントリを除去する。
【００５９】
例示的コンピュータ可読媒体
図５は、本発明の一実施形態による例示的コンピュータ可読媒体５００を例示するブロック図である。図示のように、コンピュータ可読媒体５００には、インターフェイスコンポーネント５０２、確認コンポーネント５０４、検証コンポーネント５０６、メモリコンポーネント５０８およびアカウントコンポーネント５１０が含まれる。しかし、コンピュータ可読媒体５００はいかなる量のコンピュータ可読媒体であってもよく、各コンポーネントに関連付けられたコンポーネントおよび機能性の様々な組み合わせを備える場合があることが企図される。
【００６０】
インターフェイスコンポーネント５０２は、アカウントを作成するための要求をユーザから受信する。ユーザは、モバイルデバイスを介してアカウントを作成することを要求し、この要求をモバイルデバイスから、ＷＡＰなどの無線通信プロトコルを介して受信することができる。インターフェイスコンポーネント５０２はまた、デバイスＩＤおよびプロバイダＩＤをユーザから、モバイルデバイスを介して受信する。確認コンポーネント５０４は、受信された要求に応答して、ＳＭＳメッセージまたはＷＡＰプッシュメッセージなどの確認メッセージをモバイルデバイスに送信する。確認メッセージは、６桁の数のコードにすることができ、モバイルデバイスへ、ユーザにチャレンジとしてレンダリングするために送信される。検証コンポーネント５０６は、レンダリングされたチャレンジに対するレスポンスをユーザから、モバイルデバイスを介して受信し、レンダリングされたチャレンジに対して受信されたレスポンスが、送信された確認メッセージに対応するかどうかを判断する。メモリコンポーネント５０８は、以下のデータのうち１つまたは複数を格納し、これらのデータは、受信されたデバイスＩＤ、受信されたプロバイダＩＤ、受信されたデバイスＩＤおよび受信されたプロバイダＩＤのハッシュ、送信された確認メッセージ、確認メッセージがモバイルデバイスに送信される回数、チャレンジに対するレスポンスがユーザから受信される回数、レンダリングされたチャレンジに対して受信されたレスポンスが、送信された確認メッセージに対応すると判断されるかどうかの指示、確認メッセージがモバイルデバイスに送信される時間を示すタイムスタンプ、それらの組み合わせなどである。
【００６１】
レンダリングされたチャレンジに対して受信されたレスポンスが、送信された確認メッセージに対応しないと、検証コンポーネント５０６が判断する場合、および、格納された、確認メッセージがモバイルデバイスに送信される回数が事前定義された期間（例えば、２４時間）以内で所定の数（例えば、５）より少ない場合、インターフェイスコンポーネント５０２は、ユーザが別の確認メッセージを受信することを望むかどうかを問い合わせるように構成される。インターフェイスコンポーネント５０２がユーザから、別の確認メッセージを受信することを望むことを指定する指示を得る場合、確認コンポーネント５０４は、新しい確認メッセージをモバイルデバイスに送信するように構成される。また、格納された、チャレンジに対するレスポンスがユーザから受信される回数が事前定義された期間（例えば、２４時間）以内で所定の数（例えば、５）より少ない場合、インターフェイスコンポーネント５０２は、レンダリングされたチャレンジに対する別のレスポンスをユーザから促すように構成される。
【００６２】
レンダリングされたチャレンジに対して受信されたレスポンスが、送信された確認メッセージに対応すると、検証コンポーネント５０６が判断する場合、アカウントコンポーネント５１０はユーザのためのアカウントを作成する。アカウントコンポーネント５１０はまた、ユーザのためのアカウントを作成することに応答して、受信されたデバイスＩＤおよび受信されたプロバイダＩＤをアフィリエイトサービスに送信して、アフィリエイトサービスへのユーザのアクセスを可能にするようにも構成される。
【００６３】
例示的オペレーティング環境
図６は、コンピュータ１３０の形態における汎用コンピューティングデバイスの一例を示す。本発明の一実施形態では、コンピュータ１３０などのコンピュータは、本明細書で例示および説明した他の図において使用するために適切である。コンピュータ１３０は、１つまたは複数のプロセッサまたは処理装置１３２、およびシステムメモリ１３４を有する。例示の実施形態では、システムバス１３６は、システムメモリ１３４を含む様々なシテムコンポーネントをプロセッサ１３２に結合する。バス１３６はいくつかのタイプのバス構造のいずれかの１つまたは複数を表し、これらのバス構造には、様々なバスアーキテクチャのいずれかを使用するメモリバスまたはメモリコントローラ、周辺バス、グラフィック専用高速バス（ＡＧＰ）、および、プロセッサまたはローカルバスが含まれる。限定ではなく例として、このようなアーキテクチャには、業界標準アーキテクチャ（ＩＳＡ）バス、マイクロチャネルアーキテクチャ（ＭＣＡ）バス、拡張ＩＳＡ（ＥＩＳＡ）バス、Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ（ＶＥＳＡ）ローカルバス、および、メザニンバスとしても知られるＰｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ（ＰＣＩ）バスが含まれる。
【００６４】
コンピュータ１３０は通常、少なくともある形態のコンピュータ可読媒体を有する。コンピュータ可読媒体には、揮発性および不揮発性媒体、リムーバブルおよび非リムーバブル媒体が含まれ、コンピュータ１３０によってアクセスすることができるいかなる使用可能な媒体であってもよい。限定ではなく例として、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を備える。コンピュータ記憶媒体には、揮発性および不揮発性、リムーバブルおよび非リムーバブルの媒体が含まれ、これらの媒体はコンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータなど、情報の格納のためのいずれかの方法または技術において実施される。例えば、コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリもしくは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）もしくは他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または、所望の情報を格納するために使用することができ、コンピュータ１３０によってアクセスすることができる他のいかなる媒体も含まれる。通信媒体は通常、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータを、搬送波もしくは他の移送メカニズムなどの被変調データ信号において実施し、いかなる情報配信媒体をも含む。当業者には被変調データ信号はよく知られており、変調データ信号は、信号における情報をエンコードするような方法でその特性の１つまたは複数が設定または変更されている。有線ネットワークまたは直接有線接続などの有線媒体、ならびに、音響、ＲＦ、赤外線および他の無線媒体などの無線媒体は、通信媒体の例である。上記のいずれの組み合わせもまた、コンピュータ可読媒体の範囲内に含まれる。
【００６５】
システムメモリ１３４には、リムーバブルおよび／または非リムーバブル、揮発性および／または不揮発性メモリの形態におけるコンピュータ記憶媒体が含まれる。例示の実施形態では、システムメモリ１３４には、読み取り専用メモリ（ＲＯＭ）１３８およびランダムアクセスメモリ（ＲＡＭ）１４０が含まれる。基本入出力システム１４２（ＢＩＯＳ）は、起動中など、コンピュータ１３０内の複数の要素の間で情報を転送する助けとなる基本ルーチンを含み、通常はＲＯＭ１３８に格納される。ＲＡＭ１４０には通常、処理装置１３２によって即時アクセス可能および／または現在操作中であるデータおよび／またはプログラムモジュールが含まれる。限定ではなく例として、図６は、オペレーティングシステム１４４、アプリケーションプログラム１４６、他のプログラムモジュール１４８およびプログラムデータ１５０を例示する。
【００６６】
コンピュータ１３０にはまた、他のリムーバブル／非リムーバブル、揮発性／不揮発性のコンピュータ記憶媒体も含まれる場合がある。例えば、図６は、非リムーバブル、不揮発性の磁気媒体に対する読み書きを行うハードディスクドライブ１５４を例示する。図６はまた、リムーバブル、不揮発性の磁気ディスク１５８に対する読み書きを行う磁気ディスクドライブ１５６、および、ＣＤ  ＲＯＭまたは他の光媒体など、リムーバブル、不揮発性の光ディスク１６２に対する読み書きを行う光ディスクドライブ１６０をも示す。例示的オペレーティング環境で使用することができる他のリムーバブル／非リムーバブル、揮発性／不揮発性のコンピュータ記憶媒体には、それだけに限定されないが、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、ソリッドステートＲＡＭ、ソリッドステートＲＯＭなどが含まれる。ハードディスクドライブ１５４および磁気ディスクドライブ１５６および光ディスクドライブ１６０は通常、システムバス１３６に、インターフェイス１６６などの不揮発性メモリインターフェイスによって接続される。
【００６７】
上述し、図６に例示したドライブまたは他の大容量ストレージデバイスおよびそれらの関連付けられたコンピュータ記憶媒体は、コンピュータ１３０用のコンピュータ可読命令、データ構造、プログラムモジュールおよび他のデータのストレージを提供する。図６では、例えば、ハードディスクドライブ１５４が、オペレーティングシステム１７０、アプリケーションプログラム１７２、他のプログラムモジュール１７４およびプログラムデータ１７６を格納するものとして例示される。これらのコンポーネントは、オペレーティングシステム１４４、アプリケーションプログラム１４６、他のプログラムモジュール１４８およびプログラムデータ１５０と同じものであっても異なるものであってもよいことに留意されたい。オペレーティングシステム１７０、アプリケーションプログラム１７２、他のプログラムモジュール１７４およびプログラムデータ１７６にはここで異なる番号が与えられて、最低でも、それらが異なるコピーであることが例示される。
【００６８】
ユーザはコマンドおよび情報をコンピュータ１３０へ、キーボード１８０およびポインティングデバイス１８２（例えば、マウス、トラックボール、ペンまたはタッチパッド）など、入力デバイスまたはユーザインターフェイス選択デバイスを通じて入力することができる。他の入力デバイス（図示せず）には、マイクロフォン、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナなどが含まれる可能性がある。これらおよび他の入力デバイスは処理装置１３２へ、システムバス１３６に結合されるユーザ入力インターフェイス１８４を通じて接続されるが、パラレルポート、ゲームポートまたはユニバーサルシリアルバス（ＵＳＢ）など、他のインターフェイスおよびバス構造によって接続される場合がある。モニタ１８８または他のタイプの表示デバイスもまたシステムバス１３６へ、ビデオインターフェイス１９０などのインターフェイスを介して接続される。モニタ１８８に加えて、コンピュータには、プリンタおよびスピーカなど、出力周辺インターフェイス（図示せず）を通じて接続することができる他の周辺出力デバイス（図示せず）がしばしば含まれる。
【００６９】
コンピュータ１３０はネットワーク環境において、リモートコンピュータ１９４など、１つまたは複数のリモートコンピュータへの論理接続を使用して動作することができる。リモートコンピュータ１９４は、パーソナルコンピュータ、サーバ、ルーター、ネットワークＰＣ、ピアデバイスまたは他の共通ネットワークノードにすることができ、通常は、コンピュータ１３０に関連して上述した要素の多数またはすべてを含む。図６に示す論理接続には、ローカルエリアネットワーク（ＬＡＮ）１９６およびワイドエリアネットワーク（ＷＡＮ）１９８が含まれるが、他のネットワークも含まれる場合がある。ＬＡＮ１３６および／またはＷＡＮ１３８は、有線ネットワーク、無線ネットワーク、それらの組み合わせなどであってもよい。このようなネットワーキング環境は、オフィス、企業全体のコンピュータネットワーク、イントラネットおよびグローバルコンピュータネットワーク（例えば、インターネット）において一般的である。
【００７０】
ローカルエリアネットワーキング環境において使用するとき、コンピュータ１３０はＬＡＮ１９６へ、ネットワークインターフェイスまたはアダプタ１８６を通じて接続される。ワイドエリアネットワーキング環境において使用するとき、コンピュータ１３０には通常、モデム１７８、またはインターネットなどのＷＡＮ１９８を介して通信を確立するための他の手段が含まれる。モデム１７８は内蔵であっても外付けであってもよく、システムバス１３６へ、ユーザ入力インターフェイス１８４または他の適切なメカニズムを介して接続される。ネットワーク環境では、コンピュータ１３０に関連して示したプログラムモジュールまたはその一部を、リモートメモリストレージデバイス（図示せず）に格納することができる。限定ではなく例として、図６はリモートアプリケーションプログラム１９２をメモリデバイス上に存在するものとして例示する。図示のネットワーク接続は例示であり、複数のコンピュータの間で通信リンクを確立する他の手段を使用することができる。
【００７１】
一般に、コンピュータ１３０のデータプロセッサは、コンピュータの様々なコンピュータ可読記憶媒体内で異なる時間に格納された命令を用いてプログラムされる。プログラムおよびオペレーティングシステムは通常、例えば、フロッピー（登録商標）ディスクまたはＣＤ−ＲＯＭ上に分散される。そこから、プログラムおよびオペレーティングシステムはコンピュータの２次メモリにインストールまたはロードされる。実行時、プログラムおよびオペレーティングシステムは、少なくとも部分的にはコンピュータの１次電子メモリにロードされる。このような媒体が後述のステップをマイクロプロセッサまたは他のデータプロセッサと共に実装するための命令またはプログラムを含むとき、本明細書で説明した本発明の実施形態には、これらおよび他の様々なタイプのコンピュータ可読記憶媒体が含まれる。コンピュータが本明細書で説明した方法および技術に従ってプログラムされるとき、本発明の一実施形態にはコンピュータ自体も含まれる。
【００７２】
例示のため、プログラム、および、オペレーティングシステムなどの他の実行可能プログラムコンポーネントを、本明細書で離散ブロックとして例示する。しかし、このようなプログラムおよびコンポーネントは様々な時間にコンピュータの異なるストレージコンポーネント内に存在し、コンピュータのデータプロセッサによって実行されることは理解されよう。
【００７３】
コンピュータ１３０を含む、例示的コンピューティングシステム環境に関連して説明したが、本発明の一実施形態は、多数の他の汎用または専用コンピューティングシステム環境または構成により動作可能である。コンピューティングシステム環境は、本発明の実施形態の使用または機能性の範囲についてのいかなる限定をも示唆するように意図されない。また、コンピューティングシステム環境は、例示的オペレーティング環境内に例示したコンポーネントのいずれか１つまたは組み合わせに関係するいかなる依存性または要件をも有するように解釈されるべきではない。本発明の実施形態と共に使用するために適切である可能性のある周知のコンピューティングシステム、環境および／または構成の例には、それだけに限定されないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラマブルコンシューマエレクトロニクス、携帯電話、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたはデバイスのいずれかを含む分散コンピューティング環境などが含まれる。
【００７４】
本発明の実施形態を一般に、プログラムモジュールなど、１つまたは複数のコンピュータまたは他のデバイスによって実行されるコンピュータ実行可能命令に関連して説明することができる。一般に、プログラムモジュールには、それだけに限定されないが、ルーチン、プログラム、オブジェクト、コンポーネント、およびデータ構造が含まれ、これらは特定のタスクを実行するか、あるいは特定の抽象データ型を実装する。本発明の実施形態を分散コンピューティング環境において実施することもでき、この環境ではタスクが、通信ネットワークを通じてリンクされるリモート処理デバイスによって実行される。分散コンピューティング環境では、プログラムモジュールは、メモリストレージデバイスを含む、ローカルおよびリモートのコンピュータ記憶媒体上に位置することができる。
【００７５】
オペレーションでは、コンピュータ１３０は、モバイルデバイスを介してアカウントを作成するための、本明細書で説明したものなど、コンピュータ実行可能命令を実行する。コンピュータ実行可能命令は、モバイルデバイスを介して、アカウントを作成するためのユーザからの要求を受信するように構成される。この要求はモバイルデバイスから、無線通信プロトコルに従って受信される。コンピュータ実行可能命令はまた、受信された要求に応答して、確認メッセージをモバイルデバイスへ、ユーザにチャレンジとしてレンダリングするために配信するようにも構成される。コンピュータ実行可能命令はさらに、レンダリングされたチャレンジに対するレスポンスを、ユーザからモバイルデバイスを介して受信するように、および、レンダリングされたチャレンジに対して受信されたレスポンスが、配信された確認メッセージに対応するかどうかを判断するように構成される。コンピュータ実行可能命令は、レンダリングされたチャレンジに対して受信されたレスポンスが、配信された確認メッセージに対応すると判断される場合、ユーザのためのアカウントを作成するように構成される。
【００７６】
本明細書で例示および説明した方法の実行または遂行の順序は、特に指定のない限り、必須ではない。すなわち、発明者によって、特に指定のない限りこれらの方法の要素をいかなる順序で実行することもできること、および、これらの方法には本明細書で開示された要素より多いかあるいは少ない要素が含まれる場合があることが企図される。
【００７７】
本発明の要素またはその実施形態を導入するとき、「ａ」、「ａｎ」、「ｔｈｅ」および「前記（ｓａｉｄ）」は、１つまたは複数のその要素があることを意味するように意図される。「備える」、「含む」および「有する」という語は包括的であるように意図され、リストされた要素以外の追加の要素がある場合があることを意味する。
【００７８】
上記に鑑みて、本発明のいくつかの目的が達成され、他の有利な結果が達成されることはわかるであろう。
【００７９】
上記の構成および方法において、様々な変更を本発明の実施形態の範囲から逸脱することなく行うことができるので、上記の説明に含まれ、添付の図面に示したすべての内容は、限定の意味ではなく例示として解釈されるものとすることが意図される。
【図面の簡単な説明】
【００８０】
【図１】本発明の実施形態を利用することができる例示的ネットワーク環境を例示するブロック図である。
【図２】モバイルデバイス、アフィリエイトサーバ、ネットワークサーバおよび認証サーバの間の例示的対話を例示するブロック図である。
【図３Ａ】モバイルデバイスを介してアカウントを作成するための本発明の一実施形態によるプロセスの流れを例示する例示的流れ図である。
【図３Ｂ】モバイルデバイスを介してアカウントを作成するための本発明の一実施形態によるプロセスの流れを例示する例示的流れ図である。
【図４】モバイルデバイスを介してアカウントを作成するための本発明の一実施形態による例示的データ構造を例示するブロック図である。
【図５】本発明の一実施形態による例示的コンピュータ可読媒体を例示するブロック図である。
【図６】本発明の一実施形態を実施することができる適切なコンピューティングシステム環境の例示的実施形態を例示するブロック図である。
【符号の説明】
【００８１】
１０２  クライアントコンピュータシステム
１０２  モバイルデバイス
１０４  データ通信ネットワーク
１０５  電話通信ネットワーク
１０６  アフィリエイトサーバ
１０８  権限のないモバイルデバイス
１１０  認証サーバ
１１２  データベース
【図１】
2005317022.tif 000003
【図２】
2005317022.tif 000004
【図３Ａ】
2005317022.tif 000005
【図３Ｂ】
2005317022.tif 000006
【図４】
2005317022.tif 000007
【図５】
2005317022.tif 000008
【図６】
2005317022.tif 000009