(57)【特許請求の範囲】
【請求項１】
コンピュータに実装された方法であって、
検証要求を受信するステップと、
前記検証要求を受信することに応答して、
第1の文字列を取得するステップであって、前記第1の文字列が1つの以上の可変文字を含み、前記第1の文字列は1つ以上の動作を実行するための第1の命令である、ステップと、
第2の文字列を生成するために、複数のあらかじめ確立された対応する関係に基づいて、前記第1の文字列の前記1つ以上の可変文字のうちの少なくとも1つを少なくとも1つのバックアップ文字で置き換えるステップであって、前記複数のあらかじめ確立された対応する関係においては、1つの可変文字と複数のバックアップ文字との間であらかじめ関係が確立されており、前記第1の文字列の前記1つ以上の可変文字の置き換えられた可変文字と前記少なくとも1つのバックアップ文字の対応するバックアップ文字とは同音文字または同義語文字であり、前記第2の文字列は1つ以上の動作を実行するための第2の命令である、ステップと、
前記第2の文字列に基づいて検証コードを生成するステップと、
前記検証コードと前記検証コードに対応する入力領域を表示するステップであって、前記入力領域は複数の選択可能なアイテムを含み、前記検証コードはユーザに前記複数の選択可能なアイテムから1つ以上の選択可能なアイテムを選択するように命令する、ステップと、
前記検証コードに対応するユーザ入力を受信するステップと、
前記ユーザ入力に基づいて前記検証要求に対応する前記ユーザを検証するステップと
を備える、コンピュータに実装された方法。
【請求項２】
前記第1の文字列が、前記検証要求を受信する前にあらかじめ生成されている、請求項1に記載のコンピュータに実装された方法。
【請求項３】
前記置き換えられた可変文字は漢字であり、前記対応するバックアップ文字は前記漢字の同音文字または同義語文字である、請求項1に記載のコンピュータに実装された方法。
【請求項４】
前記ユーザ入力は、第3の文字列または複数の選択動作に関連付けられている、請求項1に記載のコンピュータに実装された方法。
【請求項５】
前記複数のあらかじめ確立された対応する関係は、複数の可変文字と複数のバックアップ文字との間の関係であり、前記複数の対応する関係をあらかじめ確立することは、
前記複数の可変文字のそれぞれの個別の可変文字について、
前記個別の可変文字の1つ以上の同音文字および前記個別の可変文字の1つ以上の同義語文字の少なくとも1つを決定するステップと、
前記決定された少なくとも1つの文字を、前記個別の可変文字の少なくとも1つの個別のバックアップ文字として使用するステップと、
個別の可変文字と前記少なくとも1つの個別のバックアップ文字との間に少なくとも1つの対応する関係を確立するステップと
を備える、請求項1に記載のコンピュータに実装された方法。
【請求項６】
前記生成された検証コードが、写真フォーマットおよびテキストフォーマットの少なくとも一方である、請求項1に記載のコンピュータに実装された方法。
【請求項７】
コンピュータシステムによって動作を実行するために実施され得る1つ以上の命令を記憶している非一時的なコンピュータ可読記憶媒体であって、
前記動作は、
検証要求を受信することと、
前記検証要求を受信することに応答して、
第1の文字列を取得することであって、前記第1の文字列が1つの以上の可変文字を含み、前記第1の文字列は1つ以上の動作を実行するための第1の命令である、第1の文字列を取得することと、
第2の文字列を生成するために、複数のあらかじめ確立された対応する関係に基づいて、前記第1の文字列の前記1つ以上の可変文字のうちの少なくとも1つを少なくとも1つのバックアップ文字で置き換えることであって、前記複数のあらかじめ確立された対応する関係においては、1つの可変文字と複数のバックアップ文字との間であらかじめ関係が確立されており、前記第1の文字列の前記1つ以上の可変文字の置き換えられた可変文字と前記少なくとも1つのバックアップ文字の対応するバックアップ文字とは同音文字または同義語文字であり、前記第2の文字列は1つ以上の動作を実行するための第2の命令である、置き換えることと、
前記第2の文字列に基づいて検証コードを生成することと、
前記検証コードと前記検証コードに対応する入力領域を表示することであって、前記入力領域は複数の選択可能なアイテムを含み、前記検証コードはユーザに前記複数の選択可能なアイテムから1つ以上の選択可能なアイテムを選択するように命令する、表示することと、
前記検証コードに対応するユーザ入力を受信することと、
前記ユーザ入力に基づいて前記検証要求に対応する前記ユーザを検証することと、
を備える、非一時的なコンピュータ可読記憶媒体。
【請求項８】
前記第1の文字列が、前記検証要求を受信する前にあらかじめ生成されている、請求項7に記載の非一時的なコンピュータ可読記憶媒体。
【請求項９】
前記置き換えられた可変文字は漢字であり、前記対応するバックアップ文字は前記漢字の同音文字または同義語文字である、請求項7に記載の非一時的なコンピュータ可読記憶媒体。
【請求項１０】
前記ユーザ入力は、第3の文字列または複数の選択動作に関連付けられている、請求項7に記載の非一時的なコンピュータ可読記憶媒体。
【請求項１１】
前記複数のあらかじめ確立された対応する関係は、複数の可変文字と複数のバックアップ文字との間の関係であり、前記複数の対応する関係をあらかじめ確立することは、
前記複数の可変文字のそれぞれの個別の可変文字について、
前記個別の可変文字の1つ以上の同音文字および前記個別の可変文字の1つ以上の同義語文字の少なくとも1つを決定することと、
前記決定された少なくとも1つの文字を、前記個別の可変文字の少なくとも1つの個別のバックアップ文字として使用することと、
前記個別の可変文字と前記少なくとも1つの個別のバックアップ文字との間に少なくとも1つの対応する関係を確立することと、
を備える、請求項7に記載の非一時的なコンピュータ可読記憶媒体。
【請求項１２】
前記生成された検証コードが、写真フォーマットおよびテキストフォーマットの少なくとも一方である、請求項7に記載の非一時的なコンピュータ可読記憶媒体。
【請求項１３】
コンピュータに実装されたシステムであって、前記システムは、
1つ以上のコンピュータと、
1つ以上のコンピュータメモリデバイスであって、前記1つ以上のコンピュータと相互動作可能に連結され、前記1つ以上のコンピュータによって実施されるときに1つ以上の動作を実行する1つ以上の命令を記憶している、有形の非一時的な機械可読記憶媒体と、を含み、
前記動作は、
検証要求を受信することと、
前記検証要求を受信することに応答して、
第1の文字列を取得することであって、前記第1の文字列が1つの以上の可変文字を含み、前記第1の文字列は1つ以上の動作を実行するための第1の命令である、第1の文字列を取得することと、
第2の文字列を生成するために、複数のあらかじめ確立された対応する関係に基づいて、前記第1の文字列の前記1つ以上の可変文字のうちの少なくとも1つを少なくとも1つのバックアップ文字で置き換えることであって、前記複数のあらかじめ確立された対応する関係においては、1つの可変文字と複数のバックアップ文字との間であらかじめ関係が確立されており、前記第1の文字列の前記1つ以上の可変文字の置き換えられた可変文字と前記少なくとも1つのバックアップ文字の対応するバックアップ文字とは同音文字または同義語文字であり、前記第2の文字列は1つ以上の動作を実行するための第2の命令である、置き換えることと、
前記第2の文字列に基づいて検証コードを生成することと、
前記検証コードと前記検証コードに対応する入力領域を表示することであって、前記入力領域は複数の選択可能なアイテムを含み、前記検証コードはユーザに前記複数の選択可能なアイテムから1つ以上の選択可能なアイテムを選択するように命令する、表示することと、
前記検証コードに対応するユーザ入力を受信することと、
前記ユーザ入力に基づいて前記検証要求に対応する前記ユーザを検証することと、
を備える、コンピュータに実装されたシステム。
【請求項１４】
前記第1の文字列が、前記検証要求を受信する前にあらかじめ生成されている、請求項13に記載のコンピュータに実装されたシステム。
【請求項１５】
前記置き換えられた可変文字は漢字であり、前記対応するバックアップ文字は前記漢字の同音文字または同義語文字である、請求項13に記載のコンピュータに実装されたシステム。
【請求項１６】
前記ユーザ入力は、第3の文字列または複数の選択動作に関連付けられている、請求項13に記載のコンピュータに実装されたシステム。
【請求項１７】
前記生成された検証コードが、写真フォーマットおよびテキストフォーマットの少なくとも一方である、請求項13に記載のコンピュータに実装されたシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願はコンピュータ技術の分野に関し、具体的には、検証コードに基づく検証のための方法および装置に関する。
【背景技術】
【０００２】
現在、コンピュータと人間を区別するために完全に自動化された公開チューリングテスト(Completely Automated Public Turing test to tell Computers and Humans Apart, CAPTCHA)とも呼ばれる検証コードが、安全な検証方法として広く使用されている。検証コードは、オペレータがユーザであるか、または不正なプログラムであるかを決定するために使用することができる。検証コードは、ユーザアカウントへの悪意のあるログイン試行、列挙によるユーザパスワードのクラッキング、または販売量の操作、あるいはスクリプト制御を通じた発言などの不正な動作を防ぐことができる。
【０００３】
既存の技術では、不正なプログラムが検証コードを自動的に認識することを防ぐために、検証コードを表示するための方法がますます複雑になっている。検証コードは通常、次の方法を使用することによって表示される。第1の方法では、図1aに示されるように、検証コードの干渉を改善するために、数字またはテキストを使用することによって検証コードが表現され、また検証コード表示領域に背景が追加され、あるいは数字またはテキストが歪められる。第2の方法では、図1bに示されるように、複数の写真とプロンプト情報が提供されるので、ユーザは、プロンプト情報に基づいて複数の類似の写真から対応する量の特定の写真を認識する。
【０００４】
しかしながら、上述の方法では、検証コードは比較的複雑な方法を使用することによって表示される。不正なスクリプトの自動認識を妨げることはできるが、追加の干渉もユーザに発生する。言い換えれば、上述の検証コードがユーザに表示された後に、ユーザが検証コードを誤って認識する可能性が高くなる。エラーが発生した場合、検証が成功するまで、ユーザは検証コードを更新し、新しく生成された検証コードを認識し続ける必要がある。明らかに、既存の技術における上述の検証プロセスは長い時間がかかる可能性がある。具体的には、認識エラーが発生した場合、ユーザは繰り返し検証を実行する必要がある。
【発明の概要】
【課題を解決するための手段】
【０００５】
本出願の実施形態は、ユーザが検証コードを誤って認識する可能性があるため、検証プロセスにおいて比較的長い時間が費やされるという既存の技術における問題を軽減するために、検証コードに基づく検証のための方法を提供する。
【０００６】
本出願の実施形態は、ユーザが検証コードを誤って認識する可能性があるため、検証プロセスにおいて比較的長い時間が費やされるという既存の技術における問題を軽減するために、検証コードに基づく検証のための装置を提供する。
【０００７】
本出願の実施形態において、以下の技術的解決策が使用される。
【０００８】
本出願の実施形態は、検証要求を受信するステップと、検証要求を受信した後、あらかじめ生成された第1の文字列を取得するステップであって、第1の文字列が少なくとも1つの可変文字を含む、ステップと、第2の文字列を取得するために、可変文字とバックアップ文字との間のあらかじめ確立された対応関係に基づいて、一部または全部の可変文字をバックアップ文字で置き換えるステップと、第2の文字列に基づいて検証コードを生成し、検証要求に対応するユーザを検証するステップとを含む、検証コードに基づく検証のための方法を提供する。
【０００９】
本出願の実施形態は、検証要求を受信するように構成された受信モジュールと、検証要求が受信された後、あらかじめ生成された第1の文字列を取得するように構成された獲得モジュールであって、第1の文字列が少なくとも1つの可変文字を含む、獲得モジュールと、第2の文字列を取得するために、可変文字とバックアップ文字との間のあらかじめ確立された対応関係に基づいて、一部または全部の可変文字をバックアップ文字で置き換えるように構成された置換モジュールと、第2の文字列に基づいて検証コードを生成し、検証要求に対応するユーザを検証するように構成された検証モジュールとを含む、検証コードに基づく検証のための装置を提供する。
【００１０】
本出願の実施形態において使用される技術的解決策のうちの少なくとも1つは、以下の有益な効果を達成することができる。
【００１１】
サービスプロバイダのサーバがユーザを検証するとき、サーバは検証コードに対して文字置換動作を実行する。ユーザにとって、文字置換を通じて生成された検証コードは、検証コードの意味を学習するという点でユーザに影響を与えない。また、本出願の実施形態における検証コード内の文字は、文字の歪み、色の変化、または背景の追加を受けない。このようにして、ユーザは検証コードを便利におよび正確に認識することができる。コンピュータプログラムの場合、文字置換後に取得される検証コードは複数の種類の文字を含む可能性があり、一般的な構文には準拠していない。このように、コンピュータプログラムが認識アルゴリズムに基づいて検証コードによって表されるコンテンツを効果的に認識することは困難であり、それによって、コンピュータプログラムが不正な動作を実行する可能性を効果的に低減する。
【００１２】
既存の技術における検証方法と比較して、本出願の実施形態において提供される検証方法は、検証コードの識別可能性を増大させ、それにより、ユーザは、検証コードの意味を直感的に学習することができる。したがって、ユーザによる検証コードの認識の精度を向上させることができ、検証プロセスに要する時間を短縮することができる。また、コンピュータプログラムによって検証コードを認識することの難易度を高めることができ、コンピュータプログラムが不正な動作を実行する可能性を効果的に低減することができる。
【００１３】
本明細書に記載の添付の図面は、本出願のさらなる理解を提供すること、および本出願の一部を構成することが意図されている。本出願の例示的な実施形態および実施形態の説明は、本出願を説明することが意図されており、本出願に限定を課すものではない。
【図面の簡単な説明】
【００１４】
【図１ａ】既存の技術における検証コードを示す概略図である。
【図１ｂ】既存の技術における検証コードを示す概略図である。
【図２ａ】本出願の実施形態による、検証コードに基づく検証のためのプロセスの基礎となるアーキテクチャを示す概略図である。
【図２ｂ】本出願の実施形態による、検証コードに基づく検証のためのプロセスを示す概略図である。
【図３】本出願の実施形態による、文字置換のために使用される検証コードを生成するための方法の基礎となるアーキテクチャを示す概略図である。
【図４ａ】本出願の実施形態による、異なる検証方法における検証インターフェースを示す概略図である。
【図４ｂ】本出願の実施形態による、異なる検証方法における検証インターフェースを示す概略図である。
【図５】本出願の実施形態による、検証コードに基づく検証のための装置を示す概略構造図である。
【発明を実施するための形態】
【００１５】
本出願の目的、技術的解決策、および利点をより明確にするために、以下は、本出願の特定の実施形態および添付の図面を参照して本出願の技術的解決策を包括的に説明する。明らかに、記載された実施形態は、本出願の実施形態のすべてではなく、単にいくつかのものにすぎない。創造的な努力なしに本出願の実施形態に基づいて当業者によって取得される他のすべての実施形態は、本出願の保護範囲内に入るものとする。
【００１６】
本出願の実施形態において、検証プロセスは図2aに示されるアーキテクチャに基づくことができることに留意することは価値があり、検証プロセスは、オンラインサービスプロバイダのバックエンド上のサーバによって実現することができる。オンラインサービスプロバイダは、限定はしないが、ウェブサイト、電気通信事業者、またはデータセンターなどのオンラインサービスを提供することができるサービスプロバイダを含む。検証プロセスを実現するために使用されるサーバは、セキュリティ保守を担当するサーバ、たとえば、オンラインサービスプロバイダのバックエンドにあるセキュリティセンターサーバであり得る。ここでは、本出願に制限は課されない。以降の説明では、オンラインサービスプロバイダのバックエンドにあるサーバをまとめてサーバと呼ぶ。
【００１７】
ユーザは、オンラインサービスプロバイダによって提供されるサービスを利用するオペレータとして理解することができる。ここで、本出願の実施形態における検証シナリオでは、許可されたオペレータは実際の人であり、不正なオペレータはコンピュータスクリプト、プログラムなどであることに留意することは価値がある。
【００１８】
本出願の実施形態において提供される技術的解決策は、添付の図面を参照して以下に詳細に説明される。
【００１９】
図2bは、本出願の実施形態における、検証コードに基づく検証のためのプロセスを示している。プロセスは以下のステップを含む。
【００２０】
S201。検証要求を受信する。
【００２１】
本出願のこの実施形態において、検証要求は通常、検証がトリガされた後に生成される。実際の動作においては、検証要求はユーザによってトリガされることもあり、実際のアプリケーションにおける需要に基づいてサーバによってトリガされることもある。
【００２２】
考えられるシナリオでは、ユーザは検証要求をアクティブに送信することができる。この場合、検証要求は検証コードに基づく検証のためのプロセスをトリガするために使用される。このシナリオの実施形態において、検証コードに基づく検証のためのプロセスはアカウントログインのために使用することができる。言い換えれば、ユーザがログインインターフェース(ウェブサイトのアカウントログインインターフェースなど)に入った後、ユーザは検証要求を送信し、それに対応してサーバはユーザによって送信された検証要求を受信すると考えることができる。
【００２３】
別の可能なシナリオでは、サーバは、対応するセキュリティ規則に基づいてユーザの身元を検証することができる。たとえば、サーバはあらかじめ定められたサイクルでアクティブに検証コードを生成する。あるいは、ユーザのいくつかの動作が危険であると決定すると、その動作がコンピュータプログラムによって実行されていないと決定するために、サーバはアクティブに検証コードを生成し、ユーザに対して検証を開始する。もちろん、ここでは本出願に制限は課されない。
【００２４】
S202。検証要求を受信した後、あらかじめ生成された第1の文字列を取得する。
【００２５】
第1の文字列は少なくとも1つの可変文字を含む。
【００２６】
第1の文字列は、数字、テキスト等を含み、かつ表示機能を有するマーキング文字列として理解することができる。
【００２７】
実際の適用シナリオでは、マーキング文字列はコンピュータプログラムによって容易に認識され、それによって検証プロセスの危険性が増大する。したがって、本出願のこの実施形態において、第1の文字列は可変文字を含み、可変文字は別の文字と置き換えることができ、それによって干渉効果を有する。
【００２８】
S203。第2の文字列を取得するために、可変文字とバックアップ文字との間のあらかじめ確立された対応関係に基づいて、一部または全部の可変文字をバックアップ文字で置き換える。
【００２９】
バックアップ文字は、可変文字と同じ種類の文字であり得る。たとえば、バックアップ文字と可変文字の両方は、漢字、英語の文字、または数字である。あるいは、バックアップ文字と可変文字は異なる種類の文字であり得る。本出願の実施形態において、漢字はピンインに変更することができる。たとえば、中国語の漢字で「紅」は「hong」に変更される。別の実施形態では、特定の単語(または、語句)を同音異義語(または、語句)に変更することができる。たとえば、中国語の漢字で「藍色」を「蘭色」に変更することができる。
【００３０】
文字置換後に取得される第2の文字列の意味は変わらない、すなわち、ユーザは依然として検証コードの意味を学習し、検証コードに基づいて対応する動作を実行することができることに留意することは価値がある。
【００３１】
S204。第2の文字列に基づいて検証コードを生成し、検証要求に対応するユーザを検証する。
【００３２】
実際の動作においては、検証コードは写真またはテキスト情報のフォーマットで表示することができ、ユーザに特定の動作を実行するように命令するために使用される。ここでは、本出願に制限は課されない。
【００３３】
第2の文字列は、文字置換後に取得された文字列である。したがって、第2の文字列に基づいて生成された検証コードは干渉効果を有することができる。文字の歪み、色の変化、または背景の追加などの既存の技術における干渉方法と比較して、本出願のこの実施形態における文字置換後に取得される検証コードの意味は変わらない。また、検証コードは複雑な方法を使用することによって表示されないので、ユーザは検証コードの意味を学習することができ、検証コードを容易に認識することができる。さらに、文字置換が実行されるため、機械が検証コードを認識することは困難である。
【００３４】
上述の説明では、検証コードが生成された後、オペレータがユーザであるかコンピュータプログラムであるかを決定するために、対応するオペレータ(すなわち、ユーザ)に対して検証を実行することができる。
【００３５】
もちろん、本出願の実現可能な実施形態においては、検証コードは対応する検証インターフェース(ログインインターフェースなど)においてユーザに表示することができ、ユーザが検証コードに基づいて対応する動作を実行した後に、マーキング検証情報に基づく動作に対して検証が実行される。
【００３６】
上述のステップに基づいて、サービスプロバイダのサーバがユーザを検証するとき、サーバは検証コードに対して文字置換動作を実行する。ユーザにとって、文字置換を通じて生成された検証コードは、検証コードの意味を学習するという点でユーザに影響を与えない。また、本出願のこの実施形態における検証コード内の文字は、文字の歪み、色の変化、または背景の追加を受けない。このようにして、ユーザは検証コードを便利におよび正確に認識することができる。コンピュータプログラムの場合、文字置換後に取得される検証コードは複数の種類の文字を含む可能性があり、一般的な構文には準拠していない。このように、コンピュータプログラムが認識アルゴリズムに基づいて検証コードによって表されるコンテンツを効果的に認識することは困難であり、それによって、コンピュータプログラムが不正な動作を実行する可能性を効果的に低減する。
【００３７】
既存の技術における検証方法と比較して、本出願のこの実施形態において提供される検証方法は、検証コードの識別可能性を増大させ、それにより、ユーザは、検証コードの意味を直感的に学習することができる。したがって、ユーザによる検証コードの認識の精度を向上させることができ、検証プロセスに要する時間を短縮することができる。また、コンピュータプログラムによって検証コードを認識することの難易度を高めることができ、コンピュータプログラムが不正な動作を実行する可能性を効果的に低減することができる。
【００３８】
本出願のこの実施形態において、検証コード上で文字置換が実行された後に検証コードの意味が変わらないので、検証コード内の文字は、実際には同音異義語または同義語文字で置き換えられることに留意することは価値がある。すなわち、可変文字とバックアップ文字との間の対応関係をあらかじめ確立するステップは、具体的には、任意の可変文字の少なくとも1つの同音文字および同義語文字またはそれらのいずれか一方を決定するステップと、決定された同音文字および同義語文字またはそれらのいずれか一方を可変文字のバックアップ文字として使用して、バックアップ文字と可変文字の間の対応関係を確立するステップとを含む。
【００３９】
上述した第1の文字列は、対応する検証コード生成規則に基づいてあらかじめ生成され、サーバ側のデータベースに記憶されていると考えることができ、図3は、第1の文字列を生成するアーキテクチャの概略図である。
【００４０】
文字置換においては、一部の可変文字のみを置き換えることができる。たとえば、ある検証コードの文字列は、中国語の漢字で「輸入両個漢字」の文字列である。文字列内の6つの漢字がすべて可変文字であると仮定する。実際の動作においては、2つの可変文字「両」と「漢」のみを置き換えることができる。2つの可変文字がそれぞれバックアップ文字「倆」と「汗」に対応していると仮定する。したがって、可変文字がバックアップ文字に置換された後に取得される第2の文字列は、「輸入倆個汗字」である。
【００４１】
もちろん、すべての文字を置き換えることができる。たとえば、中国語の漢字で「紅球」である第1の文字列内の2つの文字が両方とも可変文字で、2つの文字にそれぞれ対応するバックアップ文字がピンイン「hong」と「qiu」であると仮定する。文字置換後に取得される第2の文字列は「hongqiu」である。
【００４２】
実際のアプリケーションでは、可変文字が異なるバックアップ文字に対応する場合、ハイブリッド置換方法を使用することができる。たとえば、中国語の漢字で「選択両個紅球」である第1の文字列が「xuan択両個hong求」に置き換えられる。
【００４３】
明らかに、上述の置換方法に基づいて、ユーザは検証コード内の文字によって表される意味を学習することができるが、コンピュータプログラムは比較的強い干渉を受けやすい。
【００４４】
実際の動作においては、文字置換後に取得される第2の文字列に基づいて対応する検証コードを生成することができる。第2の文字列に基づいて検証コードを生成するステップは、具体的には、第2の文字列に基づいて、指定されたフォーマットで検証コードを生成するステップを含む。指定されたフォーマットは、写真フォーマットおよびテキストフォーマットの少なくとも一方を含む。
【００４５】
実際のアプリケーションシナリオでは、ユーザは通常検証コードに基づいて特定の動作を実行する。たとえば、ユーザは検証コードに基づいて対応する文字列を入力するか、ユーザは検証コードによって示される行動に基づいて特定の動作を実行する。しかしながら、ユーザが文字列を入力するか、または特定の動作を実行するかに関わらず、サーバは検証を実行する必要がある。検証の精度を確実にするために、サーバは検証基準を決定する。マーキング検証情報は検証基準であり、ユーザの動作が検証基準を満たした場合にのみ検証が成功することができることが理解されよう。
【００４６】
実際のアプリケーションシナリオにおける検証方法では、ユーザは、検証インターフェースに表示された検証コードに基づいて対応する文字列を入力することができる。この方法では、マーキング検証情報は第1の文字列である。検証要求に対応するユーザを検証するステップは、具体的には、ユーザ検証インターフェース内に入力領域を生成するステップと、検証されるべき文字列であって、検証コードに基づいて入力領域にユーザによって入力された文字列を取得するステップと、第1の文字列に基づいて、検証されるべき文字列を検証するステップとを含む。
【００４７】
すなわち、図4aはこの方法における検証インターフェースを示している。検証インターフェースは検証コードおよび対応する入力領域を含むことが分かる。ユーザは、検証のための検証コードに基づいて入力領域に対応する文字列を入力する。もちろん、図4aでは、検証コード「hong色」(検証コード内の第2の文字列)に基づいて入力領域にユーザが中国語の漢字による語句「紅色」(第1の文字列は「紅色」と仮定する)を入力した場合にのみ検証が成功する。
【００４８】
実際のアプリケーションシナリオにおける別の検証方法では、ユーザは、検証インターフェースに表示された検証コードに基づいて対応する検証動作を実行することができる。この方法では、マーキング検証情報はあらかじめ定められたマーキング動作情報を含む。検証要求に対応するユーザを検証するステップは、具体的には、ユーザ検証インターフェースに動作可能な検証コード表示領域を生成するステップと、検証されるべき動作情報であって、検証されるべき動作に対応し、検証コードに基づいて検証コード表示領域内でユーザによって実行される動作情報を取得するステップと、マーキング動作情報に基づいて、検証されるべき動作情報を検証するステップとを含む。
【００４９】
図4bはこの方法における検証インターフェースを示している。検証インターフェースは検証コードを含む動作可能な検証コード表示領域を含むことが分かる。ユーザは、検証コードによって示される行動に基づいて検証コード表示領域において検証されるべき対応する動作を実行することができる。図4bでは、マーキング動作情報が動作制御「2」および「4」がタップされたことであると仮定する。この場合、検証コード「下の写真におけるou数をタップする」に基づいて、ユーザが検証コード表示領域の動作制御「2」および「4」をタップした後に、検証が成功する可能性がある。
【００５０】
もちろん、上述の2つの方法は、単に本出願のこの実施形態における検証方法を説明することが意図されており、本出願に限定を課すものではない。
【００５１】
本出願の実施形態において提供される検証方法は上述されている。同じ考えに基づいて、本出願の実施形態は、検証コードに基づく検証のための装置をさらに提供する。
【００５２】
図5に示されるように、検証装置は、サービスプロバイダのサーバ側に配置され、装置は、検証要求を受信するように構成された受信モジュール501と、検証要求が受信された後、あらかじめ生成された第1の文字列を取得するように構成された獲得モジュールであって、第1の文字列が少なくとも1つの可変文字を含む、獲得モジュール502と、第2の文字列を取得するために、可変文字とバックアップ文字との間のあらかじめ確立された対応関係に基づいて、一部または全部の可変文字をバックアップ文字で置き換えるように構成された置換モジュール503と、第2の文字列に基づいて検証コードを生成し、検証要求に対応するユーザを検証するように構成された検証モジュール504とを含む。
【００５３】
装置は、任意の可変文字の少なくとも1つの同音文字および同義語文字またはそれらのいずれか一方を決定することと、決定された同音文字および同義語文字またはそれらのいずれか一方を可変文字のバックアップ文字として使用して、バックアップ文字と可変文字の間の対応関係を確立することとを行うように構成された確立モジュール505をさらに含む。
【００５４】
検証モジュール504は、第2の文字列に基づいて指定されたフォーマットで検証コードを生成し、指定されたフォーマットは、写真フォーマットおよびテキストフォーマットの少なくとも一方を含む。
【００５５】
検証モジュール504は、ユーザ検証インターフェース内に入力領域を生成し、検証されるべき文字列であって、検証コードに基づいて入力領域にユーザによって入力された文字列を取得し、第1の文字列に基づいて、検証されるべき文字列を検証する。
【００５６】
検証モジュール504は、ユーザ検証インターフェースに動作可能な検証コード表示領域を生成し、検証されるべき動作情報であって、検証されるべき動作に対応し、検証コードに基づいて検証コード表示領域内でユーザによって実行される動作情報を取得し、あらかじめ定められたマーキング動作情報に基づいて、検証されるべき動作情報を検証する。
【００５７】
1990年代には、技術的な改善がハードウェアの改善(たとえば、ダイオード、トランジスタ、またはスイッチなどの回路構造の改善)であるか、ソフトウェアの改善(方法手順の改善)であるかは、明確に区別することができる。しかしながら、技術が発展するにつれて、多くの方法手順に対する現在の改善はハードウェア回路構造に対する直接的な改善と考えることができる。設計者は通常、対応するハードウェア回路構造を取得するために、改善された方法手順をハードウェア回路にプログラミングする。したがって、方法手順は、ハードウェアエンティティモジュールを使用することによって改善することができる。たとえば、プログラマブルロジックデバイス(PLD)(フィールドプログラマブルゲートアレイ(FPGA)など)はそのような集積回路であり、PLDの論理機能はデバイスプログラミングを通じてユーザによって決定される。設計者は、チップ製造者に特定用途向け集積回路チップの設計および製造を要求することなしに、デジタルシステムをPLDに「統合」するためのプログラミングを実行する。また、現在のところ、手作業で集積チップを製造する代わりに、この種のプログラミングはほとんど「論理コンパイラ」ソフトウェアを使用することによって実現されている。このソフトウェアは、プログラムの開発と作成に使用されるソフトウェアコンパイラに似ている。元のコードはコンパイルのために特定のプログラミング言語で書かれる必要がある。この言語は、ハードウェア記述言語(HDL)と呼ばれる。アドバンストブール式言語(ABEL)、アルテラハードウェア記述言語(AHDL)、Confluence、コーネル大学プログラミング言語(CUPL)、HDCal、Javaハードウェア記述言語(JHDL)、Lava、Lola、MyHDL、PALASM、およびRubyハードウェア記述言語(RHDL)などの多くのHDLがある。超高速集積回路ハードウェア記述言語(VHDL)およびVerilogが最も一般的に使用されている。当業者であれば、方法手順が、いくつかの記述されたハードウェア記述言語を使用することによって論理的にプログラムされ、集積回路にプログラムされると、論理的な方法手順を実現するハードウェア回路を容易に取得することができることも理解するべきである。
【００５８】
コントローラは、任意の適切な方法を使用することによって実現することができる。たとえば、コントローラは、マイクロプロセッサ、プロセッサ、またはマイクロプロセッサまたはプロセッサによって実行することができるコンピュータ可読プログラムコード(ソフトウェアまたはファームウェアなど)を記憶するコンピュータ可読媒体、論理ゲート、スイッチ、特定用途向け集積回路(ASIC)、プログラマブルロジックコントローラ、または組込みマイクロプロセッサであり得る。コントローラの例としては、以下のマイクロプロセッサが挙げられるが、これらに限定されない:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20、およびSilicone Labs C8051F320。メモリコントローラは、メモリの制御ロジックの一部としても実現することができる。当業者はまた、コンピュータ可読プログラムコードを使用することによってコントローラを実現することに加えて、コントローラが論理ゲート、スイッチ、特定用途向け集積回路、プログラマブルロジックコントローラ、および組込みマイクロコントローラの形態で同じ機能を実現することを可能にするために、方法ステップで論理プログラミングを実行することができることを知っている。したがって、コントローラはハードウェアコンポーネントと見なすことができ、コントローラにおいて様々な機能を実現するように構成された装置もハードウェアコンポーネント内の構造と見なすことができる。あるいは、様々な機能を実現するように構成された装置は、本方法を実現するソフトウェアモジュールおよびハードウェアコンポーネント内の構造の両方と見なすこともできる。
【００５９】
上述の実施形態に示したシステム、装置、モジュール、またはユニットは、コンピュータチップまたはエンティティを使用することによって実現することができ、あるいは特定の機能を有する製品を使用することによって実現することができる。典型的な実施形態デバイスはコンピュータである。コンピュータは、たとえば、パーソナルコンピュータ、ラップトップコンピュータ、セルラー電話、カメラ付き電話、スマートフォン、携帯情報端末、メディアプレーヤ、ナビゲーションデバイス、電子メールデバイス、ゲーム機、タブレットコンピュータ、ウェアラブルデバイス、またはこれらのデバイスのいずれかの組合せであり得る。
【００６０】
説明を容易にするために、上記の装置は、機能を様々なユニットに分割することによって説明されている。もちろん、本出願が実現されるとき、各ユニットの機能は1つまたは複数のソフトウェアおよび/またはハードウェアで実現することができる。
【００６１】
当業者は、本出願の実施形態が方法、システム、またはコンピュータプログラム製品として提供され得ることを理解するべきである。したがって、本出願は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、またはソフトウェアとハードウェアの組合せを用いた実施形態の形態を使用することができる。さらに、本出願は、コンピュータ使用可能なプログラムコードを含む1つまたは複数のコンピュータ使用可能記憶媒体(ディスクメモリ、CD-ROM、または光学メモリを含むが、これらに限定されない)上に実装されるコンピュータプログラム製品の形態を使用することができる。
【００６２】
本出願は、本出願の実施形態に基づく方法、デバイス(システム)、およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照して説明される。フローチャートおよび/またはブロック図内の各プロセスおよび/または各ブロック、ならびにフローチャートおよび/またはブロック図内のプロセスおよび/またはブロックの組合せを実現するためにコンピュータプログラム命令を使用することができることに留意することは価値がある。これらのコンピュータプログラム命令は、機械を生成するために汎用コンピュータ、専用コンピュータ、組込みプロセッサ、または別のプログラム可能データ処理デバイスのプロセッサに提供することができ、その結果、コンピュータまたは別のプログラム可能データ処理デバイスのプロセッサによって実行される命令は、フローチャート内の1つまたは複数のプロセスおよび/またはブロック図内の1つまたは複数のブロックにおいて特定の機能を実現するためのデバイスを生成する。
【００６３】
これらのコンピュータプログラム命令は、コンピュータまたは別のプログラム可能データ処理デバイスが特定の方法で作動するように命令することができるコンピュータ可読メモリに記憶することができ、その結果、コンピュータ可読メモリに記憶された命令は命令デバイスを含むアーチファクトを生成する。命令デバイスは、フローチャート内の1つまたは複数のプロセスおよび/またはブロック図内の1つまたは複数のブロックにおいて特定の機能を実現する。
【００６４】
これらのコンピュータプログラム命令は、コンピュータまたは別のプログラム可能なデータ処理デバイスにロードすることができ、その結果、コンピュータまたは別のプログラム可能なデバイス上で一連の動作およびステップが実行され、それによってコンピュータ実現処理が生成される。したがって、コンピュータまたは別のプログラム可能なデバイス上で実行される命令は、フローチャート内の1つまたは複数のプロセスおよび/またはブロック図内の1つまたは複数のブロックにおいて特定の機能を実現するためのステップを提供する。
【００６５】
典型的な構成では、コンピューティングデバイスは、1つまたは複数のプロセッサ(CPU)、1つまたは複数の入力/出力インターフェース、1つまたは複数のネットワークインターフェース、および1つまたは複数のメモリを含む。
【００６６】
メモリは、非永続的メモリ、ランダムアクセスメモリ(RAM)、不揮発性メモリ、および/またはコンピュータ可読媒体内の別の形態、たとえば読出し専用メモリ(ROM)またはフラッシュメモリ(フラッシュRAM)を含むことができる。メモリは、コンピュータ可読媒体の一例である。
【００６７】
コンピュータ可読媒体は、任意の方法または技術を使用することによって情報を記憶することができる永続的、非永続的、移動可能、および移動不能の媒体を含む。情報は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータとすることができる。コンピュータ記憶媒体の例は、これに限定されないが、相変化ランダムアクセスメモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、別の種類のランダムアクセスメモリ(RAM)、読出し専用メモリ(ROM)、電気的消去可能プログラマブル読出し専用メモリ(EEPROM)、フラッシュメモリまたは別のメモリ技術、コンパクトディスク読出し専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)または別の光学ストレージ、カセット磁気テープ、磁気テープ/磁気ディスクストレージまたは別の磁気ストレージデバイス、あるいは他の任意の非伝送媒体を含む。コンピュータ記憶媒体は、コンピューティングデバイスによってアクセス可能な情報を記憶するために使用することができる。本明細書の定義に基づいて、コンピュータ可読媒体は、一時的なコンピュータ可読媒体(一時的な媒体)、たとえば、変調されたデータ信号およびキャリアを含まない。
【００６８】
さらに、用語「含む」、「備える」、またはそれらの他の変形は、非排他的な包含を包含するように意図されているので、要素のリストを含むプロセス、方法、製品、またはデバイスは、それらの要素を含むだけでなく、明示的に挙げられていない他の要素も含むか、またはそのようなプロセス、方法、製品、またはデバイスに固有の要素をさらに含む。より多くの制約がなければ、「含む(includes a …)」が先行する要素は、その要素を含むプロセス、方法、製品、またはデバイスにおける追加の同一の要素の存在を排除しない。
【００６９】
当業者は、本出願の実施形態が方法、システム、またはコンピュータプログラム製品として提供され得ることを理解するべきである。したがって、本出願は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、またはソフトウェアとハードウェアの組合せを用いた実施形態の形態を使用することができる。また、本出願は、コンピュータ使用可能なプログラムコードを含む1つまたは複数のコンピュータ使用可能記憶媒体(ディスクメモリ、CD-ROM、または光学メモリを含むが、これらに限定されない)上に実現されるコンピュータプログラム製品の形態を使用することができる。
【００７０】
本出願は、コンピュータ、たとえばプログラムモジュールによって実行されるコンピュータ実行可能命令の一般的な文脈で説明することができる。一般に、プログラムモジュールは、特定のタスクを実行するか、または特定の抽象データ型を実現するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。本出願はまた、分散コンピューティング環境において実施することができる。分散コンピューティング環境では、通信ネットワークを通じて接続された遠隔処理デバイスによってタスクが実行される。分散コンピューティング環境では、プログラムモジュールは、ストレージデバイスを含むローカルと遠隔の両方のコンピュータストレージ媒体に配置することができる。
【００７１】
本明細書における実施形態は漸進的な方法で記載されている。実施形態の同一または類似の部分については、実施形態を参照することができる。各実施形態は、他の実施形態との違いに焦点を当てている。特に、システムの実施形態は方法の実施形態と基本的に似ているため、簡単に説明される。関連部分については、方法の実施形態における関連説明を参照することができる。
【００７２】
上述の説明は本出願の実施形態にすぎず、本出願を限定することが意図されるものではない。当業者は、本出願に対して様々な修正および変更を加えることができる。本出願の趣旨および原理から逸脱することなしに行われたいかなる修正、均等な置換、または改善も、本出願における特許請求の範囲の範囲内に含まれるものとする。
【符号の説明】
【００７３】
501  受信モジュール
502  獲得モジュール
503  置換モジュール
504  検証モジュール
505  確立モジュール
【図１ａ】
0006894511.tif 000002
【図１ｂ】
0006894511.tif 000003
【図２ａ】
0006894511.tif 000004
【図２ｂ】
0006894511.tif 000005
【図３】
0006894511.tif 000006
【図４ａ】
0006894511.tif 000007
【図４ｂ】
0006894511.tif 000008
【図５】
0006894511.tif 000009