JP2017204056A - 判定装置および判定方法 - Google Patents

判定装置および判定方法 Download PDF

Info

Publication number
JP2017204056A
JP2017204056A JP2016094442A JP2016094442A JP2017204056A JP 2017204056 A JP2017204056 A JP 2017204056A JP 2016094442 A JP2016094442 A JP 2016094442A JP 2016094442 A JP2016094442 A JP 2016094442A JP 2017204056 A JP2017204056 A JP 2017204056A
Authority
JP
Japan
Prior art keywords
character string
authentication item
user
password
authentication
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.)
Granted
Application number
JP2016094442A
Other languages
English (en)
Other versions
JP6549063B2 (ja
Inventor
英朗 山本
Hideaki Yamamoto
英朗 山本
拓也 佐伯
Takuya Saeki
拓也 佐伯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016094442A priority Critical patent/JP6549063B2/ja
Publication of JP2017204056A publication Critical patent/JP2017204056A/ja
Application granted granted Critical
Publication of JP6549063B2 publication Critical patent/JP6549063B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Abstract

【課題】ユーザの属性や外部状況の変化があった場合にも、認証アイテムの強度の維持を図る。
【解決手段】本発明に係る判定装置としてのコンピュータ10は、認証アイテムへの使用が好ましくない文字列を記憶する記憶部としての不揮発性メモリ12と、不揮発性メモリ12に記憶されている文字列に基づき、認証アイテムの強度を判定する制御部としてのCPU13とを備え、CPU13は、ユーザの属性および外部状況の少なくとも一方の変化に伴って新たに生じた認証アイテムへの使用が好ましくない文字列を不揮発性メモリ12に記憶させる。
【選択図】図1

Description

本発明は、ユーザ認証に用いられる認証アイテムの強度を判定する判定装置および判定方法に関する。
現在、オンラインサービスでは、ユーザ認証のためにパスワードが用いられることが一般的である。このようなパスワードには、安全性の確保のため、英数文字混在で、所定の文字数以上(例えば、6文字以上)とするように求められることが多い(例えば、非特許文献1参照)。また、ユーザの電話番号、自宅郵便番号といった、ユーザに関連する情報を含むパスワードは、第三者による類推が容易であるため、ユーザに関連する情報をパスワードに含めないように、サービス提供者から強制/勧奨されることが多い。
また、近年では、パスワードの強度をチェックする技術も開発されている(例えば、非特許文献2〜4参照)。
パスワードの安全性の確保のためには、パスワードを長くしたり、頻繁に変更したりすることが望ましい。しかしながら、極端に長いパスワードを設定したり、高頻度にパスワードを変更したりすることはユーザにとって煩雑であり、また、パスワードの失念のリスクがある。そのため、利便性とユーザに関連する情報をパスワードに含めることのリスクとのトレードオフを考慮しつつ、パスワードの一部に自身に関連する文字列(自身に所縁のある文字列)を含め、かつ、そのパスワードを長期間にわたって変更せずに用いているユーザも多いと推測される。
実際、パスワードの構成として最も多いものは、「ランダムな英数字の組み合わせ」であり、次いで、「ユーザ自身あるいは家族の名前にちなむもの」、「ユーザ自身あるいは家族の誕生日にちなむもの」であるという報告もある(非特許文献5参照)。
パスワードの忘却への対応方法の1つとして、パスワードリマインダを用いた方法がある。この方法では、ユーザ本人しか知らない秘密情報をパスワードリマインダとしてユーザに登録させる。そして、ユーザがパスワードを失念した場合には、パスワードリマインダをパスワードの代わりに入力させ、本人であると認証されると、パスワードの表示あるいは別のパスワードの再発行などを行う。
"ログインパスワードの設定(ご利用ガイド)"、[online]、[平成28年4月4日検索]、インターネット<URL:http://www.mizuhobank.co.jp/direct/goriyo/loginout/log_pass.html> "パスワード強度チェッカー(zxcvbn)」"、[online]、[平成28年4月4日検索]、インターネット<URL:https://www.agilegroup.co.jp/technote/zxcvbn.html> "realistic password strength estimation"、[online]、[平成28年4月4日検索]、インターネット<URL:https://blogs.dropbox.com/tech/2012/04/zxcvbn-realistic-password-strength-estimation/> "JavaScript (登録商標)パスワード強度判定ライブラリ「Password Checker」"、[平成28年4月4日検索]、インターネット<URL:http://www.websec-room.com/passswordchecker> 独立行政法人 情報処理機構"オンライン本人認証方式の実態調査報告書"、[平成28年4月4日検索]、インターネット<URL:http://www.ipa.go.jp/files/000040778.pdf>
ユーザの属性の変化により、ユーザに関連する情報は年々増えていく。例えば、ユーザが転職した場合の転職先での社員番号、結婚による新たな姓、転居による新たな自宅郵便番号、携帯電話の契約変更による新たな携帯電話番号、子どもの誕生による、その子どもの誕生日、新規の口座開設による口座番号、クレジットカードの取得によるクレジットカード番号、ユーザが使うPC(パーソナルコンピュータ)のMAC(Media Access Control)アドレスなど種々のものがある。そのため、ユーザの属性の変化により、パスワードやパスワードリマインダといったユーザ認証に用いられる認証アイテムが事後的に、ユーザに関連する情報を含むものとなり、第三者による類推が容易となることがある。また、ユーザの属性の他に、外部状況の変化によっても、認証アイテムが事後的に、第三者による類推が容易となることがある。
非特許文献2〜4では、パスワードの強度をチェックする技術が開示されているが、これらの技術では、ユーザの属性や外部状況の変化による認証アイテムの事後的な強度の変化については考慮されていない。
上記のような問題点に鑑みてなされた本発明の目的は、ユーザの属性や外部状況の変化があった場合にも、認証アイテムの強度の維持を図ることができる判定装置および判定方法を提供することにある。
上記課題を解決するため、本発明に係る判定装置は、ユーザの認証に用いられる認証アイテムの強度を判定する判定装置であって、前記認証アイテムへの使用が好ましくない文字列を記憶する記憶部と、前記記憶部に記憶されている文字列に基づき、前記認証アイテムの強度を判定する制御部と、を備え、前記制御部は、前記ユーザの属性および外部状況の少なくとも一方の変化に伴って新たに生じた前記認証アイテムへの使用が好ましくない文字列を前記記憶部に記憶させる。
また、上記課題を解決するため、本発明に係る判定方法は、ユーザの認証に用いられる認証アイテムの強度を判定する判定装置における判定方法であって、記憶部が、前記認証アイテムへの使用が好ましくない文字列を記憶するステップと、制御部が、前記ユーザの属性および外部状況の少なくとも一方の変化に伴って新たに生じた前記認証アイテムへの使用が好ましくない文字列を前記記憶部に記憶させ、前記記憶部に記憶されている文字列に基づき、前記認証アイテムの強度を判定するステップと、を含む。
本発明に係る判定装置および判定方法によれば、ユーザの属性や外部状況の変化があった場合にも、認証アイテムの強度の維持を図ることができる。
本発明の一実施形態に係る判定装置としてのコンピュータを含むシステムの構成例を示す図である。 図1に示すNG文字列リストへの文字列の格納について説明するための図である。 NG文字列リストの構成例を示す図である。 NG文字列リストへの派生文字列の追加の一例を示す図である。 重み付け係数の算出方法の一例を説明するための図である。 外部状況の変化に応じたNG文字列リストの更新の一例を示す図である。 ユーザの属性の変化に応じたNG文字列リストの更新の一例を示す図である。 図1に示すコンピュータの動作の一例を示すフローチャートである。 NG文字列リストの一例を示す図である。 NG文字列リストの一例を示す図である。 NG文字列リストの一例を示す図である。 図1に示すコンピュータの動作の他の一例を示すフローチャートである。 図1に示すCPUによる類似度の算出動作の一例を示すフローチャートである。 NG文字列リストの他の一例を示す図である。 図1に示すコンピュータの動作の他の一例を示すフローチャートである。
以下、本発明を実施するための形態について、図面を参照しながら説明する。なお、本発明は、以下の実施の形態のみに限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々の変更が可能であることはもちろんである。
図1は、本発明の一実施形態に係る判定装置としてのコンピュータ10を含むシステムの構成例を示す図である。
図1に示すシステムは、コンピュータ10と、入力装置20と、出力装置30とを備える。コンピュータ10は、ユーザによる操作入力が行われる入力装置20およびユーザへの通知などを行うための出力装置30と接続され、入力装置20へのユーザによる操作入力に応じて所定の処理を行い、その処理の結果を出力装置30に出力する。コンピュータ10は、例えば、ユーザがあるオンラインサービスを利用するために用いられる。また、コンピュータ10は、パスワードやパスワードリマインダといったユーザの認証に用いられる認証アイテムの強度を判定し、必要に応じて、認証アイテムの変更を勧奨あるいは強制する。入力装置20の具体例としては、キーボード、マウスなどがある。出力装置30の具体例としては、表示装置、音声出力装置などがある。
次に、コンピュータ10の構成について説明する。なお、入力装置20および出力装置30の構成は当業者によく知られており、また、本発明と直接関係しないため、説明を省略する。
図1に示すコンピュータ10は、通信IF(インタフェース)11と、不揮発性メモリ12と、CPU(Central Processing Unit)13とを備える。不揮発性メモリ12は記憶部の一例であり、CPU13は制御部の一例である。
通信IF11は、入力装置20および出力装置30と通信を行い、例えば、ユーザによる操作入力に応じて入力装置20が出力した信号をCPU13に出力する。また、通信IF11は、ユーザの操作入力に応じたCPU13の処理結果を出力装置30に出力する。
不揮発性メモリ12は、種々の情報を記憶する記憶装置である。例えば、不揮発性メモリ12は、後述するCPU13を動作させるためのプログラムを記憶する。また、不揮発性メモリ12は、コンピュータ10やオンラインサービスの使用におけるユーザ認証に使用されるパスワード、パスワードリマインダといった認証アイテムを記憶する。また、不揮発性メモリ12は、認証アイテムへの使用が好ましくない文字列が格納されたNG文字列リストを記憶する。また、不揮発性メモリ12は、電子メールやアドレス帳などの情報を記憶してもよい。
CPU13は、不揮発性メモリ12に記憶されているプログラムを読み込んで動作し、コンピュータ10全体の動作を制御する。例えば、CPU13は、ユーザによる入力装置20への操作入力などに応じて、認証アイテムへの使用が好ましくない文字列と、照合容易性(第三者による類推、照合のされやすさ)に基づく危険度(文字列を認証アイテムに含めることの危険度)とを対応つけて、NG文字列リストに格納する。また、CPU13は、NG文字列リストに基づき、不揮発性メモリ12に記憶されている認証アイテムの強度を判定し、必要に応じて、認証アイテムの変更を勧奨/強制する。
次に、CPU13によるNG文字列リストへの文字列の格納について説明する。
CPU13は、例えば、図2に示すように、ユーザにより入力装置20に誕生日、電話番号などのユーザに関連する情報が入力されると、入力された誕生日、電話番号などに相当する文字列をNG文字列としてNG文字列リストに格納する。また、CPU13は、不揮発性メモリ12に電子メールやアドレス帳が記憶されている場合、これらを検索して、メールアドレス、電話番号といった、ユーザに関連する文字列を抽出し、NG文字列としてNG文字列リストに格納する。また、CPU13は、例えば、コンピュータ10をネットワークに接続するためのネットワークインターフェースカード(NIC)に格納されたコンピュータ10のMACアドレスを、NG文字列としてNG文字列リストに格納する。このように、CPU13は、コンピュータ10の種々の媒体に格納されているユーザに関連する文字列をNG文字列としてNG文字列リストに格納する。
次に、NG文字列リストの構成について、図3Aを参照して説明する。
図3Aに示すように、NG文字列リストは、項番、NG文字列、危険度スコア、重み付け係数、補正後の危険度スコア(危険度)および備考からなる。
項番は、NG文字列を識別するための番号である。
NG文字列は、認証アイテムへの使用が好ましくない文字列であり、例えば、ユーザの姓、名、生年月日といったユーザに関連する情報(ユーザに所縁のある情報)に相当する文字列である。
危険度スコアは、NG文字列に属性(姓、名、生年月日など)を付与した場合(NG文字列を単なる文字列としてではなく、ある属性に対応する意味を持つ文字列として捉えた場合)に、そのNG文字列を認証アイテムに用いた場合の危険度を数値化したものである。例えば、図3Aに示す例では、項番「001」のNG文字列「Yamamoto」に「姓」という属性を付与した場合(NG文字列「Yamamoto」を「姓」として捉えた場合)に、NG文字列「Yamamoto」を認証アイテムに用いた場合の危険度スコアを「50」と評価している。
重み付け係数は、NG文字列の第三者による類推、照合のされやすさ(照合容易性)に応じた重み付けにより危険度スコアを補正するための係数である。重み付け係数は、例えば、NG文字列の長さ(文字数)によって決定される。また、重み付け係数は、例えば、NG文字列が姓を示す場合には、よく使われる姓のランキングなどに応じて決定される。重み付け係数の算出例については後述する。
補正後の危険度スコアは、重み付け係数を用いて危険度スコアを補正した値であり、NG文字列の照合容易性に基づく危険度を示すものである。補正後の危険度スコアは、危険度スコアに重み付け係数を乗じて算出される。したがって、例えば、項番「001」のNG文字列「Yamamoto」の補正後の危険度スコアは「75(=50×1.5)」となる。
備考は、NG文字列に付与された属性などを示す。
なお、NG文字列の一部を変更したような、NG文字列から派生した文字列(派生文字列)を認証アイテムに用いた場合にも、元の文字列を基に類推される可能性が高い。したがって、NG文字列リストには、派生文字列もNG文字列として格納してもよい。図3Bは、派生文字列もNG文字列として格納したNG文字列リストの例を示す図である。
図3Bに示すように、項番「001」のNG文字列「Yamamoto」に派生して、項番「001a」のNG文字列「YAMAMOTO」と、項番「001b」のNG文字列「yamamoto」とが格納されている。
NG文字列「YAMAMOTO」は、元のNG文字列「Yamamoto」を全て大文字表記したものである。また、NG文字列「yamamoto」は、元のNG文字列「Yamamoto」を全て小文字表記したものである。
図3Bに示す例では、NG文字列「YAMAMOTO」,「yamamoto」それぞれに、「姓」という属性を付与し、危険度スコアを、元のNG文字列「Yamamoto」と同じく、「50」と評価している。また、NG文字列「YAMAMOTO」,「yamamoto」はそれぞれ、大文字あるいは小文字のみで構成されている。そのため、ユーザからすれば、文字列の入力に際して、大文字入力と小文字入力とを切り替えるためのCaps操作を行う必要が無いため、利便性が増す。一方で、NG文字列「YAMAMOTO」,「yamamoto」はそれぞれ、大文字あるいは小文字のみで構成されているため、認証アイテムを類推しようとする第三者からは大文字/小文字を混在させる必要が無く、類推が容易となる。そのため、図3Bに示すように、NG文字列「YAMAMOTO」,「yamamoto」の重み付け係数は「1.6」とし、NG文字列「Yamamoto」の重み付け係数「1.5」よりも大きくなっている。したがって、NG文字列「YAMAMOTO」,「yamamoto」の補正後の危険度スコアは「80」となり、NG文字列「Yamamoto」の補正後の危険度スコア「75」よりも大きくなる。
また、図3Bに示す例では、項番「003」のNG文字列「19631120」に派生して、項番「003a」のNG文字列「1120」と、項番「003b」のNG文字列「1963NOV1120」と、項番「003c」のNG文字列「S381120」と、項番「003d」のNG文字列「20111963」とが格納されている。
NG文字列「1120」は、元のNG文字列「19631120」のうち、西暦にあたる文字列「1963」を削除したもの、すなわち、「生年月日」を「月日」のみに短縮したものである。NG文字列「1963NOV1120」は、元のNG文字列「19631120」のうち、「月(11月)」の英語略称(NOV)を追加したものである。NG文字列「S381120」は、元のNG文字列「19631120」のうち、「年(1963年)」を和暦表記(S38(昭和38年))したものである。NG文字列「20111963」は、元のNG文字列「19631120」を、欧州表記したものである。
図3Bに示す例では、例えば、NG文字列「19631120」から派生した、NG文字列「1120」,「1963NOV1120」,「S381120」,「20111963」それぞれの危険度スコアを、元のNG文字列「19631120」と同じ、「100」と評価している。
一方、例えば、NG文字列「1120」は、NG文字列「19631120」を短縮したものであり、より類推しやすくなっている。そのため、NG文字列「1120」の重み付け係数は「1.8」となり、元のNG文字列「19631120」の重み付け係数「1.5」よりも大きくなっている。
このようにNG文字列リストでは、NG文字列毎に、属性を付与した場合の危険度スコアと、そのNG文字列の類推のされやすさに応じた重み付け係数とが設定され、危険度スコアが重み付け係数により補正された補正後の危険度スコア(照合容易性に基づく危険度)が算出される。
図4は、重み付け係数の算出方法の一例を説明するための図である。図4においては、よく使われる姓のランキングおよび文字数に応じて重み付け係数を算出する例について説明する。なお、重み付け係数の算出は、例えば、CPU13が行う。
図4に示す例では、ランキング上位の姓(漢字表記)から順に配列されている。また、各姓(漢字表記)のローマ字表記が付されている。このようなランキングは、例えば、インターネットから取得することができる。
そして、各姓に対応して、ランキングに基づいた重み付け係数αが設定される。重み付け係数αは、ランキングが上位の姓ほど大きくなるように設定される。これは、ランキングが上位の姓ほど、パスワードリスト攻撃に遭う可能性が高いと考えられるためである。
また、各姓に対応して、ローマ字表記の文字数に基づいた重み付け係数βが設定される。重み付け係数βは、ローマ字表記の文字数が少ない姓ほど、大きくなるように設定される。例えば、重み付け係数βは、最小値を1とし、文字数が8文字の場合には「1.2」となり、4文字の場合には「1.8」となり、3文字の場合は「2.0」となる。
さらに、姓の出現頻度にローマ字表記の文字数を加味した重み付け係数を算出するために、各姓に対応して、重み付け係数αと重み付け係数βとの積(α×β)が算出される。この積の値が、各姓を示すNG文字列の重み付け係数として付与される。なお、パスワードの入力に漢字が用いられることは稀であり、パスワードには、姓をローマ字表記した文字列が含まれることが多いと想定される。そのため、図4に示すように、姓をローマ字表記した文字数に応じた重み付け係数βを加味することで、より精度の高い危険度スコアを算出することができる。
上述したように、CPU13は、ユーザの属性や外部状況の変化に応じて、NG文字列リストを更新する。以下では、外部状況の変化に応じたNG文字列リストの更新について、図5を参照して説明する。なお、以下では、図3Bに示すNG文字列リストを更新する場合を例として説明する。
Webサイト上などで、パスワードなどへの使用が危険な文字列が公開されている。このような文字列は、時間の経過とともに変わっていくことが考えられる。このような外部状況の変化に応じて、CPU13は、NG文字列リストを更新する。
パスワードなどへの使用が危険な文字列が公開されたWebサイトがユーザにより検索され、そのWebサイト上で公開された文字列がユーザにより入力装置20を用いて入力される。CPU13は、入力された文字列をNG文字列リストに格納する。図5においては、項番「0004」のNG文字列「password」と、項番「0005」のNG文字列「abcdefg」と、項番「0006」のNG文字列「qwerty」とが追加されている。
CPU13は、追加したNG文字列に対して、危険度スコアを設定する。追加された各文字列は、危険な文字列としてWebサイト上に公開されているものであるため、追加したNG文字列に対して、ユーザの姓などと比べてより高い危険度スコア(危険度スコア「100」)が設定される。
さらに、CPU13は、追加したNG文字列に対して、重み付け係数を設定する。ここでは、CPU13は、NG文字列の文字数に基づいた重み付け係数を設定する。具体的にはCPU13は、文字数が少ないNG文字列ほど、高い重み付け係数を設定する。そして、CPU13は、危険度スコアに重み付け係数を乗算することで、NG文字列の補正後の危険度スコアを算出する。
上述した例では、ユーザがWebサイト上の危険な文字列を抽出し、入力装置20に入力する例を用いて説明したが、これに限られるものではない。例えば、検索エンジンを用いて、Webサイト上に公開された危険な文字列を抽出してもよい。
次に、ユーザの属性の変化に応じたNG文字列リストの更新について、図6を参照して説明する。なお、図6においては、転職をユーザの属性の変化の例として説明する。また、ユーザの転職前には、図3Bに示すNG文字列リストが記憶されており、このNG文字列リストを更新する場合を例として説明する。
ユーザが「SSN株式会社」に転職したとする。この場合、例えば、転職先の会社名がユーザにより入力装置20に入力され、CPU13は、転職先の会社名を構成する「SSN」という文字列をNG文字列としてNG文字列リストに追加する。すなわち、図6に示すように、CPU13は、NG文字列リストに、項番「004」のNG文字列「SSN」を追加する。
さらに、CPU13は、NG文字列「SSN」の大文字/小文字を組み合わせた派生文字列(SSn,SsN,Ssn,sSN,sSn,ssN,ssn)を項番004a〜004gのNG文字列として、NG文字列リストに格納する。こうすることで、ユーザの属性の変化(ユーザの転職)により新たにユーザに関連する情報(文字列)となった文字列「SSN」とその派生文字列とをNG文字列リストに追加することができる。
図6においては、転職をユーザの属性の変化の例とし、転職先の会社名をNG文字列としてNG文字列リストに追加する例を説明したが、これに限られるものではない。ユーザのライフイベントによって付与される属性であれば任意のものを用いることができる。例えば、ユーザが属する会社の会社法人等番号、法人番号(マイナンバー)、銀行口座番号、結婚後の姓、転居後の電話番号などをNG文字列リストに追加してもよい。
次に、本実施形態に係るコンピュータ10による認証アイテム(パスワード)の強度の判定動作について、図7に示すフローチャートを参照して説明する。なお、図7においては、コンピュータ10は、銀行ATM(Automatic Teller Machine)であり、強度を判定するパスワードが4桁の数字からなる暗証番号である例を用いて説明する。
CPU13は、不揮発性メモリ12に記憶されている判定対象のパスワード(4桁の数字からなる暗証番号)を読み出す。なお、この暗証番号は、パスワードの脆弱性をチェックする公知の技術を用いて、脆弱性がチェック済みの暗証番号である。
CPU13は、NG文字列リストに格納されているNG文字列の番号を示す値(N)を1に設定する(N=001)(ステップS11)。
次に、CPU13は、判定対象の暗証番号と、NG文字列リストのN番目のNG文字列との類似度Rを算出する(ステップS12)。CPU13は、判定対象の暗証番号に、N番目のNG文字列と完全一致する文字列が含まれる場合には、類似度R=100とし、それ以外の場合は、類似度R=0とする。類似度の算出方法の詳細については後述する。
次に、CPU13は、Nが最大値であるか否か(NがNG文字列リストの最後の項番に対応する番号であるか否か)を判定する(ステップS13)。
Nが最大値でないと判定した場合には(ステップS13:No)、CPU13は、Nを1だけ増加させ(ステップS14)、ステップS12の処理に戻る。
Nが最大値であると判定した場合には(ステップS13:Yes)、CPU13は、判定対象の暗証番号との類似度が閾値Rth以上であるNG文字列が存在するか否かを判定する(ステップS15)。なお、閾値Rthは予め、CPU13に与えられている。
判定対象の暗証番号との類似度が閾値Rth以上であるNG文字列が存在しないと判定した場合には(ステップS15:No)、CPU13は、判定対象の暗証番号が強度は十分であると判定(判定対象の暗証番号の使用を許可すると判定)し、処理を終了する。
判定対象の暗証番号との類似度が閾値Rth以上であるNG文字列が存在すると判定した場合には(ステップS15:Yes)、CPU13は、判定対象の暗証番号はNG文字列と完全一致する文字列を含むものであり、第三者による類推が容易である可能性があるため、判定対象の暗証番号の強度を上げる必要があると判定する。この場合、CPU13は、暗証番号を強制的に変更させる画面を出力装置30(表示装置)に表示させ(ステップS16)、処理を終了する。
図7を参照して説明したコンピュータ10の動作について、具体例を挙げてより詳細に説明する。
以下では、判定対象の暗証番号が「0310」であるとする。また、銀行口座の開設時に(例えば、2007年)、ユーザに関連する情報に基づき、図8Aに示すNG文字列リストが作成され、不揮発性メモリ12に記憶されたとする。
図8Aに示すように、銀行口座の開設時には、ユーザの生年月日(月日)、ユーザの自宅郵便番号(下4桁)、ユーザが所有する車のナンバー、ユーザの子ども(第1子)の生年月日(月日)などのユーザに関連する情報に相当するNG文字列が格納されている。また、危険度スコア、重み付け係数、補正後の重み付け係数も、適宜、設定、算出されている。
その後、2009年に、格納済みのNG文字列の派生文字列が追加され、図8Bに示すように、NG文字列リストに更新されたとする。すなわち、ユーザの生年月日に派生して、ユーザの生年月日(月日)を欧州表記した文字列や、ユーザの生年のみを示す文字列がNG文字列として追加されたとする。また、第1子の生年月日に派生して、第1子の生年月日(月日)を欧州表記した文字列や、第1子の生年のみを示す文字列がNG文字列として追加されたとする。
その後、2015年3月10日にユーザに2人目の子ども(第2子)が生まれ、第2子の誕生というユーザの属性の変化に応じて、第2子の生年月日などの情報が、ユーザにより入力装置20に入力されたとする。CPU13は、その入力に応じて、NG文字列リストを図8Cに示すように更新したとする。すなわち、第2子の生年月日(月日)がNG文字列として追加されたとする。さらに、第2子の生年月日(月日)の派生文字列として、第2子の生年月日(月日)を欧州表記した文字列や、第2子の生年のみを示す文字列がNG文字列として追加されたとする。
2007年の銀行口座の開設時のNG文字列リスト(図8A)には、判定対象の暗証番号「0310」と完全一致するNG文字列は存在しない。そのため、暗証番号の変更は不要と判定される。
また、2009年の派生文字列の追加後のNG文字列リスト(図8B)にも、判定対象の暗証番号「0310」と完全一致するNG文字列は存在しない。そのため、暗証番号の変更は不要と判定される。
一方、第2子の誕生に応じた更新後のNG文字列リスト(図8C)では、判定対象の暗証番号「0310」と、第2子の生年月日(月日)に相当するNG文字列とが完全一致している。したがって、判定対象の暗証番号とこのNG文字列との類似度は100となる。そのため、CPU13は、暗証番号の強度を上げる必要があると判定し、暗証番号の変更をユーザに強制する。
このように、ユーザの属性や外部状況の変化に応じてNG文字列リストを更新することで、ユーザに関連する情報といった、パスワードへの使用が危険な文字列をパスワードが事後的に含むものとなった場合に、パスワードの変更をユーザに促すことができる。そのため、ユーザの属性や外部状況の変化があった場合にも、パスワードの強度の維持を図ることができる。なお、第2子の誕生を契機にNG文字列リストを更新する例を用いて説明したが、これに限られるものではない。例えば、ユーザの転居、車の購入など様々なライフイベントを契機として、NG文字列リストを更新することができる。
図7においては、判定対象の暗証番号がNG文字列リストのNG文字列と完全一致する場合には、一律に暗証番号の変更を求めていたが、これに限られるものではない。例えば、判定対象のパスワードがNG文字列と完全一致する場合であっても、パスワードの文字数が多く、第三者による類推が困難な場合もある。この場合、判定対象のパスワードを使用しても危険性は比較的低いと考えられるので、コンピュータ10は、判定対象のパスワードの使用を許可してもよい。以下では、コンピュータ10がこのような動作を行う場合について、図9に示すフローチャートを参照して説明する。なお、図9において、図7と同様の処理については同じ符号を付し、説明を省略する。
判定対象の暗証番号との類似度Rが閾値Rth以上のNG文字列が存在すると判定した場合には(ステップS15:Yes)、CPU13は、類似度Rが閾値Rth(第1の閾値)以上のNG文字列のなかに、危険度スコア(補正後の危険度スコア)が閾値Kth(第2の閾値)以上のNG文字列が存在するか否かを判定する(ステップS21)。なお、閾値Kthは予め、CPU13に与えられている。
危険度スコアが閾値Kth以上のNG文字列が存在すると判定した場合には(ステップS21:Yes)、CPU13は、判定対象の暗証番号の強度を上げる必要があると判定する。この場合、CPU13は、暗証番号を強制的に変更させる画面を出力装置30に表示させ(ステップS22)、処理を終了する。
危険度スコアが閾値Kth以上のNG文字列が存在しないと判定した場合には(ステップS21:No)、CPU13は、判定対象の暗証番号の使用を許可するものの、当該暗証番号は危険性がやや高いと判定し、暗証番号の変更を勧奨する画面を出力装置30に表示させ(ステップS23)、処理を終了する。
次に、類似度の算出方法について、図10に示すフローチャートを参照して説明する。図10では、判定対象の認証アイテム(パスワード)が「a0sSn+e!4J」であり、一例として、図6に示すNG文字列リストの項番「004e」のNG文字列「sSn」との類似度を算出する例を用いて説明する。
CPU13は、判定対象のパスワード「a0sSn+e!4J」とNG文字列「sSn」とを比較する(ステップS31)。具体的には、CPU13は、判定対象のパスワードの先頭から3文字分の文字列「a0s」を切り出し、NG文字列「sSn」と切り出した文字列「a0s」とが完全一致するか否かを判定する(ステップS311)。NG文字列「sSn」と文字列「a0s」とは1文字も一致していないため、CPU13は、3文字中1文字も一致していないと判定する。
次に、CPU13は、判定対象のパスワードの2文字目から3文字分の文字列「0sS」を切り出し、NG文字列「sSn」と切り出した文字列「0sS」とが完全一致するか否かを判定する(ステップS312)。NG文字列「sSn」と文字列「0sS」とは1文字も一致していないため、CPU13は、3文字中1文字も一致していないと判定する。以下、CPU13は、判定対象のパスワードから3文字分の文字列を切り出す位置を1文字ずつ繰り下げながら、同様の処理を行う(ステップS313〜S318)。
判定対象のパスワードの最後の3文字分の文字列とNG文字列との比較が終了すると、CPU13は、判定対象のパスワードから切り出した文字列の中にNG文字列と完全一致するものがあるか否かを判定する(ステップS32)。
上述した例では、ステップS313において、NG文字列「sSn」と判定対象のパスワード「a0sSn+e!4J」の3文字目から3文字分の文字列「sSn」とが3文字中3文字とも一致しており、完全一致している。
判定対象のパスワードから切り出した文字列の中にNG文字列と完全一致するものがあると判定した場合には(ステップS32:Yes)、CPU13は、判定対象のパスワードとNG文字列との類似度Rを100と算出する(ステップS33)。
判定対象のパスワードから切り出した文字列の中にNG文字列と完全一致するものがないと判定した場合には(ステップS32:No)、CPU13は、判定対象のパスワードとNG文字列との類似度Rを0と算出する(ステップS34)。
なお、本実施形態では、NG文字列と判定対象のパスワードに含まれる文字列とが完全一致する場合には、類似度Rを100と算出し、それ以外の場合には、類似度Rを0と算出する例を用いて説明したが、これに限られるものでない。例えば、NG文字列と判定対象のパスワードに含まれる文字列とが部分一致する場合に、類似度100と類似度0との間の中間値を類似度Rとして算出するようにしてもよい。
上述したように、パスワードに漢字が用いられることは稀である。一方、パスワードリマインダには、漢字、平仮名、片仮名の入力が受け付けられることが多い。以下では、パスワードリマインダとして文字列「山本」の強度を判定する場合を例として説明する。
パスワードリマインダを判定対象とする場合、NG文字列リストには、図11に示すように、NG文字列として、漢字、平仮名、片仮名からなる文字列も格納される。図11では、NG文字列「Yamamoto」の派生文字列として、漢字表記の文字列「山本」が項番「001c」のNG文字列として追加されている。この場合、NG文字列「山本」の危険度スコアはNG文字列「Yamamoto」と同じ値が設定されている。また、NG文字列「山本」の重み付け係数は、姓のランキング(図4参照)に基づいて算出される。
図12は、パスワードリマインダを判定対象とした場合の、コンピュータ10の動作を示すフローチャートである。なお、図12において、図9と同様の処理については同じ符号を付し、説明を省略する。
CPU13は、判定対象のパスワードリマインダと、NG文字列リストのN番目のNG文字列との類似度Rを算出する(ステップS41)。NG文字列リストの最後の項番のNG文字列まで、全てのNG文字列との類似度を算出すると、CPU13は、判定対象のパスワードリマインダとの類似度が閾値Rth以上であるNG文字列が存在するか否かを判定する(ステップS42)。
類似度Rが閾値Rth以上のNG文字列が存在すると判定した場合には(ステップS42:Yes)、CPU13は、類似度Rが閾値Rth以上のNG文字列のなかに、危険度スコア(補正後の危険度スコア)が閾値Kth以上のNG文字列が存在するか否かを判定する(ステップS43)。
危険度スコアが閾値Kth以上のNG文字列が存在すると判定した場合には(ステップS43:Yes)、CPU13は、判定対象のパスワードリマインダの強度を上げる必要があると判定する。この場合、CPU13は、パスワードリマインダを強制的に変更させる画面を出力装置30に表示させ(ステップS44)、処理を終了する。
危険度スコアが閾値Kth以上のNG文字列が存在しないと判定した場合には(ステップS41:No)、CPU13は、判定対象のパスワードリマインダの使用を許可するものの、当該パスワードリマインダは危険性がやや高いと判定し、パスワードリマインダの変更を勧奨する画面を出力装置30に表示させ(ステップS45)、処理を終了する。したがって、パスワードリマインダについてもパスワードと同様に、ユーザの属性や外部状況の変化があった場合にも、強度の維持を図ることができる。
このように本実施形態によれば、認証アイテムの強度を判定する判定装置としてのコンピュータ10は、認証アイテムへの使用が好ましくない文字列を記憶する記憶部としての不揮発性メモリ12と、不揮発性メモリ12に記憶されている文字列に基づき、認証アイテムの強度を判定する制御部としてのCPU13とを備え、CPU13は、ユーザの属性および外部状況の少なくとも一方の変化に伴って新たに生じた、認証アイテムへの使用が好ましくない文字列を不揮発性メモリ12に記憶させる。
そのため、ユーザの属性や外部状況の変化に伴って、認証アイテムが事後的にユーザに関連する情報(文字列)といった、認証アイテムへの使用が好ましくない文字列を含むものとなった場合にも、その認証アイテムの強度を正しく判定することができ、認証アイテムの強度の維持を図ることができる。
なお、上述した実施形態においては、NG文字列の追加、記憶されているNG文字列に基づく、認証アイテムの強度の判定などをコンピュータ10にて、すなわち、端末ローカルにて行う例を用いて説明したが、これに限られるものではない。例えば、NG文字列の追加や、記憶されているNG文字列に基づく、認証アイテムの強度の判定といった機能を、リモートデスクトップのように、ユーザ側のローカル端末とネットワークを介して接続されたクラウド側の装置(サーバなど)に持たせてもよい。
本発明を図面および実施形態に基づき説明してきたが、当業者であれば本開示に基づき種々の変形または修正を行うことが容易であることに注意されたい。したがって、これらの変形または修正は本発明の範囲に含まれることに留意されたい。
10 コンピュータ(判定装置)
11 通信IF
12 不揮発性メモリ(記憶部)
13 CPU(制御部)
20 入力装置
30 出力装置

Claims (6)

  1. ユーザの認証に用いられる認証アイテムの強度を判定する判定装置であって、
    前記認証アイテムへの使用が好ましくない文字列を記憶する記憶部と、
    前記記憶部に記憶されている文字列に基づき、前記認証アイテムの強度を判定する制御部と、を備え、
    前記制御部は、前記ユーザの属性および外部状況の少なくとも一方の変化に伴って新たに生じた前記認証アイテムへの使用が好ましくない文字列を前記記憶部に記憶させることを特徴とする判定装置。
  2. 請求項1に記載の判定装置において、
    前記制御部は、前記認証アイテムを示す文字列との類似度が第1の閾値以上である文字列が前記記憶部に記憶されている場合、前記認証アイテムの強度を上げる必要があると判定し、前記認証アイテムの変更を強制することを特徴とする判定装置。
  3. 請求項2に記載の判定装置において、
    前記記憶部は、前記文字列に対応して、照合容易性に基づく前記文字列を前記認証アイテムに使用することの危険度を記憶し、
    前記制御部は、前記認証アイテムを示す文字列との類似度が前記第1の閾値以上である文字列が前記記憶部に記憶されており、該文字列の危険度が第2の閾値以上である場合、前記認証アイテムの強度を上げる必要があると判定し、前記認証アイテムの変更を強制することを特徴とする判定装置。
  4. 請求項3に記載の判定装置において、
    前記制御部は、前記認証アイテムを示す文字列との類似度が前記第1の閾値以上である文字列が前記記憶部に記憶されており、該文字列の危険度が前記第2の閾値未満である場合、前記認証アイテムの変更を前記ユーザに勧奨することを特徴とする判定装置。
  5. 請求項1から4のいずれか一項に記載の判定装置において、
    前記認証アイテムは、パスワードおよびパスワードリマインダの少なくとも一方であることを特徴とする判定装置。
  6. ユーザの認証に用いられる認証アイテムの強度を判定する判定装置における判定方法であって、
    記憶部が、前記認証アイテムへの使用が好ましくない文字列を記憶するステップと、
    制御部が、前記ユーザの属性および外部状況の少なくとも一方の変化に伴って新たに生じた前記認証アイテムへの使用が好ましくない文字列を前記記憶部に記憶させ、前記記憶部に記憶されている文字列に基づき、前記認証アイテムの強度を判定するステップと、を含むことを特徴とする判定方法。
JP2016094442A 2016-05-10 2016-05-10 判定装置および判定方法 Active JP6549063B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016094442A JP6549063B2 (ja) 2016-05-10 2016-05-10 判定装置および判定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016094442A JP6549063B2 (ja) 2016-05-10 2016-05-10 判定装置および判定方法

Publications (2)

Publication Number Publication Date
JP2017204056A true JP2017204056A (ja) 2017-11-16
JP6549063B2 JP6549063B2 (ja) 2019-07-24

Family

ID=60322904

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016094442A Active JP6549063B2 (ja) 2016-05-10 2016-05-10 判定装置および判定方法

Country Status (1)

Country Link
JP (1) JP6549063B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021060665A (ja) * 2019-10-03 2021-04-15 株式会社ロイヤリティマーケティング 情報処理装置、情報処理方法、データ構造およびプログラム
JP7265050B1 (ja) 2022-02-22 2023-04-25 楽天グループ株式会社 パスワード管理システム、パスワード管理方法、及びプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006252000A (ja) * 2005-03-09 2006-09-21 Fujitsu Ltd 暗証番号/パスワード見直し喚起案内方法、システム、および装置
US20120167225A1 (en) * 2010-12-28 2012-06-28 Sap Ag Password protection using personal information
US20140068731A1 (en) * 2012-08-31 2014-03-06 International Business Machines Corporation Managing password strength
WO2014208627A1 (ja) * 2013-06-25 2014-12-31 楽天株式会社 ユーザ認証システム、ユーザ認証方法、プログラム及び情報記憶媒体
WO2015198463A1 (ja) * 2014-06-27 2015-12-30 楽天株式会社 情報処理装置、情報処理方法、プログラム、記憶媒体及びパスワード入力装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006252000A (ja) * 2005-03-09 2006-09-21 Fujitsu Ltd 暗証番号/パスワード見直し喚起案内方法、システム、および装置
US20120167225A1 (en) * 2010-12-28 2012-06-28 Sap Ag Password protection using personal information
US20140068731A1 (en) * 2012-08-31 2014-03-06 International Business Machines Corporation Managing password strength
WO2014208627A1 (ja) * 2013-06-25 2014-12-31 楽天株式会社 ユーザ認証システム、ユーザ認証方法、プログラム及び情報記憶媒体
WO2015198463A1 (ja) * 2014-06-27 2015-12-30 楽天株式会社 情報処理装置、情報処理方法、プログラム、記憶媒体及びパスワード入力装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021060665A (ja) * 2019-10-03 2021-04-15 株式会社ロイヤリティマーケティング 情報処理装置、情報処理方法、データ構造およびプログラム
JP7353901B2 (ja) 2019-10-03 2023-10-02 株式会社ロイヤリティマーケティング 情報処理装置、情報処理方法およびプログラム
JP7265050B1 (ja) 2022-02-22 2023-04-25 楽天グループ株式会社 パスワード管理システム、パスワード管理方法、及びプログラム
JP2023122055A (ja) * 2022-02-22 2023-09-01 楽天グループ株式会社 パスワード管理システム、パスワード管理方法、及びプログラム

Also Published As

Publication number Publication date
JP6549063B2 (ja) 2019-07-24

Similar Documents

Publication Publication Date Title
CN110495132B (zh) 用于在分布式网络节点内生成、上传和执行代码区块的系统和方法
US10275602B2 (en) Method and apparatus for an end user identity protection suite
US8973116B2 (en) Pattern entropy password strength estimator
US20150271167A1 (en) Method of Altering Authentication Information to Multiple Systems
US11989218B1 (en) Authenticated form completion using data from a networked data repository
US20080155398A1 (en) System and method for adaptive spell checking
US20120167225A1 (en) Password protection using personal information
US20160156617A1 (en) Systems and methods for providing a covert password manager
WO2010014491A2 (en) Verifying an electronic document
WO2014207826A1 (ja) ユーザ認証システム、ユーザ認証方法、プログラム及び情報記憶媒体
US20230111739A1 (en) Collaborative in-line content item annotations
JP5069457B2 (ja) 認証システム、認証方法、及びプログラム
US9648011B1 (en) Tokenization-driven password generation
JP6549063B2 (ja) 判定装置および判定方法
US20190130095A1 (en) Computing device, information processing device, control program, and control method
WO2014058569A1 (en) Generating a password from a media item
EP2947591A1 (en) Authentication by Password Mistyping Correction
US20140032373A1 (en) Heuristic data entry system and method
JP5981663B2 (ja) 情報処理装置、情報処理方法、プログラム、記憶媒体及びパスワード入力装置
JP3935125B2 (ja) 文字列入力支援装置及びプログラム
JP5009105B2 (ja) 情報処理装置、入力情報制御方法、及びプログラム
JP4942101B2 (ja) 認証システム及び認証プログラム
US20200089908A1 (en) System, Method, and Apparatus for Digitally Managing Personal Data
JP6760893B2 (ja) 入力内容確認画面表示装置、入力内容確認画面表示方法及び入力内容確認画面表示プログラム
JP5356584B2 (ja) 認証システム、認証方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180607

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190416

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190614

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190625

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190626

R150 Certificate of patent or registration of utility model

Ref document number: 6549063

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150