JP2018536931A - 傍受防止認証および暗号化システムならびに方法 - Google Patents

傍受防止認証および暗号化システムならびに方法 Download PDF

Info

Publication number
JP2018536931A
JP2018536931A JP2018521039A JP2018521039A JP2018536931A JP 2018536931 A JP2018536931 A JP 2018536931A JP 2018521039 A JP2018521039 A JP 2018521039A JP 2018521039 A JP2018521039 A JP 2018521039A JP 2018536931 A JP2018536931 A JP 2018536931A
Authority
JP
Japan
Prior art keywords
token
symbols
user
passcode
tokens
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018521039A
Other languages
English (en)
Other versions
JP2018536931A5 (ja
Inventor
ニー,ミン
Original Assignee
ニー,ミン
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=56995117&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2018536931(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by ニー,ミン filed Critical ニー,ミン
Publication of JP2018536931A publication Critical patent/JP2018536931A/ja
Publication of JP2018536931A5 publication Critical patent/JP2018536931A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Lock And Its Accessories (AREA)
  • Facsimiles In General (AREA)
  • Steering Control In Accordance With Driving Conditions (AREA)

Abstract

記号のセットからの記号で構成される個々のピンをもつパスコード、およびそのパスコードに対して使用された記号のセットからの少なくとも2つの記号を含むトークンを利用する、傍受防止認証および暗号化システムならびに方法が提供される。ユーザーが事前に選択したピン(記号)の一部または全部をトークンの一部または全部にランダムに挿入した、複数のトークン(トークンセット)がユーザーに提示される。ユーザーは、パスコード内の各ピン位置に対してトークンセットからトークンを選択する。ユーザーは、選択したトークンに基づいて認証される。各選択されたトークンは、ユーザーパスコード内の事前に選択されたピンの1つを含むこともあれば含まないこともあり、また、ユーザーパスコード内の事前に選択されたピンの1つではない他のランダムに生成された記号も含むので、ユーザーがどのトークンを選択したかを観察する人物は、何がユーザーの実際のパスコードであるかを判断できない。【選択図】図15A

Description

本発明は、認証および暗号化システムならびに方法に関し、より詳細には、傍受防止(interception−proof)認証および暗号化システムならびに方法に関する。
現代社会において、日常生活では、2〜3例を挙げると、携帯電話、PC、ノートブック、およびATMなどの、多種多様な情報機器の使用を必要とする。情報機器は、ユーザーの個人情報を保持し得る。この個人情報を保護する重要性に起因して、これらの機器を安全にロックおよびロック解除する方法がある。
現在のところ、これらの機器をロックおよびロック解除するために最も良く使用される方法は、パスワードベースのチャレンジ認証手順であり、それにより機器は通常、そのサービスにアクセスする前に、ユーザーが身元認証のためにユーザーidおよびパスワードを入力することを要求する。これは、ログインとして知られている。このログインプロセスは、ユーザーの個人情報が盗まれたり、不正に変更されたりするのを防ぐために設計されている。
ネットワークカバレージおよびアクセス可能性の日々の急激な増大に伴い、ハッカーは、ユーザーの個人情報へのアクセスを得るためにユーザーのパスワードを標的にする可能性が高い。加えて、ハッカーは、ユーザーのパスワードを推測して破るのに、ますます洗練されてきている。従って、単純なパスワードはもはや、サイバー攻撃およびスパイ行為からの十分な保護を提供しない。
このような事情に鑑みて、より良い保護を提供するために様々な機構が実装されている。例えば、ユーザーは、パスワードの長さが、理論上は、総当たり探索攻撃および辞書攻撃をかわすのに十分であるような、パスワード長、複雑さ、および予測不可能性の要件を満たすパスワードを作成することを要求される。さらに、ユーザーは、自分のパスワードを定期的に変更して、古いパスワードを無効にすることを要求され、それにより、ユーザーのパスワードが破られる可能性を低下させる。これらの機構は、セキュリティをある程度実際に強化し、従って、ユーザーが自分のアカウントを保護するのを助ける。
しかし、各組織は、パスワード規則の異なるセットを有し得る。一部の組織は、パスワード長が少なくとも6文字または8文字であることを要求する。一部の組織は、大文字と小文字、および数字を混ぜ合わせた使用を要求する。一部の組織は、少なくとも1つの特殊文字を要求するが、ある組織は特殊文字を許可せず、そのため、全ての場所で使用できる非常に強力な黄金のパスワードをちょうど作り出したと考えた時に、その黄金のパスワードを無効にし得る異なるセットの要件を有する次の場所があるだろう。
これらの異なるパスワード規則の結果として、ユーザーが、異なるサイト/組織で設定している複数のパスワードを覚えることは、不可能ではないにしても、困難であり得る。従って、ユーザーは典型的には、自分のパスワードを、自分の情報機器上および/または自分の情報機器上で実行するパスワード記憶アプリケーション内に格納されているファイル内などに、格納する。格納されたパスワードは、ハッカーによって標的にされ得、ハッカーが、パスワードが格納されている装置にアクセスできると、ハッカーは全てのパスワードにアクセスして、ユーザーのパスワードで保護されたアカウント/サイトの全部にアクセスできる。それ故、弱すぎるパスワードを避けるためにパスワードに対して厳格な規則を実装することは、意図したものとは逆の効果となり得る(より多くの情報をさらすリスクが増大する)。
従来のパスワードに関連するこれらの問題を考慮して、これらの問題を解決しようとする新しい方法が開発されてきた。これらの方法は、ハッカーがピークしたり、盗んだりするのをもっと困難にするために、写真、グラフィック画像または異なる形状および色調を使用することを含み得るが、それらに制限されない。いくつかの技術は、ユーザーアクセスを認証するために、ジェスチャおよび入力画面のある位置における情報の位置決めさえ使用する。しかし、これらの方法のいずれも、ユーザーが装置にログインするたびにユーザーのすべての動きを記録できる隠しカメラに打ち勝つことができない。ハッカーがすべての記録を再生してユーザーのすべての動きを分析できる場合、ハッカーは最終的にアクセスできるであろう。
既存の認証方法に関連する主な問題は:
(1)従来のパスワードおよび秘密の質問(最も一般的に使用される方法)はピークを防止できない;
(2)グラフィック画像および写真ベースの方法は、ユーザーが画像または写真ファイルをアップロードすることを必要とし、システムは画像および/または写真を保存して維持する必要がある。これはユーザーおよびシステムの負担を増大させ、ハッカーがログインプロセスを記録して再生すると、画像でさえも認識できる;
(3)新しいグラフィックおよびジェスチャおよび/または位置ベースの認証方法は、人間とコンピュータとの間でのみ使用でき、従って、マシン対マシンでは使用できない、
ことである。
従って、前述した問題を提示しない認証および暗号化システムならびに方法に対する必要性がある。
本発明の目的は、少なくとも前述の問題および/または不都合な点を解決して、少なくとも以下で説明する利点を提供することである。
従って、本発明の目的は、ユーザーの認証のためのシステムおよび方法を提供することである。
本発明の別の目的は、電子装置へのアクセスを試みているユーザーの認証のためのシステムおよび方法を提供することである。
本発明の別の目的は、電子的に格納された情報へのアクセスを要求しているユーザーの認証のためのシステムおよび方法を提供することである。
本発明の別の目的は、ネットワーク上の装置へのアクセスを要求しているユーザーの認証のためのシステムおよび方法を提供することである。
本発明の別の目的は、所定の数の記号を含むパスコードを利用するユーザーの認証のためのシステムおよび方法を提供することである。
本発明の別の目的は、各トークンが、ユーザーパスコードを作成するために使用された記号のセットからの少なくとも2つの記号のグループである、複数のトークンを利用するユーザーの認証のためのシステムおよび方法を提供することである。
本発明の別の目的は、電子情報の暗号化および復号のためのシステムおよび方法を提供することである。
本発明の別の目的は、電子情報を暗号化および復号するために所定の数の記号を含むパスコードを利用する、電子情報の暗号化および復号のためのシステムおよび方法を提供することである。
本発明の別の目的は、各トークンが、パスコードを作成するために使用された記号のセットからの少なくとも2つの記号のグループである、複数のトークンと組み合わせた、所定の数の記号を含むパスコードを利用する、電子情報の暗号化および復号のためのシステムおよび方法を提供することである。
少なくとも前述の目的を、全体または一部において、達成するために、記号のセットから選択された所定の数の記号(「パスコード記号」)を含む所定のパスコードを使用してユーザーを認証する方法が提供され、所定のパスコード記号の各々は、所定のピン位置によって特徴付けられて、トークンセットをユーザーに提示することであって、トークンセットが、少なくとも2つのトークンを含み、トークンセット内の各トークンが、記号のセットに属する少なくとも2つの記号を含む、トークンセットをユーザーに提示することと、所定のパスコード内の各ピン位置に対してトークンセットから1つのトークンを選択することをユーザーに要求することと、ユーザーが選択したトークンに基づいてユーザーを認証することと、を含む。
少なくとも前述の目的を、全体または一部において、達成するために、記号のセットから選択された所定の数の記号(「パスコード記号」)を含む所定のパスコードを使用してユーザーを認証するためのシステムも提供され、所定のパスコード記号の各々は、所定のピン位置によって特徴付けられて、プロセッサと、プロセッサによってアクセス可能なメモリと、トークンセットをユーザーに提示することであって、トークンセットは、少なくとも2つのトークンを含み、トークンセット内の各トークンは、記号のセットに属する少なくとも2つの記号を含む、トークンセットをユーザーに提示すること、所定のパスコード内の各ピン位置に対してトークンセットから1つのトークンを選択することをユーザーに要求すること、およびユーザーが選択したトークンに基づいてユーザーを認証することを行うためにプロセッサによって実行可能なメモリ内に格納されたコンピュータ可読命令のセットを含む認証/暗号化モジュールとを含む。
本発明の追加の利点、目的、および特徴が、以下の記述で一部、説明され、以下を調べると、当業者には一部、明らかになるか、または本発明の実施から学習され得る。本発明の目的および利点は、添付のクレームで具体的に指摘されるように、実現および達成され得る。
本発明は、以下の図面を参照して詳細に説明され、図中、同様の参照番号は同様の要素を指す:
本発明の一実施形態に従い、クライアントシステムによってアクセスされる装置またはサーバーに組み込むことができる例示的な傍受防止認証/暗号化システムを示すブロック図である。 本発明の一実施形態に従い、装置に組み込まれた傍受防止認証/暗号化システムを示すブロック図である。 本発明の一実施形態に従い、クライアント装置によってネットワークを介してアクセスされるサーバーに組み込まれた傍受防止認証/暗号化システムを示すブロック図である。 本発明の一実施形態に従った、傍受防止認証/暗号化システムの1つの例示的なハードウェア実施態様の概略図である。 本発明の一実施形態に従い、4つの次元にグループ化された記号の例を示す。 本発明の一実施形態に従い、5つの次元にグループ化された記号の例を示す。 本発明の一実施形態に従い、ユーザーがパスコードを作成するのを可能にするために、認証/暗号化モジュールによって実装される例示的なプロセスを示す流れ図である。 本発明の一実施形態に従い、ユーザーを認証するために、認証/暗号化モジュールによって実装される例示的なプロセスを示す流れ図である。 本発明の一実施形態に従い、認証/暗号化モジュールによって使用される例示的なトークン生成規則をリストしているテーブルである。 本発明の一実施形態に従い、認証/暗号化モジュールによって使用される例示的なトークン選択規則をリストしているテーブルである。 本発明の一実施形態に従い、認証/暗号化モジュールによって使用される例示的なトークン検証規則をリストしているテーブルである。 本発明の一実施形態に従った、GATE_4実施形態におけるユーザーid作成(登録)プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、GATE_4実施形態におけるユーザーid作成(登録)プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、GATE_4実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、GATE_4実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、GATE_4実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、GATE_4実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、テキストフォーマットでのGATE_4実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、テキストフォーマットでのGATE_4実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、テキストフォーマットでのGATE_4実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、テキストフォーマットでのGATE_4実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、GATE_5実施形態におけるユーザーid作成(登録)プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、GATE_5実施形態におけるユーザーid作成(登録)プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、GATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、GATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、GATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、GATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、テキストフォーマットでのGATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、テキストフォーマットでのGATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、テキストフォーマットでのGATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従った、テキストフォーマットでのGATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。 本発明の一実施形態に従い、プレーンテキストメッセージが送信者パスコードで暗号化される、GATE_4実施形態を使用するメッセージ暗号化プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従い、成功裏の復号が行われる、GATE_4実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従い、成功裏の復号が行われる、GATE_4実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従い、暗号化された充填文字メッセージが受信者側で無効にされる、GATE_4実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従い、暗号化された充填文字メッセージが受信者側で無効にされる、GATE_4実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従い、送信者パスコードとは異なる受信者パスコードのために復号が失敗する、GATE_4実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従い、プレーンテキストメッセージが送信者パスコードで暗号化される、GATE_5実施形態を使用するメッセージ暗号化プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従い、成功裏の復号が行われる、GATE_5実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従い、成功裏の復号が行われる、GATE_5実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従い、暗号化された充填文字メッセージが受信者側で無効にされる、GATE_5実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従い、暗号化された充填文字メッセージが受信者側で無効にされる、GATE_5実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。 本発明の一実施形態に従い、送信者パスコードとは異なる受信者パスコードのために復号が失敗する、GATE_5実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。
本発明は、特別にプログラムされた装置と共に実装される新規の傍受防止認証および暗号化機構を提供する。認証のために、本発明は、装置のオペレーティングシステムの一部である記号で形成される「パスコード」を利用する。一例として、パスコードはこのように見える:
Figure 2018536931
ユーザーに対して、前述のパスコードは、「私は電子メールを送るのが好きである」ことを意味し得、それは、覚えやすいが、他の人が知るのは困難である。パスコード内の各記号は、他のピンと相対的に対応するピン位置をもつ「ピン」として参照される。前述の例では、記号
Figure 2018536931
は第1のピン位置にあり、記号
Figure 2018536931
は第2のピン位置にあり、記号「2」は第3のピン位置にあり、記号
Figure 2018536931
は第4のピン位置にある。
本発明は、好ましくは、装置のオペレーティングシステムの一部である記号の選択セットを利用し、従って、ユーザーにいかなる写真または画像もアップロードすることを要求しない、好ましくは「インシステム」である。パスコードまたは暗号化されたメッセージを作成するために使用される記号は、本明細書では「次元(dimension)」と呼ばれる2つ以上のグループに好ましくはグループ化される異なるタイプである。これは、ユーザーに、自分のパスコードを作成する際に自身を表現するための多種多様な方法を与える。
本発明は、ユーザーのパスコードを構成するピンに対して使用された記号を、ユーザーのパスコードの一部ではない複数の他の記号の中に「隠す」ことによって、新規の傍受防止認証および暗号化機構を提供する。従って、本質的に、針を干し草の山の中に隠すことである。具体的には、本発明は、本明細書で「トークン」と呼ばれるものを利用する。トークンは、少なくとも2つの記号のグループである。ユーザーが事前に選択したピンの一部または全部をトークンの一部または全部にランダムに挿入した、複数のトークン(「トークンセット」)がユーザーに提示される。具体的には、ユーザーのパスコード内の各ピン(事前に選択した記号によって表される)が、ユーザーに提示されるトークンの1つに含まれ得る。ユーザーは、各選択したトークンのピン位置が、それを含むパスコードピンのピン位置に対応するように、パスコードを構成する個々のピンを含むトークンを選択する。各選択されたトークンは、ユーザーのパスコード内の事前に選択したピンの1つだけでなく、ユーザーのパスコード内の事前に選択したピンの1つではない他のランダムに生成された記号も含むので、ユーザーがどのトークンを選択しているかを観察する人物は、何がユーザーの実際のパスコードであるかを判断できない。
ユーザーがパスコードを提供するように要求されるたびに、ランダムに生成されたトークンの別のセットが、ユーザーのパスコード内で個々に事前に選択されたピンを多数のトークンの中にランダムに分散して、生成される。従って、ユーザーは、パスコードを提供するように要求されるたびに、異なるセットのトークンを選択し、それにより、観察者が、トークンの選択に基づいてユーザーのパスコードを判断するのを防ぐ。
説明のための例として、各次元が36個の記号を含む、4グループの記号(4つの次元)が使用できる。ログインプロセス中、36個のトークンがユーザーに対して表示され、各トークンは、4つの次元の記号の各々からの1つの記号を含む。所与の記号は、好ましくは1つのトークン内にのみ表示される(すなわち、記号が1つのトークン内に出現する場合、その記号は別のトークン内に再度出現しない)。この例では、36個のトークンが表示されるので、4つの次元の各々内のすべての記号が表示される(36個のトークンの各々内の各次元からの1つの記号)。
ユーザーのパスコード内のピン(記号によって表される)の数が変数「N」によって表される場合、ユーザーはN個のトークン(パスコードを構成する個々のピンを含むトークン、それにより各選択されたトークンのピン位置が、それを含むパスコードピンのピン位置に対応する)を選択する必要がある。
前述のように、本発明は、ユーザーが、パスコード内の各ピンに対して、パスコード内のピンの1つを含む、4つの記号を含むトークンを入力するので、ユーザーのパスコードの「ピークおよび傍受」の可能性を低下させる。従って、たとえユーザー入力が、ログイン画面を見ているハッカーによって、またはネットワークトラフィックを傍受しているハッカーによって、観察されても、ハッカーは、各トークン内の4つの記号のどれが、ユーザーのパスコードを構成する事前に選択されたピンの各々に対応するかを判断できないであろう。その結果、ハッカーがユーザーのアカウントにログインしようとしても、ハッカーは、ランダムに生成されたトークンの別のセットを提示され、そのうちのいくつかがユーザーのパスコードを構成するユーザーが事前に選択したピンを含み、ハッカーは、どのトークンを選択すべきかわからない。
しかし、ハッカーがユーザーログインプロセスを十分な回数、観察する場合、各ピンは、ユーザーが入力するトークン内に必ず出現するので、ハッカーは、どの各ピンがパスコード内にあるかを見つけるために、記録した全てのログインセッションを比較でき、ハッカーが、異なるログインセッションからの全ての1番目のトークンを比較すると、ハッカーは、最終的に1番目のピンを判断し、ハッカーが、全てのセッションからの全ての2番目のトークンを比較すると、ハッカーは、最終的に2番目のピンを判断する、等である。
それ故、ハッカーがパスコード内のピンを時間をかけて見つけるのを防ぐために、ユーザーに提示されるランダムに生成されたトークンの数は、好ましくは、各次元内の記号の数よりも少ない。例えば、1つ以上の次元の各々が36個の記号を含む場合、ユーザーに対して16個のトークンだけを提示するように選択し得る。この結果、ユーザーピンがトークン内に出現するかさえ保証されない。この実施形態では、ユーザーがログインを試みていて、ユーザーのパスコード内の1つ以上のピンがいずれのトークン内にも存在しない場合、ユーザーは、任意のトークンを、いずれのトークン内にも存在しないピンに対する「ワイルドカード」トークンとして選択する(それにより、選択されたワイルドカードトークンのピン位置は、不足しているパスコードピンのピン位置に対応する)。実際にはピンを含んでいないユーザーのピンの1つの代わりに、ランダムに選択されたトークンがあり得るので、これは、ハッカーの推測作業をずっと困難にする。
1つ以上の次元内の記号の数よりも少ないトークンを使用する(例えば、1つ以上の次元内の記号の数が36の場合に16個のトークンを使用する)別の利益は、事前に選択されたピンがトークン内にあるか否かをユーザーが迅速に見つけるのを簡単にすることであり、画面はユーザーに対してより単純に見える。
本発明は、好ましくは、本システムを組み込む装置のオペレーティングシステムの一部である記号を使用する。従って、特別なグラフィックまたは写真をユーザーによってシステム上にロードすることを要求されず、それ故、それらのプロパティを格納および維持するためのユーザーおよびシステム上の負荷を低減する。
本発明のシステムおよび方法は、ユーザーを認証するためだけでなく、情報の複数の部分を認証するためにも使用でき、従って、メッセージを暗号化するために使用できる。
図1Aは、本発明の1つの好ましい実施形態に従い、クライアントシステムによってアクセスされる装置またはサーバーに組み込むことができる例示的な傍受防止認証/暗号化システム100を示すブロック図である。システム100は、傍受防止認証および/または暗号化機能を提供する認証/暗号化モジュール110を含む。システム100は、任意選択として、ネットワーク130に接続できる。
図1Bは、本発明の1つの好ましい実施形態に従って、装置150に組み込まれた傍受防止認証/暗号化システムを示すブロック図である。装置150は、好ましくは、ユーザーインタフェースモジュール120を含む。認証/暗号化モジュール110は、以下でさらに詳細に説明するように、ユーザーのパスコードの安全な認証および/またはメッセージの暗号化を提供する。認証/暗号化モジュール110は、任意選択として、ネットワーク130に接続できる。
ユーザーインタフェースモジュール120は、例えば、グラフィカルユーザーインタフェース、ウェブベースのインタフェースおよび同様のものなどの、当技術分野で周知の任意のタイプのユーザーインタフェースで実装できる。一般に、ユーザーインタフェースモジュール120は、ユーザーが認証モジュール110とやり取りできるようにする任意のタイプのインタフェースで実装できる。
図1Cは、本発明の1つの好ましい実施形態に従い、クライアント装置170によりネットワーク130を介してアクセスされるサーバー160に組み込まれた傍受防止認証/暗号化システムを示すブロック図である。クライアント装置170は、サーバー160にネットワーク130を経由してアクセスできる任意のタイプのコンピュータまたは装置であり、好ましくは、ユーザーがクライアント装置170とやり取りできるようにするユーザーインタフェースモジュール120を含む。認証/暗号化モジュール110は、以下でさらに詳細に説明するように、ユーザーのパスコードの安全な認証および/またはメッセージの暗号化を提供する。
通信リンク140は、認証/暗号化モジュール110、ユーザーインタフェースモジュール120、ネットワーク130およびクライアント装置170の間の通信のために使用される。通信リンク140は、有線リンク、無線リンク、無線誘導リンク、容量性リンク、または電子構成要素を接続するための当技術分野で周知の任意の他の機構にできる。配線接続されたリンクは、例えば、業界標準アーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、拡張ISAバス、ビデオエレクトロニクススタンダーズアソシエーション(VESA)ローカルバス、またはPeripheral Component Interconnect(PCI)バスなどの、バスで適切に実装できる。
無線リンクの例は、WAP(ワイヤレスアプリケーションプロトコル)リンク、GPRS(汎用パケット無線サービス)リンク、GSM(グローバルシステムフォーモバイルコミュニケーション)リンク、携帯電話チャネルなどの、CDMA(符号分割多重アクセス)またはTDMA(時分割多重アクセス)リンク、GPS(全地球測位システム)リンク、CDPD(セルラーデジタルパケットデータ)、RIM(Research in Mortion,Limited)全二重ページングタイプ装置、Bluetooth無線リンク、またはIEEE802.11ベースの無線周波数リンク(WiFi)を含むが、それらに制限されない。
ネットワーク130は、有線または無線ネットワークにでき、例えば、インターネット、イントラネット、PAN(パーソナルエリアネットワーク)、LAN(ローカルエリアネットワーク)、WAN(ワイドエリアネットワーク)もしくはMAN(メトロポリタンエリアネットワーク)、ストレージエリアネットワーク(SAN)、フレームリレー接続、高度インテリジェントネットワーク(AIN)接続、同期型光ネットワーク(SONET)接続、デジタルT1、T3、E1もしくはE3回戦、デジタルデータサービス(DDS)接続、DSL(デジタル加入者回線)接続、イーサネット接続、ISDN(総合デジタル通信網)回線、V.90、V.34bisアナログモデム接続などの電話回線ポート、ケーブルモデム、ATM(非同期転送モード)接続、FDDI(光ファイバ分散データインタフェース)もしくはCDDI(Copper Distributed Data Interface)接続の任意の1つ以上を含み得るか、またはそれとインタフェースをとり得る。
ユーザーインタフェースモジュール120は、例えば、グラフィカルユーザーインタフェース、ウェブベースのインタフェースおよび同様のものなどの、当技術分野で周知の任意のタイプのユーザーインタフェースで実装できる。一般に、ユーザーインタフェースモジュール120は、ユーザーが認証/暗号化モジュール110とやり取りできるようにする任意のタイプのインタフェースで実装できる。
用語「モジュール」は、本明細書では、現実世界の装置、構成要素、または、例えば、特定用途向け集積回路(ASIC)もしくはフィールドプログラマブルゲートアレイ(FPGA)を含み得る、ハードウェアを使用して実装された構成要素の配列、またはマイクロプロセッサシステムおよび、(実行されている間に)モジュールの機能を実行するためにマイクロプロセッサシステムを専用装置に変換する、モジュールの機能を実装するための命令のセットを意味する。
モジュールは、ある機能がハードウェア単独によって促進され、他の機能がハードウェアとソフトウェアの組合せによって促進される、ハードウェア単独とソフトウェア制御ハードウェアの組合せとしても実装できる。ある実施態様では、モジュールの少なくとも一部、およびいくつかの場合には、モジュールの全部が、オペレーティングシステム、システムプログラム、およびアプリケーションプログラムを実行し、同時に、マルチタスク、マルチスレッディング、分散(例えば、クラウド)処理、もしくは他のかかる技術を使用して、モジュールも実装している、コンピュータまたは装置(例えば、サーバー160およびクライアント装置170など)のプロセッサ(複数可)上で実行できる。かかるコンピュータまたは装置の例は、パーソナルコンピュータ(例えば、デスクトップコンピュータまたはノートブックコンピュータ)、サーバー、現金自動預払機(ATM)、POS端末、電化製品、およびスマートフォン、タブレット、または携帯情報端末(PDA)などの、モバイルコンピューティング装置を含むが、それらに制限されない。さらに、サーバー160は、Windowsサーバー、Linuxサーバー、Unixサーバーまたは同様のものなど、適切な任意のタイプのサーバーである。
図1Dは、本発明の一実施形態に従った、傍受防止認証/暗号化システム100の1つの例示的なハードウェア実施態様の概略図である。図1Dの実施形態では、認証/暗号化モジュール110は、CPU118およびメモリ112によって実装される。
CPU118は、実行のために、メモリ112内に格納されたオペレーティングシステムコード114および他のプログラムコード116にアクセスする。認証/暗号化モジュール110の機能を実装するプログラムコード116は、CPU118によるアクセスおよび実行のために、メモリ112内、または外部記憶装置(図示せず)上に格納される。
メモリ122は、例えば、ランダムアクセスメモリ(RAM)、キャッシュメモリ、固定型不揮発性ハードディスクドライブ、取外し可能不揮発性フロッピィディスクドライブなどの、取外し可能/固定型記憶媒体、揮発性/不揮発性記憶媒体、光ディスクドライブ(CD−ROM、DVD−ROM、または任意の他の光記憶媒体など)、USBフラッシュドライブ、およびメモリカードによって実装できる。
認証/暗号化モジュール110の機能をここで説明する。認証/暗号化モジュール110は、ユーザーログイン要求に応答して、ユーザーが事前に選択したピンをトークン内にランダムに挿入した複数のトークンをユーザーに(ユーザーインタフェースモジュール120を介して)表示することによって、パスコード/チャレンジ認証を提供する。前述のように、ユーザーのパスコード内の各ピン(事前に選択された記号によって表される)は、ユーザーに提示されるトークンの1つ内に含まれ得る。少なくとも1つのピンがトークンの1つ内に存在する。ユーザーは、パスコードを構成する個々のピンを含むトークンを選択し、それにより、各選択されたトークンのピン位置が、それを含むパスコードピンのピン位置に対応する。各選択されたトークンは、ユーザーのパスコード内の事前に選択されたピンの1つではないランダムに生成された記号、およびおそらくはユーザーのパスコード内の事前に選択されたピンの1つを含むので、ユーザーがどのトークンを選択したかを観察する人物は、何がユーザーの実際のパスワードであるかを判断できない。
認証/暗号化モジュール機能の2つの例示的な実施形態を以下で説明し、本明細書ではGraphical Access Tabular Entry_4(「GATE_4))およびGraphical Access Tabular Entry_5(「GATE_5))と呼ぶ。図2Aに示すように、GATE_4実施形態は、各次元内に36個の記号が含まれた、4つの次元の記号を使用する。図2Bに示すように、GATE_5実施形態は、各次元内に26個の記号が含まれた、5つの次元の記号を使用する。図2Aおよび図2Bに示す記号は、使用され得る記号のタイプの例であり、任意の他のタイプの記号が使用され得、依然として本発明の範囲内に含まれることが理解されよう。
図2Aおよび図2Bに示す記号は、現代のコンピュータオペレーティングシステムで一般的に利用可能であり、作成するか、または本発明を組み込む既存のシステムにアップロード/保存する、いかなる特別なプロセスも必要としない。それらは、ほとんどのコンピュータオペレーティングシステム内で見られる標準的なUnicodeシステムのサブセットである。各記号はUnicode IDを有し、良く知られている文字:a,b,...z,0,1,9,@,+,<,%は全て、Unicodeシステムの部分である。例えば:
Unicode \u0062は文字bに対してである
Unicode \u2206は文字Δに対してである
Unicode \u0040は文字@に対してである
図2Aおよび図2Bの実施形態に示す記号は、それらが多様で、独特であって、覚えやすいために含まれた。
図3は、本発明の一実施形態に従い、ユーザーがパスコードを作成できるようにするために、認証/暗号化モジュール110によって実装される例示的なプロセスを示す流れ図である。プロセスはステップ310から始まり、そこで、ユーザーは所望のユーザーidを入力するように要求される。ステップ320で、認証/暗号化モジュール110は、ユーザーidがメモリ112内に既に存在するかどうかを判断する。ユーザーidが存在する場合、プロセスはステップ330に進む。そうでない場合、プロセスはステップ340に進む。
ステップ330で、ユーザーは、ユーザーidと関連付けられた既存のパスワードを上書きしたいかどうか尋ねられる。ユーザーが「no」を示す場合、プロセスはステップ310に飛んで戻る。ユーザーが「yes」を示す場合、プロセスはステップ340に進む。
ステップ340で、ユーザーが自分のパスコード内の各ピンに対して選択するために利用可能な記号がユーザーに対して表示される。次いで、ステップ350で、ユーザーは、表示されている記号の1つを、自分のパスコードに対するピンの1つとして選択するように要求される。ステップ360で、プロセスは、ユーザーが、現在選択されているピン(複数可)をパスコードとして保存すべきであると要求しているかどうかを判断する。これは、例えば、ユーザーがパスコードを保存する準備ができている場合にユーザーが選択できるアイコンを表示することによって、実装され得る。パスコードを保存すべきであることをユーザーが示していない場合、プロセスは折り返してステップ350に戻り、そこで、ユーザーは、パスコード内の別のピンに対して別の記号を選択する。ステップ360で、パスコードを保存すべきであることをユーザーが示している場合、プロセスはステップ370に進む。
ステップ370で、選択されたパスコードが所定の長さ要件(すなわち、ピンの所定の最小数)に適合するかどうかが判断される。選択されたパスコードが適合する場合、パスコードはステップ380で保存される。パスコードが適合しない場合、プロセスは折り返してステップ350に戻り、そこで、ユーザーは、追加のピンに対して記号を選択するように促される。
図4は、本発明の一実施形態に従い、ユーザーを認証するために、認証/暗号化モジュール110によって実装される例示的なプロセスを示す流れ図である。プロセスはステップ410から始まり、そこで、ログイン画面がユーザーに対して提示されて、ユーザーはユーザーidを入力するように促される。プロセスは次いで、ステップ420に進み、そこで、認証/暗号化モジュール110は、ユーザーによって入力されたユーザーidが存在するかどうかを判断する。存在する場合、プロセスはステップ430に進む。存在しない場合、プロセスは折り返してステップ410に戻り、そこで、ユーザーは別のユーザーidを入力するように促される。
ステップ430で、認証/暗号化モジュールは、ユーザーのパスコードに対して使用されたピン数に基づいて所定の数のトークンを生成する。図4で説明する実施形態では、以下でさらに詳細に説明するように、16個のトークンが生成されて、好ましくは4×4のトークンテーブルでユーザーに表示される。トークンは、図5に示すトークン生成規則に基づいて生成される。例では、16個のトークンがテーブル内にあるが、実際には、ユーザーピン数より多い任意の数のトークンにでき、3×4、2×5、または任意の他の組み合わせで提示され、4×4はそれらを表示するのにちょうど好ましい方法である。
プロセスは次いで、ステップ440に進み、そこで、ユーザーは、図6に示すトークン選択規則に従って、ユーザーのパスコード内のピンを含むトークンを、ピンがパスコード内に出現する順に選択する。ステップ450で、認証/暗号化モジュール110は、ユーザーが選択したトークンが、図6に示すトークン選択規則に従うかどうかを判断する。トークン選択規則に従っている場合、プロセスはステップ460に進み、そこで、ユーザーが認証されてアクセスを許可される。トークン選択規則に従っていない場合、プロセスはステップ470に進み、そこで、ユーザーは認証されず、アクセスを拒否される。
前述のように、図5は、本発明の一実施形態に従い、認証/暗号化モジュール110によって使用される例示的なトークン生成規則をリストしているテーブルである。ユーザーのパスコード内のピンの少なくとも1つが、16個のトークンの少なくとも1つ内にある。時には、ユーザーピンの全部がトークン内で見られ、大抵の場合、1〜N(Nは、N個のピンをもつユーザーパスコードの長さである)のユーザーが事前に選択したピンが16個のトークン内にある。
図5に示す実施形態では、36(GATE_4実施形態の場合)でも26(GATE_5実施形態の場合)でもなく、16個のトークンが生成される。従って、GATE_4実施形態の場合には、ユーザーのパスコード内のピンの16/36=44%だけが16個のトークンの1つ内に出現し得る。GATE_5実施形態の場合には、ユーザーのパスコード内のピンの16/26=62%だけが16個のトークンの1つ内に出現し得る。ユーザーのパスコード内のピンの全てがトークンテーブル内に出現し得る可能性があり、少なくとも1つのユーザーピンがトークンテーブル内に存在することが保証される。大抵の場合、ユーザーのパスコード内のピンのいくつかは抜けており、いくつかはトークン内に出現する。代替実施形態では、規則は、ユーザーのパスコード内のピンの少なくとも2または3がトークンテーブル内に存在するように変更できる。
本発明を効果的にするのは、この不確実性である。ログインプロセスがピークまたは傍受される場合、ハッカーにとって確かなことは、ユーザーがパスコード長よりも多いか、または少ないトークンを入力すると、ログインは失敗するので、パスコードの長さだけである。成功裏のログインとなる唯一のことは、保証はないが、ユーザーのパスコード内のピンと同じ数のトークンを入力することである。
しかし、たとえハッカーがパスコードの長さを学習しても、ハッカーは、個々のピンの識別を判断することができない。これは、たとえピンが必ずしも16個のトークンの1つ内に出現しなくても、ユーザーは依然として成功裏にログインできるためである。これは、図6のトークン選択規則に示されるように、ユーザーが、提示されたトークンの1つ内に存在していないピンに対してランダムなトークンを選ぶことができるためである。
さらに、たとえユーザーパスコード内の全てのピンが16個のトークン内に出現しても、GATE_4実施形態内に4つの記号があり、GATE_5実施形態内に5つの記号があるので、ハッカーは依然として、各トークン内のどの記号が事前に選択されたピンであるかを見分けることができないであろう。この不確実性は、本発明のシステムおよび方法が、ピークおよび傍受に耐えるようにする。
図6にリストしたトークン選択規則に示すように、有効なトークンを選択するための規則は、以下のように要約できる:
・ユーザーは、ユーザーのパスコード内のN個のピンに対応する、N個のトークンをトークンテーブルから選択しなければならない。従って、ユーザーのパスコードが4つのピンを有する場合、ユーザーは4つのトークンを選択する。同様に、ユーザーのパスコードが6つのピンを有する場合、ユーザーは6つのトークンを選択する必要がある。
・ユーザーのピンが16個のトークンの1つ内に出現する場合、ユーザーは、ピンを入力するためにそのトークンを選択する必要がある。
・ユーザーのパスコード内のピンの1つが16個のトークンのいずれにも存在しない場合、ユーザーはそのピンに対して16個のトークンの任意の1つを選択する必要がある(以下、「ワイルドカードトークン」と呼ぶ)。
前述のように、図7は、本発明の一実施形態に従い、認証/暗号化モジュール110によって使用される例示的なトークン検証規則をリストしているテーブルである。これらの規則は、ユーザーがログインプロセスで選択したトークンを検証するためのものである。例えば、規則は、ユーザーによって入力されたトークンの数がユーザーのパスコードの長さに等しいかどうかを判断する。そうでない場合、ユーザーログインは失敗する。そうである場合、規則は、ユーザーのパスコード内の各ピンをチェックして、それが16個のトークンの1つ内にあるかどうかを確認することを要求する。ユーザーのパスコード内のピンの1つがトークンの1つ内に存在しない場合、ユーザーはランダムなトークンを選択する必要がある。ユーザーのパスコード内のピンがトークンの1つ内に出現する場合、ユーザーはそのトークンを選択する必要がある。
図8Aは、本発明の一実施形態に従い、図3のステップ310で、ユーザーidを入力するための空の登録画面のサンプルスクリーンショットである。図は、ユーザーがユーザーidを入力する前に、GATE_4実施形態の登録画面がどのように出現し得るかの例を示す。
図8Bは、本発明の一実施形態に従い、システム100によって提示されるユーザーidを作成するための登録プロセスの実行フレームのサンプルスクリーンショットである。それは、以下のように、ユーザーが図3の登録(ユーザーidを作成する)プロセスを進むときに、GATE_4実施形態画面がどのように見え得るかの一例を示す:
・ユーザーが新しいユーザーid:「admin」(G4 206)を入力して、「Check Availability(利用可能性をチェックする)」ボタン(G4 208)をクリックする。システムは、ID「admin」が既にそのメモリ内にあるかどうかを確認する(図3のステップ320)。そうである場合、「ユーザーIdは既に存在します、既存のパスコードを上書きしますか?」と尋ねるダイアログ(図示せず)を表示する。ユーザーが古いパスコードを上書きしたくない場合、プロセスはダイアログを閉じて、ユーザーが別のユーザーidを入力するのを待つ。ユーザーid「admin」が存在しない場合、または存在するが、ユーザーが既存のパスコードを上書きしたい場合、システムは、図2Aに示すような、各々が、事前に定義された次元からの36個の記号を有する、G4 212、G4 222、G4 232およびG4 242におけるボタンを有効にする。例えば、G4 212は、第1の次元から36個全部の数字を含み、それらの記号は、G4 210に見られるようにトークン内の「[1]」(左上)位置に現れる(数字は1〜36である)。G4 222は、
Figure 2018536931
の36個の記号を有し、それらは、任意のトークン内で「[2]」(G4 220:右上)位置に現れる。G4 232は、
Figure 2018536931
の36個の記号を有し、それらは、トークン内の「[3]」(G4 230:左下)位置に現れ、G4 242は、
Figure 2018536931
の36個の記号を有し、それらは、任意のトークン内で「[4]」(G4 240:右下)位置に現れる。プロセスのこの段階で、システムは、G4 212、G4 222、G4 232およびG4 242における前述のボタンを有効にして、ユーザーがそれらの任意の1つをクリックできるようにする。比較として、図8Aでは、ユーザーがまだユーザーidを入力していないので、それらのボタンは有効にされておらず、薄く見える。ユーザーidがなければ、ユーザーはパスコードを作成できない。
・ユーザーは、1番目のピンを選択するために、G4 222内の記号の中で
Figure 2018536931
をクリックし、するとそれがG4 250に現れる(図3のステップ350)。
・ユーザーは、2番目のピンを選択するために、G4 232内の記号の中で
Figure 2018536931
をクリックし、するとそれがG4 252に現れる(図3のステップ350)。
・ユーザーは、3番目のピンを選択するために、G4 212内の記号の中で「2」をクリックし、するとそれがG4 254に現れる(図3のステップ350)。
・ユーザーは、4番目のピンを選択するために、G4 242内の記号の中で
Figure 2018536931
をクリックし、するとそれがG4 256に現れる(図3のステップ350)。
・この例では、ユーザーはパスコード内に4つのピンを有することを選択し、そのためパスコード長は4である。
・この例では、位置G4 258およびG4 260は空白のままである。
・ユーザーは次いで、「Save(保存)」ボタン−G4 270をクリックすることによりユーザーid作成(登録)プロセスを終了する(図3のステップ370)。システムは、パスコード
Figure 2018536931
をユーザーid「admin」と共にメモリ内に保存する(図3のステップ380)。
前述のように、次元の選択肢は、図8Bの例に示す記号に限定されない。次元の選択肢は、任意の他の記号を含み得る。前述の例示的な実施形態では4つのユーザーピンがあるが、任意の数のピンが使用され得、依然として本発明の範囲に含まれる。ピンの数が少なすぎる場合、パスコードは脆弱すぎるであろう。ピンの数が多すぎる場合、ユーザーはパスコードを覚えない可能性がある。その結果、好ましい長さは、4〜6ピンである。
図9Aは、ユーザーが任意の情報を入力する前に、本発明の一実施形態に従い、システム100によって提示されるログイン画面の実行フレームのサンプルスクリーンショットである。図9Aは、図9Bに対する比較として使用される。
図9Bは、本発明の一実施形態に従い、システム100によって実行されるログインプロセスの実行フレームのサンプルスクリーンショットである。それは、以下のように、ユーザーが図4のログインプロセスを進むときに、GATE_4実施形態画面がどのように見え得るかの一例を示す:
・ユーザーがユーザーid:「admin」(G4 306)を入力する(図4のステップ410)。
・ユーザーは「Enter」ボタン(G4 309)をクリックする。システムは、id「admin」が既にそのメモリ内にあるかどうかを確認し(図4のステップ420)、それが存在しない場合、「ユーザーIdが存在しません、有効なユーザーIdを入力してください」というメッセージ(図示せず)を表示する。存在する場合、システムは、4×4のテーブル(G4 320)を表示する。テーブルをより良く説明するために、行は好ましくは、上から下へ次のように示される:A、B、C、D。列も好ましくは、左から右へ次のように示される:1、2、3、4。このテーブル内のトークンは、図5で説明する規則に従って生成される。
・図8Bから、ユーザーid「admin」に関連付けられたパスコードは:
Figure 2018536931
であることが分かっているので、ユーザーは、1番目のピン:
Figure 2018536931
を見つけるために、テーブル内の16個のトークンを調べることから始める必要がある。記号
Figure 2018536931
は、第2の次元に属するので、この例では、トークンの右上の位置に出現し、そのため、ユーザーは、
Figure 2018536931
が存在するかどうか確認するために、各トークンの右上の位置に目を通すだけで良い。この例では、それは、トークンD2内にある。このスクリーンショットはデモモードで撮られており、デモモードでは、プログラムは、ユーザーがプロセスをより良く理解するために、一致している記号を強調表示する。リアルタイムでは、これは強調表示される必要はない。この例示では、D2内の
Figure 2018536931
が強調表示される。それは、D2トークン内に見られるので、ユーザーは、図6で説明する規則に従い、このトークンをクリックする必要がある。
・ユーザーがD2をクリックすると、そのトークンがパスコードの1番目の位置(G4 350)にコピーされる(図4のステップ440)。
・ユーザーパスコード内の2番目のピンは:
Figure 2018536931
であり、この記号は第3の次元に属する。この例では、第3の次元の記号はトークンの左下側に出現する。従って、ユーザーは、16個のトークンの各々の左下側を見るだけで良い。この例では、それはトークンD3内にある。従って、ユーザーは、D3をクリックすべきである(図4のステップ440)。この例示では、それは強調表示される。
・ユーザーがD3をクリックする(図4のステップ440)と、そのトークンがパスコードの2番目の位置(G4 353)にコピーされる。
・パスコード内の3番目のピンは「2」であり、それは第1の次元に属する。従って、この例では、ユーザーは、16個のトークンの各々の左上の位置を見るだけで良い。この例では、それは存在しない。トークン選択規則(図6)に従い、ユーザーは、そのピンの位置に対してワイルドカードトークン(任意のトークン)を選択できて、選択する必要がある。この例では、ユーザーは、トークンC3をランダムにクリックする。そのトークンが3番目のピン位置−G4 356にコピーされる。
・4番目で最後のピンは
Figure 2018536931
であり、この記号は第4の次元に属する。第4の次元の記号は、この例では、トークンの右下側に出現する。従って、ユーザーは、16個のトークンの各々の右下側をチェックするだけで良い。この例では、それはトークンB3内にあり、そのためユーザーは、B3をクリックする必要がある(図4のステップ440)。この例示では、それは強調表示される。ユーザーがB3をクリックすると、トークンがパスコードの4番目の位置(G4 359)にコピーされる。
・パスコード内には4つのピンしかないので、位置G4 362およびG4 365は空のままにされ、それらは空のまま残されるべきである。ユーザーが一方または両方の場所にトークンを入力すると、ユーザーが元の4つのピンよりも多くのトークンを入力した(図4のステップ450)ので、システムは、ユーザーアクセスを拒否する。
・ユーザーが4つ全部のトークンを入力すると、ユーザーは「Login」(G4 370)ボタンをクリックして、ユーザーがトークン選択プロセスを終了していることをシステムに知らせ、システムは、図7で説明する規則(図4のステップ450)に従って、入力されたトークンが有効であるかどうかを確認する。
・この例では、ユーザーが入力したトークンは有効であり、システムは、「ログイン成功」というメッセージ(G4 380)を表示して、ユーザーアクセスを許可する(図4のステップ460)。
図9Cは、本発明の一実施形態に従い、失敗したログインプロセスに対して、システム100によって実行されるログインプロセスの実行フレームのサンプルスクリーンショットである。それは、以下のように、ユーザーが失敗したログインプロセス(図4)を経験する場合に、GATE_4実施形態画面がどのように見え得るかの一例を示す:
・ユーザーがユーザーid:「admin」(G4 307)を入力する(図4のステップ410)。
・ユーザーは「Enter」ボタン(G4 310)をクリックする。システムは、id「admin」が既にそのメモリ内にあるかどうかを確認し(図4のステップ420)、それが存在しない場合、「ユーザーIdが存在しません、有効なユーザーIdを入力してください」というメッセージ(図示せず)を表示する。存在する場合、システムは、4×4のテーブル(G4 321)を表示する。テーブルをより良く説明するために、行は好ましくは、上から下へ次のように示される:A、B、C、D。列も好ましくは、左から右へ次のように示される:1、2、3、4。このテーブル内のトークンは、図5で説明する規則に従って生成される。
・図8Bから、ユーザーid「admin」に関連付けられたパスコードは:
Figure 2018536931
であることが分かっているので、ユーザーは、1番目のピン:
Figure 2018536931
を見つけるために、テーブル内の16個のトークンを調べることから始める必要がある。記号
Figure 2018536931
は、第2の次元に属するので、この例では、トークンの右上の位置に出現し、そのため、ユーザーは、
Figure 2018536931
が存在するかどうか確認するために、各トークンの右上の位置に目を通すだけで良い。この例では、それは、トークンA1内にある。ユーザーは、図6で説明する規則に従い、このトークンをクリックする必要がある。
・ユーザーがA1をクリックすると、そのトークンがパスコードの1番目の位置(G4 351)にコピーされる(図4のステップ440)。
・ユーザーパスコード内の2番目のピンは:
Figure 2018536931
であり、この記号は第3の次元に属する。この例では、第3の次元の記号はトークンの左下側に出現する。従って、ユーザーは、16個のトークンの各々の左下側を見るだけで良い。この例では、それはトークンD1内にある。従って、ユーザーは、D1をクリックすべきである(図4のステップ440)。しかし、この例では、ユーザーはこのトークンをクリックせず、代わりに、B4をクリックした。これは間違ったトークンであり、システムは、これをエラーとして記録して、ユーザーアクセスを拒否する。
・ユーザーがB4をクリックする(図4のステップ440)と、そのトークンがパスコードの2番目の位置(G4 354)にコピーされる。
・パスコード内の3番目のピンは「2」であり、それは第1の次元に属する。従って、この例では、ユーザーは、16個のトークンの各々の左上の位置を見るだけで良い。この例では、それは存在しない。トークン選択規則(図6)に従い、ユーザーは、そのピンの位置に対してワイルドカードトークン(任意のトークン)を選択できて、選択する必要がある。この例では、ユーザーは、トークンC4をランダムにクリックする。そのトークンが3番目のピン位置−G4 357にコピーされる。
・4番目で最後のピンは
Figure 2018536931
であり、この記号は第4の次元に属する。第4の次元の記号は、この例では、トークンの右下側に出現する。従って、ユーザーは、16個のトークンの各々の右下側をチェックするだけで良い。この例では、それはトークンA2内にあり、そのためユーザーは、A2をクリックする必要がある(図4のステップ440)。ユーザーがA2をクリックすると、トークンがパスコードの4番目の位置(G4 360)にコピーされる。
・パスコード内には4つのピンしかないので、位置G4 363およびG4 366は空のままにされ、それらは空のまま残されるべきである。ユーザーが一方または両方の場所にトークンを入力すると、ユーザーが元の4つのピンよりも多くのトークンを入力した(図4のステップ450)ので、システムは、ユーザーアクセスを拒否する。
・ユーザーが4つ全部のトークンを入力すると、ユーザーは「Login」(G4 371)ボタンをクリックして、ユーザーがトークン選択プロセスを終了していることをシステムに知らせ、システムは、図7で説明する規則に従って、入力されたトークンが有効であるかどうかを確認する(図4のステップ450)。
・この例では、ユーザーが入力したトークンは無効であり、システムは、「ログインが失敗した」というメッセージ(G4 381)を表示して、ユーザーに対してアクセスを拒否する(図4のステップ470)。
図9Dは、本発明の一実施形態に従い、別の失敗したログインプロセスに対して、システム100によって実行されるログインプロセスの実行フレームのサンプルスクリーンショットである。それは、以下のように、ユーザーが失敗したログインプロセス(図4)を経験する場合に、GATE_4実施形態画面がどのように見え得るかの一例を示す:
・ユーザーがユーザーid:「admin」(G4 308)を入力する(図4のステップ410)。
・ユーザーは「Enter」ボタン(G4 311)をクリックする。システムは、id「admin」が既にそのメモリ内にあるかどうかを確認し(図4のステップ420)、それが存在しない場合、「ユーザーIdが存在しません、有効なユーザーIdを入力してください」というメッセージ(図示せず)を表示する。存在する場合、システムは、4×4のテーブル(G4 322)を表示する。テーブルをより良く説明するために、行は好ましくは、上から下へ次のように示される:A、B、C、D。列も好ましくは、左から右へ次のように示される:1、2、3、4。このテーブル内のトークンは、図5で説明する規則に従って生成される。
・図8Bから、ユーザーid「admin」に関連付けられたパスコードは:
Figure 2018536931
であることが分かっているので、ユーザーは、1番目のピン:
Figure 2018536931
を見つけるために、テーブル内の16個のトークンを調べることから始める必要がある。記号
Figure 2018536931
は、第2の次元に属するので、この例では、トークンの右上の位置に出現し、そのため、ユーザーは、
Figure 2018536931
が存在するかどうか確認するために、各トークンの右上の位置に目を通すだけで良い。この例では、それは、トークンB2内にある。ユーザーは、図6で説明する規則に従い、このトークンをクリックする必要がある。
・ユーザーがB2をクリックすると、そのトークンがパスコードの1番目の位置(G4 352)にコピーされる(図4のステップ440)。
・ユーザーパスコード内の2番目のピンは:
Figure 2018536931
であり、この記号は第3の次元に属する。この例では、第3の次元の記号はトークンの左下側に出現する。従って、ユーザーは、16個のトークンの各々の左下側を見るだけで良い。この例では、それは存在しない。トークン選択規則(図6)に従い、ユーザーは、そのピンの位置に対してワイルドカードトークン(任意のトークン)を選択できて、選択する必要がある。この例では、ユーザーは、トークンA4をランダムにクリックする。そのトークンが2番目のピン位置−G4 355にコピーされる。
・パスコード内の3番目のピンは「2」であり、それは第1の次元に属する。従って、この例では、ユーザーは、16個のトークンの各々の左上の位置を見るだけで良い。この例では、それは、トークンB3内にある。この例では、ユーザーはB3をクリックし、そのトークンが3番目のピン位置−G4 358にコピーされる。
・4番目で最後のピンは
Figure 2018536931
であり、この記号は第4の次元に属する。第4の次元の記号は、この例では、トークンの右下側に出現する。従って、ユーザーは、16個のトークンの各々の右下側をチェックするだけで良い。この例では、それはトークンD1内にあり、そのためユーザーは、D1をクリックする必要がある(図4のステップ440)。ユーザーがD1をクリックすると、トークンがパスコードの4番目の位置(G4 361)にコピーされる。
・パスコード内には4つのピンしかないので、位置G4 364およびG4 367は空のままにすべきである。この例では、ユーザーが余分なトークンD2を入力しており、ユーザーが元の4つのピンよりも多くを入力したので、システムは、従って、ユーザーに対してアクセスを拒否する。
・ユーザーが5つ全部のトークンを入力すると、ユーザーは「Login」(G4 372)ボタンをクリックして、ユーザーがトークン選択プロセスを終了していることをシステムに知らせ、システムは、図7で説明する規則に従って、入力されたトークンが有効であるかどうかを確認する(図4のステップ450)。
・この例では、ユーザーが多すぎるトークンを入力し、システムは、「ログインが失敗した」というメッセージ(G4 382)を表示して、ユーザーに対してアクセスを拒否する(図4のステップ470)。
図10Aは、テキストフォーマットでのGATE_4実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。それは、プログラム開始時の空の画面を反映している。この画像は、以下の図10B、図10Cおよび図10Dに対する比較の基礎として使用される。この画面は、場面の背後で何が起こるかの説明として示すだけである。それは、リアルタイムのユーザーログイン中には表示されない。
図10Bは、テキストフォーマットでのGATE_4実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。それは、図9Bのユーザーログインプロセスが行われているときに場面の背後で何が起こるかを示し、図4のプロセスフローがサンプル実施形態でどのように見えるかを示す。これはデモに過ぎず、リアルタイムのユーザーログイン中には表示されない。図7に示すトークン検証規則を視覚的に説明するために使用される。
3つの列:「クライアント側」(左側)、「ネットワーク接続」(中央)、および「サーバー側」(右側)がある。ユーザーがユーザーidを入力するとプロセスがクライアント側から開始して、情報がネットワーク接続を通してサーバー側に渡る。サーバーは16個のトークンを生成し、それらをネットワークに渡し、次いで、トークンがクライアント側に渡される。
ユーザーは、図6に示すトークン選択規則に従ってトークンを選択する。選択されたトークンはネットワークに渡され、次いで、検証するためにサーバー側に渡され、アクセスの許可または拒否の結果がネットワークを通してクライアント側に渡される。プロセスフローが、図10Bにおいて矢印によって示されている。以下でさらに詳細に説明する:
・ユーザーがユーザーid:「admin」(G4 406)を入力する。
・ユーザーは「Enter」ボタン(G4 409)をクリックする。
・ユーザーid「admin」(G4 406)がクライアント側(G4 411)に表示されて、ネットワーク接続(G4 413)に渡され(G4 421)、次いでそれはさらにサーバー側(G4 415)に渡される(G4 422)。
・サーバー側で、システムは、ユーザーid「admin」が存在するかどうか、そのメモリを確認し、それが存在しない場合、システムは、「ユーザーIdが存在しません、有効なユーザーIdを入力してください」というメッセージ(図示せず)を表示する。図8Bからの同じ例が使用され、メモリ内のパスコードは:
Figure 2018536931
であり、システムはそれをメモリ内で見つける(G4 417)。
・システムは、図5に示すトークン生成規則に従って16個のトークン(G4 423)を生成する。
・16個のトークンがネットワークに渡される(G4 424)。
・ネットワークはそのトークンをクライアント側に渡す(G4 425)。
・16個のトークンは、図9Bに示すように、4×4のテーブル(図9BにおけるG4 320)で、ユーザーログイン画面上に表示される。
・ユーザーは4つのトークン:G4 350、G4 353、G4 356およびG4 359を選択する(G4 426)。
・ユーザーが「Login」(図9BにおけるG4 370)をクリックすると、ユーザーが選択した4つのトークンがネットワークに渡される(G4 427)。
・ユーザーが選択した4つのトークンは、次いで、サーバー側に渡される(G4 428)。
・サーバー側で、システムは、4つのトークン全部を1つずつチェックし:C11、C12、C13およびC14、この例では、それらは全て正しい。
・成功したログインという上の結果(G4 429)が、ネットワークに渡される(G4 430)。
・ネットワークはその結果をクライアント側に渡して(G4 431)、図9BのG4 380に示すメッセージを表示する(G4 432)。
図10Cは、テキストフォーマットでのGATE_4実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。それは、図9Cのユーザーログインプロセスが行われているときに場面の背後で何が起こるかを示し、図4のプロセスフローがサンプル実施形態でどのように見えるかを示す。これはデモに過ぎず、リアルタイムのユーザーログイン中には表示されない。図7に示すトークン検証規則を視覚的に説明するために使用される。
3つの列:「クライアント側」(左側)、「ネットワーク接続」(中央)、および「サーバー側」(右側)がある。ユーザーがユーザーidを入力するとプロセスがクライアント側から開始し、次いで、情報がネットワーク接続を通してサーバー側に渡る。サーバーは16個のトークンを生成し、それらをネットワークに渡し、次いで、トークンがクライアント側に渡される。
ユーザーは、図6に示すトークン選択規則に従ってトークンを選択する。選択されたトークンはネットワークに渡され、次いで、検証するためにサーバー側に渡され、アクセスの許可または拒否の結果がネットワークを通してクライアント側に渡される。プロセスフローが、図10Cにおいて矢印によって示されている。以下でさらに詳細に説明する:
・ユーザーがユーザーid:「admin」(G4 506)を入力する。
・ユーザーは「Enter」ボタン(G4 509)をクリックする。
・ユーザーid「admin」(G4 506)がクライアント側(G4 511)に表示されて、ネットワーク接続(G4 513)に渡され(G4 521)、次いでそれはさらにサーバー側(G4 515)に渡される(G4 522)。
・サーバー側で、システムは、ユーザーid「admin」が存在するかどうか、そのメモリを確認し、それが存在しない場合、システムは、「ユーザーIdが存在しません、有効なユーザーIdを入力してください」というメッセージ(図示せず)を表示する。図8Bからの同じ例が使用され、メモリ内のパスコードは:
Figure 2018536931
であり、システムはそれをメモリ内で見つける(G4 517)。
・システムは、図5に示すトークン生成規則に従って16個のトークン(G4 523)を生成する。
・16個のトークンがネットワークに渡される(G4 524)。
・ネットワークはそのトークンをクライアント側に渡す(G4 525)。
・16個のトークンは、図9Cに示すように、4×4のテーブル(図9CにおけるG4 321)で、ユーザーログイン画面上に表示される。
・ユーザーは4つのトークン:G4 351、G4 354、G4 357およびG4 360を選択する(G4 526)。
・ユーザーが「Login」(図9CにおけるG4 371)をクリックすると、ユーザーが選択した4つのトークンがネットワークに渡される(G4 527)。
・ユーザーが選択した4つのトークンは、次いで、サーバー側に渡される(G4 528)。
・サーバー側で、システムは、4つのトークン全部を1つずつチェックし:C21、C22、C23およびC24、この例では、2番目のトークンが正しくない(2番目のピン
Figure 2018536931
はD1トークン内に存在するが、ユーザーはB4トークンを選択し、それは誤っていたため。従って、結果は失敗したログインとなる)。
・失敗したログインという上の結果(G4 529)が、ネットワークに渡される(G4 530)。
・ネットワークはその結果をクライアント側に渡して(G4 531)、図9CのG4 381に示すメッセージを表示する(G4 532)。
図10Dは、テキストフォーマットでのGATE_4実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。それは、図9Dのユーザーログインプロセスが行われているときに場面の背後で何が起こるかを示し、図4のプロセスフローがサンプル実施形態でどのように見えるかを示す。これはデモに過ぎず、リアルタイムのユーザーログイン中には表示されない。図7に示すトークン検証規則を視覚的に説明するために使用される。
3つの列:「クライアント側」(左側)、「ネットワーク接続」(中央)、および「サーバー側」(右側)がある。ユーザーがユーザーidを入力するとプロセスがクライアント側から開始し、次いで、情報がネットワーク接続を通してサーバー側に渡る。サーバーは16個のトークンを生成し、それらをネットワークに渡し、次いで、トークンがクライアント側に渡される。
ユーザーは、図6に示すトークン選択規則に従ってトークンを選択する。選択されたトークンはネットワークに渡され、次いで、検証するためにサーバー側に渡され、アクセスの許可または拒否の結果がネットワークを通してクライアント側に渡される。プロセスフローが、図10Dにおいて矢印によって示されている。以下でさらに詳細に説明する:
・ユーザーがユーザーid:「admin」(G4 606)を入力する。
・ユーザーは「Enter」ボタン(G4 609)をクリックする。
・ユーザーid「admin」(G4 606)がクライアント側(G4 611)に表示されて、ネットワーク接続(G4 613)に渡され(G4 621)、次いでそれはさらにサーバー側(G4 615)に渡される(G4 622)。
・サーバー側で、システムは、ユーザーid「admin」が存在するかどうか、そのメモリを確認し、それが存在しない場合、システムは、「ユーザーIdが存在しません、有効なユーザーIdを入力してください」というメッセージ(図示せず)を表示する。図8Bからの同じ例が使用され、メモリ内のパスコードは:
Figure 2018536931
であり、システムはそれをメモリ内で見つける(G4 617)。
・システムは、図5に示すトークン生成規則に従って16個のトークン(G4 623)を生成する。
・16個のトークンがネットワークに渡される(G4 624)。
・ネットワークはそのトークンをクライアント側に渡す(G4 625)。
・16個のトークンは、図9Dに示すように、4×4のテーブル(図9DにおけるG4 322)で、ユーザーログイン画面上に表示される。
・ユーザーは5つのトークン:G4 352、G4 355、G4 358、G4 361およびG4 364を選択する(G4 626)。
・ユーザーが「Login」(図9DにおけるG4 372)をクリックすると、ユーザーが選択した5つのトークンがネットワークに渡される(G4 627)。
・ユーザーが選択した5つのトークンは、次いで、サーバー側に渡される(G4 628)。
・サーバー側で、システムは、5つのトークン全部を1つずつチェックし:C31、C32、C33、C34およびC35、この例では、5番目のトークンが正しくない(パスコードには4つのピンしかないが、ユーザーは5番目のトークンを入力し、それは誤っていたため。従って、結果は失敗したログインとなる)。
・失敗したログインという上の結果(G4 629)が、ネットワークに渡される(G4 630)。
・ネットワークはその結果をクライアント側に渡して(G4 631)、図9DのG4 382に示すメッセージを表示する(G4 632)。
図11Aは、GATE_5実施形態におけるユーザーid作成(登録)プロセスのサンプルスクリーンショットである。それは、プログラム開始時の空の画面を反映している。この画像は、以下の図11Bに対する比較の基礎として使用される。
図11Bは、GATE_5実施形態におけるユーザーid作成(登録)プロセスのサンプルスクリーンショットである。それは、記号の各次元がトークン内のどこに位置するかを示す。それは、ユーザーが新しいユーザーidをどのように作成するか、また、ユーザーがユーザーidと関連付けられたパスコードを形成するためにどのようにピンを選択して保存するかも反映している。プロセスは次のように進む:
・ユーザーが新しいユーザーid:「admin」(G5 206)を入力して、「Check Availability(利用可能性をチェックする)」ボタン(G5 208)をクリックする。システムは、id「admin」が既にそのメモリ内にあるかどうかを確認し、そうである場合、「ユーザーIdは既に存在します、既存のパスコードを上書きしますか?」と尋ねるダイアログ(図示せず)を表示する。ユーザーが古いパスコードを上書きしたくない場合、プロセスはダイアログを閉じて、ユーザーが別のユーザーidを入力するのを待つ。ユーザーid「admin」が存在しない場合、または存在するが、ユーザーが既存のパスコードを上書きしたい場合、システムは、図2Bに示すような、各々が、事前に定義された次元からの26個の記号を有する、G5 212、G5 222、G5 232、G5 242およびG5 248におけるボタンを有効にする。
例えば、G5 212は、第1の次元から26個全部の記号を含み、それらの記号は、G5 210に見られるようにトークン内の「[1]」(左上)位置に現れる。26個の記号は、
Figure 2018536931
である。G5 222は、
Figure 2018536931
の26個の記号を表示し、それらは第2の次元からであり、任意のトークン内の「[2]」(G5 220:右上)位置に現れる。G5 232は、1〜26の数字を表示し、それらは第3の次元からであり、トークン内の「[3]」(G5 230:中央)位置に現れ、G5 242は、
Figure 2018536931
の26個の記号を表示し、それらは第4の次元からであり、任意のトークン内で「[4]」(G5 240:左下)位置に現れる。G5 248は、
Figure 2018536931
の26個の記号を表示し、それらは第5の次元からであり、任意のトークン内で「[5]」(G5 246:右下)位置に現れる。
プロセスのこの段階で、システムは、G5 212、G5 222、G5 232、G5 242およびG5 248における前述のボタンを有効にして、ユーザーがそれらのどれでもクリックできるようにする。比較として、図11Aでは、ユーザーがまだユーザーidを入力していないので、それらのボタンは有効にされておらず、薄く見える。ユーザーidがなければ、ユーザーがピンを選択することは許可されない。
・ユーザーは、1番目のピンを選択するために、G5 248内の記号の中で「$」をクリックし、するとそれがG5 250に現れる。
・ユーザーは、2番目のピンを選択するために、G5 242内の記号の中で「=」をクリックし、するとそれがG5 252に現れる。
・ユーザーは、3番目のピンを選択するために、G5 212内の記号の中で
Figure 2018536931
をクリックし、するとそれがG5 254に現れる。
・ユーザーは、4番目のピンを選択するために、G5 212内の記号の中で
Figure 2018536931
をクリックし、するとそれがG5 256に現れる。
・ユーザーは、5番目のピンを選択するために、G5 232内の記号の中で「2」をクリックし、するとそれがG5 258に現れる。
・ユーザーは、6番目のピンを選択するために、G5 242内の記号の中で
Figure 2018536931
をクリックし、するとそれがG5 260に現れる。
・この例では、ユーザーは自分のパスコード内に6つのピンを有することを選択し、そのためユーザーのパスコード長は6である。
・ユーザーは次いで、「Save(保存)」ボタン(G5 270)をクリックすることによりユーザーid作成(登録)プロセスを終了する。システムは、パスコード
Figure 2018536931
をユーザーid「admin」と共にメモリ内に保存する。
図12Aは、GATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。それは、プログラム開始時の空の画面を反映している。この画像は、以下の図12B、図12Cおよび図12Dに対する比較の基礎として使用される。
図12Bは、GATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。それは、ユーザーがパスコードをそれから選択する16個のトークンの4×4のテーブルを示している。それは、トークン選択プロセスがどのように機能するかを反映し、ユーザーが選択し、ユーザーピンをユーザーのパスコードの一部としてそれらの中に有する、トークン内の記号を強調表示する。それは、成功したログインプロセスがどのように見え得るかも示す。この例は図11Bの例に従っており、そのため、同じパスコードが使用される。プロセスは、次のように進む:
・ユーザーが新しいユーザーid:「admin」(G5 306)を入力する。
・ユーザーは「Enter」ボタン(G5 309)をクリックする。システムは、id「admin」が既にそのメモリ内にあるかどうかを確認し、それが存在しない場合、「ユーザーIdが存在しません、有効なユーザーIdを入力してください」というメッセージ(図示せず)を表示する。存在する場合、システムは、4×4のテーブル(G5 320)を表示し、テーブルをより良く説明するために、行は上から下へ:A、B、C、Dと示され、列も左から右へ:1、2、3、4と示される。このテーブル内のトークンは、図5で説明する規則に従って生成される。
・図11Bから、ユーザーid:「admin」に関連付けられたパスコードは:
Figure 2018536931
であることが分かっているので、ユーザーは、1番目のピン:「$」を見つけるために、テーブル内の16個のトークンを調べることから始める必要がある。
記号$は、第5の次元に属するので、トークンの右下の位置にだけ出現し、そのため、ユーザーは、$が存在するかどうか確認するために、各トークンの右下の位置に目を通すだけで良い。我々の例では、それは、トークンB4内にあり、画面はデモモードで撮られており、デモモードでは、プログラムは、ユーザーがプロセスをより良く理解するために、一致している記号を強調表示する。リアルタイムでは、それは強調表示されない。我々の事例では、B4内の$が強調表示され、それは、B4トークン内に見られるので、ユーザーは、図6で説明する規則に従い、このトークンをクリックする必要がある。
・ユーザーがB4をクリックすると、そのトークンがパスコードの1番目の位置(G5 350)にコピーされる。
・ユーザーパスコード内の2番目のピンは:「=」であり、この記号は第4の次元に属し、第4の次元の記号はトークンの左下側にだけ出現するので、ユーザーは、16個のトークンの各々の左下側を見るだけで良く、我々の事例では、それはトークンD2内にあり、そのため、ユーザーは、D2をクリックすべきである。それは、スクリーンショット内で強調表示される。
・ユーザーがD2をクリックすると、そのトークンがパスコードの2番目の位置(G5 353)にコピーされる。
・パスコード内の3番目のピンは:
Figure 2018536931
であり、それは第1の次元に属するので、ユーザーは、16個のトークンの各々の左上の位置を見るだけで良く、我々の事例では、それはトークンD4内にあり、そのため、ユーザーは、D4をクリックすべきである。それは、スクリーンショット内で強調表示される。
・ユーザーがD4をクリックすると、そのトークンがパスコードの3番目の位置(G5 356)にコピーされる。
・4番目のピンは
Figure 2018536931
であり、この記号は第1の次元に属し、第1の次元の記号は、トークンの左上側にだけ出現するので、ユーザーは、16個のトークンの各々の左上側をチェックするだけで良く、我々の事例では、それは存在せず、トークン選択規則に従い、ユーザーは、そのピンの位置に対してワイルドカードトークン(任意のトークン)を選択できて、選択する必要があるので、ユーザーは、ランダムなトークンA4をクリックし、そのトークンが4番目のピン位置G5 359にコピーされる。
・パスコード内の5番目のピンは:「2」であり、それは第3の次元に属するので、ユーザーは、16個のトークンの各々の中央を見るだけで良く、我々の事例では、それはトークンD2内にあり、そのため、ユーザーは、D2をクリックすべきである。それは、スクリーンショット内で強調表示される。ユーザークリックの後、そのトークンがパスコードの5番目の位置(G5 362)にコピーされる。
・6番目で最後のピンは:
Figure 2018536931
であり、この記号は第4の次元に属し、第4の次元の記号はトークンの左下側にだけ出現するので、ユーザーは、16個のトークンの各々の左下側をチェックするだけで良く、我々の事例では、それはトークンA4内にあり、そのため、ユーザーは、A4をクリックする必要がある。それは、デモプログラムによっても強調表示される。ユーザークリックの後、そのトークンがパスコードの6番目で最後の位置(G5 365)にコピーされる。
・ユーザーが6つ全部のトークンを入力すると、ユーザーは「Login」(G5 370)ボタンをクリックして、ユーザーがトークン選択プロセスを終了していることをシステムに知らせ、システムは、図7で説明する規則に従って、入力されたトークンが有効であるかどうかを確認する。
・この例では、ユーザーが入力したトークンは有効であり、システムは、「ログイン成功」というメッセージを表示して、ユーザーアクセスを許可した(G5 380)。
・この例では、G5 353とG5 362におけるトークンが同じで、G5 359とG5 365におけるトークンもそうであるが、それは単なる偶然の一致で、このような状況は頻繁に起こり得る。これは、パスコードを推測しようと試みている人物を非常にうまく混乱させ得る。
図12Cは、GATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。それは、ユーザーがそれからパスコードを選択する16個のトークンの4×4のテーブルを示している。それは、トークン選択プロセスがどのように機能するかを反映する。それは、3つの誤ったピンで失敗したログインがどのように見え得るかも示す。このプロセス例は図11Bの例に従っており、そのため、同じパスコードが使用される。プロセスは、次のように進む:
・ユーザーがユーザーid:「admin」(G5 307)を入力する。
・ユーザーは「Enter」ボタン(G5 310)をクリックする。システムは、id「admin」が既にそのメモリ内にあるかどうかを確認し、それが存在しない場合、「ユーザーIdが存在しません、有効なユーザーIdを入力してください」というメッセージ(図示せず)を表示する。存在する場合、システムは、4×4のテーブル(G5 321)を表示し、テーブルをより良く説明するために、行は上から下へ:A、B、C、Dと示され、列も左から右へ:1、2、3、4と示される。このテーブル内のトークンは、図5で説明する規則に従って生成される。
・図11Bから、ユーザーid「admin」に関連付けられたパスコードが:
Figure 2018536931
であることが分かっているので、ユーザーは、1番目のピン:「$」を見つけるために、テーブル内の16個のトークンを調べることから始める必要がある。
記号$は、第5の次元に属するので、トークンの右下の位置にだけ出現し、そのため、ユーザーは、$が存在するかどうか確認するために、各トークンの右下の位置に目を通すだけで良い。我々の例では、それは、トークンA2内にあり、ユーザーは、図6で説明する規則に従い、このトークンをクリックする必要がある。
・ユーザーがA2をクリックすると、そのトークンがパスコードの1番目の位置(G5 351)にコピーされる。
・ユーザーパスコード内の2番目のピンは:「=」であり、この記号は第4の次元に属し、第4の次元の記号はトークンの左下側にだけ出現するので、ユーザーは、16個のトークンの各々の左下側を見るだけで良く、我々の事例では、それは存在せず、トークン選択規則に従い、ユーザーは、そのピンの位置に対してワイルドカードトークン(任意のトークン)を選択できて、選択する必要があるので、ユーザーは、ランダムなトークンA3をクリックする。
・ユーザーがA3をクリックすると、そのトークンがパスコードの2番目の位置(G5 354)にコピーされる。
・パスコード内の3番目のピンは:
Figure 2018536931
であり、それは第1の次元に属するので、ユーザーは、16個のトークンの各々の左上の位置を見るだけで良く、我々の事例では、それはトークンC1内にあり、ユーザーは、C1をクリックする必要がある。我々の事例では、ユーザーは実際にC1をクリックする。
・ユーザーがC1をクリックすると、そのトークンがパスコードの3番目の位置(G5 357)にコピーされる。
・4番目のピンは:
Figure 2018536931
であり、この記号は第1の次元に属し、ユーザーは、16個のトークンの各々の左上の位置を見るだけで良く、我々の事例では、それはトークンD2内にあり、ユーザーは、D2をクリックする必要がある。我々の事例では、ユーザーはD2をクリックせず、代わりに、ユーザーは、C2をクリックした。これは間違いであり、システムはユーザーアクセスを拒否するであろう。
・ユーザーがC2をクリックすると、そのトークンがパスコードの4番目の位置(G5 360)にコピーされる。
・パスコード内の5番目のピンは:「2」であり、それは第3の次元に属するので、ユーザーは、16個のトークンの各々の中央を見るだけで良く、我々の事例では、それはトークンC3内にあり、図6におけるトークン選択規則に従い、ユーザーはこのトークンを選択する必要があるが、例ではユーザーは代わりにトークンB2を選択し、これは間違いで、システムはチェックして通知するであろう。
・ユーザーが間違ったトークンB2をクリックすると、それはパスコードの5番目の位置(G5 363)にコピーされる。
・6番目で最後のピンは:
Figure 2018536931
であり、この記号は第4の次元に属し、第4の次元の記号はトークンの左下側にだけ出現するので、ユーザーは、16個のトークンの各々の左下側をチェックするだけで良く、我々の事例では、それはトークンD1内にあり、ユーザーは、D1をクリックする必要がある。我々の事例では、ユーザーはD1をクリックせず、代わりに、ユーザーはトークンC4をクリックし、これは間違いで、システムはそれを通知する。
・ユーザーが間違ったトークンC4をクリックすると、それはパスコードの6番目の位置(G5 366)にコピーされる。
・ユーザーが6つ全部のトークンを入力した後、ユーザーは「Login」(G5 371)ボタンをクリックして、ユーザーがトークン選択プロセスを終了していることをシステムに知らせ、システムは、図7で説明する規則に従って、入力されたトークンが有効であるかどうかを確認する。
・この例では、ユーザーが入力したトークンは無効であり、システムは、「ログインが失敗した」というメッセージを表示して、ユーザーアクセスを拒否した(G5 381)。
図12Dは、GATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。それは、ユーザーがそれからパスコードを選択する、16個のトークンの4×4のテーブルを示している。それは、トークン選択プロセスがどのように機能するかを反映する。それは、見当たらないピンがある失敗したログインがどのように見え得るかも示す。このプロセス例は図11Bの例に従っており、そのため、同じパスコードが使用される。プロセスは、次のように進む:
・ユーザーがユーザーid:「admin」(G5 308)を入力する。
・ユーザーは「Enter」ボタン(G5 311)をクリックする。システムは、id「admin」が既にそのメモリ内にあるかどうかを確認し、それが存在しない場合、「ユーザーIdが存在しません、有効なユーザーIdを入力してください」というメッセージ(図示せず)を表示する。存在する場合、システムは、4×4のテーブル(G5 322)を表示し、テーブルをより良く説明するために、行は上から下へ:A、B、C、Dと示され、列も左から右へ:1、2、3、4と示される。このテーブル内のトークンは、図5で説明する規則に従って生成される。
・図11Bから、ユーザーid「admin」に関連付けられたパスコードは:
Figure 2018536931
であることが分かっているので、ユーザーは、1番目のピン:「$」を見つけるために、テーブル内の16個のトークンを調べることから始める必要がある。
記号$は、第5の次元に属するので、トークンの右下の位置にだけ出現し、ユーザーは、$が存在するかどうか確認するために、各トークンの右下の位置に目を通すだけで良い。我々の例では、それは、それは存在せず、ユーザーは、そのピンの位置にワイルドカードトークン(任意のトークン)を選択できて、選択する必要があるので、ユーザーは、ランダムなトークンD3をクリックする。
・ユーザーがD3をクリックすると、そのトークンがパスコードの1番目の位置(G5 352)にコピーされる。
・ユーザーパスコード内の2番目のピンは:「=」であり、この記号は第4の次元に属し、第4の次元の記号はトークンの左下側にだけ出現するので、ユーザーは、16個のトークンの各々の左下側を見るだけで良く、我々の事例では、それはトークンC1内にあり、ユーザーは、このトークンをクリックする必要がある。
・ユーザーがC1をクリックすると、そのトークンがパスコードの2番目の位置(G5 355)にコピーされる。
・パスコード内の3番目のピンは:
Figure 2018536931
であり、それは第1の次元に属するので、ユーザーは、16個のトークンの各々の左上の位置を見るだけで良く、我々の事例では、それはトークンA1内にあり、そのため、ユーザーはA1をクリックする必要がある。我々の事例では、ユーザーは実際にA1をクリックする。
・ユーザーがA1をクリックすると、そのトークンがパスコードの3番目の位置(G5 358)にコピーされる。
・4番目のピンは:
Figure 2018536931
であり、この記号は第1の次元に属し、ユーザーは、16個のトークンの各々の左上の位置を見るだけで良く、我々の事例では、それはトークンD3内にあり、そのため、ユーザーはD3をクリックする必要がある。我々の事例では、ユーザーは実際にD3をクリックした。
・ユーザーがD3をクリックすると、そのトークンがパスコードの4番目の位置(G5 361)にコピーされる。
・パスコード内の5番目のピンは:「2」であり、それは第3の次元に属するので、ユーザーは、16個のトークンの各々の中央を見るだけで良く、我々の事例では、それはトークンC4内にあり、図6におけるトークン選択規則に従い、ユーザーはこのトークンを選択する必要があるが、例では、ユーザーはトークンC4を選択した。
・ユーザーがトークンC4をクリックすると、それはパスコードの5番目の位置(G5 364)にコピーされる。
・6番目で最後のピンは:
Figure 2018536931
であり、この記号は第4の次元に属し、第4の次元の記号はトークンの左下側にだけ出現するので、ユーザーは、16個のトークンの各々の左下側をチェックするだけで良く、我々の事例では、それはトークンC2内にあり、そのため、ユーザーはC2をクリックする必要がある。しかし、我々の事例では、ユーザーはC2をクリックせず、代わりに、ユーザーは最後の位置を空のままにして、5つのピンだけを入力した。これは間違いである。
・ユーザーが上の5つのトークンを入力した後、ユーザーは「Login」(G5 372)ボタンをクリックして、ユーザーがトークン選択プロセスを終了していることをシステムに知らせ、システムは、図7で説明する規則に従って、入力されたトークンが有効であるかどうかを確認する。
・この例では、元のパスコードには6つのピンがあるが、ユーザーは、我々の例では、5つのトークンしか入力していないので、ユーザーが入力したトークンは無効であり、そのため、ユーザーのアクセス要求は拒否されて、システムは、「ログインが失敗した」というメッセージを表示した(G5 382)。
図13Aは、テキストフォーマットでのGATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。それは、プログラム開始時の空の画面を反映している。この画像は、以下の図13B、図13Cおよび図13Dに対する比較の基礎として使用される。この画面は、場面の背後で何が起こるかの説明として示すだけである。それは、リアルタイムのユーザーログイン中には表示されない。
図13Bは、テキストフォーマットでのGATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。それは、図12Bのユーザーログインプロセスが行われているときに場面の背後で何が起こるかを示し、図4のプロセスフローがサンプル実施形態でどのように見えるかを示す。これはデモに過ぎず、リアルタイムのユーザーログイン中には表示されない。図7に示すトークン検証規則を視覚的に説明するために使用される。
3つの列:「クライアント側」(左側)、「ネットワーク接続」(中央)、および「サーバー側」(右側)がある。ユーザーがユーザーidを入力するとプロセスがクライアント側から開始し、次いで、情報がネットワーク接続を通してサーバー側に渡る。サーバーは16個のトークンを生成し、それらをネットワークに渡し、次いで、トークンがクライアント側に渡される。
ユーザーは、図6に示すトークン選択規則に従ってトークンを選択し、次いで、選択されたトークンがネットワークに渡され、その後、検証するためにサーバー側に渡される。アクセスの許可または拒否の結果がネットワークを通してクライアント側に渡される。プロセスフローが、図13Bにおいて矢印によって示されている。プロセスは次のように進む:
・ユーザーがユーザーid「admin」(G5 406)を入力する。
・ユーザーは「Enter」(G5 409)をクリックする。
・ユーザーid「admin」(G5 406)がクライアント側(G5 411)に表示されて、ネットワーク接続(G5 413)に渡され(G5 421)、次いでそれはさらにサーバー側(G5 415)に渡される(G5 422)。
・サーバー側で、システムは、ユーザーid「admin」が存在するかどうか、そのメモリを確認し、それが存在しない場合、システムは、「ユーザーIdが存在しません、有効なユーザーIdを入力してください」というメッセージ(図示せず)を表示する。図11Bからの同じ例が使用され、そのため、メモリ内のパスコードは:
Figure 2018536931
であり、システムはそれをメモリ内で見つける(G5 417)。
・システムは、図5に従って16個のトークン(G5 423)を生成する。
・16個のトークンがネットワークに渡される(G5 424)。
・ネットワークはそのトークンをクライアント側に渡す(G5 425)。
・16個のトークンは、図12Bに示すように、4×4のテーブル(G5 320)で、ユーザーログイン画面上に表示される。
・ユーザーは6つのトークン:G5 350、G5 353、G5 356、G5 359、G5 362およびG5 365を選択する(G5 426)。
・ユーザーが図12Bにおける「Login」(G5 370)をクリックすると、ユーザーが選択した6つのトークンがネットワークに渡される(G5 427)。
・ユーザーが選択した6つのトークンは、次いで、サーバー側に渡される(G5 428)。
・サーバー側で、システムは、6つのトークン全部を1つずつチェックし:K11、K12、K13、K14、K15およびK16、我々の例では、それらは全て正しい。
・成功したログインという上の結果(G5 429)が、ネットワークに渡される(G5 430)。
・ネットワークはその結果をクライアント側に渡して(G5 431)、図12BのG5 380に示すメッセージを表示する(G5 432)。
図13Cは、テキストフォーマットでのGATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。それは、図12Cのユーザーログインプロセスが行われているときに場面の背後で何が起こるかを示し、図4のプロセスフローがサンプル実施形態でどのように見えるかを示す。これはデモに過ぎず、リアルタイムのユーザーログイン中には表示されない。それは、図7に示すトークン検証規則を視覚的に説明するために使用される。
3つの列:「クライアント側」(左側)、「ネットワーク接続」(中央)、および「サーバー側」(右側)がある。ユーザーがユーザーidを入力するとプロセスがクライアント側から開始し、次いで、情報がネットワーク接続を通してサーバー側に渡る。サーバーは16個のトークンを生成し、それらをネットワークに渡し、次いで、トークンがクライアント側に渡される。
ユーザーは、図6に示すトークン選択規則に従ってトークンを選択する。選択されたトークンはネットワークに渡され、次いで、検証するためにサーバー側に渡され、アクセスの許可または拒否の結果がネットワークを通してクライアント側に渡される。プロセスフローが、図13Cにおいて矢印によって示されている。以下でさらに詳細に説明する:
・ユーザーがユーザーid:「admin」(G5 506)を入力する。
・ユーザーは「Enter」ボタン(G5 509)をクリックする。
・ユーザーid「admin」(G5 506)がクライアント側(G5 511)に表示されて、ネットワーク接続(G5 513)に渡され(G5 521)、次いでそれは再度サーバー側(G5 515)に渡される(G5 522)。
・サーバー側で、システムは、ユーザーid「admin」が存在するかどうか、そのメモリを確認し、それが存在しない場合、システムは、「ユーザーIdが存在しません、有効なユーザーIdを入力してください」というメッセージ(図示せず)を表示する。図11Bからの同じ例が使用され、メモリ内のパスコードは:
Figure 2018536931
であり、システムはそれをメモリ内で見つける(G5 517)。
・システムは、図5に示すトークン生成規則に従って16個のトークン(G5 523)を生成する。
・16個のトークンがネットワークに渡される(G5 524)。
・ネットワークはそのトークンをクライアント側に渡す(G5 525)。
・16個のトークンは、図12Cに示すように、4×4のテーブル(図12CにおけるG5 321)で、ユーザーログイン画面上に表示される。
・ユーザーは6つのトークン:G5 351、G5 354、G5 357、G5 360、G5 363およびG5 366を選択する(G5 526)。
・ユーザーが「Login」(図12CにおけるG5 371)をクリックすると、ユーザーが選択した6つのトークンがネットワークに渡される(G5 527)。
・ユーザーが選択した6つのトークンは、次いで、サーバー側に渡される(G5 528)。
・サーバー側で、システムは、6つのトークン全部を1つずつチェックする:K21、K22、K23、K24、K25およびK26。この例では、最後の3つの選択されたトークが正しくない(ユーザーは、4番目、5番目および6番目のトークンに対して、それぞれ、D2トークン、C3トークンおよびD1トークンを選択する必要があったが、代わりに、ユーザーは、C2トークン、B2トークンおよびC4トークンを選択し、それらは誤っている。従って、結果は失敗したログインとなる)。
・失敗したログインという上の結果(G5 529)が、ネットワークに渡される(G5 530)。
・ネットワークはその結果をクライアント側に渡して(G5 531)、図12CのG5 381に示すメッセージを表示する(G5 532)。
図13Dは、テキストフォーマットでのGATE_5実施形態におけるユーザーログインプロセスのサンプルスクリーンショットである。それは、図12Dのユーザーログインプロセスが行われているときに場面の背後で何が起こるかを示し、図4のプロセスフローがサンプル実施形態でどのように見えるかを示す。これはデモに過ぎず、リアルタイムのユーザーログイン中には表示されない。それは、図7に示すトークン検証規則を視覚的に説明するために使用される。
3つの列:「クライアント側」(左側)、「ネットワーク接続」(中央)、および「サーバー側」(右側)がある。ユーザーがユーザーidを入力するとプロセスがクライアント側から開始し、次いで、情報がネットワーク接続を通してサーバー側に渡る。サーバーは16個のトークンを生成し、それらをネットワークに渡し、次いで、トークンがクライアント側に渡される。
ユーザーは、図6に示すトークン選択規則に従ってトークンを選択し、次いで、選択されたトークンがネットワークに渡され、その後、検証するためにサーバー側に渡される。アクセスの許可または拒否の結果がネットワークを通してクライアント側に渡される。プロセスフローが、図13Dにおいて矢印によって示されている。プロセスは次のように進む:
・ユーザーがユーザーid「admin」(G5 606)を入力する。
・ユーザーは「Enter」(G5 609)をクリックする。
・ユーザーid「admin」(G5 606)がクライアント側(G5 611)に表示されて、ネットワーク接続(G5 613)に渡され(G5 621)、次いでそれはさらにサーバー側(G5 615)に渡される(G5 622)。
・サーバー側で、システムは、ユーザーid「admin」が存在するかどうか、そのメモリを確認し、それが存在しない場合、システムは、「ユーザーIdが存在しません、有効なユーザーIdを入力してください」というメッセージ(図示せず)を表示する。図11Bからの同じ例が使用され、従って、メモリ内のパスコードは:
Figure 2018536931
であり、システムはそれをメモリ内で見つける(G5 617)。
・システムは、図5のトークン生成規則に従って16個のトークン(G5 623)を生成する。
・16個のトークンがネットワークに渡される(G5 624)。
・ネットワークはそのトークンをクライアント側に渡す(G5 625)。
・16個のトークンは、図12Dに示すように、4×4のテーブル(G5 322)で、ユーザーログイン画面上に表示される。
・ユーザーは5つのトークン:G5 352、G5 355、G5 358、G5 361およびG5 364を選択する(G5 626)。G5 367に留意すると、「
Figure 2018536931
input missing(入力が不足している)」と表示されており、システムは
Figure 2018536931
記号を最後のピンとして予期し、従って、6番目のトークンがあるはずだが、まだ、6番目のトークンからの入力が不足しており、これはエラーで、システムはユーザーアクセスを拒否することを意味する。
・ユーザーが図12Dにおける「Login」(G5 372)をクリックした後、ユーザーが選択した5つのトークンがネットワークに渡される(G5 627)。
・ユーザーが選択した5つのトークンは、次いで、サーバー側に渡される(G5 628)。
・サーバー側で、システムは、5つのトークン全部を1つずつチェックし:K31、K32、K33、K34およびK35、我々の例では、5つ全部のトークンは正しいが、6番目のトークンが不足しており(ユーザーはC2をクリックせず、代わりに、最後の位置を空のままにして、5つのピンだけを入力した)、従って、K36は、エラーを表す[x]と印を付けられた。これは誤りである。従って、結果は失敗したログインとなる。
・失敗したログインという上の結果(G5 629)が、ネットワークに渡される(G5 630)。
・ネットワークはその結果をクライアント側に渡して(G5 631)、図12DのG5 382に示すメッセージを表示する(G5 632)。
本方法は、パスコードを推測するのをさらに一層困難にするために次の特徴を使用するように拡張できる:ある数のピンを「隠し」として割り当て、それにより、それらの隠しピンが選択テーブル内に現れた場合に、それらは選択できない。代わりに、ユーザーは、これらのピンを有していない任意の他のトークンを選択し、それらのピンを有するトークンを避ける必要がある。
そのため、例えば、ユーザーがパスコード「123($#)456」を有する場合、パスコードの長さは8で、真ん中の2つのピンは、「(」と「)」の間に示された隠しピンである。ピン1、2、3、4、5、6に関しては、前述の規則に従う。「$」および「#」に関しては、「隠しピン規則」に従い、それは:それらのいずれも16個のトークンのどれにも現れない場合、ユーザーは、それらの位置にワイルドカードトークンを選択できて、選択する必要があるが、それらのいずれかが選択テーブル内の16個のトークンの1つに実際に現れる場合、ユーザーは、そのピンを避けて、任意の他の15個のトークンから1つを選択する必要がある。
ピンを隠しピンにするために、パスコード作成(登録)画面内の各ピンの下にチェックボックスを表示することができ、それにより、ユーザーがピンの下のボックスをチェックすると、そのピンが隠しピンになり、トークン検証プロセス中、ユーザーログインを検証するために前述の隠しピン規則を使用する。
本発明は、16個のトークンをもつ選択テーブル[図5で説明するトークン生成規則に従う送信者パスコードとともに生成された]およびいくつかのトークンをもつ鍵をメッセージと一緒に添付するために任意の通信プロセスも使用できる。その鍵がそのテーブルに対して有効である場合、そのメッセージは真のメッセージである。その鍵が選択テーブルに対して無効である場合、添付されたメッセージは偽のメッセージである。真のメッセージを保持して偽のメッセージをドロップすることにより、最終的な[元の]正しいメッセージを得る。受信者は、同じパスコードを使用してメッセージを復号し、そのためプロセスは以下の例のように進み得る:
・Message_1:I will go home at 7pm[+16個のトークンをもつトークンテーブル+無効な鍵]――>メッセージを捨てる
Message_2:I will go home at 3pm[+16個のトークンをもつトークンテーブル+有効な鍵]==>I will go home at 3pm
Message_3:We will abandon attack on the 3rd[+16個のトークンをもつトークンテーブル+無効な鍵]――>メッセージを捨てる
Message_4:We will attack at noon on the 3rd[+16個のトークンをもつトークンテーブル+有効な鍵]==>We will attack at noon on the 3rd
従って、正しい最終的なメッセージは:I will go home at 3pm.We will attack at noon on the 3rdである。
・Message_1:I[+16個のトークンをもつトークンテーブル+有効な鍵]==>I
Message_2:will[+16個のトークンをもつトークンテーブル+有効な鍵]==>will
Message_3:not [+16個のトークンをもつトークンテーブル+無効な鍵]――>メッセージを捨てる
Message_4:go [+16個のトークンをもつトークンテーブル+有効な鍵]==>go
従って、正しい最終的なメッセージは:I will goである。
・Message_1:u[+16個のトークンをもつトークンテーブル+無効な鍵]――>メッセージを捨てる
Message_2:n[+16個のトークンをもつトークンテーブル+無効な鍵]――>メッセージを捨てる
Message_3:t[+16個のトークンをもつトークンテーブル+有効な鍵]==>t
Message_4:r[+16個のトークンをもつトークンテーブル+有効な鍵]==>r
Message_5:u[+16個のトークンをもつトークンテーブル+有効な鍵]==>u
Message_6:e[+16個のトークンをもつトークンテーブル+有効な鍵]==>e
従って、正しい最終的なメッセージは:trueである。
本発明は、フィッシングも打ち破ることができ、フィッシングは、多くの場合、悪意のある理由のために、電子通信において信頼できる実体を装うことにより、ユーザー名、パスワード、およびクレジットカード詳細などの、機密情報を取得しようとする試みである。本発明を用いると、ユーザーとサーバーとの間で渡される全ての情報はトークンの形であって、各トークンは、複数の記号を有するので、明白なユーザーピンは漏れない。
図14は、GATE_4実施形態を使用するメッセージ暗号化プロセスのサンプルスクリーンショットである。それは、プレーンテキストメッセージが送信者パスコードでどのように暗号化されるか、および暗号化されたメッセージがどのように見え得るかを示す。プロセスは次のように進む:
・メッセージ送信者がプレーンテキストメッセージ「secret」をG4 700で入力する。
・送信者は、パスコード「123」をG4 702で入力して、「Encrypt(暗号化)」ボタン[G4 703]をクリックする。
・元のメッセージ「secret」が何らかのランダムな充填文字と混合されて、G4 704に示すような、次の結果のメッセージ「sLeQWNcrMfYeMtHQr」に変わる。
・受信者は、受信者側で同じパスコード「123」[G4 706]を使用してメッセージを復号する。
図15Aは、GATE_4実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。それは、暗号化された元のメッセージが受信者パスコードでどのように成功裏に復号され得るかの例を示す。プロセスは次のように進む:
・結果のメッセージ内の各文字[G4 704]には、テーブル内の各トークンが4つの記号を有する、4×4のトークンテーブルが添付され、メッセージ内の各文字には「鍵」も添付され、鍵はいくつかのトークンをその中に有し、鍵中のトークンの数は2〜6の範囲であり得る。
・受信者は同じパスコード「123」[G4 706]を使用してメッセージを復号し、復号されたメッセージがG4 704に強調表示された文字として示される。結果の復号されたメッセージは「secret」[G4 708]である。
・図15Aは、各文字に対してそれがどのように見え得るかの例を示す。スクリーンショットでは、メッセージ内の1番目の文字「s」[G4 710]は、ユーザーがそれ[G4 710]をクリックした後、例として表示され、G4 712は、現在表示している文字が「s」であることを示す。この文字に添付された4×4のトークンテーブルがテーブルG4 714に示される。
・「s」に添付された鍵トークンも、G4 720、G4 722およびG4 724として示される。
・メッセージ内の充填文字:L、Q、W、N、M、f、Y、M、H、Qおよびrは、トークンテーブルおよび無効な鍵が意図的に添付されており、そのため、それらは受信者側で無効にされる。
・示した例では、ユーザーはG4 704内の各文字をクリックして、その内容および鍵トークンを表示することができ、次いで、「Check(チェックする)」ボタン[G4 726]をクリックしてその文字が有効であるかどうかを確認する。スクリーンショットでは、文字「s」は有効であり、チェックは成功した[G4 730]ことが示される。
図15Bは、GATE_4実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。それは、図15Aに示すプロセスが行われているときに場面の背後で何が起こるかを示し、メッセージが受信者側でどのように検証されるかを示す。プロセスは次のように進む:
・メッセージ文字「s」[G4 750]が送信者パスコード「123」[G4 752]で暗号化されて、16個のトークン[G4 754]、およびいくつかのトークン[G4 720、G4 722およびG4 724]をもつ鍵が添付される。この情報はネットワーク[G4 756]に送信され、次いで受信者[G4 758]に送信される。
・受信者側で、メッセージを復号するために、同じパスコードが使用される「123」[G4 760]。鍵トークンは、各鍵トークンをチェックするために検証プロセスG4 764、G4 766を経る[G4 762]。C51、C52およびC53から、それらが全て有効であることがわかり、そのため、図15A[G4 730]に示すように、メッセージが有効である[G4 770]という最終的結論に達する[G4 768]。
図16Aは、GATE_4実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。それは、暗号化された充填文字メッセージが受信者パスコードによって復号されて、無効な情報としてどのように認識されるかの例を示す。プロセスは次のように進む:
・図16Aは、元のメッセージの一部ではない各充填文字に関してそれがどのように見え得るかの例を示す。それは、メッセージ[G4 704]内の2番目の文字「L」[G4 711]の内容を、ユーザーがそれをクリックした後に示す。G4 713は、文字が「L」であることを示す。この文字に添付された16個のトークンの4×4のテーブルがG4 715に示されている。「L」に添付された4つの鍵トークンが、G4 721、G4 723、G4 725およびG4 727として示されている。
・文字「L」は充填文字で、元のメッセージの一部ではないので、送信者は意図的に4×4のトークンテーブルおよび有効でない鍵を添付する。送信者パスコード[G4 702]および受信者パスコード[G4 706]が同じで、3つのピン「1」、「2」および「3」を有し、従って有効な鍵は、3つのトークンよりも多くも、少なくもないはずであることが明らかにわかる。この例では、それは4つの鍵トークンを有し、そのためそれは無効であり、文字「L」は無視されるべきであって、最終的な復号されたメッセージの一部ではないであろう。
・スクリーンショットでは、ユーザーが「Check(チェックする)」ボタンG4 726をクリックすると、検証プロセスが失敗している[G4 731]ことが示される。
図16Bは、GATE_4実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。それは、図16Aに示すプロセスが行われているときに場面の背後で何が起こるか、および充填文字メッセージが受信者側でどのように無効にされるかを示す。プロセスは次のように進む:
・メッセージ文字「L」[G4 751]が、送信者パスコード「123」[G4 752]で暗号化されて、16個のトークンの4×4のテーブル[G4 752]、およびいくつかのトークン[G4 721、G4 723、G4 725およびG4 727]をもつ鍵を添付される。前述の情報はネットワーク[G4 757]に送信され、次いで受信者[G4 759]に送信される。
・受信者側で、メッセージを復号するために同じパスコードが使用される「123」[G4 760]。鍵トークンは、C61、C62、C63およびC64から、各鍵トークンをチェックするために、検証プロセスG4 765、G4 767を経る[G4 763]。最後の2つの鍵トークンは、無効であることが分かる。
・3番目のパスコード「3」が3番目のトークン[G4 790]内に現れていて、それが選択されるべきである。しかし、8番目のトークン[G4 792]が選択されて、3番目の鍵トークンG4 725内に現れている。これは正しくない。
・送信者パスコードは受信者パスコードと等しくて、3つのピンを有するが、添付された鍵は4つのトークンを有する。最後のトークン[G4 727]も無効である。
・図16A[G4 731]に示すように、メッセージは無効である[G4 771]という最終的結論に達する[G4 769]。
図17は、GATE_4実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。それは、暗号化された元のメッセージが、送信者パスコードとは異なる受信者パスコードによってどのように成功裏に復号されない可能性があるかの例を示す。プロセスは次のように進む:
・ユーザーがプレーンテキストメッセージ「secret」をG4 700に入力し、次いで、パスコード「123」[G4 702]を入力して、「Encrypt(暗号化)」ボタン[G4 703]をクリックする。
・メッセージが暗号化され、送信されて、受信され、「sLeQWNcrMfYeMtHQr」[G4 705]としてG4 705に現れる。
・受信者は、パスコード「567」[G4 707]を使用して、送信者から受信した、パスコード「123」[G4 702]で暗号化された、メッセージを復号する。
・復号されたメッセージがG4 705で強調表示される:「ecrQ」。
・結果のメッセージは「ecrQ」として示される[G4 709]。
・受信者はメッセージを復号するために異なるパスコードを使用したので、結果のメッセージは、送信者からの元のメッセージ:「secret」と異なっている。
図18は、GATE_5実施形態を使用するメッセージ暗号化プロセスのサンプルスクリーンショットである。それは、プレーンテキストメッセージが送信者パスコードでどのように暗号化されるか、および暗号化されたメッセージがどのように見え得るかを示す。プロセスは次のように進む:
・メッセージ送信者がプレーンテキストメッセージ「FYEO」をG5 700で入力する。
・送信者は、パスコード「123」をG5 702で入力して、「Encrypt(暗号化)」ボタン[G5 703]をクリックする。
・元のメッセージ「FYEO」が何らかのランダムな充填文字と混合されて、次の結果のメッセージ「FIPRojcYnEbAO」[G5 704]に変わる。
・受信者は、受信者側で同じパスコード「123」[G5 706]を使用してメッセージを復号する。
図19Aは、GATE_5実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。それは、暗号化された元のメッセージが受信者パスコードでどのように成功裏に復号され得るかの例を示す。プロセスは次のように進む:
・受信したメッセージ内の各文字[G5 704]には、テーブル内の各トークンが5つの記号を有する、4×4のトークンテーブルが添付され、メッセージ内の各文字には「鍵」も添付され、鍵はいくつかのトークンをその中に有し、鍵中のトークンの数は2〜6の範囲であり得る。
・受信者は同じパスコード「123」[G5 706]を使用してメッセージを復号し、復号されたメッセージがG5 704に強調表示された文字として示される。結果の復号されたメッセージは「FYEO」[G5 708]である。
・図19Aは、各文字に対してそれがどのように見え得るかの例を示す。スクリーンショットでは、メッセージ内の1番目の文字「F」[G5 710]が、例として表示される。G5 712は、現在表示している文字が「F」であることを示し、この文字に添付された4×4のトークンテーブルがテーブルG5 714に示される。
・「F」に添付された鍵トークンも、G5 720、G5 722およびG5 724として示される。
・メッセージ内の充填文字:I、P、R、o、j、c、n、bおよびAは、トークンテーブルおよび無効な鍵が意図的に添付されており、そのため、それらは受信者側で無効にされる。
・この例では、ユーザーはG5 704内の各文字をクリックして、その内容および鍵トークンを表示することができ、次いで「Check(チェックする)」ボタン[G5 726]をクリックしてその文字が有効であるかどうかを確認する。スクリーンショットでは、文字「F」は有効であり、チェックは成功した[G5 730]ことが示される。
図19Bは、GATE_5実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。それは、図19Aに示すプロセスが行われているときに場面の背後で何が起こるかを示し、メッセージが受信者側でどのように検証されるかを示す。プロセスは次のように進む:
・メッセージ文字「F」[G5 750]が送信者パスコード「123」[G5 752]で暗号化されて、16個のトークンの4×4のテーブル[G5 754]、およびいくつかのトークン[G5 720、G5 722およびG5 724]をもつ鍵が添付される。この情報はネットワーク[G5 756]に送信され、次いで受信者[G5 758]に送信される。
・受信者側で、メッセージを復号するために、同じパスコード「123」[G4 760]が使用される。鍵トークンは、各鍵トークンをチェックするために検証プロセスG5 764、G5 766を経る[G5 762]。K51、K52およびK53から、それらが全て有効であることがわかり、そのため、図19A[G5 730]に示すように、メッセージは有効である[G5 770]という最終的結論に達する[G5 768]。
図20Aは、GATE_5実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。それは、暗号化された充填文字メッセージが受信者パスコードによって復号されて、無効な情報としてどのように認識されるかの例を示す。プロセスは次のように進む:
・図20Aは、元のメッセージの一部ではない各充填文字に関してそれがどのように見え得るかの例を示す。それは、メッセージ[G5 704]内の3番目の文字「P」[G5 711]の内容を示す。G5 713は、文字が「P」であることを示し、この文字に添付された16個のトークンの4×4のテーブルがG5 715に示されている。「P」に添付された3つの鍵トークンが、G5 721、G5 723およびG5 725として示されている。
・送信者パスコード[G5 702]および受信者パスコード[G5 706]が同じで、3つのピン「1」、「2」および「3」を有することが明らかに分かるので、文字「P」は充填文字で、元のメッセージの一部ではないため、送信者は、4×4のトークンテーブルおよび認証されない鍵をそれに意図的に添付する。パスコード内の1番目のピン「1」が4×4のテーブル内の最後のトークン[G5 716]内に現れ、そのトークンが1番目の鍵トークンとして選択されるべきである。しかし、テーブル内の2番目のトークン[G5 718]が選択されて、1番目の鍵トークン位置G5 721に表示される。これは誤っており、このメッセージは無効にされるであろう。
・スクリーンショットでは、ユーザーが「Check(チェックする)」ボタンG5 726をクリックすると、この文字「P」に対して検証プロセスが失敗している[G5 731]ことが示される。
図20Bは、GATE_5実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。それは、図20Aに示すプロセスが行われているときに場面の背後で何が起こるか、および充填文字メッセージが受信者側でどのように無効にされるかを示す。プロセスは次のように進む:
・メッセージ文字「P」[G5 751]が、送信者パスコード「123」[G5 752]で暗号化されて、16個のトークンの4×4のテーブル[G5 755]、およびいくつかのトークン[G5 721、G5 723およびG5 725]をもつ鍵を添付される。この情報はネットワーク[G5 757]に送信され、次いで受信者[G5 759]に送信される。
・受信者側で、メッセージを復号するために同じパスコード「123」[G5 760]が使用される。鍵トークンは、各鍵トークンをチェックするために、検証プロセスG5 765、G5 767を経る[G5 763]。K61、K62およびK63から、1番目のトークンは、無効であることが分かる。
・1番目のパスコード「1」が最後のトークン[G5 790]内に現れていて、それが選択されるべきである。しかし、2番目のトークン[G5 792]が選択されて、1番目の鍵トークン位置[G5 721]内に現れている。これは従って無効である。
・図20A[G5 731]に示すように、メッセージは無効である[G5 771]という最終的結論に達する[G5 769]。
図21は、GATE_5実施形態を使用するメッセージ復号プロセスのサンプルスクリーンショットである。それは、暗号化された元のメッセージが、送信者パスコードとは異なる受信者パスコードによってどのように成功裏に復号されない可能性があるかの例を示す。プロセスは次のように進む:
・ユーザーがプレーンテキストメッセージ「FYEO」をG5 700に入力し、次いで、パスコード「123」[G5 702]を入力して、「Encrypt(暗号化)」ボタン[G5 703]をクリックする。
・メッセージが暗号化され、送信されて、受信され、「FIPRojcYnEbAO」[G5 705]としてG5 705に現れる。
・受信者は、パスコード「680」[G5 707]を使用して、送信者から受信した、パスコード「123」[G5 702]で暗号化される、メッセージを復号する。
・復号されたメッセージがG5 705で強調表示される:「nE」。
・結果のメッセージは「nE」として示される[G5 709]。
・受信者はメッセージを復号するために異なるパスコードを使用したので、結果のメッセージは、送信者からの元のメッセージ:「FYEO」[G5 700]と異なっている。
以下のステップは、好ましくは、パスコード内の各ピンに対して、各有効なメッセージに対する16個のトークンをもつ4×4のテーブルに対して有効な鍵トークンを生成するために使用される:
・16個全てのトークンを調べる:(a)ピンがトークン内で見つかる場合、そのトークンを選ぶ;および(b)ピンがどのトークン内にもない場合、テーブル内の16個のトークンからランダムなトークンを選ぶ。
以下のステップは、好ましくは、各無効なメッセージに対する16個のトークンをもつ4×4のテーブルに対して無効な鍵トークンを生成するために使用される:
<1>ブーリアン型「Done_Fixing」を偽に設定する
<2>16個のトークン全てを調べて、パスコード内の各ピンに対して、以下のステップ<3>および<4>を実行する
<3><A>ピンがトークン内で見つかる場合:
(1)Done_Fixingが偽に等しい場合、誤ったトークンを意図的に選ぶために、これ以外の任意の他のトークンを選んで、Done_Fixingを真に設定する。
(2)Done_Fixingが真に等しい場合、そのトークンを選ぶ。
<B>ピンがどのトークン内でも見つからない場合、16からランダムなトークンを選ぶ。
<4>上で生成された鍵トークンをベクトルに保存する。
<5>乱数Nを−1〜1の範囲で生成する
<A>N=−1の場合、最後の鍵トークンをベクトルから削除する。
<B>N=0の場合、何もしない
<C>N=1およびユーザーピン長<6の場合、テーブル内の16からのランダムなトークンをベクトルに追加する。
<6>ベクトル内のトークンが最終の鍵トークンである。
前述の実施形態および利点は例に過ぎず、本発明を制限するとして解釈されないものとする。本発明の説明は、例示を目的としており、クレームの範囲を制限するものではない。多くの代替、修正、および変形が当業者には明らかであろう。様々な変更が、以下のクレームで定義するように、本発明の精神および範囲から逸脱することなく、行われ得る。
例えば、本発明は、記号の4つの次元および5つの次元がそれぞれ使用される、GATE_4およびGATE_5実施形態に関連して説明してきたが、任意の数の次元(1つだけの次元を含め)が使用され得、依然として本発明の範囲に含まれる。一般に、各トークンが2つ以上の記号を有する限り、任意の数の次元に分類された任意の数の記号が使用され得る。さらに、前述のGATE_4およびGATE_5実施形態、ならびに関連したスクリーンショットは、例示を意図し、本発明の範囲を制限することは意図していない。

Claims (42)

  1. 記号のセットから選択された所定の数の記号(「パスコード記号」)を含む所定の電子的に格納されたパスコード(「パスコード」)を使用して、電子的に格納された情報にユーザーがアクセスするのを許可する(「認証する」)方法であって、前記パスコード記号の各々が所定のピン位置によって特徴付けられ、
    トークンセットを電子装置のユーザーインタフェースを介して前記ユーザーに提示することであって、前記トークンセットが少なくとも2つのトークンを含み、かつ前記トークンセット内の各トークンが、記号の前記セットに属する少なくとも2つの記号を含む、トークンセットを前記ユーザーに提示することと、
    前記ユーザーが、前記ユーザーインタフェースを介して、前記パスコード内の各ピン位置に対して、前記トークンセットから1つのトークンを選択することを要求することと、
    前記ユーザーが選択した前記トークンに基づいて前記ユーザーを認証することであって、前記ユーザーは、
    前記ユーザーによって選択されたトークンの数が前記パスコード内の記号の数に等しく、
    選択された前記トークンの少なくとも1つが前記パスコード記号のそれぞれ1つを含み、かつ
    前記パスコード記号のそれぞれ1つを含む前記選択されたトークンの各々の前記ピン位置が、前記パスコード内のそのそれぞれのパスコード記号の前記ピン位置に対応する
    場合に、認証される、前記ユーザーを認証することと
    を含む、方法。
  2. 前記ユーザーによって選択されたトークンの前記数が前記パスコード内の記号の前記数に等しく、
    選択された各トークンが、前記パスコード記号のそれぞれ1つを含み、かつ
    前記パスコード内の前記記号のどれが前記選択されたトークンの各々内に含まれるかに基づいて、前記選択されたトークンの各々の前記ピン位置が前記パスコード記号の各々の前記ピン位置に対応する
    場合に、前記ユーザーが認証される、請求項1に記載の方法。
  3. 記号の前記セット内の記号の前記数が、前記ユーザーに提示されるトークンの数に等しい、請求項1に記載の方法。
  4. 記号の前記セット内の記号の前記数が、前記ユーザーに提示されるトークンの前記数より大きい、請求項1に記載の方法。
  5. 記号の前記セットが、少なくとも2つのサブセット(「次元」)に分割され、各トークンが、少なくとも2つの次元の各々からの1つの記号を含む、請求項1に記載の方法。
  6. 各トークンが、記号の前記セットに属する4つの記号を含む、請求項1に記載の方法。
  7. 記号の各セットが、4つのサブセット(「次元」)に分割され、各トークンが、記号の各次元からの1つの記号を含む、請求項6に記載の方法。
  8. 各トークンが、記号の前記セットに属する5つの記号を含む、請求項1に記載の方法。
  9. 記号の各セットが、5つのサブセット(「次元」)に分割され、各トークンが、記号の各次元からの1つの記号を含む、請求項8に記載の方法。
  10. 記号の前記セットがUnicodeシステムに基づく、請求項1に記載の方法。
  11. 記号のセットから選択された所定の数の記号(「パスコード記号」)を含む所定の電子的に格納されたパスコード(「パスコード」)を使用して、電子的に格納された情報にユーザーがアクセスするのを許可する(「認証する」)ためのシステムであって、前記パスコード記号の各々が、所定のピン位置によって特徴付けられて、
    プロセッサと、
    前記プロセッサによってアクセス可能なメモリと、
    前記プロセッサによって
    トークンセットを前記ユーザーに提示することであって、前記トークンセットが、少なくとも2つのトークンを含み、前記トークンセット内の各トークンは、記号の前記セットに属する少なくとも2つの記号を含む、トークンセットを前記ユーザーに提示することと、
    前記パスコード内の各ピン位置に対してユーザーインタフェースを介して前記トークンセットから1つのトークンを選択することをユーザーに要求することと、
    前記ユーザーが選択した前記トークンに基づいて前記ユーザーを認証することであって、前記プロセッサは、
    前記ユーザーによって選択されたトークンの前記数が前記パスコード内の記号の前記数に等しく、
    選択された前記トークンの少なくとも1つが前記パスコード記号のそれぞれ1つを含み、かつ
    前記パスコード記号のそれぞれ1つを含む前記選択されたトークンの各々の前記ピン位置が、前記パスコード内のそのそれぞれのパスコード記号の前記ピン位置に対応する
    場合に、前記ユーザーが認証されると判断する、前記ユーザーを認証することと
    を行うために実行可能な、メモリ内に格納されたコンピュータ可読命令のセットを含む認証/暗号化モジュールと
    を備える、システム。
  12. 前記ユーザーによって選択されたトークンの前記数が前記パスコード内の記号の前記数に等しく、
    選択された各トークンが、前記パスコード記号のそれぞれ1つを含み、かつ
    前記パスコード内の前記記号のどれが前記選択されたトークンの各々内に含まれるかに基づいて、前記選択されたトークンの各々の前記ピン位置が前記パスコード記号の各々の前記ピン位置に対応する
    場合に、前記ユーザーが認証される、と前記プロセッサが判断する、
    請求項11に記載のシステム。
  13. 記号の前記セット内の記号の前記数が、前記ユーザーに提示されるトークンの前記数に等しい、請求項11に記載のシステム。
  14. 記号の前記セット内の記号の前記数が、前記ユーザーに提示されるトークンの前記数より大きい、請求項11に記載のシステム。
  15. 記号の前記セットが、少なくとも2つのサブセット(「次元」)に分割され、各トークンが、少なくとも2つの次元の各々からの1つの記号を含む、請求項11に記載のシステム。
  16. 各トークンが、記号の前記セットに属する4つの記号を含む、請求項11に記載のシステム。
  17. 記号の各セットが、4つのサブセット(「次元」)に分割され、各トークンが、記号の各次元からの1つの記号を含む、請求項15に記載のシステム。
  18. 各トークンが、記号の前記セットに属する5つの記号を含む、請求項11に記載のシステム。
  19. 記号の各セットが、5つのサブセット(「次元」)に分割され、各トークンが、記号の各次元からの1つの記号を含む、請求項18に記載のシステム。
  20. 記号の前記セットがUnicodeシステムに基づく、請求項11に記載のシステム。
  21. 記号のセットから選択された所定の数の記号(「パスコード記号」)を含む所定の電子的に格納されたパスコード(「パスコード」)を利用する情報のための暗号化/復号方法であって、前記パスコード記号の各々が所定のピン位置によって特徴付けられ、
    暗号化すべき元の情報(「元の情報」)を受信することであって、前記元の情報は、所定数の元の情報要素をそれぞれの情報要素位置内に含み、元の情報要素は情報要素のセットから選択される、暗号化すべき元の情報(「元の情報」)を受信することと、
    暗号化された情報を生成するために、情報要素の前記セットからランダムに選択された情報要素「(ランダムな情報要素)」を前記元の情報にランダムな情報要素位置で挿入することと、
    各元の情報要素およびランダムな情報要素に対してトークンセットを生成することであって、各トークンセットが少なくとも2つのトークンを含み、各トークンセット内の各トークンが、記号の前記セットに属する少なくとも2つの記号を含む、各元の情報要素およびランダムな情報要素に対してトークンセットを生成することと、
    前記暗号化された情報内の各元の情報要素およびランダムな情報要素に対してそれぞれの鍵を生成することであって、各鍵は少なくとも2つの鍵トークンを含み、各鍵トークンは、記号の前記セットからの少なくとも2つの記号を含み、かつ、各鍵トークン内の記号の前記数が各トークンセットの各トークン内の記号の前記数に等しい、前記暗号化された情報内の各元の情報要素およびランダムな情報要素に対してそれぞれの鍵を生成することと
    を含み、
    前記鍵トークンおよびトークンセットは、それらが前記暗号化された情報を復号するために前記パスコードと一緒に合わせて使用できるように、生成される、
    情報のための暗号化/復号方法。
  22. 復号プロセス中に、前記暗号化された情報内の情報要素は、
    前記情報要素の対応する鍵内の鍵トークンの数が、前記パスコード内の記号の前記数に等しく、
    前記情報要素の対応する鍵内の前記鍵トークンの少なくとも1つが、前記パスコード記号のそれぞれ1つを含み、かつ
    前記パスコード記号のそれぞれ1つを含む前記情報要素の対応する鍵内の前記鍵トークンの各々のピン位置が、前記パスコード内のそのそれぞれのパスコード記号の前記ピン位置に対応する、場合に、
    有効な情報要素であると判断される、請求項21に記載の方法。
  23. 復号プロセス中に、前記暗号化された情報内の情報要素は、
    前記情報要素の対応する鍵内の鍵トークンの数が、前記パスコード内の記号の前記数に等しく、
    前記情報要素の対応する鍵内の各鍵トークンが、前記パスコード記号のそれぞれ1つを含み、かつ
    前記パスコード記号のそれぞれ1つを含む前記情報要素の対応する鍵内の前記鍵トークンの各々のピン位置が、前記パスコード内のそのそれぞれのパスコード記号の前記ピン位置に対応する、場合に、
    有効な情報要素であると判断される、請求項21に記載の方法。
  24. 記号の前記セットが、少なくとも2つのサブセット(「次元」)に分割され、各トークンおよび各鍵トークンが、前記少なくとも2つの次元の各々からの1つの記号を含む、請求項21に記載の方法。
  25. 記号の前記セット内の記号の前記数が、前記トークンセット内のトークンの前記数に等しい、請求項21に記載の方法。
  26. 記号の前記セット内の記号の前記数が、前記トークンセット内のトークンの前記数より大きい、請求項21に記載の方法。
  27. 各鍵トークンが、記号の前記セットに属する4つの記号を含む、請求項21に記載の方法。
  28. 記号の各セットが、4つのサブセット(「次元」)に分割され、各トークンおよび各鍵トークンが、記号の各次元からの1つの記号を含む、請求項27に記載の方法。
  29. 各鍵トークンが、記号の前記セットに属する5つの記号を含む、請求項21に記載の方法。
  30. 記号の各セットが、5つのサブセット(「次元」)に分割され、各トークンおよび各鍵トークンが、記号の各次元からの1つの記号を含む、請求項29に記載の方法。
  31. 情報要素の前記セットがUnicodeシステムに基づく、請求項21に記載の方法。
  32. 記号のセットから選択された所定の数の記号(「パスコード記号」)を含む所定の電子的に格納されたパスコード(「パスコード」)を利用する情報の暗号化/復号のためのシステムであって、前記パスコード記号の各々が、所定のピン位置によって特徴付けられて、
    プロセッサと、
    前記プロセッサによってアクセス可能なメモリと、
    前記プロセッサによって
    暗号化すべき元の情報(「元の情報」)を受信することであって、前記元の情報は、所定数の元の情報要素をそれぞれの情報要素位置内に含み、前記元の情報要素は情報要素のセットから選択される、暗号化すべき元の情報(「元の情報」)を受信することと、
    暗号化された情報を生成するために、情報要素の前記セットからランダムに選択された情報要素「(ランダムな情報要素)」を前記元の情報にランダムな情報要素位置で挿入することと、
    各元の情報要素およびランダムな情報要素に対してトークンセットを生成することであって、各トークンセットが少なくとも2つのトークンを含み、各トークンセット内の各トークンが、記号の前記セットに属する少なくとも2つの記号を含む、各元の情報およびランダムな情報要素に対してトークンセットを生成することと、
    前記暗号化された情報内の各元の情報要素およびランダムな情報要素に対してそれぞれの鍵を生成することであって、各鍵は少なくとも2つの鍵トークンを含み、各鍵トークンは、記号の前記セットからの少なくとも2つの記号を含み、かつ、各鍵トークン内の記号の前記数が各トークンセットの各トークン内の記号の前記数に等しく、
    前記鍵トークンおよびトークンセットは、それらが前記暗号化された情報を復号するために前記パスコードと一緒に合わせて使用できるように、生成されることと
    を行うために実行可能な、メモリ内に格納されたコンピュータ可読命令のセットを含む認証/暗号化モジュールと
    を備える、システム。
  33. 復号プロセス中に、前記プロセッサが、前記暗号化された情報内の情報要素は、
    前記情報要素の対応する鍵内の鍵トークンの前記数が、前記パスコード内の記号の前記数に等しく、
    前記情報要素の対応する鍵内の前記鍵トークンの少なくとも1つが、前記パスコード記号のそれぞれ1つを含み、かつ
    前記パスコード記号のそれぞれ1つを含む前記情報要素の対応する鍵内の前記鍵トークンの各々のピン位置が、前記パスコード内のそのそれぞれのパスコード記号の前記ピン位置に対応する、場合に、
    有効な情報要素であると判断する、請求項32に記載のシステム。
  34. 復号プロセス中に、前記プロセッサが、前記暗号化された情報内の情報要素は、
    前記情報要素の対応する鍵内の鍵トークンの前記数が、前記パスコード内の記号の前記数に等しく、
    前記情報要素の対応する鍵内の各鍵トークンが、前記パスコード記号のそれぞれ1つを含み、かつ
    前記パスコード記号のそれぞれ1つを含む前記情報要素の対応する鍵内の前記鍵トークンの各々のピン位置が、前記パスコード内のそのそれぞれのパスコード記号の前記ピン位置に対応する、場合に、
    有効な情報要素であると判断する、請求項32に記載のシステム。
  35. 記号の前記セットが、少なくとも2つのサブセット(「次元」)に分割され、各トークンおよび各鍵トークンが、前記少なくとも2つの次元の各々からの1つの記号を含む、請求項32に記載のシステム。
  36. 記号の前記セット内の記号の前記数が、前記トークンセット内のトークンの前記数に等しい、請求項32に記載のシステム。
  37. 記号の前記セット内の記号の前記数が、前記トークンセット内のトークンの前記数より大きい、請求項32に記載のシステム。
  38. 各鍵トークンが、記号の前記セットに属する4つの記号を含む、請求項32に記載のシステム。
  39. 記号の各セットが、4つのサブセット(「次元」)に分割され、各トークンおよび各鍵トークンが、記号の各次元からの1つの記号を含む、請求項38に記載のシステム。
  40. 各鍵トークンが、記号の前記セットに属する5つの記号を含む、請求項32に記載のシステム。
  41. 記号の各セットが、5つのサブセット(「次元」)に分割され、各トークンおよび各鍵トークンが、記号の各次元からの1つの記号を含む、請求項40に記載のシステム。
  42. 情報要素の前記セットがUnicodeシステムに基づく、請求項32に記載のシステム。
JP2018521039A 2015-10-28 2016-09-28 傍受防止認証および暗号化システムならびに方法 Pending JP2018536931A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201514925769A 2015-10-28 2015-10-28
US14/925,769 2015-10-28
US14/931,613 2015-11-03
US14/931,613 US9460280B1 (en) 2015-10-28 2015-11-03 Interception-proof authentication and encryption system and method
PCT/US2016/054186 WO2017105579A2 (en) 2015-10-28 2016-09-28 Interception-proof authentication and encryption system and method

Publications (2)

Publication Number Publication Date
JP2018536931A true JP2018536931A (ja) 2018-12-13
JP2018536931A5 JP2018536931A5 (ja) 2019-11-14

Family

ID=56995117

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018521039A Pending JP2018536931A (ja) 2015-10-28 2016-09-28 傍受防止認証および暗号化システムならびに方法

Country Status (26)

Country Link
US (2) US9460280B1 (ja)
EP (2) EP3691177B1 (ja)
JP (1) JP2018536931A (ja)
KR (1) KR102577973B1 (ja)
CN (2) CN109075972B (ja)
AU (2) AU2016372648B2 (ja)
BR (1) BR112018008406A2 (ja)
CA (1) CA3002678C (ja)
CL (1) CL2018001102A1 (ja)
CO (1) CO2018004380A2 (ja)
DK (1) DK3369208T3 (ja)
EC (1) ECSP18032669A (ja)
ES (1) ES2814275T3 (ja)
IL (1) IL258926B (ja)
MA (1) MA42340A1 (ja)
MX (1) MX2018005357A (ja)
MY (1) MY190215A (ja)
PE (2) PE20181226A1 (ja)
PH (1) PH12018500888A1 (ja)
PL (1) PL3369208T3 (ja)
RU (1) RU2730386C2 (ja)
SG (2) SG11201803264UA (ja)
TW (1) TW201723908A (ja)
UA (1) UA122244C2 (ja)
WO (1) WO2017105579A2 (ja)
ZA (1) ZA201802574B (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9813415B2 (en) * 2007-04-02 2017-11-07 Abdul Rahman Syed Ibrahim Abdul Hameed Khan System and method of generating and using bilaterally generated variable instant passwords
CN107947924A (zh) * 2017-12-04 2018-04-20 深圳绿米联创科技有限公司 智能家居系统与信息加密方法及装置、终端
CN110324359A (zh) * 2019-08-02 2019-10-11 北京朋创天地科技有限公司 互联网个人信息安全发布、访问方法及系统
BG113519A (bg) * 2022-04-07 2023-10-16 ИКТ платформи ООД Метод за удостоверяване

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1188324A (ja) * 1997-09-05 1999-03-30 Fujitsu Ltd 画像指示による電子情報管理装置、秘密鍵管理装置及び方法、並びに、秘密鍵管理プログラムを記録した記録媒体
JP2007086873A (ja) * 2005-09-20 2007-04-05 Fuji Xerox Co Ltd 認証装置及び認証方法
JP2009169857A (ja) * 2008-01-18 2009-07-30 Oki Electric Ind Co Ltd 認証システム
JP2011154617A (ja) * 2010-01-28 2011-08-11 Kyocera Mita Corp パスワード照合装置、画像処理装置
US20120110663A1 (en) * 2010-11-03 2012-05-03 Electronics And Telecommunications Research Institute Apparatus and method for inputting user password
US20130021249A1 (en) * 2004-12-16 2013-01-24 Pinoptic Limited User validation using images
US20130291096A1 (en) * 2012-04-25 2013-10-31 Brian G. FINNAN Fraud resistant passcode entry system
US20150121493A1 (en) * 2013-10-31 2015-04-30 International Business Machines Corporation Method and Computer System for Dynamically Providing Multi-Dimensional Based Password/Challenge Authentication

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8031865B2 (en) * 2004-01-08 2011-10-04 Encryption Solutions, Inc. Multiple level security system and method for encrypting data within documents
US20080025497A1 (en) * 2005-06-28 2008-01-31 Ogram Mark E Multiple key encryption with "Red Herrings"
US7801307B2 (en) * 2005-07-28 2010-09-21 Alcatel-Lucent Usa Inc. Method of symmetric key data encryption
US20070028088A1 (en) * 2005-08-01 2007-02-01 Coskun Bayrak Polymorphic encryption method and system
CN101635622B (zh) * 2008-07-24 2013-06-12 阿里巴巴集团控股有限公司 一种网页加密和解密的方法、系统及设备
US20110167121A1 (en) 2008-09-15 2011-07-07 Ben Matzkel System, apparatus and method for encryption and decryption of data transmitted over a network
TW201042973A (en) * 2008-11-28 2010-12-01 Ibm Token-based client to server authentication of a secondary communication channel by way of primary authenticated communication channels
US8510552B2 (en) * 2010-04-07 2013-08-13 Apple Inc. System and method for file-level data protection
US8756672B1 (en) 2010-10-25 2014-06-17 Wms Gaming, Inc. Authentication using multi-layered graphical passwords
US20120124656A1 (en) * 2010-11-16 2012-05-17 Evolucard S/A Method and system for mobile device based authentication
CN102202067B (zh) * 2011-07-15 2016-06-08 席勇良 动态随机密码登录方法
CN103379091A (zh) * 2012-04-16 2013-10-30 上海博路信息技术有限公司 一种随机验证码
US8881251B1 (en) 2012-05-30 2014-11-04 RememberIN, Inc. Electronic authentication using pictures and images
RU2541868C2 (ru) * 2013-05-14 2015-02-20 Федеральное государственное образовательное бюджетное учреждение высшего профессионального образования "Санкт-Петербургский государственный университет телекоммуникаций им. проф. М.А. Бонч-Бруевича" Способ аутентификации пользователей с защитой от подсматривания
CN103812854B (zh) * 2013-08-19 2015-03-18 深圳光启创新技术有限公司 身份认证系统、装置、方法以及身份认证请求装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1188324A (ja) * 1997-09-05 1999-03-30 Fujitsu Ltd 画像指示による電子情報管理装置、秘密鍵管理装置及び方法、並びに、秘密鍵管理プログラムを記録した記録媒体
US20130021249A1 (en) * 2004-12-16 2013-01-24 Pinoptic Limited User validation using images
JP2007086873A (ja) * 2005-09-20 2007-04-05 Fuji Xerox Co Ltd 認証装置及び認証方法
JP2009169857A (ja) * 2008-01-18 2009-07-30 Oki Electric Ind Co Ltd 認証システム
JP2011154617A (ja) * 2010-01-28 2011-08-11 Kyocera Mita Corp パスワード照合装置、画像処理装置
US20120110663A1 (en) * 2010-11-03 2012-05-03 Electronics And Telecommunications Research Institute Apparatus and method for inputting user password
KR20120047075A (ko) * 2010-11-03 2012-05-11 한국전자통신연구원 사용자 비밀번호 입력 장치 및 방법
US20130291096A1 (en) * 2012-04-25 2013-10-31 Brian G. FINNAN Fraud resistant passcode entry system
US20150121493A1 (en) * 2013-10-31 2015-04-30 International Business Machines Corporation Method and Computer System for Dynamically Providing Multi-Dimensional Based Password/Challenge Authentication

Also Published As

Publication number Publication date
PE20221776A1 (es) 2022-11-16
UA122244C2 (uk) 2020-10-12
AU2020220152A1 (en) 2020-09-10
RU2730386C2 (ru) 2020-08-21
WO2017105579A3 (en) 2017-09-21
PE20181226A1 (es) 2018-08-01
SG10202003699SA (en) 2020-05-28
IL258926B (en) 2020-04-30
RU2018115767A (ru) 2019-11-28
PL3369208T3 (pl) 2021-04-06
SG11201803264UA (en) 2018-05-30
WO2017105579A2 (en) 2017-06-22
MA42340A1 (fr) 2018-10-31
AU2016372648A1 (en) 2018-05-10
BR112018008406A2 (pt) 2018-10-30
CN115396139A (zh) 2022-11-25
AU2016372648B2 (en) 2020-06-11
ZA201802574B (en) 2019-01-30
EP3369208B1 (en) 2020-05-06
EP3691177B1 (en) 2022-03-02
IL258926A (en) 2018-06-28
MY190215A (en) 2022-04-05
CN109075972B (zh) 2022-07-29
ES2814275T3 (es) 2021-03-26
EP3369208A4 (en) 2019-05-01
US10289830B2 (en) 2019-05-14
US9460280B1 (en) 2016-10-04
MX2018005357A (es) 2019-02-20
US20170124317A1 (en) 2017-05-04
EP3691177A1 (en) 2020-08-05
RU2018115767A3 (ja) 2020-05-26
CA3002678C (en) 2021-08-31
KR20180088377A (ko) 2018-08-03
CA3002678A1 (en) 2017-06-22
CO2018004380A2 (es) 2018-07-10
PH12018500888A1 (en) 2018-11-05
ECSP18032669A (es) 2018-10-31
KR102577973B1 (ko) 2023-09-13
DK3369208T3 (da) 2020-08-17
EP3369208A2 (en) 2018-09-05
CN109075972A (zh) 2018-12-21
CL2018001102A1 (es) 2018-09-14
TW201723908A (zh) 2017-07-01

Similar Documents

Publication Publication Date Title
US7770002B2 (en) Multi-factor authentication
US8984649B2 (en) Method and system for authenticating user access to a restricted resource across a computer network
EP2248298B1 (en) Secure and usable protection of a roamable credentials store
US9390249B2 (en) System and method for improving security of user account access
CN112425114B (zh) 受公钥-私钥对保护的密码管理器
GB2562563A (en) Session-limited, manually-entered user authentication information
AU2020220152A1 (en) Interception-proof authentication and encryption system and method
LIM Multi-grid background Pass-Go
JP2008512765A (ja) ランダムな部分デジタル経路認識に基づく認証システム及び方法
Singh et al. Survey on security and usability of knowledge based authentication mechanism
Anitha et al. User Privileged CAPTCHA as Graphical Password for Multistage Authentication
Macanda Honours Project Report

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190927

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190927

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200925

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201027

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210601