(57)【特許請求の範囲】
【請求項１】
利用者が入力した文字列を第三者に不正に取得されることを防止するための文字列入力方法であって、
前記利用者から前記文字列の入力の開始を受け付けるステップと、
前記利用者が使用する端末装置に表示する文字列のパターンと前記文字列の送信先である送信先装置に表示する文字列のパターンを同期させる所定のルールの中から今回使用する文字列表示ルールを決定するステップと、
前記決定された文字列表示ルールに従って前記端末装置の画面に文字種ごとに１又は複数の文字列を表示するステップと、
前記表示された複数の文字列のそれぞれから１つの文字が前記利用者によって指定されたことを検出するステップと、
前記指定された文字を当該文字が含まれる文字列から消去するとともに当該文字列の表示を前記端末装置の画面から消去するステップと、
前記指定された文字が消去された文字列を前記送信先装置に送信するステップと、
をコンピュータが実行することを特徴とする文字列入力方法。
【請求項２】
前記文字列は、暗証番号、パスワード、口座番号、クレジットカード番号、電話番号、誕生日、保険証番号、免許証番号、住基ネット番号、マイナンバー、又はその他秘匿性を有する文字列であることを特徴とする請求項１に記載の文字列入力方法。
【請求項３】
前記端末装置は、論理画面に前記文字種ごとの１又は複数の文字列を表示し、前記端末装置の実画面が前記論理画面より小さい場合は、前記実画面をスクロールさせることで前記論理画面の文字列を表示可能とすることを特徴とする請求項１又は２に記載の文字列入力方法。
【請求項４】
前記端末装置は、画面上で消去された文字列を、別の文字列が前記画面上で消去されたことに応じて、又は前記利用者が前記画面上で前記文字列を指定したことに応じて、前記消去された文字列を再表示させることを特徴とする請求項１から３までのいずれか１項に記載の文字列入力方法。
【請求項５】
前記文字列表示ルールに従った文字列パターンは、前記端末装置からの文字列を入力の際の日時情報に基づいて、前記文字種ごとの文字列中の文字数と文字の並びを変化させることを特徴とする請求項１から４までのいずれか１項に記載の文字列入力方法。
【請求項６】
前記文字列表示ルールに従った文字列パターンは、前記端末装置及び前記送信先装置が共に同じ時期に取得可能な文書の記載に基づいて、前記文字種ごとの文字列中の文字数と文字の並びを変化させることを特徴とする請求項１から５までのいずれか１項に記載の文字列入力方法。
【請求項７】
前記文字列の範囲を指定することにより前記文字列の中で隣接する複数の文字を入力することを可能とすることを特徴とする請求項１から６までのいずれか１項に記載の文字列入力方法。
【請求項８】
前記文字列入力方法は、入力する文字列の一部に適用することを特徴とする請求項１から７までのいずれか１項に記載の文字列入力方法。
【請求項９】
利用者が入力した文字列を第三者に不正に取得されることを防止するためのプログラムであって、請求項１から８までのいずれか1項に記載の方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗証番号やパスワードなどの文字列の入力方法及びそのプログラムに関する。
【背景技術】
【０００２】
近年、ウイルスなどによって暗証番号やパスワードなどを盗み取られる被害が増大している。ウイルスには、例えば、キーボードからの入力情報を盗むキーロガーと呼ばれるスパイウェアが古くから知られている。また、昨今では、金融機関などからの正規のメールやＷｅｂサイトを装い、暗証番号やパスワード、クレジットカード番号などを詐取するフィッシング詐欺も増加している。
【０００３】
発明者らは、暗証番号やパスワードなどの詐取を防止する方法の一つとして、文字をキーボードからキー入力することなく、入力画面上の文字列から文字を「消去」することで暗証番号やパスワードを入力する新たな方法を提案している（特許文献１参照）。この方法によれば、他人からの入力画面の覗き込み防止や上記のキーロガーなどに対する有力な対策を提供することができる。
【０００４】
一方、物理的なキーボードを使用せず、ソフトウェア・キーボードを画面上に表示し、マウスなどでソフトウェア・キーボードの入力するキーの位置を指定することで暗証番号やパスワードを入力する方法もオンラインバンキングのサイトなどで導入が進んでいる。この方法によれば、物理キーボードを使用しないので、上記のようなキーロガー対策に有効である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第５６８９３６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ソフトウェア・キーボードへの入力情報を盗む新たなスパイウェアも存在する。このタイプのスパイウェアは、ユーザのパソコンなどに入り込むと、ソフトウェア・キーボードのウィンドウが表示されるのを待ち、そのウィンドウがアクティブになると、マウスがクリックされるたびにパソコン画面をキャプチャする。このキャプチャされた画像（スクリーン・ショット）を見ればユーザがソフトウェア・キーボードのどのキーをクリックしたのかが分かるのでパスワードなどを盗み取ることができる。
【０００７】
特許文献１の入力方法は、マウスやソフトウェア・キーボードを用いるものではないが、入力中の画面を上記のような画面キャプチャ型のスパイウェアで継続的にキャプチャされると、どの文字を消去したかが分かってしまうので、パスワードが盗まれる可能性が依然として存在することになる。画面キャプチャ型のスパイウェアは、パソコンに限らず、急速に普及したスマートフォンやタブレット端末のようなタッチパネル型の端末も攻撃対象に広がっていくことが懸念される。したがって、特許文献１の入力方法は、タッチパネル型のディスプレイにも対応し、上記のようなスパイウェアに対しても防御する必要がある。
【０００８】
また、特許文献１の入力方法においては、消去された文字、すなわち、パスワードなどの文字列は、一時的にしろ端末内に記憶された後、認証装置（認証サーバ）に送信されるため、端末内のメモリ内容がスパイウェアによって解析された場合や、ＳＳＬ(Secure  Sockets  Layer)などの暗号が解読された場合には、パスワードの漏洩を完全には防止することはできなかった。
【０００９】
したがって、本発明では、特許文献１の発明を改良し、タッチパネル型の入力装置にも対応し、画面キャプチャ型のスパイウェアにも防御可能で、かつ、内部メモリにパスワードなど秘匿性のある文字列を記憶することなく、ネットワーク上にもその文字列を送出することのない文字列入力方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するため、本発明の文字列入力方法は、以下のような解決手段を提供する。
【００１１】
本発明に係る１つの態様は、
（１）利用者が入力した文字列を第三者に不正に取得されることを防止するための文字列入力方法であって、前記利用者から前記文字列の入力の開始を受け付けるステップと、前記利用者が使用する端末装置と前記文字列の送信先である送信先装置との間で同期する文字列表示ルールを決定するステップと、前記決定された文字列表示ルールに従って前記端末装置の画面に文字種ごとに１又は複数の文字列を表示するステップと、前記表示された複数の文字列のそれぞれから１つの文字が前記利用者によって指定されたことを検出するステップと、前記指定された文字を当該文字が含まれる文字列から消去するとともに当該文字列の表示を前記端末装置の画面から消去するステップと、前記指定された文字が消去された文字列を前記送信先装置に送信するステップと、を実行することを特徴とする。
【００１２】
（２）また、前記文字列は、暗証番号、パスワード、口座番号、クレジットカード番号、電話番号、誕生日、保険証番号、免許証番号、住基ネット番号、マイナンバー、又はその他秘匿性を有する文字列であってもよい。
【００１３】
（３）また、前記端末装置は、論理画面に前記文字種ごとの１又は複数の文字列を表示し、前記端末装置の実画面が前記論理画面より小さい場合は、前記実画面をスクロールさせることで前記論理画面の文字列を表示可能としてもよい。
【００１４】
（４）また、前記端末装置は、画面上で消去された文字列を、別の文字列が前記画面上で消去されたことに応じて、又は前記利用者が前記画面上で前記文字列を指定したことに応じて、前記消去された文字列を再表示させてもよい。
【００１５】
（５）また、前記文字列表示ルールに従った文字列パターンは、前記端末装置からの文字列を入力の際の日時情報に基づいて、前記文字種ごとの文字列中の文字数と文字の並びを変化させてもよい。
【００１６】
（６）また、前記文字列表示ルールに従った文字列パターンは、前記端末装置及び前記送信先装置が共に同じ時期に取得可能な文書の記載に基づいて、前記文字種ごとの文字列中の文字数と文字の並びを変化させてもよい。
【００１７】
（７）また、前記文字列の範囲を指定することにより前記文字列の中で隣接する複数の文字を入力することを可能とするようにしてもよい
【００１８】
（８）また、前記文字列入力方法は、入力する文字列の一部に適用してもよい。
【００１９】
（９）また、本発明に係る別の態様は、利用者が入力した文字列を第三者に不正に取得されることを防止するためのプログラムであって、上記（１）から（８）までのいずれか１つに記載の方法をコンピュータに実行させることを特徴とする。
【発明の効果】
【００２０】
本発明によれば、タッチパネル型の入力装置にも対応し、画面キャプチャ型のスパイウェアにも防御可能で、かつ、内部メモリにも秘匿性のある文字列を記憶することなく、ネットワーク上にその文字列が送出されることのない新たな文字列入力方法を提供することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施形態に係るコンピュータ・システムの概略を示すブロック図である。
【図２】本発明の実施形態に係る暗証番号入力操作の一例を示す図である。
【図３】複数の文字種を含むパスワードの一般的な入力方法を説明するための図である。
【図４】本発明の実施形態に係るパスワード入力画面を説明するための図である。
【図５Ａ】本発明の実施形態に係るパスワード入力操作の一例を示す図である。
【図５Ｂ】本発明の実施形態に係るパスワード入力操作の一例を示す図である。
【図５Ｃ】本発明の実施形態に係るパスワード入力操作の一例を示す図である。
【図６】本発明の実施形態に係る文字列入力方法の端末装置の処理フローを示す図である。
【図７】本発明の実施形態に係る文字列パターンのバリエーションの例を示す図である。
【図８】本発明の実施形態に係る文字列パターンのバリエーションの変形例を示す図である。
【発明を実施するための形態】
【００２２】
以下、添付図面を参照して、本発明を実施するための形態（以下、実施形態）について詳細に説明する。なお、実施形態の説明の全体を通して同じ要素には同じ番号を付している。
【００２３】
（機能構成）
図１は、本発明の実施形態に係るコンピュータ・システムの概略を示すブロック図である。本コンピュータ・システムは、ネットワーク３００に接続された認証サーバ１００を備えている。認証サーバ１００は、利用者が入力したパスワードなどの文字列の送信先である送信先装置であり、例えば金融機関のオンラインバンキングや会員制のＷｅｂサイトの認証サーバなどである。ネットワーク３００は、任意のコンピュータ・ネットワークであってもよいが、以降の説明では、典型的な例として、インターネットであるとして説明する。
【００２４】
認証サーバ１００は、ハードウェア的には、ＣＰＵ（Central  Processing  Unit)、ＲＯＭ(Read  Only  Memory）、ＲＡＭ(Random  Access  Memory)、ＨＤＤ(Hard  Disk  Drive)などで構成される一般的なコンピュータである。認証サーバ１００は、インターネット上のＷｅｂサイトを構成するＷｅｂサーバ１１０へのアクセスを許可する認証機能を備えるものであり、Ｗｅｂサーバ１１０と一つのサーバとして構成してもよい。認証サーバ１００は、ネットワーク３００を介して通信制御を行う通信部１０１と、サービスを提供するＷｅｂサイトの利用者の登録情報などを格納した利用者情報記憶部１０２とを備え、利用者が望むサービスにアクセスするための認証処理を行う。
【００２５】
ネットワーク３００には、利用者が所持する据置型端末装置２００又は携帯型端末装置２１０が接続される。据置型端末装置２００は、デスクトップＰＣなどの非携帯型の端末であり、機能的には、通信制御を行う通信部２０１、ＲＡＭ、ＨＤＤなどで構成される記憶部２０２、キーボードやマウスなどの操作入力部２０３、液晶ディスプレイなどの表示部２０４を備えている。表示部２０４は、タッチパネル型のディスプレイがサポートされているものとする。
【００２６】
また、ネットワーク３００には、携帯型端末装置２１０が無線通信により接続される。携帯型端末装置２１０は、スマートフォンやタブレット端末（スレート端末）、小型のノートＰＣなどであり、無線通信の制御を行う無線通信部２１１、プログラム及び設定データを格納するＳＳＤ（Solid  State  Drive)並びにＲＡＭなどで構成される記憶部２１２、電源ボタンや音量ボタンなどの物理スイッチ２１３、タッチパネル型の表示部２１４を備えているものとする。携帯型端末装置２１０は、最寄りの基地局４００と無線通信を行い、ネットワーク３００に接続された認証サーバ１００と交信する。携帯型端末装置２１０では、小型化が必須であるため、表示部２１４（タッチパネル）の画面サイズは４〜１０インチ程度であり、据置型端末装置２００の画面サイズと比べ、かなり小さいという制約がある。なお、以下では、据置型端末装置２００を据置型端末と呼び、携帯型端末装置２１０を携帯端末と呼ぶことにする。また、両者を合わせて単に端末装置と呼ぶことがある。
【００２７】
Ｗｅｂサイトは、予め利用契約を締結した利用者（会員）に対してサービスを提供するものとし、個々の会員には、契約者番号、ユーザＩＤなどのログインＩＤと、暗証番号やパスワードが認証サーバ１００に登録される。ログインＩＤとして会員のメールアドレスも使用可能としているＷｅｂサイトもある。なお、暗証番号は、数字のみで構成されたパスワードであるので、以下では特に断らない限り、単にパスワードと記載した場合は、暗証番号も含むものとする。
【００２８】
ログインＩＤ及びパスワードは、認証サーバ１００の利用者情報記憶部１０２にデータベースとして記憶される。Ｗｅｂサイトで提供されるサービスを利用しようとする会員は、ネットワーク３００に接続された自己の所持する端末装置を用いて、ログイン要求を行う。認証サーバ１００は、このログイン要求に応じて、専用のログイン画面を端末装置に表示させ、ログインＩＤ及びパスワードの入力を求める。ログインＩＤとパスワードが登録情報と一致すれば正規の利用者と認証する。また、端末装置には認証サーバ１００との交信を制御するソフトウェア（専用アプリケーション）が前もってインストールされているものとする。
【００２９】
（暗証番号の入力操作）
本発明は、基本概念としては、利用者が入力した文字列を第三者に不正に取得されることを防止するための文字列入力方法であるが、文字列入力装置又は文字列入力システムもこれに含まれ得る。ここでは、具体例として、タッチパネル型ディスプレイで暗証番号やパスワードを入力する場合について説明する。図２は、本発明の実施形態に係る暗証番号の入力操作の一例を示す図である。ここでは、本発明の基本概念を分かりやすく説明するため、最も簡単な例である数字のみのパスワード、すなわち暗証番号を入力する場合について説明する。
【００３０】
図２（Ａ）は、一般的なスマートフォンを使って、ネットバンキングのログイン画面を表示した例である。利用者は、この画面から契約者番号又は店番号プラス口座番号などのＩＤ番号と、暗証番号とを入力する。この例では、契約者番号を入力した後の暗証番号（ここでは“２０１５”とする。）を入力する場合について説明するが、契約者番号なども桁数が異なるだけなので同じ方法で入力することができる。
【００３１】
まず、図２（Ａ）の画面で、暗証番号の欄をタッチ（タップ操作）すると、図２（Ｂ）のような数列が複数行表示される。タップ操作とは、指やペンなどで画面を軽く叩くようにして、一瞬だけ画面に触れる操作のことである。タップ操作は、メニューから項目を選択する、ボタンを押すといった操作に用いられる。マウス操作におけるクリック（左クリック）に相当するものである。以下、単にタッチといったときはこのタップ操作を指すものとする。
【００３２】
表示される行数は、暗証番号の桁数に対応しており、ここでは４行となる。この例では、各行の数列は、０，１，２，３，・・・のように順に並んでいるが、数字の並び方は順不同であってもよい。また、行ごとに数字の並び方が異なっていてもよい。ただし、０から９までの数字が各行に最低１つは含んでいる必要がある。
【００３３】
図２（Ｂ）の画面で、暗証番号の最初の数字である“２”をタッチすると、図２（Ｃ）で示すように、タッチされた数字がその行の数列から消去されるとともに、タッチされた行全体が画面から消去される。このとき端末内部のメモリにはもともとの数列から消去された“２”を除いた数列“０１３４５６７８９”だけが記憶される。次に、図２（Ｃ）の画面で、“０”をタッチすると、“０”がその行の数列から消去され、その行全体が画面から消去される。このとき端末内部のメモリには、“０”を除いた数列“１２３４５６７８９”だけが記憶される。同様に、図２（Ｄ）の画面で“１”をタッチし、図２（Ｅ）の画面から“５”をタッチすると、タッチされた数字がそれぞれの行の数列から消去され、その行全体が順に画面から消去されていく。このとき、内部メモリには、数列“０２３４５６７８９”、“０１２３４６７８９”が記憶されるのみで、暗証番号“２０１５”が記憶されることはない。
【００３４】
そして、図２（Ｆ）のすべての数字が消去された画面において、暗証番号の入力完了を意味する確認の操作（この例では“ログイン”ボタンをタッチ）をすると、認証サーバ１００（以下、単にサーバと呼ぶ）には、暗証番号そのものを送信せずに、元の数列からタッチされた数字を除いた数列が送信される。すなわち、この例では、「０１３４５６７８９  １２３４５６７８９  ０２３４５６７８９  ０１２３４６７８９」（実際にはスペースは入らない。）がサーバに送信される。ここで各行の数字の並び方は、端末とサーバだけが判る所定のルールで同期しており、サーバでは、端末から送信された数列と、この所定のルールで端末に表示されていた数列とを比較することで、入力された暗証番号を送信された文字列から抽出することができる。なお、上記の例では、画面上で上の行から順に入力したがどの行から始めてもよい。
【００３５】
また、タッチパネル上での指等のタッチ位置の記録と画面キャプチャとを同時に行うスパイウェアに備え、例えば、図２（Ｂ）のような数字の並びが表示される画面（暗証番号欄をタッチ後に数列の全体が表示される画面）は、その画面を表示する前にいったん画面全体を消去するようにする。そしていったん消去した後に本来の画面を表示する。このようにすることで文字列全体を表示する画面をキャプチャされにくくすることができる。あるいは、画面キャプチャが行われたことを検出する手段（例えば、端末のＯＳ(Operating  System)に対してスクリーンショットコマンドが発行されたことを検知するなど）を設け、画面キャプチャが実行される前に画面全体の表示を消去するようにしてもよい。
【００３６】
図２の例では、説明を分かりやすくするため、それぞれの数字は行ごとに１つだけであり、各行の数字の並び方も単調で最も単純なパターンであるが、実際にはサーバと端末間で個々に定められた所定の「同期ルール」によって、数字の並び方（数列パターン）は毎回異なるようにする。ここで「同期ルール」は、例えば、ログイン画面の暗証番号欄をタッチした日時によって生成される「ルールＩＤ」に従って決定させるようにしてもよい。具体的には、暗証番号欄をタッチした日時分秒の数字（日時情報と呼ぶ）に所定の変換をして、「表示文字列ＩＤ」を生成し、この表示文字列ＩＤに従って、画面上に表示される数列のパターンが特定されるようにする。
【００３７】
サーバ側にも認証の際に同じ日時情報が送信されるものとし、サーバは、この日時情報を基に「表示文字列ＩＤ」を同じ変換ロジックで生成し、対応する数列パターンを特定する。そして、生成した数列パターンと端末から送信された数列パターンを比較することによって、利用者が入力した暗証番号を抽出することができる。あるいは、「同期ルール」は、利用者が登録した固有のＩＤ（例えば、端末ＩＤなど）に所定の変換を加えることとしてもよい。なお、「同期ルール」は、サーバと端末間で定期的に変更されることは言うまでもない。
【００３８】
また、入力画面に表示されている行に、暗証番号中の一部の数字の並びと同じ並びを含む行があれば、その並んだ数字の部分を「スライド操作」（指先で画面に触れて、その指をそのまま移動、又は軽く払う操作）で範囲指定してからその位置でタッチすれば、文字列中で隣接する複数の数字を一度で入力することも可能である。例えば、暗証番号「２０１５」のうち「０１」の並びは、図２（Ｂ）の各行に含まれているので、いずれかの行で「０」と「１」の範囲をスライド操作で指定し、その位置でタッチすれば、０と１が同時に入力できることなる。入力画面に表示されている行はいつも数字が同じ順に並ぶわけではないが、数字の列は複数あるので２文字程度であればかなりの確率で一致する可能性が高い。
【００３９】
以上のようにすることで、タッチパネルで入力された数字は一切端末の画面上に表示されないので、他人からの覗き見はもちろん、たとえ画面キャプチャ型のスパイウェアに端末が感染していたとしても端末から入力された数字が盗みとられることはない。また、暗証番号自体も端末内に一時的にも記憶されることはないので、ネットワーク上に送出されることもない。
【００４０】
なお、上記の文字列入力方法は、暗証番号以外にも、契約者番号（お客様番号）、口座番号、クレジットカード番号、電話番号、誕生日、保険証番号、免許証番号、住基ネット番号、さらには２０１５年１０月に導入予定のマイナンバーなど、むやみに他人には知られたくない個人情報など、場合により秘匿性を有する数字の入力において適用が可能である。
【００４１】
（複数の文字種を含むパスワードの入力）
図２では、暗証番号など数字のみを入力する場合について説明したが、本発明の入力方法は、英文字、記号など数字以外の文字も含むパスワードやＩＤなどの入力にも適用が可能である。パスワードは、数字のみの暗証番号より英文字（大文字、小文字の区別を含む）、記号などの複数の文字種を組み合わせたほうがセキュリティ強度は高いので、パスワード・ポリシーとして、最低限の文字数や文字種を規定したＷｅｂサイトも多い。
【００４２】
図３は、スマートフォンやＰＣなどの端末において、複数の文字種を含むパスワードの従来の入力方法を説明するための図である。一般的に画面サイズの小さい端末に対するログイン画面では、複数の文字種を入力するために画面上にすべての文字種のキーボードを表示すると文字が非常に小さくなるため、図示するスマートフォン用入力画面のように、キーボード切替えキー１０で複数のキーボードを切り替えて入力させるようになっている。このソフトウェア・キーボードは、スマートフォンのＯＳ又はアプリケーション側で提供される。しかし、パスワードに英字、数字、記号を混在させて入力するためにはキーボードの切り替えを何度も行う必要があり煩わしい。そのため画面サイズが大きい端末に対しては、別途図示するＰＣ用入力画面のように、複数のキーボードを並べて表示しているものもある。
【００４３】
本発明では、上記のような画面サイズによって異なる画面を用意する必要のない入力方法を提案する。図４は、本発明の実施形態に係るパスワード入力画面を説明するための図である。
【００４４】
この入力方法では、パスワードとして用いられるすべての文字を文字列として文字種ごとに１又は複数並べた「文字列」を定義する。図示するように、文字列は論理画面に配置される。端末の実画面は、画面サイズによって異なるので、スライド操作で論理画面上を上下左右にスクロールさせることができる。もちろん、画面サイズが大きければ論理画面全体を実画面に表示してもよい。実画面はピンチ操作（２本の指で画面に触れてからつまむように操作）／ストレッチ操作（２本の指で画面に触れてから指を互いに遠ざける操作）によって拡大縮小が可能なのは言うまでもない。このようにすることで、論理画面の文字列をすべて実画面に表示可能となり、スマートフォンのような実画面が論理画面より小さい端末であっても、多くの文字種を含んだパスワードをキーボードの切り替えなどなしに入力することができる。
【００４５】
文字列は、論理画面上の「行」と必ずしも一致させる必要はなく、図示する数字の文字列のように論理画面上の１行に複数の文字列を配置してもよい。図では数字、英大文字、英小文字、記号の文字種の順に文字列が配置されているがこのような配置に限定されないし、文字列内の文字の並び方も任意であってよい。文字列内にはその文字種の文字全部が少なくとも１文字は含まれる必要があるが、同じ文字が１つの文字列内に複数含まれてもよい。また、文字種もカタカナ、ひらがな等を追加してもよい。さらに、半角文字だけでなく全角文字を追加してもよい。例えば、パスワードの一種である「秘密の質問」の答えは、全角文字も必要とする場合があるからである。
【００４６】
以下、複数の文字種を含むパスワードの入力方法について詳細に説明する。図５Ａ〜図５Ｃは、本発明の実施形態に係るパスワード入力操作の一例を示す図である。この例では画面サイズの大きいＰＣ画面を使用し、実画面と論理画面が一致している場合で説明するが、実画面と論理画面が一致しない場合でもスクロール操作が加わるだけで基本的には同様である。また、図を見やすくするため、数字の文字列は画面上の１行に３つとし、他の文字種の文字列は、それぞれ画面上の１行だけであるとしている。
【００４７】
ここでは、入力するパスワードが例えば“ＡＢｃ＿１２３”であるとして、図５Ａ〜図５Ｃの画面（Ａ）〜（Ｌ）を順に参照してパスワードの入力操作を具体的に説明する。ログイン画面（図示省略）のパスワード入力欄をタッチすると、画面（Ａ）のように文字種ごとに文字列が１又は複数表示される。ここで、暗証番号の場合と同様に、表示される文字列のパターンは、サーバと端末間で所定のルールで同期される。
【００４８】
パスワード“ＡＢｃ＿１２３”を入力するには、まず画面（Ａ）で英大文字の文字列の“Ａ”をタッチする。図ではタッチした位置を下線で示しているが実際には下線は表示されず、画面（Ｂ）のように、タッチされた“Ａ”を含む英大文字行全体が消去され、“Ａ”を除く文字列“ＢＣＤＥ・・・”が記憶される。（以下同じ。）次に、“Ｂ”を入力する場合、画面（Ｂ）では“Ｂ”を含む行は消去されているので、消去された行をいったんタッチして元の状態で再表示させてから（画面（Ｃ）の状態）、“Ｂ”をタッチするものとする。そして“Ｂ”をタッチすると、英大文字行が再び消去される（画面（Ｄ）の状態）。
【００４９】
このようにすることで、画面上でいったん消去された文字列も再表示が可能なので、文字種ごとに入力する文字の数の分だけ文字列を画面に表示させておく必要がなくなる。再表示機能がないと、例えば、“ＡＢＣｄｅｆＧＨ”と入力させるためには、少なくとも５行の英大文字の文字列と，３行の英小文字の文字列を表示しておく必要があるが、再表示機能があればそれぞれ1行表示させておけばよい。したがって、再表示機能は画面サイズの小さい入力装置には特に有効である。
【００５０】
なお、上記の画面（Ｂ）のように消去された行を再表示させるためのタッチが必要になるのは、文字列が１つしかない場合だけで、文字列が複数ある場合は再表示のためのタッチは通常は必要ない。例えば、上の例で英大文字の行が２つあれば、“Ａ”をタッチして消去されるのは一方の行だけなので、“Ｂ”はもう一方の行から直接タッチできる。更に続けて、例えば“Ｃ”を入力する場合は、“Ｂ”の行が消去されたと同時に“Ａ”の行が自動的に再表示されるので、その再表示された行から“Ｃ”をタッチすればよい。もちろん、同じ文字種の行が複数ある場合でも消去された行をタッチすればその行は再表示されるものとする。
【００５１】
図５Ｂの説明に移る。画面（Ｅ）は、“Ｂ”をタッチした後の状態であるが、次に入力する“ｃ”は、小文字なので英小文字行は表示された状態にある。したがってそのまま“ｃ”をタッチできる。“ｃ”をタッチすると、今度は画面（Ｆ）のように、タッチされた英小文字行が消去されるが、同時に先に消去された英大文字行が自動的に再表示される。この状態の画面（Ｇ）では、次に入力する記号“＿”はそのままタッチできる。“＿”をタッチすると、いままでと同様に、記号行が消去される。
【００５２】
図５Ｃに移り、画面（Ｉ）で次に“１”をタッチすると、画面（Ｊ）のように、タッチされた“１”の行が消去されると同時に、先に消去された“＿”の行が再表示される。この例では数字行は３つあるので、タッチされた“１”の行が消去されても他の数字行は消去されない。したがって、次に入力する“２”は表示されているほうの数字行からそのままタッチできる。“２”をタッチするとその数字行は消去される。このとき先に消去された“１”の数字行は消去されたままでもよいが自動で再表示してもよい。再表示した場合は画面（Ｋ）の状態になる。
【００５３】
画面（Ｋ）ではパスワードの最後の文字である“３”を、表示されている数字行のどちらかを使ってタッチする。その結果、画面（Ｌ）ではタッチされた“３”の行が消去されるが、同時に先に消去された“２”の行が再表示されてもよい。最後に、確認操作、例えばログインボタンなどをタッチすると、上記の一連の手順でタッチした（消去した）文字を除いた文字列がサーバに送信される。
【００５４】
なお、暗証番号の場合と同様に、タッチパネル上でのタッチ位置の記録と画面キャプチャとを同時に行うスパイウェアに備え、文字の並びが表示される画面は、その画面を表示する前にいったん画面全体を消去するようにする。そしてその後本来の画面を表示する。あるいは、画面キャプチャが行われたことを検出する手段を設け、画面キャプチャが実行される直前に文字列画面全体の表示を消去するようにしてもよい。
【００５５】
（処理フロー）
図６は、本発明の実施形態に係る文字列入力方法の端末装置の処理フローを示す図である。図６は、以上説明した入力手順を端末が実行する処理ステップのフローとしてまとめたものである。
【００５６】
利用者からパスワードなどの文字列の入力の開始を受け付けると、端末は、まずステップＳ１０で、認証サーバ１００（一般的には送信先装置）と同期する文字列表示ルールを決定する。文字列表示ルールは、今回使用するルールであり、毎回決定される。続いて、ステップＳ１１で、決定された文字列表示ルールに従った文字列（文字列パターン）を論理画面に表示する。文字列表示ルール決定の具体例は前述したとおりである。
【００５７】
端末は、次にステップＳ１２で、表示された文字列中の文字が指定されたかどうか、すなわち画面上で表示された文字列中のある文字がタッチされたかどうかをチェックする。文字列中の文字がタッチされていない場合は（ステップＳ１２：Ｎ）、所定の取消操作がなされたかどうかをチェックし、取消操作がなされていれば（ステップＳ２０：Ｙ）、すべてのデータを消去して入力処理を終了する。取消操作がなされてなければ（ステップＳ２０：Ｎ）、ステップＳ１２に戻る。
【００５８】
ステップＳ１２で文字列中の文字のタッチが検出された場合は（ステップＳ１２：Ｙ）、ステップＳ１３に移り、タッチされた文字が含まれる文字列の表示を論理画面から消去する。このとき既に消去されている文字列があればその行を再表示してもよい。また、既に消去された文字列のどこかがタッチされた場合は、その文字列全体を再表示する。
【００５９】
次にステップＳ１４で、タッチされた（消去された）文字を除いた文字列を記憶する。前述したようにタッチされた文字自体は、パスワードを構成する文字なので端末内部には記憶しない。そしてステップＳ１５で、送信ボタンやログインボタンがタッチされたなど、所定の確認操作がなされたかどうかをチェックする。
【００６０】
ステップＳ１５で確認操作がなされたことを検出した場合は（ステップＳ１５：Ｙ）、ステップＳ１６に移り、パスワードとして規定された最低文字数が入力されたかどうかをチェックし、最低文字数に満たない場合は（ステップＳ１６：Ｎ）、ステップＳ１７でエラー表示した後、再入力を促す。所定の回数以上エラーとなった場合は入力操作を終了させる。
【００６１】
ステップＳ１６で最低文字数の入力が確認されれば（ステップＳ１６：Ｙ）、ステップＳ１８に移り、各文字列でタッチされた（消去された）文字を除いた文字列を認証サーバ１００（送信先装置）に送信する。送信が完了すればパスワード入力処理を終了する。
【００６２】
（文字列パターン例）
図７は、本発明の実施形態に係る文字列パターンのバリエーションの例を示す図である。既に述べたように論理画面に表示する文字列のパターンは端末とサーバで同期（共有）しているが簡単な文字列パターンの例を以下に示す。
【００６３】
図７（Ａ）は、基本的な文字列パターンであり、文字種ごとに複数の文字列（ここでは３行）が順に並んだパターンである。文字列は論理画面の１行中に複数含んでもよい。
【００６４】
図７（Ｂ）は、文字列の文字の並び方を変化させたものである。この例では、数字列Ｂ１１〜Ｂ１３のうち、Ｂ１１は１から始まるが、Ｂ１２は４から始まり、Ｂ１３では８から始まっている。数字の並びは昇順でなく降順であってもよい。また、英大文字列（Ｂ２１〜Ｂ２３）のうち、Ｂ２１は通常のアルファベットの順に並んでいるが、Ｂ２２はＺから始まる逆順で並んでいる。また、Ｂ２３はＨから始まる正順で並んでいる。英小文字列Ｂ３１〜Ｂ３３についても同様である。
【００６５】
図７（Ｃ）では、数字列Ｃ１１〜Ｃ１３をランダムに並べている。ただし、各数字は、最低２回は現れるようにしている。また、英大文字列のＣ２２は、２６文字のアルファベットをＭとＮの間で半分に分け、ＭとＮのグループからＭ、Ｎを先頭に交互に１文字ずつ取り出して並べたものである。さらにＣ２３は、Ｃ２２に対して上記の並べ方を適用したものである。この例では、英小文字列Ｃ３１〜Ｃ３３についても同様にしているが、別の並べ方をしてもよいのは当然である。このように文字列パターンはほぼ無限に存在するが、必要なのは端末とサーバで文字の並べ方のルールを同期していることである。
【００６６】
（文字列パターンの変形例）
図８は、本発明の実施形態に係る文字列パターンのバリエーションの変形例を示す図である。文字列パターンは、図７のような単なる文字の列でなく、意味のある「文書」の記載から生成することもできる。ただし、この文書は、端末装置と送信先装置が共に同じ時間に取得可能な文書であるとする。
【００６７】
例えば、図８（Ａ）は、電子新聞の株式欄の数字を文字列パターンとして採用したものである。いつの時点の株式データとその銘柄のデータを文字列表示ルールとするか予めサーバと端末間で定義しておけば、端末の論理画面に表示される文字列（数字のみ）が生成できる。しかも毎日変化させることができる。
【００６８】
また、図８（Ｂ）は、英文の電子ニュースを文字列パターンとして採用したものである。これもいつの時点の電子ニュースとそのページや行などを文字列表示ルールとするか予めサーバと端末間で定義しておけば、端末の論理画面に表示される文字列（英字、数字のみ）が生成できる。しかも毎日変化させることができる。
【００６９】
また、図８（Ｃ）は、日本語、数字、英字混じりのメールやビジネスレターなどの文書を文字列パターンとして採用したものである。このような文書を多数集め、ＩＤを振って文字列表示ルールとして予めサーバと端末間で定義しておけば、端末の論理画面に表示される文字列が生成できる。このような文書には、英字、数字に限らず、いろいろな文字種が含まれるので、全角文字なども（使用できる文字に制限は付くが）利用できる可能性が生まれる。例えば、「母親の誕生日は？」との秘密の質問に対して、カナ漢字変換することなく、「５月７日」などと全角文字で直接入力したり、「祖父の出身地の県名は？」との質問に対して、「山梨県」などと入力したりすることができる。
【００７０】
以上の説明では、秘匿性が必要な文字列として、暗証番号とパスワードを説明したが、本実施形態の文字列入力方法は、前述したように、暗証番号以外にも、契約者番号（お客様番号）、口座番号、クレジットカード番号、電話番号、誕生日、保険証番号、免許証番号、住基ネット番号、マイナンバー、その他個人情報に関する数字の入力にも適用が可能である。入力する文字数が多い場合は（例えばクレジットカード番号など）、その文字列の一部だけに（例えば、先頭の４桁又は末尾の４桁など）、本発明の実施形態の文字列入力方法を適用して、その他の文字は通常の方法で入力するようにしてもよい。一部だけに適用してもセキュリティは確保できるからである。もちろん、パスワード以外にも、数字以外の文字種を含む各種のログインＩＤやユーザＩＤなどにも適用が可能である。
【００７１】
また、入力した文字列の送信先である送信先装置は、特に認証機能を備えないような装置であってもよい。例えば、先に送ったファイルのパスワードを単に送信先装置に送るような場合などである。また、上記の説明では入力装置をタッチパネルとしたが、タッチパネル型でないディプレイであってもよい。その場合は、今までの説明における「タッチ」を、「マウスのクリックボタン押下」又は「カーソルキーで移動し決定ボタン押下」と読み替えればよい。
【００７２】
（実施形態の効果）
以上説明したように、本発明の実施形態によれば、画面キャプチャ型のスパイウェアにも防御可能で、かつ、内部メモリにも秘匿性が必要な文字列を記憶することなく、ネットワーク上にその文字列が送出されることのない文字列入力方法を提供することができる。
【００７３】
また、本文字列入力方法は、暗証番号以外にも、契約者番号（お客様番号）、口座番号、クレジットカード番号、電話番号、誕生日、保険証番号、免許証番号、住基ネット番号、マイナンバー、又はその他秘匿性を有する文字列（個人情報に関するその他の数字や数字以外の文字種を含む各種のログインＩＤやユーザＩＤ）にも適用が可能である。
【００７４】
また、論理画面上に文字列を表示するようにしたので、画面サイズの小さい端末であっても実画面をスクロールさせることで、キーボードの切り替えなどすることなく、多くの文字種が必要な文字列であっても入力可能な文字をすべて表示することができる。
【００７５】
また、画面上でいったん消去された文字列も再表示が可能なので、文字種ごとに入力する文字の数の分だけ文字列を画面に表示させておく必要がなくなる。画面サイズの小さい端末装置には特に有効である。
【００７６】
また、端末装置と送信先装置の同期ルールを入力時の日時情報に基づいて変化させるので、文字列を表示する文字列パターンがほぼ無限に広がり、たとえ送信先装置に送信された文字列（パスワードなどの文字が消去された文字列）が解読されたとしても、元々表示されていた文字列までは容易には分からないので、パスワードなどの解読を困難にすることができる。
【００７７】
また、端末装置と送信先装置の両者が共有可能な文書の記載に基づいて文字列パターンを生成することもできるので、文字列パターンのバリエーションが更に広がりパスワードなどの解読を困難にすることができる。
【００７８】
また、文字列の範囲を指定することにより、文字列の中で隣接する複数の文字を入力することが可能なので、表示された文字列中の一部に入力すべき文字の並びと同じ文字の並びがあれば入力操作が楽になる。
【００７９】
また、本文字列入力方法は、入力する文字列の一部だけに適用するようにしてもよい。入力する文字列が長い場合は、その一部だけに本文字列入力方法を適用してもセキュリティは確保されるので、それ以外の部分は通常の方法で入力することもできる。
【００８０】
以上、実施形態を用いて本発明を説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されないことは言うまでもない。上記実施形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。またその様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【符号の説明】
【００８１】
１０  キーボード切替えキー
１００  認証サーバ
１０１  通信部（認証サーバ側）
１０２  利用者情報記憶部
１１０  Ｗｅｂサーバ
２００  据置型端末装置
２０１  通信部（据置型端末装置側）
２０２  記憶部（据置型端末装置側）
２０３  操作入力部
２０４  表示部
２１０  携帯型端末装置
２１１  無線通信部
２１２  記憶部（携帯型端末装置側）
２１３  物理スイッチ
２１４  タッチパネル
３００  ネットワーク
４００  基地局
【図１】
0006493973.tif 000002
【図２】
0006493973.tif 000003
【図３】
0006493973.tif 000004
【図４】
0006493973.tif 000005
【図５Ａ】
0006493973.tif 000006
【図５Ｂ】
0006493973.tif 000007
【図５Ｃ】
0006493973.tif 000008
【図６】
0006493973.tif 000009
【図７】
0006493973.tif 000010
【図８】
0006493973.tif 000011