JP2018180911A - Authentication device, authentication program, and authentication method - Google Patents

Authentication device, authentication program, and authentication method Download PDF

Info

Publication number
JP2018180911A
JP2018180911A JP2017079202A JP2017079202A JP2018180911A JP 2018180911 A JP2018180911 A JP 2018180911A JP 2017079202 A JP2017079202 A JP 2017079202A JP 2017079202 A JP2017079202 A JP 2017079202A JP 2018180911 A JP2018180911 A JP 2018180911A
Authority
JP
Japan
Prior art keywords
password
authentication
storage unit
value
unit
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
JP2017079202A
Other languages
Japanese (ja)
Other versions
JP6816623B2 (en
Inventor
茂明 小池
Shigeaki Koike
茂明 小池
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017079202A priority Critical patent/JP6816623B2/en
Publication of JP2018180911A publication Critical patent/JP2018180911A/en
Application granted granted Critical
Publication of JP6816623B2 publication Critical patent/JP6816623B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

PROBLEM TO BE SOLVED: To prevent authentication by a password of an attacker without blocking authentication by a password of an authorized user.SOLUTION: An authentication device includes: a counting unit that counts, when storing a newly failed password or corresponding value of the password in a storage unit for storing a predetermined number of passwords or corresponding values of the passwords failed in authentication processing before accepting each correct password, a number of passwords or corresponding values of the passwords to be lost from the storage unit; and an authentication unit that resets, when the counted value is equal to or more than the predetermined number, the counted value without determining that the authentication process is successful when accepting input of a correct password.SELECTED DRAWING: Figure 1

Description

本発明は、認証装置、認証プログラム及び認証方法に関する。   The present invention relates to an authentication device, an authentication program, and an authentication method.

ユーザ名とパスワードの2つの文字列の組み合わせによる認証方法には、悪意を持った攻撃者がすべての文字列パターンを総当りで入力すると、膨大な時間がかかったとしてもいつかは必ず認証に成功してしまうという課題がある。   In the authentication method based on the combination of two strings of username and password, if a malicious attacker inputs all string patterns in a round-robin manner, authentication will always succeed even if it takes a huge amount of time. There is a problem that you

そこで、入力されたパスワードを解析して攻撃者による総当たり攻撃であるかどうかを判定し、攻撃者に対しては、不正なパスワード試行を何回か行わせた後、偽サーバにログインさせる技術が提案されている(例えば、特許文献1参照)。特許文献1では、総当たり攻撃かどうかの判別は、誤ったパスワードを入力したことでログインに失敗したときの回数をカウントすることにより行う。その際、正規のユーザが、間違いやすいパスワードを誤って入力したときには、ログインに失敗した回数にカウントしない処理を行う。   Therefore, this technology analyzes the input password to determine whether it is a brute force attack by an attacker, and makes the attacker log in to a fake server after having made several unauthorized password attempts. Has been proposed (see, for example, Patent Document 1). In Patent Document 1, it is determined whether or not a brute force attack is performed by counting the number of times when login fails due to the input of an incorrect password. At this time, when a legitimate user erroneously inputs a password that is likely to be mistaken, processing is performed in which the number of unsuccessful login attempts is not counted.

特開2001−282739号公報JP 2001-282739 A 特開2011−59880号公報JP 2011-59880 A

しかしながら、上記手法では、間違いやすいパスワードは、例えば隣のキー、大文字と小文字等、予め定義されている。よって、予め定義されたパスワードの誤り以外のパスワードの誤入力は、正規ユーザの行為とはみなされず、悪意を持った攻撃者の行為であると判定され、ログインに失敗した回数にカウントされる。よって、上記手法では、正規ユーザのパスワードによる認証を阻害する場合がある。   However, in the above method, a password that is easy to be mistaken is previously defined, for example, the next key, upper case, and lower case. Therefore, incorrect input of a password other than the error of the predefined password is not considered to be an act of a legitimate user, is determined to be an act of a malicious attacker, and is counted as the number of unsuccessful login attempts. Therefore, in the above method, authentication by the password of a legitimate user may be hindered.

そこで、1つの側面では、正規ユーザのパスワードによる認証を阻害せず、攻撃者のパスワードによる認証を阻止することを目的とする。   Therefore, in one aspect, it is an object of the present invention to prevent authentication by an attacker's password without disturbing authentication by an authorized user's password.

1つの実施態様では、正しいパスワードを受け付ける前に認証処理に失敗したパスワード又は該パスワードの対応値を所定個数記憶する記憶部に、新たに認証処理に失敗したパスワード又は該パスワードの対応値を記憶する際、該記憶部から消失するパスワード又は該パスワードの対応値の個数をカウントするカウント部と、前記カウントした値が所定個数以上である場合、正しいパスワードの入力を受け付けたときに認証処理に成功したと判定せずに、前記カウントした値をリセットする認証部と、を有する認証装置が提供される。   In one embodiment, a password for which authentication processing has failed anew or a corresponding value of the password is stored in a storage unit that stores a predetermined number of passwords for which authentication processing has failed before receiving a correct password or the corresponding value of the password. In the case where the password is lost from the storage unit or the counting unit for counting the number of corresponding values of the password, and when the counted value is equal to or more than the predetermined number, the authentication processing is successful when the input of the correct password is accepted. There is provided an authentication device including: an authentication unit that resets the counted value without determining that it is.

1つの側面では、本発明は、正規ユーザのパスワードによる認証を阻害せず、攻撃者のパスワードによる認証を阻止することができる。   In one aspect, the present invention can prevent authentication by an attacker's password without inhibiting authentication by a legitimate user's password.

一実施形態に係る認証システムの構成及び認証サーバの機能構成の一例を示す図。The figure which shows an example of a structure of the authentication system which concerns on one Embodiment, and a function structure of an authentication server. 一実施形態に係る認証装置(端末装置)の機能構成の他の例を示す図。The figure which shows the other example of a function structure of the authentication apparatus (terminal device) which concerns on one Embodiment. 一実施形態に係る認証サーバのハードウェア構成の一例を示す図。The figure which shows an example of the hardware constitutions of the authentication server which concerns on one Embodiment. 一実施形態に係る初期化処理の一例を示すフローチャート。5 is a flowchart illustrating an example of an initialization process according to an embodiment. 一実施形態に係る初期化処理時の記憶部の状態の一例を示す図。FIG. 6 is a view showing an example of the state of a storage unit at the time of initialization processing according to an embodiment. 一実施形態に係る認証処理の一例を示すフローチャート。The flowchart which shows an example of the authentication process which concerns on one Embodiment. 一実施形態に係る認証処理(続き)の一例を示すフローチャート。The flowchart which shows an example of the authentication process (continuation) which concerns on one Embodiment. 一実施形態に係る認証処理時のパスワード履歴記憶部の状態の一例を示す図。FIG. 7 is a view showing an example of the state of a password history storage unit at the time of authentication processing according to an embodiment. 一実施形態に係る認証処理時の出現頻度記憶部の状態の一例を示す図。The figure which shows an example of the state of the appearance frequency memory | storage part at the time of the authentication process which concerns on one Embodiment. 一実施形態に係る攻撃判定処理の一例を示すフローチャート。The flowchart which shows an example of the attack determination processing which concerns on one Embodiment. 一実施形態に係る攻撃判定時のパスワード履歴記憶部及び出現頻度記憶部の状態の一例を示す図。The figure which shows an example of the state of the password log | history memory | storage part at the time of the attack determination which concerns on one Embodiment, and an appearance frequency memory | storage part. 一実施形態に係る攻撃判定時の出現頻度記憶部の状態の一例を示す図。The figure which shows an example of the state of the appearance frequency memory | storage part at the time of the attack determination which concerns on one Embodiment. 一実施形態の変形例に係る認証サーバの機能構成の一例を示す図。The figure which shows an example of a function structure of the authentication server which concerns on the modification of one Embodiment. 一実施形態の変形例に係る出現頻度記憶部及び出現頻度共有記憶部の状態の一例を示す図。The figure which shows an example of the state of the appearance frequency memory | storage part which concerns on the modification of one Embodiment, and the appearance frequency share memory | storage part. 一実施形態の変形例に係る出現頻度記憶部及び出現頻度共有記憶部の状態の一例を示す図。The figure which shows an example of the state of the appearance frequency memory | storage part which concerns on the modification of one Embodiment, and the appearance frequency share memory | storage part. 一実施形態の変形例に係る攻撃判定処理の一例を示すフローチャート。The flowchart which shows an example of the attack determination processing which concerns on the modification of one Embodiment. 一実施形態の変形例に係る攻撃判定時の出現頻度記憶部の状態の一例を示す図。The figure which shows an example of the state of the appearance frequency memory | storage part at the time of the attack determination which concerns on the modification of one Embodiment.

以下、本発明の実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。   Hereinafter, embodiments of the present invention will be described with reference to the attached drawings. In the present specification and the drawings, components having substantially the same functional configuration are denoted by the same reference numerals and redundant description will be omitted.

[認証装置の機能構成]
まず、本発明の一実施形態に係る認証システム1の構成及び認証サーバ10の機能構成の一例について、図1を参照しながら説明する。図1は、一実施形態に係る認証システム1の構成及び認証サーバ10の機能構成の一例を示す。
[Functional configuration of authentication device]
First, an example of a configuration of an authentication system 1 according to an embodiment of the present invention and a functional configuration of an authentication server 10 will be described with reference to FIG. FIG. 1 shows an example of the configuration of an authentication system 1 and the functional configuration of an authentication server 10 according to an embodiment.

本実施形態に係る認証システム1は、認証サーバ10及び端末装置20を有する。認証サーバ10と端末装置20とは、ネットワーク30を介して接続されている。ネットワーク30は、公衆ネットワーク、LAN(Local Area Network)等のネットワークであってもよい。   The authentication system 1 according to the present embodiment includes an authentication server 10 and a terminal device 20. The authentication server 10 and the terminal device 20 are connected via the network 30. The network 30 may be a network such as a public network or a LAN (Local Area Network).

認証サーバ10は、端末装置20のログイン画面から入力されたユーザ名及びパスワードをネットワーク30を介して取得し、正しいユーザ名及びパスワードが入力されたか否かを判定する。認証サーバ10は、正しいユーザ名及びパスワードが入力されたと判定すると、認証処理の成功を端末装置20に通知し、端末装置20のログインを許可する。認証サーバ10は、認証装置の一例であり、認証機能と通信機能とを有する電子機器で構成され得る。認証サーバ10は、クラウド上のサーバであってもよい。   The authentication server 10 acquires the username and password input from the login screen of the terminal device 20 via the network 30, and determines whether or not the correct username and password have been input. If the authentication server 10 determines that the correct username and password have been input, the authentication server 10 notifies the terminal device 20 of the success of the authentication process, and permits the terminal device 20 to log in. The authentication server 10 is an example of an authentication device, and can be configured by an electronic device having an authentication function and a communication function. The authentication server 10 may be a server on the cloud.

端末装置20は、PC(Personal Computer)、タブレット型端末、スマートフォン、PDA(Personal Digital Assistants)、携帯電話、HMD(Head Mount Display)、FMD(Face Mount Display)等のウェアラブルデバイスであってもよい。   The terminal device 20 may be a wearable device such as a PC (Personal Computer), a tablet terminal, a smartphone, a PDA (Personal Digital Assistants), a mobile phone, an HMD (Head Mount Display), and an FMD (Face Mount Display).

なお、認証サーバ10の認証機能を端末装置20の内部に有してもよい。この場合、図2に示すように、端末装置20が、図1の認証サーバ10と同じ認証機能を有する。図2の端末装置20もまた、直接入力されたユーザ名及びパスワードが正しいかを判定し、正しい場合にはユーザにログインを許可する認証装置の一例である。   The authentication function of the authentication server 10 may be provided inside the terminal device 20. In this case, as shown in FIG. 2, the terminal device 20 has the same authentication function as the authentication server 10 of FIG. The terminal device 20 of FIG. 2 is also an example of an authentication device that determines whether the directly input user name and password are correct and, if correct, permits the user to log in.

以下、本実施形態では、図1の認証サーバ10による認証機能及び動作を説明することで、同じ機能を有する図2の端末装置20の認証機能及び動作については説明を省略する。   Hereinafter, in the present embodiment, the authentication function and operation of the authentication server 10 of FIG. 1 will be described, and the description of the authentication function and operation of the terminal device 20 of FIG. 2 having the same function will be omitted.

[機能構成]
一実施形態に係る認証サーバ10の機能構成の一例について説明する。本実施形態に係る認証サーバ10は、入力受付部11、入力チェック部12、記憶部13、パスワード変換部14、カウント部15、認証部16及び制御部17を有する。
[Function configuration]
An example of a functional configuration of the authentication server 10 according to an embodiment will be described. The authentication server 10 according to the present embodiment includes an input reception unit 11, an input check unit 12, a storage unit 13, a password conversion unit 14, a count unit 15, an authentication unit 16, and a control unit 17.

入力受付部11は、ネットワーク30を介して端末装置20からユーザ名及びパスワードを受け付ける。入力チェック部12は、受け付けたユーザ名が存在するか、またパスワードが正しいかを判定する。   The input accepting unit 11 accepts a user name and a password from the terminal device 20 via the network 30. The input check unit 12 determines whether the accepted user name exists and whether the password is correct.

パスワード変換部14は、入力されたパスワード文字列をハッシュ関数などを使って出現頻度記憶部132の記憶領域の大きさの範囲の数値に変換する。パスワード変換部14は、入力されたパスワードをハッシュ値以外の値に変換してもよい。ハッシュ関数の一例としては、与えられた入力に対して128ビットのハッシュ値を出力するMD5(エムディーファイブ、Message Digest Algorithm5)が挙げられる。   The password conversion unit 14 converts the input password character string into a numerical value in the range of the size of the storage area of the appearance frequency storage unit 132 using a hash function or the like. The password conversion unit 14 may convert the input password into a value other than the hash value. As an example of the hash function, there is MD5 (MD Five, Message Digest Algorithm 5) that outputs a 128-bit hash value for a given input.

認証部16は、受け付けたユーザ名及びパスワードに基づき認証処理を行う。認証部16は、記憶部13に記憶されているユーザ毎のユーザ名文字列及びパスワード文字列135のうち、端末装置のシリアル番号等から特定されるユーザのユーザ名文字列及びパスワード文字列135と、受け付けたユーザ名及びパスワードとを比較する。ユーザ名文字列及びパスワード文字列135はユーザ毎に事前に登録されている。   The authentication unit 16 performs an authentication process based on the received user name and password. Among the user name character string and password character string 135 for each user stored in the storage unit 13, the authentication unit 16 and the user name character string and password character string 135 of the user specified from the serial number of the terminal device and the like , Compare the accepted username and password. The username string and the password string 135 are registered in advance for each user.

認証部16は、比較の結果、ユーザ名及びパスワードが一致すると判定した場合、認証に成功したと判定し、ユーザ名及びパスワードが一致しないと判定した場合、認証に失敗したと判定する。ただし、総当たり攻撃と判定されている間は、正しいパスワードが入力されても、一度は認証に成功したと判定しない。   If it is determined that the user name and the password match as a result of the comparison, the authentication unit 16 determines that the authentication is successful, and if it determines that the user name and the password do not match, it determines that the authentication fails. However, while a brute force attack is determined, even if the correct password is input, it is not determined that the authentication is successful once.

記憶部13は、ユーザ毎の記憶領域を有する。例えば、ユーザA用記憶部13aには、ユーザAのためのパスワード履歴記憶部131a、出現頻度記憶部132a、動作モードフラグ133a、認証状態フラグ134aを有する。ユーザB用記憶部13b及びユーザC用記憶部13cも同様に、上記2つの記憶部と2つのフラグを有する。   The storage unit 13 has a storage area for each user. For example, the user A storage unit 13a includes a password history storage unit 131a for the user A, an appearance frequency storage unit 132a, an operation mode flag 133a, and an authentication status flag 134a. Similarly, the user B storage unit 13 b and the user C storage unit 13 c also have the above two storage units and two flags.

以下、ユーザA用記憶部13a、ユーザB用記憶部13b、ユーザC用記憶部13cを含むユーザ毎に設けられた記憶部のすべてを記憶部13と総称する。また、パスワード履歴記憶部131a、131b・・・をパスワード履歴記憶部131と総称する。また、出現頻度記憶部132a、132b・・・を出現頻度記憶部132と総称する。また、動作モードフラグ133a、133b・・・を動作モードフラグ133と総称する。また、認証状態フラグ134a、134b・・・を認証状態フラグ134と総称する。つまり、パスワード履歴記憶部131、出現頻度記憶部132、動作モードフラグ133及び認証状態フラグ134はユーザ毎にそれぞれ独立して確保される。各情報の記憶場所が確保されるユーザ数は、ユーザA,ユーザB、ユーザCの3人に限られず、1人であっても、2人以上であってもよい。   Hereinafter, all storage units provided for each user, including the storage unit for user A 13a, the storage unit for user B 13b, and the storage unit for user C 13c, are collectively referred to as the storage unit 13. The password history storage units 131a, 131b,... Are collectively referred to as a password history storage unit 131. The appearance frequency storage units 132a, 132b,... Are collectively referred to as an appearance frequency storage unit 132. The operation mode flags 133a, 133b,... Are collectively referred to as operation mode flags 133. Further, the authentication status flags 134a, 134b,... Are collectively referred to as an authentication status flag 134. That is, the password history storage unit 131, the appearance frequency storage unit 132, the operation mode flag 133, and the authentication state flag 134 are secured independently for each user. The number of users for which the storage location of each information is secured is not limited to three of the user A, the user B, and the user C, and may be one or two or more.

パスワード履歴記憶部131は、ユーザが入力した所定個の直近のパスワード文字列をハッシュ化したハッシュ値を記憶する。図1はパスワード文字列をハッシュ化したハッシュ値の履歴の数を4個として記載しているが、特に4個に限定するものではない。   The password history storage unit 131 stores a hash value obtained by hashing a predetermined number of latest password strings input by the user. Although FIG. 1 describes the number of hash value histories obtained by hashing the password character string as four, it is not particularly limited to four.

出現頻度記憶部132は、入力されたパスワードのハッシュ値ごとにその入力の有無を示す情報を記憶する。本実施形態では、出現頻度記憶部132は、合計55個分の情報を記憶できる。しかしながら、出現頻度記憶部132は、特に55個に限定するものでなく、認証サーバ10の持つメモリや処理性能の許す範囲でなるべく大きな数の情報を記憶できるように設計することが望ましい。   The appearance frequency storage unit 132 stores, for each hash value of the input password, information indicating the presence or absence of the input. In the present embodiment, the appearance frequency storage unit 132 can store information for a total of 55 pieces. However, the appearance frequency storage unit 132 is not particularly limited to 55. It is desirable to design the appearance frequency storage unit 132 so as to store as large a number of information as possible within the memory of the authentication server 10 and the processing performance.

動作モードフラグ133は、総当り攻撃の兆候が検出された場合に動作モードを通常状態からブロック状態に変更したことを記憶するフラグである。動作モードフラグ133は、総当り攻撃を受けていないことを示す通常状態か、総当り攻撃を受けていることを示すブロック状態かのいずれかに設定される。   The operation mode flag 133 is a flag for storing that the operation mode has been changed from the normal state to the block state when the indication of the brute force attack is detected. The operation mode flag 133 is set to either a normal state indicating that a brute force attack has not been received or a blocked state indicating that a brute force attack has been received.

認証状態フラグ134は、正しいユーザ名及びパスワードが入力されて認証に成功したかどうかを記憶する。認証状態フラグ134は、認証に成功した状態を示す認証状態か、認証に失敗した状態又は認証前の状態を示す非認証かのいずれかに設定される。   The authentication status flag 134 stores whether or not the correct username and password are input and the authentication is successful. The authentication status flag 134 is set to either an authentication status indicating a status of successful authentication or a non-authentication status indicating a status of failed authentication or a status before authentication.

カウント部15は、正しいパスワードを受け付ける前に認証処理に失敗したパスワード又はパスワードに対応するハッシュ値を記憶するパスワード履歴記憶部131に、新たに認証処理に失敗したパスワード又はハッシュ値を記憶する際、パスワード履歴記憶部131から追い出される(消失する)パスワード又はハッシュ値の個数をカウントする。ハッシュ値は、パスワードに対応するパスワードの対応値の一例である。   When storing the password or hash value for which the authentication process has failed anew in the password history storage unit 131 that stores the password for which the authentication process failed before receiving the correct password or the hash value corresponding to the password. The number of passwords or hash values evicted (lost) from the password history storage unit 131 is counted. The hash value is an example of the corresponding value of the password corresponding to the password.

例えば、ユーザA用記憶部13aのパスワード履歴記憶部131aには、最新、1つ前、2つ前、3つ前の認証処理に失敗した4つのハッシュ値が格納される。本実施形態では、パスワードの対応値としてハッシュ値が記憶される。しかしながら、パスワード履歴記憶部131aには、ハッシュ値が記憶される替わりにパスワード自体が記憶されてもよい。   For example, in the password history storage unit 131a of the storage unit 13a for user A, four hash values that have failed in the latest, one before, two before, three before authentication processing are stored. In the present embodiment, a hash value is stored as the corresponding value of the password. However, instead of storing the hash value, the password itself may be stored in the password history storage unit 131a.

最新、1つ前、2つ前、3つ前の認証処理に失敗したハッシュ値が記憶されている場合、次に認証処理に失敗したハッシュ値をパスワード履歴記憶部131aに記憶させるためには、FIFO(First In First Out)により3つ前の認証処理に失敗したハッシュ値がパスワード履歴記憶部131aから追い出され、消失される。そして、格納されているハッシュ値を一つずつずらして最新の認証処理に失敗したハッシュ値を新たにパスワード履歴記憶部131aに記憶する。カウント部15は、パスワード履歴記憶部131aから消失されるハッシュ値の個数をカウントし、カウント値を得る。実際には、カウント部15は、出現頻度記憶部132の各ハッシュ値の領域の正の値の個数をカウントする。   In the case where a hash value that has failed in the latest, one previous, two previous, or three previous authentication processes is stored, in order to store in the password history storage unit 131a the hash value that has failed in the next authentication process, The hash value that failed in the authentication process three previous times by FIFO (First In First Out) is evicted from the password history storage unit 131a and lost. Then, the stored hash values are shifted one by one, and the hash values that have failed in the latest authentication process are newly stored in the password history storage unit 131a. The counting unit 15 counts the number of hash values lost from the password history storage unit 131a, and obtains a count value. In practice, the counting unit 15 counts the number of positive values of the area of each hash value of the appearance frequency storage unit 132.

認証部16は、正規ユーザに対する認証処理を行うとともに、攻撃者が端末装置20を利用して、すべての文字列パターンを総当りで入力する「総当たり攻撃」の判定を行う。認証部16は、出現頻度記憶部132の内容をチェックし、カウント部15がカウントした出現頻度記憶部132の正の領域の個数から攻撃の兆候を判断する。総当たり攻撃の判定では、認証部16は、カウント値が所定個数以上である場合、正しいパスワードの入力を受け付けたときに認証処理に成功した判定せずに、カウント値をリセットする。一方、認証部16、カウント値が所定個数未満である場合、正しいパスワードの入力を受け付けたときに認証処理に成功したと判定する。   The authentication unit 16 performs an authentication process on an authorized user, and also uses the terminal device 20 to determine a “round-robin attack” in which all character string patterns are input in a round-robin manner. The authentication unit 16 checks the contents of the appearance frequency storage unit 132, and determines an indication of an attack from the number of positive areas in the appearance frequency storage unit 132 counted by the counting unit 15. In the determination of the brute force attack, when the count value is equal to or more than the predetermined number, the authentication unit 16 resets the count value without determining that the authentication process is successful when the input of the correct password is accepted. On the other hand, when the authentication unit 16 receives an input of a correct password when the count value is less than the predetermined number, it is determined that the authentication process has succeeded.

制御部17は、認証サーバ10の全体を制御する。また、制御部17は、パスワード履歴記憶部131及び出現頻度記憶部132等の記憶部13へのデータ格納を制御する。なお、図2は機能に着目したブロック図を描いており、これらの機能ブロックで示した各部のソフトウエアを実行するプロセッサは、一例を図3に示すようにハードウェアである。   The control unit 17 controls the entire authentication server 10. Further, the control unit 17 controls data storage in the storage unit 13 such as the password history storage unit 131 and the appearance frequency storage unit 132. Note that FIG. 2 is a block diagram focusing on functions, and a processor that executes software of each unit indicated by these functional blocks is hardware as shown in FIG. 3 as an example.

[ハードウェア構成]
次に、本実施形態に係る認証サーバ10のハードウェア構成について、図3を参照して説明する。図3は、本実施形態に係る認証サーバ10のハードウェア構成の一例を示す。認証サーバ10は、入力装置101、出力装置102、外部I/F103、RAM(Random Access Memory)104、ROM(Read Only Memory)105、CPU(Central Processing Unit)106、通信I/F107、及びHDD(Hard Disk Drive)108などを備え、それぞれがバスBで相互に接続されている。
[Hardware configuration]
Next, the hardware configuration of the authentication server 10 according to the present embodiment will be described with reference to FIG. FIG. 3 shows an example of the hardware configuration of the authentication server 10 according to the present embodiment. The authentication server 10 includes an input device 101, an output device 102, an external I / F 103, a random access memory (RAM) 104, a read only memory (ROM) 105, a central processing unit (CPU) 106, a communication I / F 107, and an HDD (HDD). The hard disk drive 108 and the like are connected to one another by a bus B.

入力装置101は、キーボードやマウスなどを含み、認証サーバ10に各操作信号を入力するために用いられる。出力装置102は、LCD(Liquid crystal Display)モニタ等のディスプレイ、プリンタ、CRT(Cathode Ray Tube)などを含み、各種の処理結果を出力する。通信I/F107は、認証サーバ10をネットワークに接続するインターフェースである。これにより、認証サーバ10は、通信I/F107を介して、他の機器(端末装置20等)とデータ通信を行うことができる。   The input device 101 includes a keyboard, a mouse and the like, and is used to input each operation signal to the authentication server 10. The output device 102 includes a display such as a liquid crystal display (LCD) monitor, a printer, a cathode ray tube (CRT), and the like, and outputs various processing results. The communication I / F 107 is an interface for connecting the authentication server 10 to a network. Thus, the authentication server 10 can perform data communication with another device (terminal device 20 or the like) via the communication I / F 107.

HDD108は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、認証サーバ10の全体を制御する基本ソフトウェア及びアプリケーションソフトウェアがある。例えば、HDD108には、各種のデータベースやプログラム等が格納されてもよい。   The HDD 108 is a non-volatile storage device storing programs and data. The programs and data to be stored include basic software and application software that control the entire authentication server 10. For example, the HDD 108 may store various databases, programs, and the like.

外部I/F103は、外部装置とのインターフェースである。外部装置には、記録媒体103aなどがある。これにより、認証サーバ10は、外部I/F103を介して記録媒体103aの読み取り及び/又は書き込みを行うことができる。記録媒体103aには、CD(Compact Disk)、及びDVD(Digital Versatile Disk)、ならびに、SDメモリカード(SD Memory card)やUSBメモリ(Universal Serial Bus memory)等がある。   The external I / F 103 is an interface with an external device. The external device is, for example, a recording medium 103a. Thereby, the authentication server 10 can read and / or write the recording medium 103 a via the external I / F 103. The recording medium 103 a includes a CD (Compact Disk), a DVD (Digital Versatile Disk), an SD memory card (SD Memory card), a USB memory (Universal Serial Bus memory), and the like.

ROM105は、電源を切っても内部データを保持することができる不揮発性の半導体メモリである。ROM105には、ネットワーク設定等のプログラム及びデータが格納されている。RAM104は、認証プログラム等のプログラムやデータを一時保持する揮発性の半導体メモリである。CPU106は、HDD108やROM105などの記憶装置から、認証プログラム等のプログラムやデータをRAM104上に読み出し、処理を実行することで、装置全体の制御や搭載機能を実現する演算装置である。   The ROM 105 is a non-volatile semiconductor memory that can hold internal data even when the power is turned off. The ROM 105 stores programs and data such as network settings. The RAM 104 is a volatile semiconductor memory that temporarily holds programs such as an authentication program and data. The CPU 106 is an arithmetic device that realizes control of the entire apparatus and a built-in function by reading programs and data such as an authentication program from the storage device such as the HDD 108 and the ROM 105 onto the RAM 104 and executing processing.

かかる構成により、本実施形態に係る認証サーバ10では、CPU106が、例えばRAM104、ROM105、HDD108内に格納された認証プログラム及びデータを用いて初期化処理、認証処理及び攻撃判定処理を実行する。なお、パスワード履歴記憶部131、出現頻度記憶部132、動作モードフラグ133、認証状態フラグ134及び登録されたユーザ名文字列並びにパスワード文字列135の各情報は、RAM104、HDD108、又はネットワークを介して認証サーバ10に接続されるクラウド上のサーバ等に格納され得る。   With this configuration, in the authentication server 10 according to the present embodiment, the CPU 106 executes an initialization process, an authentication process, and an attack determination process using, for example, the authentication program and data stored in the RAM 104, the ROM 105, and the HDD 108. The password history storage unit 131, the appearance frequency storage unit 132, the operation mode flag 133, the authentication status flag 134, the registered user name character string, and the password character string 135 are stored in the RAM 104, the HDD 108, or the network. It may be stored in a server on the cloud connected to the authentication server 10 or the like.

また、入力受付部11の機能は、例えば、入力装置101により実現可能である。入力チェック部12、パスワード変換部14、カウント部15、認証部16及び制御部17の機能は、例えば、認証プログラムがCPU106に実行させる処理により実現される。   Also, the function of the input reception unit 11 can be realized by the input device 101, for example. The functions of the input check unit 12, the password conversion unit 14, the count unit 15, the authentication unit 16, and the control unit 17 are realized by, for example, processing that the authentication program causes the CPU 106 to execute.

[初期化処理]
次に、本実施形態に係る認証サーバ10の動作について説明する。まず、認証サーバ10が行う初期化処理の一例について、図4を参照して説明する。図4は、一実施形態に係る初期化処理の一例を示したフローチャートである。
[Initialization process]
Next, the operation of the authentication server 10 according to the present embodiment will be described. First, an example of the initialization process performed by the authentication server 10 will be described with reference to FIG. FIG. 4 is a flowchart illustrating an example of the initialization process according to an embodiment.

初期化処理が開始されると、制御部17は、記憶部13に記憶されている動作モードフラグ133の状態を「通常」に設定する(ステップS1)。次に、制御部17は、パスワード履歴記憶部131をすべて空にする(ステップS2)。次に、制御部17は、出現頻度記憶部132のすべての領域の値を0にする(ステップS3)。次に、制御部17は、認証状態フラグ134の状態を「非認証」に設定し(ステップS4)、本処理を終了する。以上のステップは、すべての登録ユーザに対して行われる。   When the initialization process is started, the control unit 17 sets the state of the operation mode flag 133 stored in the storage unit 13 to "normal" (step S1). Next, the control unit 17 empties all the password history storage unit 131 (step S2). Next, the control unit 17 sets the values of all the regions of the appearance frequency storage unit 132 to 0 (step S3). Next, the control unit 17 sets the status of the authentication status flag 134 to "non-authentication" (step S4), and ends this processing. The above steps are performed for all registered users.

初期化処理が行われた結果、記憶部13の状態は、すべての登録ユーザに対して、図5に示すように、パスワード履歴記憶部131のすべてが空の状態になり、出現頻度記憶部132の55個の領域のすべてに「0」が設定される。また、動作モードフラグは、攻撃者のパスワードによる認証でない(正規者のパスワードによる認証である)ことを示す「通常」状態に設定される。認証状態フラグは、認証前の状態を示す「非認証」に設定される。   As a result of the initialization processing being performed, the state of the storage unit 13 becomes empty for all registered users, as shown in FIG. "0" is set to all 55 areas of In addition, the operation mode flag is set to the “normal” state, which indicates that authentication by the attacker's password is not performed (authentication by the legitimate user's password). The authentication status flag is set to "non-authentication" indicating the status before authentication.

[認証処理]
次に、認証サーバ10が行う認証処理の一例について、図6及び図7を参照して説明する。図6および図7は、一実施形態に係る認証処理の一例を示すフローチャートである。ユーザが、端末装置20のログイン画面からユーザ名とパスワードを入力すると、入力受付部11は、ユーザ名及びパスワードの入力を受け付け(ステップS10)、入力チェック部12に送る。
[Authentication process]
Next, an example of the authentication process performed by the authentication server 10 will be described with reference to FIGS. 6 and 7. 6 and 7 are flowcharts showing an example of an authentication process according to an embodiment. When the user inputs the user name and password from the login screen of the terminal device 20, the input accepting unit 11 accepts input of the user name and password (step S10), and sends it to the input checking unit 12.

次に、入力チェック部12は、記憶部13を参照して、特定のユーザのユーザ名が登録されているかを判定する(ステップS12)。例えば、入力チェック部12は、ユーザ名及びパスワードと共に、端末装置20を特定する情報を取得し、該情報から特定のユーザを判別し、特定のユーザのユーザ名文字列とパスワード文字列135を参照して、ユーザ名が登録されているかを判定してもよい。端末装置20を特定する情報には、端末装置20に付与された装置のシリアル番号等を用いることができる。   Next, the input check unit 12 refers to the storage unit 13 to determine whether the user name of a specific user is registered (step S12). For example, the input check unit 12 acquires information specifying the terminal device 20 together with the user name and password, determines the specific user from the information, and refers to the user name character string and password character string 135 of the specific user. Then, it may be determined whether the user name is registered. As information for specifying the terminal device 20, a serial number or the like of the device given to the terminal device 20 can be used.

入力チェック部12は、記憶部13に登録された特定のユーザのユーザ名文字列と比較して一致しない場合、入力したユーザ名が登録されていないと判定し、本処理を終了する。一方、入力チェック部12は、特定のユーザのユーザ名文字列と一致する場合、入力したユーザ名が登録されていると判定し、パスワードが正しいかを判定する(ステップS14)。   If the input check unit 12 does not match the user name character string of the specific user registered in the storage unit 13, the input check unit 12 determines that the input user name is not registered, and ends the present process. On the other hand, when the input check unit 12 matches the user name character string of the specific user, the input check unit 12 determines that the input user name is registered, and determines whether the password is correct (step S14).

入力チェック部12は、特定のユーザのパスワード文字列と一致する場合、入力したパスワードは正しいと判定し、ステップS16に進む。入力チェック部12は、特定のユーザのパスワード文字列と一致しない場合、入力したパスワードは誤っていると判定し、図7の処理(ステップS30〜)に進む。   When the input check unit 12 matches the password character string of the specific user, the input check unit 12 determines that the input password is correct, and proceeds to step S16. If the input check unit 12 does not match the password character string of the specific user, the input check unit 12 determines that the input password is incorrect, and proceeds to the processing of FIG. 7 (step S30).

ステップS30において、制御部17は、動作モードフラグ133が「通常」状態に設定されているかを判定する。制御部17は、動作モードフラグ133は「通常」状態に設定されていない場合、ステップS40に進む。制御部17は、動作モードフラグ133は「通常」状態に設定されている場合、ステップS32に進み、パスワード履歴記憶部131に以前に誤入力したパスワードのハッシュ値が記憶され、一杯であるかを判定する。制御部17は、パスワード履歴記憶部131が以前に誤入力したパスワードのハッシュ値で一杯でないと判定した場合、ステップS40に進む。   In step S30, the control unit 17 determines whether the operation mode flag 133 is set to the "normal" state. When the operation mode flag 133 is not set to the “normal” state, the control unit 17 proceeds to step S40. If the operation mode flag 133 is set to the “normal” state, the control unit 17 proceeds to step S 32 and stores the hash value of the password previously input into the password history storage unit 131 by mistake. judge. If the control unit 17 determines that the password history storage unit 131 is not full with the hash value of the password incorrectly input before, the control unit 17 proceeds to step S40.

ステップS40において、パスワード履歴記憶部131に記憶されているハッシュ値を古い方向の記憶領域に1つずつずらす。つまり、2つ前の領域に記憶されていたハッシュ値は3つ前の領域に1つずらし、1つ前の領域に記憶されていたハッシュ値は2つ前の領域に1つずらし、最新の領域に記憶されていたハッシュ値は1つ前の領域に1つずらして記憶される。   In step S40, the hash values stored in the password history storage unit 131 are shifted one by one to the storage area in the old direction. In other words, the hash value stored in the area two areas before is shifted by one to the area three areas before, and the hash value stored in the area one area before is shifted one area into the area two areas before, The hash values stored in the area are stored shifted by one in the previous area.

次に、パスワード変換部14は、ハッシュ関数を用いて、誤って入力されたと判定されたパスワードのハッシュ値を算出し(ステップS42)、算出したハッシュ値をパスワード履歴記憶部131の最新の領域に記憶し(ステップS44)、本処理を終了する。   Next, the password conversion unit 14 calculates the hash value of the password determined to be erroneously input using the hash function (step S 42), and sets the calculated hash value to the latest area of the password history storage unit 131. It memorizes (step S44), and ends this processing.

このようにして、誤ったパスワードが入力されると、パスワード履歴記憶部131には、誤入力されたパスワードのハッシュ値が記憶される。例えば、正しいパスワードが"Himitsu"である場合に、最初に"himitsu"、次に"Himitu"と誤ってパスワードが入力された場合のパスワード履歴記憶部131の変化の一例を図8に示す。この場合、パスワード履歴記憶部131にはまだ空きが残っているため、図7のステップS32からステップS40〜S44の処理が行われ、ステップS34〜S38に示す処理は発生しない。   Thus, when an incorrect password is input, the password history storage unit 131 stores the hash value of the incorrectly input password. For example, when the correct password is "Himitsu", an example of the change of the password history storage unit 131 when the password is input erroneously as "himitsu" and then "Himitu" first is shown in FIG. In this case, since the password history storage unit 131 still has free space, the processes of steps S32 to S40 to S44 of FIG. 7 are performed, and the processes of steps S34 to S38 do not occur.

なお、図8では、説明をわかりやすくするためにパスワードが文字列で表現されているが、実際はハッシュ値に変換されて記憶される。ただし、パスワード履歴記憶部131には、パスワードの文字列をそのまま記憶してもよい。   Although the password is expressed as a character string in FIG. 8 to make the description easy to understand, the password is actually converted to a hash value and stored. However, the password history storage unit 131 may store the character string of the password as it is.

パスワード変換部14が使用するハッシュ化アルゴリズムは特に限定しないが、本実施形態の例では、出現頻度記憶部132の領域が55個に設定されているため、パスワード変換部14で生成されるハッシュ値は0から54の値になるようにパスワードが変換される。例えば、パスワード変換部14は、パスワード文字列に含まれる各文字の文字コードを単純に加算した後、55で割った余りの値をハッシュ値に用いることができる。実際には入力された類似の文字列に対してもなるべくバラバラの値を取るような既存アルゴリズムが存在しており、パスワード変換部14は、それらのアルゴリズムでハッシュ値を算出することが望ましい。パスワード変換部14は、例えばパスワード文字列の文字毎にビットシフトを加える等の処理を施して、ビットシフト処理後のパスワードに対してハッシュ値を算出してもよい。   Although the hashing algorithm used by the password conversion unit 14 is not particularly limited, in the example of the present embodiment, the number of areas of the appearance frequency storage unit 132 is set to 55, so the hash value generated by the password conversion unit 14 Is converted to a value between 0 and 54. For example, after the password conversion unit 14 simply adds the character code of each character included in the password character string, the password conversion unit 14 can use the remainder value divided by 55 as the hash value. In fact, there are existing algorithms that take as far as possible different values for similar input character strings, and it is desirable for the password conversion unit 14 to calculate hash values using these algorithms. The password conversion unit 14 may calculate a hash value for the password after the bit shift processing by performing processing such as adding a bit shift to each character of the password character string, for example.

ユーザが2回連続してパスワードの入力を誤り、パスワード履歴記憶部131が図8の状態になった後に、正しいパスワードである"Himitsu"が入力されたとする。この場合、図6のステップS10〜S14の処理を行い、ステップS14において、入力チェック部12は正しいパスワードが入力されたと判定し、制御部17は、動作モードフラグ133が「通常」状態に設定されているかを判定する(ステップS16)。   It is assumed that the user enters a password incorrectly twice in succession, and after the password history storage unit 131 is in the state of FIG. 8, the correct password “Himitsu” is input. In this case, the processes in steps S10 to S14 of FIG. 6 are performed, and in step S14, the input check unit 12 determines that the correct password has been input, and the control unit 17 sets the operation mode flag 133 to the “normal” state. It is determined whether or not there is (step S16).

制御部17は、動作モードフラグ133が「通常」状態に設定されていないと判定した場合、ステップS26に進む。制御部17は、動作モードフラグ133が「通常」状態に設定されていると判定した場合、認証状態フラグ134を、認証に成功したことを示す「認証」状態に設定する(ステップS18)。つまり、認証状態フラグ134は、今回入力されたパスワード"Himitsu"が正しいパスワードであると認証済みであることを示す。   If the control unit 17 determines that the operation mode flag 133 is not set to the “normal” state, the process proceeds to step S26. When the control unit 17 determines that the operation mode flag 133 is set to the “normal” state, the control unit 17 sets the authentication state flag 134 to the “authentication” state indicating that the authentication is successful (step S18). That is, the authentication status flag 134 indicates that the password "Himitsu" entered this time has been authenticated as the correct password.

次に、制御部17は、パスワード履歴記憶部131に記憶されているハッシュ値に対応する出現頻度記憶部132の領域の値から1を減算する(ステップS20)。次に、制御部17は、ステップS20にて「−1」した出現頻度記憶部132の領域の値が下限値よりも小さくなった場合、下限値に設定し直す(ステップS22)。   Next, the control unit 17 subtracts 1 from the value of the area of the appearance frequency storage unit 132 corresponding to the hash value stored in the password history storage unit 131 (step S20). Next, the control unit 17 resets the lower limit value when the value of the area of the appearance frequency storage unit 132 which is “−1” in step S20 is smaller than the lower limit value (step S22).

このように、認証状態フラグ134が認証済みに切り替わったタイミングで、パスワード履歴記憶部131に最大で4つの直近の誤りパスワードが蓄積されている場合は、それらのパスワードは正規ユーザが誤って入力しやすいパスワードと判定できる。よって、この場合、パスワード履歴記憶部131に記憶されているハッシュ値に対応する出現頻度記憶部132内の領域の値に「−1」を加算する。なお、後述するように、出現頻度記憶部132内の領域の正の値を持つ個数が所定個以上の場合、攻撃者によるパスワードの認証が行われていると判定される。   As described above, at the timing when the authentication status flag 134 is switched to the authenticated status, when at most four most recent erroneous passwords are stored in the password history storage unit 131, those passwords are erroneously input by the authorized user. It can be judged as an easy password. Therefore, in this case, “−1” is added to the value of the area in the appearance frequency storage unit 132 corresponding to the hash value stored in the password history storage unit 131. As described later, if the number of areas having a positive value in the appearance frequency storage unit 132 is a predetermined number or more, it is determined that the password authentication by the attacker is performed.

制御部17は、図6のステップS20及びステップS22の処理を、パスワード履歴記憶部131に記憶されているハッシュ値の数だけ行った後、パスワード履歴記憶部131をすべて空にし(ステップS24)、本処理を終了する。   After performing the processes of step S20 and step S22 of FIG. 6 for the number of hash values stored in the password history storage unit 131, the control unit 17 empties all the password history storage unit 131 (step S24), This process ends.

本実施形態では、総当り攻撃による誤ったパスワードの入力と、正規ユーザの記憶違いやタイプミスと言った原因による誤ったパスワードの入力を、過去に入力されたパスワードとの類似性(バラツキ)で判別する。   In this embodiment, incorrect password input due to a brute force attack and incorrect password input due to a memory mistake or a typo of a legitimate user are caused by similarity (variation) with passwords input in the past. Determine.

そのために、パスワード履歴記憶部131と出現頻度記憶部132の2種の領域が用いられる。これらの2つの領域は、ユーザ毎に別々に用意される。パスワード履歴記憶部131は、入力されたパスワード文字列の直近の履歴を所定個数(本実施形態では、4つ)記憶しておく領域である。記憶する個数は固定数に限定されず、n(n≧1)個とする。この際、パスワード文字列をそのまま記憶するのではなくハッシュ関数を用いて数値化した値を記憶する。この仕組みにより正規ユーザが正しくパスワードを入力した時点で、パスワード履歴記憶部131に蓄積されている誤ったパスワードを正規ユーザが誤りやすいパスワードと判断することが可能となる。   For this purpose, two types of areas, password history storage unit 131 and appearance frequency storage unit 132, are used. These two areas are prepared separately for each user. The password history storage unit 131 is an area for storing a predetermined number (four in the present embodiment) of the latest history of the input password character string. The number to be stored is not limited to a fixed number, and may be n (n ≧ 1). At this time, instead of storing the password character string as it is, a numerical value is stored using a hash function. By this mechanism, when the authorized user inputs the password correctly, it becomes possible to determine that the incorrect password stored in the password history storage unit 131 is a password that the authorized user is likely to make an error.

例えば、ハッシュ関数を、各文字列の文字コードを単純に加算した後、55で割った余りとした場合、図8のパスワード履歴記憶部131に蓄積されている、正規ユーザが誤りやすいパスワードのハッシュ値は、以下のように算出される。   For example, if the hash function is simply added to the character code of each character string and then divided by 55, the hash of the password that is likely to cause an error for a legitimate user, stored in the password history storage unit 131 of FIG. The values are calculated as follows.

"himitsu"=(0x68+0x69+0x6D+0x69+0x74+0x73+0x75)/55=1
"Himitu"=(0x48+0x69+0x6D+0x69+0x74+0x75)/55=19
この場合、出現頻度記憶部132の状態は図9のようになる。つまり、出現頻度記憶部132の領域の左上のマスをハッシュ値「0」に対応する領域と定義し、そこから1行目を右方向にハッシュ値「1」、「2」・・・に対応する領域としている。1行目の右上の「10」の次は2行目の左端がハッシュ値「11」に対応する領域になる。
"himitsu" = (0x68 + 0x69 + 0x6D + 0x69 + 0x74 + 0x73 + 0x75) / 55 = 1
"Himitu" = (0x48 + 0x69 + 0x6D + 0x69 + 0x74 + 0x75) / 55 = 19
In this case, the state of the appearance frequency storage unit 132 is as shown in FIG. That is, the box at the upper left of the area of the appearance frequency storage unit 132 is defined as the area corresponding to the hash value "0", and the first line from there corresponds to the hash values "1", "2", etc. in the right direction. Area. After the upper right "10" in the first line, the left end of the second line is the area corresponding to the hash value "11".

よって、図6のステップS20の処理が実行されると、図9に示すように、正規ユーザが誤りやすいhimitsu"のパスワードのハッシュ値「1」に対応する領域と、"Himitu"のパスワードのハッシュ値「19」に対応する領域に「−1」が設定される。   Therefore, when the process of step S20 of FIG. 6 is executed, as shown in FIG. 9, the area corresponding to the hash value “1” of the password of the Himitsu password that is likely to be mistaken for the regular user and the hash of the password of “Himitu” "-1" is set in the area corresponding to the value "19".

ステップS22において、出現頻度記憶部132に設定することが可能な負の値に下限を設け、例えば下限値を「−3」に設定されると、出現頻度記憶部132に設定される値は−3よりも小さい値にはならないように制御される。下限値を設ける理由は、下限を設けないと、ユーザが同一の入力誤りを繰り返すたびに出現頻度記憶部132に設定される値が無制限に小さくなっていき、総当たり攻撃の判定の際に、いつまでも総当たり攻撃と判断されにくくなるためである。   In step S22, a lower limit is provided for negative values that can be set in the appearance frequency storage unit 132. For example, when the lower limit value is set to "-3", the value set in the appearance frequency storage unit 132 is- It is controlled so as not to become a value smaller than three. The reason for setting the lower limit value is that if the lower limit is not set, the value set in the appearance frequency storage unit 132 decreases without limit each time the user repeats the same input error, and in the case of determination of a brute force attack, It is because it becomes difficult to be judged as a brute force attack forever.

次に、4パターン「"aaa","aab","aac","AAA"」の誤ったパスワード文字列が入力された場合について説明する。上記4パターンのパスワードの入力では、正規ユーザが誤ってパスワードを入力したのか、総当たり攻撃の初回4回で入力されたパスワードであるのかの判断は難しい。この状態で、更にもう1つ間違ったパスワード"AAB"が入力されたとする。   Next, the case where an incorrect password string of four patterns “aaa”, “aab”, “aac”, “AAA” is input will be described. With the above four patterns of password input, it is difficult to determine whether the legitimate user has entered the password by mistake or the password entered in the first four rounds of the brute force attack. In this state, it is assumed that one more incorrect password "AAB" is input.

この場合、図6のステップS10〜S14の処理が実行され、ステップS14にて「No」と判定され、図7のステップS30、S32の処理が実行される。ステップS32にて、制御部17は、パスワード履歴記憶部131は一杯であると判定する。   In this case, the processes of steps S10 to S14 of FIG. 6 are executed, it is determined as "No" at step S14, and the processes of steps S30 and S32 of FIG. 7 are executed. In step S32, the control unit 17 determines that the password history storage unit 131 is full.

そこで、次に、制御部17は、パスワード履歴記憶部131の最も古いパスワードのハッシュ値に対して出現頻度記憶部132の対応する領域の値に1を加算する(ステップS34)。次に、制御部17は、加算した後の領域の値が、1よりも大きくなった場合、当該領域の値を1に設定する(ステップS36)。次に、制御部17は、攻撃判定処理を呼び出す(ステップS38)。呼び出された、図10に示す攻撃判定処理は、主に認証部16及びカウント部15により実行される。なお、図10の処理後、図7に戻り、ステップS40〜S44が処理される。   Therefore, next, the control unit 17 adds 1 to the value of the corresponding area of the appearance frequency storage unit 132 with respect to the hash value of the oldest password of the password history storage unit 131 (step S34). Next, when the value of the area after the addition becomes larger than one, the control unit 17 sets the value of the area to one (step S36). Next, the control unit 17 calls an attack determination process (step S38). The called attack determination process shown in FIG. 10 is mainly executed by the authentication unit 16 and the counting unit 15. After the process of FIG. 10, the process returns to FIG. 7 to process steps S40 to S44.

この時点では、図11(a)に示すパスワード履歴記憶部131の3つ前の領域に記憶されていたパスワード"aaa"は、更にもう1つ間違ったパスワード"AAB"が入力された時点で、図11(b)に示すように、パスワード履歴記憶部131から消失される。このときに消失された(追い出された)"aaa"に対応する出現頻度記憶部132の対応領域の値が「+1」される。   At this point in time, the password "aaa" stored in the third area of the password history storage unit 131 shown in FIG. 11A is entered when another incorrect password "AAB" is input. As shown in FIG. 11B, the data is erased from the password history storage unit 131. At this time, the value of the corresponding area of the appearance frequency storage unit 132 corresponding to the “aaa” that has been eliminated (expelled) is “+1”.

"aaa"のハッシュ値は、以下の計算により16となる。
"aaa"=(0x61+0x61+0x61)/55=16
このため、図11(c)に示すように、ハッシュ値16に対応する出現頻度記憶部132の領域が+1となる。なお、図11(a)及び図11(b)では、説明をわかりやすくするためにパスワードが文字列で表現されているが、実際はパスワード履歴記憶部131には、パスワードのハッシュ値が記憶される。
The hash value of "aaa" is 16 by the following calculation.
"aaa" = (0x61 + 0x61 + 0x61) / 55 = 16
Therefore, as shown in FIG. 11C, the area of the appearance frequency storage unit 132 corresponding to the hash value 16 is +1. In FIGS. 11 (a) and 11 (b), the password is expressed as a character string to make the description easy to understand, but in practice the password history storage unit 131 stores the hash value of the password. .

図11(c)に示す出現頻度記憶部132の状態で、図10の攻撃判定処理が開始されると、カウント部15は、出現頻度記憶部132の正の値を持つ領域の数を示す変数であるカウンタCに「0」を設定する(ステップS50)。   When the attack determination process of FIG. 10 is started in the state of the appearance frequency storage unit 132 shown in FIG. 11C, the count unit 15 indicates a variable indicating the number of areas having a positive value of the appearance frequency storage unit 132. The counter C is set to "0" (step S50).

次に、認証部16は、出現頻度記憶部132の領域の位置を示す変数Nの値に「0」を設定する(ステップS52)。「0」の変数Nは、図11(c)の出現頻度記憶部132の先頭の位置、つまり、左上の位置を示す。   Next, the authentication unit 16 sets “0” to the value of the variable N indicating the position of the area of the appearance frequency storage unit 132 (step S52). The variable N of “0” indicates the top position of the appearance frequency storage unit 132 of FIG. 11C, that is, the top left position.

次に、認証部16は、出現頻度記憶部132のN番目が正の値かを判定する(ステップS54)。認証部16は、出現頻度記憶部132のN番目が正の値でないと判定した場合、そのままステップS58に進む。一方、認証部16は、出現頻度記憶部132のN番目が正の値であると判定した場合、カウント部15は、カウンタCに「1」を加算し(ステップS56)、ステップS58に進む。   Next, the authentication unit 16 determines whether the Nth value of the appearance frequency storage unit 132 is a positive value (step S54). If the authentication unit 16 determines that the Nth value of the appearance frequency storage unit 132 is not a positive value, the process proceeds directly to step S58. On the other hand, when the authentication unit 16 determines that the Nth value of the appearance frequency storage unit 132 is a positive value, the counting unit 15 adds “1” to the counter C (step S56), and proceeds to step S58.

ステップS58において、認証部16は、変数Nに「1」を加算し、出現頻度記憶部132の領域を次の領域であるN番目に変更する(ステップS58)。次に、認証部16は、出現頻度記憶部132の領域の最後までチェックしたかを判定する(ステップS60)。例えば、認証部16は、Nの値が55になった場合には「Yes」と判定し、Nの値が55未満である場合には「No」と判定する。認証部16は、出現頻度記憶部132の領域の最後までチェックしていないと判定した場合、ステップS54に戻り、出現頻度記憶部132のN番目が正の値かを判定する。つまり、出現頻度記憶部132の先頭(0番目)の領域から最後の領域(54番目)まで各領域が正の値かをチェックするまで、ステップS54〜S60が繰り返される。ステップS60において、認証部16は、出現頻度記憶部132の最後の領域までチェックしたと判定すると、カウンタCの数が、所定個数以上かを判定する(ステップS62)。予め所定個数は10に設定されているとすると、例えば、図11(c)の場合、カウンタCの数は1である。よって、ステップS62において、認証部16は、カウンタCの数が10未満であると判定し、総当たりの攻撃は生じていないと判断して、本処理を終了する。   In step S58, the authentication unit 16 adds “1” to the variable N, and changes the area of the appearance frequency storage unit 132 to the next area, that is, the Nth (step S58). Next, the authentication unit 16 determines whether the end of the area of the appearance frequency storage unit 132 has been checked (step S60). For example, the authentication unit 16 determines “Yes” when the value of N is 55, and determines “No” when the value of N is less than 55. If the authentication unit 16 determines that the end of the area of the appearance frequency storage unit 132 has not been checked, the process returns to step S54, and determines whether the Nth value of the appearance frequency storage unit 132 is a positive value. That is, steps S54 to S60 are repeated until it is checked whether each area is a positive value from the top (0th) area to the last area (54th) of the appearance frequency storage unit 132. If the authentication unit 16 determines in step S60 that the last area of the appearance frequency storage unit 132 has been checked, the authentication unit 16 determines whether the number of counters C is equal to or greater than a predetermined number (step S62). Assuming that the predetermined number is set to 10 in advance, for example, in the case of FIG. 11C, the number of counters C is one. Therefore, in step S62, the authentication unit 16 determines that the number of counters C is less than 10, determines that no brute force attack has occurred, and ends the present process.

更に3回間違ったパスワードが入力されると、パスワード履歴記憶部131から消失される、以下の各パスワードのハッシュ値に該当する箇所が1加算される。
"aab"=(0x61+0x61+0x62)/55=17
"aac"=(0x61+0x61+0x63)/55=18
"AAA"=(0x41+0x41+0x41)/55=30
このとき、図6のステップS10〜S14、図7のステップS30〜S38の処理が時移行され、ステップS38にて呼び出された図10に示す攻撃判定処理において、カウント部15は、出現頻度記憶部132が正の値の領域の数をカウントCにカウントする。
Further, when the wrong password is input three times, the places corresponding to the following hash values of the password which are erased from the password history storage unit 131 are incremented by one.
"aab" = (0x61 + 0x61 + 0x62) / 55 = 17
"aac" = (0x61 + 0x61 + 0x63) / 55 = 18
"AAA" = (0x41 + 0x41 + 0x41) / 55 = 30
At this time, the processing of steps S10 to S14 of FIG. 6 and steps S30 to S38 of FIG. 7 are shifted to the time, and in the attack determination processing shown in FIG. The count C counts the number of areas having a positive value 132.

図12(a)には "aab"、"aac"、"AAA"の各パスワードのハッシュ値に該当する箇所が1加算された結果の出現頻度記憶部132の状態が示されている。この場合、カウントCには4が設定される。この場合、図10のステップS62において、認証部16は、カウンタCの数が10未満であると判定し、総当たり攻撃は生じていないと判断して、本処理を終了する。   FIG. 12A shows the state of the appearance frequency storage unit 132 as a result of adding 1 to the place corresponding to the hash value of each password of “aab”, “aac”, and “AAA”. In this case, 4 is set to the count C. In this case, in step S62 of FIG. 10, the authentication unit 16 determines that the number of counters C is less than 10, determines that a brute force attack has not occurred, and ends the present process.

カウント部15は、出現頻度記憶部132が更新されるたびに、その中で正の値の領域の数をカウントし、認証部16は、それが所定個数(本実施形態では10箇所)を超えると、総当り攻撃が発生したと判定する(ステップS62)。そして、認証部16は、動作モードフラグ133を「通常」状態から「ブロック」状態に変更する(ステップS64)。   Every time the appearance frequency storage unit 132 is updated, the counting unit 15 counts the number of areas having a positive value, and the authentication unit 16 exceeds the predetermined number (10 in this embodiment). It is determined that a brute force attack has occurred (step S62). Then, the authentication unit 16 changes the operation mode flag 133 from the "normal" state to the "block" state (step S64).

例えば、図12(b)に示す出現頻度記憶部132では、カウントCには10が設定される。この場合、図10のステップS62において、カウント部15は、カウンタCの数が10以上であると判定し、認証部16は、総当たり攻撃が発生したと判定する。この判定結果により、動作モードフラグ133が、「通常」状態から「ブロック」状態に変更される。動作モードフラグ133が「ブロック」状態になっている場合、「攻撃者のパスワードによる認証が行われている」ことを示す。   For example, in the appearance frequency storage unit 132 illustrated in FIG. 12B, 10 is set in the count C. In this case, in step S62 of FIG. 10, the count unit 15 determines that the number of counters C is 10 or more, and the authentication unit 16 determines that a brute force attack has occurred. As a result of this determination, the operation mode flag 133 is changed from the “normal” state to the “block” state. When the operation mode flag 133 is in the “block” state, it indicates that “authentication by an attacker's password is being performed”.

このように、本実施形態では、誤ったパスワードが連続して入力された場合、出現頻度記憶部132は、パスワード履歴記憶部131から追い出された(消失された)パスワードを数値化したハッシュ値に対する入力の頻度を負の値で記憶し、正規者が誤入力しやすいパスワードとして記憶しておく。また、総当たり攻撃の場合、入力されるパスワードは毎回異なるものとなるため、パスワードを数値化したハッシュ値もバラバラな値を取る可能性が非常に高くなる。よって、総当たり攻撃を受けたと予測される出現頻度記憶部132の正の値の領域が示すように、所定個数以上の領域にわたって多様なハッシュ値が蓄積されている場合にこれを総当たり攻撃の兆候と捉えることが可能となる。   As described above, in the present embodiment, when erroneous passwords are continuously input, the appearance frequency storage unit 132 generates a hash value representing a password that has been evicted (lost) from the password history storage unit 131. The frequency of input is stored as a negative value, and is stored as a password that is easily input by an authorized person. Also, in the case of brute force attack, since the password to be input is different every time, there is a high possibility that the hash value obtained by digitizing the password will also have different values. Therefore, as indicated by the positive value area of the appearance frequency storage unit 132 that is predicted to be subjected to a brute force attack, if various hash values are accumulated over a predetermined number of areas or more, this is considered as a brute force attack It can be regarded as a sign.

また、本実施形態では、出現頻度記憶部132を利用して総当たり攻撃の兆候を捉えたことを記憶し、動作モードを切り替えるための動作モードフラグ133(記憶域)がユーザ毎に用意されている。総当たり攻撃を受けると動作モードフラグ133が通常状態からブロック状態に切り替わり、この状態では正しいパスワードが入力されても認証を通さない動作とする。   Further, in the present embodiment, the appearance frequency storage unit 132 is used to store that the signs of the brute force attack have been captured, and the operation mode flag 133 (storage area) for switching the operation mode is prepared for each user. There is. When a brute force attack is received, the operation mode flag 133 switches from the normal state to the block state, and in this state, even if the correct password is input, the operation does not pass authentication.

つまり、動作モードフラグ133がブロック状態のときに正しいパスワードが入力された場合、図6のステップS10〜S16の処理が実行され、ステップS16にて「No」と判定される。この場合、認証部16は、動作モードフラグ133を「通常」状態に設定する(ステップS26)。次に、認証部16は、出現頻度記憶部132をすべてチェックし、値が正の領域を「0」に設定する(ステップS28)。これにより、出現頻度記憶部132の正の値の領域の数により総当たり攻撃を受けている状態をカウントしていたカウント値がリセットされる。なお、制御部17は、パスワード履歴記憶部131をすべて空にし(ステップS24)、本処理が終了する。   That is, when the correct password is input when the operation mode flag 133 is in the block state, the processes of steps S10 to S16 in FIG. 6 are executed, and it is determined as "No" in step S16. In this case, the authentication unit 16 sets the operation mode flag 133 to the “normal” state (step S26). Next, the authentication unit 16 checks all the appearance frequency storage unit 132, and sets an area having a positive value to “0” (step S28). Thereby, the count value which has counted the state which has received brute force attack by the number of the area | regions of the positive value of the appearance frequency memory | storage part 132 is reset. The control unit 17 empties all the password history storage unit 131 (step S24), and the process ends.

これにより、総当たり攻撃中に正しいパスワードが一度入力されても、動作モードフラグ133が「ブロック」状態から「通常」状態に切り替わる動作が行われるのみで認証を成功させない。このため、総当たり攻撃中の正しいパスワードの入力に対して認証が通り、パスワードが漏えいすることを防止できる。かかる仕組みでは、動作モードフラグ133がブロック状態のときに正規ユーザが正しいパスワードを入力しても認証に成功しないが、正規ユーザの場合は認証に失敗するとユーザ名やパスワードの入力ミスを疑って、再度正しいパスワードを入力する。その際、正規ユーザは認証に成功するため、正規ユーザが再度正しいパスワードを入力しても認証に成功しないという不都合は生じない。   As a result, even if the correct password is inputted once during the brute force attack, the operation mode flag 133 is only switched from the “blocked” state to the “normal” state, and the authentication is not successful. Therefore, authentication can be performed for the input of the correct password during the brute force attack, and the password can be prevented from being leaked. In this mechanism, authentication does not succeed even if the regular user inputs the correct password when the operation mode flag 133 is in the block state, but in the case of the regular user, if authentication fails, it is suspected of incorrect entry of the user name and password. Enter the correct password again. At this time, since the authorized user succeeds in authentication, there is no inconvenience that the authentication does not succeed even if the authorized user inputs the correct password again.

一方、総当たり攻撃の場合には、その性質上、総当たり攻撃中にたまたま正しいパスワードを入力して認証に成功しなかった後に、再度正しいパスワードを入力する可能性は極めて低い。以上から、本実施形態に係る認証処理及び攻撃判定処理によれば、正規ユーザのパスワードによる認証を阻害せず、攻撃者のパスワードによる認証を阻止することができる。   On the other hand, in the case of a brute force attack, by its nature, it is extremely unlikely that the correct password will be entered again after accidentally entering the correct password and failing in authentication during the brute force attack. From the above, according to the authentication process and the attack determination process according to the present embodiment, it is possible to prevent the authentication by the password of the attacker without inhibiting the authentication by the password of the authorized user.

動作モードフラグ133は、攻撃者のパスワードによる認証か否かを示す動作モード情報の一例であり、通常状態又ブロック状態に設定される。通常状態は、攻撃者のパスワードによる認証でないことを示す第1モードの状態であり、ブロック状態は、攻撃者のパスワードによる認証であることを示す第2モードの状態である。   The operation mode flag 133 is an example of operation mode information indicating whether or not the authentication is based on the password of the attacker, and is set to the normal state or the blocked state. The normal state is a state of the first mode indicating that the authentication is not based on the attacker's password, and the blocked state is a state of the second mode indicating that the authentication is based on the attacker's password.

なお、本実施形態では、攻撃者のパスワードによる認証の一例として、総当たり攻撃を例に挙げて説明しているが、攻撃者のパスワードによる認証には、辞書攻撃を含む。パスワードが完全にランダムな文字列では利用者の記憶や入力が困難なため、既存の単語をベースにパスワードを設定することが多い。その場合、攻撃者は総当りではなく、既存単語の辞書に従って作成されたパスワードを優先的に入力することで、総当りに比べてはるかに少ない試行回数で認証に成功する可能性がある。この手法を用いた攻撃者のパスワードによる認証を辞書攻撃と呼ぶ。   In the present embodiment, a brute force attack is described as an example of authentication using an attacker's password, but authentication using an attacker's password includes a dictionary attack. Since a password whose password is completely random is difficult for the user to memorize and input, a password is often set based on existing words. In such a case, an attacker may succeed in authentication with a much smaller number of attempts than brute force by preferentially inputting a password created according to a dictionary of existing words instead of brute force. Authentication using an attacker's password using this method is called a dictionary attack.

以上に説明したように、本実施形態では、ユーザがパスワードを入力するたびに、そのパスワードはハッシュ化されてパスワード履歴記憶部131に蓄積される。入力パスワードの履歴が蓄積された状態で正しいパスワードが入力された場合は、パスワード履歴記憶部131に記憶している最大n個のパスワードは正規ユーザが間違えて入力したパスワードと判断し、出現頻度記憶部132に「負」の値を加算する形で記憶していく。   As described above, in the present embodiment, each time the user inputs a password, the password is hashed and accumulated in the password history storage unit 131. When the correct password is input in the state where the history of the input password is stored, the maximum n passwords stored in the password history storage unit 131 are judged as the password incorrectly input by the authorized user, and the appearance frequency storage is stored. A value of “negative” is added to the part 132 and stored.

正しいパスワードが入力されずに、誤ったパスワード入力が続く場合、パスワード履歴記憶部131の蓄積可能な数を超えて追い出されたパスワードのハッシュ値は、出現頻度記憶部132に「正」の値を加算する形で記憶していく。   If an incorrect password entry continues without entering a correct password, the hash value of the password evicted beyond the storable number in the password history storage unit 131 has a value of "positive" in the appearance frequency storage unit 132. I will memorize in the form to add.

パスワードが入力されるたびに、出現頻度記憶部132の中で「正」の値を持つ領域の数をチェックし、その数があらかじめ決められた所定個数を超えると総当り攻撃の兆候と判断して、認証部16は、認証をブロックする状態に動作モードフラグ133を切り替える。総当たり攻撃が続くと、いずれは正しいパスワードが入力されるが、ブロック状態では、たとえ正しいパスワードが入力されても認証失敗と処理されるため認証は成功しない。   Every time a password is input, the number of regions having a “positive” value is checked in the appearance frequency storage unit 132, and if the number exceeds a predetermined number determined in advance, it is determined as a sign of a brute force attack. Then, the authentication unit 16 switches the operation mode flag 133 to a state in which authentication is blocked. If a brute force attack continues, the correct password will be entered eventually, but in the blocked state, even if the correct password is entered, the authentication fails because it is treated as an authentication failure.

ブロック状態になると、その後は誤ったパスワードが入力されても出現頻度記憶部132の更新は不要となる。その後も総当り攻撃が続いて、いずれは正しいパスワードを入力される可能性があるが、正しいパスワードが入力されても、動作モードフラグ133がブロック状態であれば認証失敗となる。このため総当たり攻撃により正しいパスワードが入力されても、不正に認証されてパスワードが漏えいすることを防止できる。   Once in the blocked state, updating of the appearance frequency storage unit 132 becomes unnecessary even if an incorrect password is input thereafter. A brute force attack then continues, and there is a possibility that the correct password may be input in the future, but even if the correct password is input, authentication fails if the operation mode flag 133 is in the blocked state. For this reason, even if a correct password is input by brute force attack, unauthorized authentication can be prevented and password leakage can be prevented.

ブロック状態で一度正しいパスワードが入力されると、動作モードフラグ133は通常状態に戻される。その際、出現頻度記憶部132のうち、値が「+1」以上の箇所は値を「0」に戻す。総当り攻撃がその後も続いた場合でも、一度正しいパスワードに対して認証失敗を応答しているため、総当り攻撃では再度正しいパスワードは入力されない。よって、一度入力された正しいパスワードと同じパスワードによるアタックは行われず、セキュリティは守られる。また、総当たり攻撃が続くと、出現頻度記憶部132の領域を一度「0」に戻した後でもすぐに「+1」以上の領域が増えて再びブロック状態となる。   Once the correct password is entered in the blocked state, the operation mode flag 133 is returned to the normal state. At that time, in the appearance frequency storage unit 132, the value of “+1” or more is returned to “0”. Even if the brute force attack continues thereafter, the brute force attack does not enter the correct password again because the authentication failure is once replied to the correct password. Therefore, an attack with the same password as the correct password entered once is not performed, and security is protected. In addition, when the brute force attack continues, even after the area of the appearance frequency storage unit 132 is once returned to “0”, the area of “+1” or more increases immediately and becomes a block state again.

以上、本実施形態では、ユーザ名とパスワードの2つの文字列で管理される認証システム1において、総当り攻撃などの手法による端末装置20の不正利用やアカウント情報の漏洩を防止する仕組みを実現することができる。   As described above, in the present embodiment, in the authentication system 1 managed by two character strings of the user name and the password, a mechanism for preventing unauthorized use of the terminal device 20 and leakage of account information by a method such as brute force attack is realized. be able to.

本実施形態では、ユーザ名ごとに過去に入力された直近の複数回のパスワード文字列をハッシュ関数で数値化したハッシュ値がパスワード履歴記憶部131に蓄積される。また、過去の誤った入力パスワードの出現頻度が、ハッシュ値毎に記録する出現頻度記憶部132を使って分析される。これにより、総当り攻撃、辞書攻撃の兆候が見られた場合には正しいユーザ名、パスワードが入力されても認証成功させないようにガードすることができる。加えて、本実施形態では、正規ユーザの入力誤りや記憶違いによる誤ったパスワード入力については、出現頻度記憶部132に「負」の値を加算する形で記憶することで、総当たり攻撃とみなされにくい仕組みを実現する。   In the present embodiment, the password history storage unit 131 stores a hash value obtained by digitizing the latest plurality of password character strings input in the past for each user name using a hash function. Also, the appearance frequency of the past incorrect input password is analyzed using the appearance frequency storage unit 132 that records for each hash value. This makes it possible to guard against successful authentication even if the correct username and password are entered if signs of brute force attack or dictionary attack are observed. In addition, in the present embodiment, a false password input due to an input error of the regular user or a memory mistake is stored as a “negative” value in the appearance frequency storage unit 132 in a form of a brute force attack. Implement a mechanism that is difficult to

以上により、認証システム1では、正規ユーザのパスワードによる認証を阻害せず、攻撃者のパスワードによる認証を阻止することができる。   As described above, the authentication system 1 can prevent authentication by the attacker's password without disturbing authentication by the password of the authorized user.

[変形例]
次に、一実施形態の変形例に係る認証サーバ10の構成について、図13を参照しながら説明する。図13は、一実施形態の変形例に係る認証サーバ10の機能構成の一例を示す。
[Modification]
Next, the configuration of the authentication server 10 according to the modification of the embodiment will be described with reference to FIG. FIG. 13 shows an example of a functional configuration of the authentication server 10 according to a modification of the embodiment.

多くの場合、攻撃者は手入力でデタラメな文字列を入力するのではなく、特定のプログラムアルゴリズムによって生成した文字列や単語辞書を参照して生成した文字列を順番に自動的に入力する。従って、攻撃者が同一の攻撃プログラムを利用して一つの端末装置20の複数のユーザや、異なる端末装置20に対して総当り攻撃を実施すると、出現頻度記憶部132に記憶される「正」の値の領域や出現順序はほぼ同じになると考えられる。   In many cases, an attacker does not manually input a messy string, but automatically sequentially inputs a string generated with reference to a string generated by a particular program algorithm or a word dictionary. Therefore, when an attacker performs a brute-force attack on a plurality of users of one terminal device 20 or different terminal devices 20 using the same attack program, “positive” stored in the appearance frequency storage unit 132 It is considered that the range and appearance order of the value of will be almost the same.

上記実施形態では10箇所の出現頻度をカウントした際に総当り攻撃の兆候と判断した。本変形例では、その判断をした時点での出現頻度記憶部132の情報を他システムや他ユーザでも共有することで、他ユーザでも同一の発生パターンと判断した場合は10箇所より最大で2倍早い段階で総当り攻撃と判断することが可能となる。   In the above embodiment, when the frequency of appearance at ten places is counted, it is judged as a sign of a total hit attack. In this modification, the information of the appearance frequency storage unit 132 at the time of the determination is shared by other systems and other users, and the same generation pattern is determined by the other users, which is twice the maximum at 10 locations. It is possible to judge a brute force attack at an early stage.

そこで、図13の変形例に係る認証サーバ10では、出現頻度記憶部132の情報を他ユーザや他装置で共有できる仕組みを実現する。これにより、総当たり攻撃の兆候を通常より早い段階で捉えることができ、偶然に早い段階での攻撃で正しいパスワードが入力された場合にもパスワードが漏えいするリスクを低減できる。つまり、ブロック状態に推移する前に攻撃者により偶然に早い段階で正しいパスワードが入力されてしまったときにパスワードが漏えいする可能性を下げることができる。   Therefore, the authentication server 10 according to the modification of FIG. 13 realizes a mechanism in which the information of the appearance frequency storage unit 132 can be shared by other users or other devices. This makes it possible to catch signs of brute force attacks earlier than usual, and reduce the risk of password leakage even if the correct password is entered accidentally by the early attacks. That is, it is possible to reduce the possibility of the password being leaked when the correct password is inputted by chance by the attacker in the early stage before the state of blocking changes.

具体的には、図13に示す一実施形態の変形例に係る認証サーバ10は、図1に示した一実施形態に係る認証サーバ10に対して、出現頻度共有記憶部200が追加されている点のみが異なる。出現頻度共有記憶部200は、ユーザ毎の出現頻度記憶部132と同じ構造であり、いずれかのユーザで総当たり攻撃の兆候が検出された際に、その中身がコピーされ、他ユーザでの攻撃判定実施の際にコピーした出現頻度記憶部132が参照可能となる。出現頻度共有記憶部200には、1つ又は複数の出現頻度記憶部132のデータがコピーされ得る。   Specifically, in the authentication server 10 according to the modification of the embodiment shown in FIG. 13, an appearance frequency sharing storage unit 200 is added to the authentication server 10 according to the embodiment shown in FIG. Only the point is different. The appearance frequency shared storage unit 200 has the same structure as the appearance frequency storage unit 132 for each user, and when any user detects a sign of a brute force attack, its contents are copied, and an attack with another user is made. The appearance frequency storage unit 132 copied when performing the determination can be referred to. Data of one or more appearance frequency storage units 132 may be copied to the appearance frequency shared storage unit 200.

図14は、一実施形態の変形例に係る出現頻度記憶部132及び出現頻度共有記憶部200の状態の一例を示す。ここでは、ユーザAの端末装置20に対する攻撃の兆候を、ユーザB用の端末装置との間で共有する場合の例を示す。   FIG. 14 illustrates an example of the states of the appearance frequency storage unit 132 and the appearance frequency sharing storage unit 200 according to a modification of the embodiment. Here, an example is shown in which the indication of an attack on the terminal device 20 of the user A is shared with the terminal device for the user B.

攻撃が行われていない状態では、ユーザA用記憶部13aの図14(a)に示す出現頻度記憶部132aと、ユーザB用記憶部13bの図14(b)に示す出現頻度記憶部132bとは、各ユーザの過去の入力誤り等で異なる状態になっている。また、図14(c)に一例を示す出現頻度共有記憶部200は初期状態で何も記憶されていない。   In a state where an attack is not performed, an appearance frequency storage section 132a shown in FIG. 14A of the user A storage section 13a and an appearance frequency storage section 132b shown in FIG. 14B of the user B storage section 13b. Is in a different state due to a past input error or the like of each user. Further, nothing is stored in the appearance frequency sharing storage unit 200 whose example is shown in FIG. 14C in the initial state.

攻撃者がユーザAに対して総当たり攻撃を仕掛けてきた際、出現頻度記憶部132aにおいて総当たり攻撃の兆候を検出したら、検出したタイミングでユーザAの出現頻度記憶部132aを出現頻度共有記憶部200に保存しておく。図15には、出現頻度記憶部132aの正の領域が10カ所以上になり、総当たり攻撃と判定されたため、図15(a)の出現頻度記憶部132aのデータを、図15(c)の出現頻度共有記憶部200にコピーした状態が示されている。   When an attacker has launched a brute force attack on user A, if the appearance frequency storage unit 132a detects a sign of a brute force attack, the appearance frequency storage unit 132a of user A is detected frequency of occurrence shared memory unit at the detected timing. Save to 200. In FIG. 15, since the positive region of the appearance frequency storage unit 132a is 10 or more places and it is determined to be a brute force attack, the data of the appearance frequency storage unit 132a of FIG. A state of being copied to the appearance frequency shared storage unit 200 is shown.

出現頻度共有記憶部200にデータが格納されているとき、認証部16は出現頻度記憶部132と出現頻度共有記憶部200の2つを参照して判定を行う。図16は、一実施形態の変形例に係る攻撃判定処理の一例を示すフローチャートである。本変形例において、図16の攻撃判定処理は、図7のステップS38にて呼び出される図10の攻撃判定処理の替わりに呼び出される。なお、図16の攻撃判定処理では、図10の攻撃判定処理と同一の処理を行うステップには、図10のステップ番号と同一ステップ番号を付すことにより、説明を簡略化する。   When data is stored in the appearance frequency shared storage unit 200, the authentication unit 16 performs determination with reference to the appearance frequency storage unit 132 and the appearance frequency shared storage unit 200. FIG. 16 is a flowchart illustrating an example of the attack determination process according to the modification of the embodiment. In the present modification, the attack determination process of FIG. 16 is called instead of the attack determination process of FIG. 10 called in step S38 of FIG. In the attack determination process of FIG. 16, the description is simplified by attaching the same step number as the step number of FIG. 10 to the step performing the same process as the attack determination process of FIG. 10.

また、ここでは、ユーザAのログイン操作に対して図16のフローチャートを用いて、変形例に係る攻撃判定処理を説明し、ユーザB及びその他のユーザのログイン操作に対する攻撃判定処理についてはユーザAの場合と同じ処理であるため、説明を省略する。   Here, the attack determination process according to the modification is described using the flowchart of FIG. 16 for the login operation of user A, and the attack determination process for login operations of user B and other users is described by user A's. Since the process is the same as in the case, the description is omitted.

図16の処理が開始されると、ステップS50〜S56の処理が実行される。ステップS54において、認証部16は、出現頻度記憶部132のN番目が正の値かを判定する。認証部16は、出現頻度記憶部132のN番目が正の値でないと判定した場合、そのままステップS78に進む。一方、認証部16は、出現頻度記憶部132のN番目が正の値であると判定した場合、カウント部15は、カウンタCに「1」を加算し(ステップS56)、ステップS78に進む。   When the process of FIG. 16 is started, the processes of steps S50 to S56 are performed. In step S54, the authentication unit 16 determines whether the Nth value of the appearance frequency storage unit 132 is a positive value. If the authentication unit 16 determines that the Nth value of the appearance frequency storage unit 132 is not a positive value, the process proceeds directly to step S78. On the other hand, when the authentication unit 16 determines that the Nth value of the appearance frequency storage unit 132 is a positive value, the counting unit 15 adds “1” to the counter C (step S56), and proceeds to step S78.

ステップS78において、認証部16は、出現頻度共有記憶部200のN番目が正の値かを判定する。認証部16は、出現頻度共有記憶部200のN番目が正の値でないと判定した場合、ステップS58に進む。一方、認証部16は、出現頻度共有記憶部200のN番目が正の値であると判定した場合、カウント部15は、カウンタCに「1」を加算し(ステップS80)、ステップS58に進む。   In step S78, the authentication unit 16 determines whether the N-th occurrence frequency shared storage unit 200 is a positive value. If the authentication unit 16 determines that the Nth value of the occurrence frequency shared storage unit 200 is not a positive value, the process proceeds to step S58. On the other hand, when the authentication unit 16 determines that the N-th occurrence frequency shared storage unit 200 is a positive value, the counting unit 15 adds “1” to the counter C (step S80), and proceeds to step S58. .

ステップS58において、認証部16は、変数Nに「1」を加算し、出現頻度記憶部132の領域を次の領域であるN番目に変更する。次に、認証部16は、出現頻度記憶部132の領域の最後までチェックしたかを判定する(ステップS60)。例えば、認証部16は、Nの値が55になった場合には「Yes」と判定し、Nの値が55未満である場合には「No」と判定する。認証部16は、出現頻度記憶部132の領域の最後までチェックしていないと判定した場合、ステップS54に戻り、出現頻度記憶部132のN番目が正の値かを判定する。つまり、出現頻度記憶部132の先頭(0番目)の領域から最後の領域(54番目)までチェックするまで、ステップS54、S56,S78、S80、S58,S60の処理が繰り返される。ステップS60において、認証部16は、領域の最後までチェックしたと判定すると、カウンタCの数が、所定個数以上かを判定する(ステップS62)。   In step S58, the authentication unit 16 adds “1” to the variable N, and changes the area of the appearance frequency storage unit 132 to the next area, ie, the Nth. Next, the authentication unit 16 determines whether the end of the area of the appearance frequency storage unit 132 has been checked (step S60). For example, the authentication unit 16 determines “Yes” when the value of N is 55, and determines “No” when the value of N is less than 55. If the authentication unit 16 determines that the end of the area of the appearance frequency storage unit 132 has not been checked, the process returns to step S54, and determines whether the Nth value of the appearance frequency storage unit 132 is a positive value. That is, the processes of steps S54, S56, S78, S80, S58, and S60 are repeated until the area from the top (0th) area to the last area (54th) of the appearance frequency storage unit 132 is checked. If it is determined in step S60 that the authentication unit 16 has checked the end of the area, it is determined whether the number of counters C is equal to or greater than a predetermined number (step S62).

例えば、図17(a)に示す出現頻度記憶部132a及び図17(c)に示す出現頻度共有記憶部200の正の値の領域が一致する数をカウントすると、カウンタCの数は20である。所定個数が10であるとすると、ステップS62において、認証部16は、カウンタCの数が所定個数以上であると判定し、総当たりの攻撃がされていると判断して、動作モードフラグ133を「ブロック」状態に設定し(ステップS64)、本処理を終了する。   For example, counting the number of matching areas of the appearance frequency storage unit 132a shown in FIG. 17A and the appearance frequency sharing storage unit 200 shown in FIG. 17C, the number of counters C is 20. . Assuming that the predetermined number is 10, in step S62, the authentication unit 16 determines that the number of counters C is equal to or greater than the predetermined number, determines that a brute force attack is being performed, and sets the operation mode flag 133 to The "block" state is set (step S64), and the present process ends.

以上に説明したように、一実施形態の変形例に係る攻撃判定処理では、出現頻度共有記憶部200にデータが存在し、ユーザ毎の出現頻度記憶部132と出現頻度共有記憶部200の両者で同一箇所が「正」になっている場合は、カウンタCの加算数が2倍になる。これにより、同じ総当たり攻撃を受けた際のカウントの増加が最大で通常の2倍になり、各ユーザが単独で出現頻度記憶部132の「正」の値の領域の個数を検出するよりも最大で2倍早い時点で総当り攻撃の兆候を捕らえることができる。   As described above, in the attack determination process according to the modification of the embodiment, data is present in the appearance frequency sharing storage unit 200, and both the appearance frequency storage unit 132 for each user and the appearance frequency sharing storage unit 200 If the same place is "positive", the number of additions of the counter C is doubled. As a result, the count increase upon receiving the same brute force attack is doubled at the maximum at maximum, rather than each user individually detecting the number of "positive" value areas in the appearance frequency storage unit 132. You can catch signs of a brute force attack up to twice as fast.

また、上記の説明では出現頻度共有記憶部200は1個としているが、これを複数用意し、複数ユーザで総当たり攻撃の兆候を検出し、その出現パターンが異なる場合はそれぞれのコピーを用いてもよい。また、単独のユーザでも複数回の攻撃の兆候を捕えたならその都度コピーを保存してもよい。出現頻度共有記憶部200が複数存在する場合は、認証部16は、その判定を出現頻度共有記憶部200の個数分だけ繰り返すことになる。   Further, although the appearance frequency sharing storage unit 200 is one in the above description, a plurality of this is prepared, and signs of brute force attacks are detected by a plurality of users, and when the appearance patterns differ, each copy is used It is also good. Also, even a single user may save a copy each time he has captured multiple attacks. When there are a plurality of appearance frequency shared storage units 200, the authentication unit 16 repeats the determination for the number of appearance frequency shared storage units 200.

一実施形態の変形例に係る認証サーバ10によれば、一のユーザの出現頻度記憶部132のデータを認証サーバ10の出現頻度共有記憶部200に転送し、他のユーザへの総当たり攻撃を判定する際に用いることができる。また、転送される出現頻度記憶部132には、ユーザが入力した正しいパスワードや誤ったパスワードの履歴の直接の文字列が含まれないため、共有の際にパスワードが漏えいする危険性が少ないという特長がある。   According to the authentication server 10 according to the modification of the embodiment, data of the appearance frequency storage unit 132 of one user is transferred to the appearance frequency share storage unit 200 of the authentication server 10, and a brute force attack on another user is performed. It can be used when making a decision. In addition, since the appearance frequency storage unit 132 to be transferred does not include the correct password input by the user or the direct character string of the incorrect password history, there is little risk that the password may be leaked at the time of sharing. There is.

以上、一実施形態に係る認証サーバ10及びその変形例に係る認証サーバ10について説明した。本実施形態及びその変形例に係る認証サーバ10によれば、総当り攻撃及び辞書攻撃でのパスワード漏洩を防止できるため、ユーザは複雑なパスワードの設定ルールを強いられることなく、利用しやすいパスワードを設定することができる。   In the above, the authentication server 10 which concerns on one Embodiment, and the authentication server 10 which concerns on the modification were demonstrated. According to the authentication server 10 according to the present embodiment and its modification, password leakage in a brute force attack and a dictionary attack can be prevented, so that the user can easily use a password without being forced to set complicated password setting rules. It can be set.

また、普段から入力誤りをしやすいパスワードについては、パスワード履歴記憶部131を用いて記憶し、誤ったパスワードの入力頻度によって出現頻度記憶部132に「負」の重み付けがなされるため、すぐに総当り攻撃と判断されない。よって、所定回数パスワードを間違えるとアカウントがロックされるといった短所が発生しない。   Also, since passwords that are prone to input errors are stored using the password history storage unit 131 and the appearance frequency storage unit 132 is weighted “negative” according to the incorrect password input frequency, the total is immediately set. It is not judged to be a hit attack. Therefore, there is no disadvantage that the account is locked if the password is incorrect the predetermined number of times.

また、パスワード文字列の攻撃判定や過去入力パスワードの記憶にはハッシュ化した数値を用いるため、システム内部に入力文字列そのものを記憶する必要がない。これにより処理の高速化、必要とするメモリ量の削減、セキュリティの向上といった効果が得られる。   In addition, since the hashed numerical value is used for the attack determination of the password string and storage of the past input password, there is no need to store the input string itself inside the system. As a result, the processing speed can be increased, the required amount of memory can be reduced, and the security can be improved.

以上、認証装置、認証プログラム及び認証方法を上記実施形態により説明したが、本発明に係る認証装置、認証プログラム及び認証方法は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。また、上記実施形態及び変形例が複数存在する場合、矛盾しない範囲で組み合わせることができる。   The authentication apparatus, the authentication program, and the authentication method have been described above according to the above embodiments, but the authentication apparatus, the authentication program, and the authentication method according to the present invention are not limited to the above embodiments, and various modifications are possible within the scope of the present invention Variations and improvements are possible. Moreover, when there exist two or more said embodiment and modification, it can combine in the not inconsistent range.

以上の説明に関し、更に以下の項を開示する。
(付記1)
正しいパスワードを受け付ける前に認証処理に失敗したパスワード又は該パスワードの対応値を所定個数記憶する記憶部に、新たに認証処理に失敗したパスワード又は該パスワードの対応値を記憶する際、該記憶部から消失するパスワード又は該パスワードの対応値の個数をカウントするカウント部と、
前記カウントした値が所定個数以上である場合、正しいパスワードの入力を受け付けたときに認証処理に成功したと判定せずに、前記カウントした値をリセットする認証部と、
を有する認証装置。
(付記2)
前記認証部は、前記カウントした値が所定個数未満である場合、正しいパスワードの入力を受け付けたときに認証処理に成功したと判定する、
付記1に記載の認証装置。
(付記3)
前記認証部は、前記カウントした値が所定個数以上である場合、動作モード情報を、攻撃者のパスワードによる認証でないことを示す第1モードから、攻撃者のパスワードによる認証であることを示す第2モードに切り替え、
前記カウントした値が所定個数以上である場合、正しいパスワードの入力を受け付けたときに、動作モード情報を前記第1モードに切り替え、
前記カウント部は、前記第2モードの状態において前記記憶部から消失するパスワード又は該パスワードの対応値が、前記第1モードの状態において前記記憶部から消失するパスワード又は該パスワードの対応値と同じ値の場合、少なくとも一回は前記カウントする個数から除外する、
付記1又は2に記載の認証装置。
(付記4)
正しいパスワードを受け付ける前に認証処理に失敗したパスワード又は該パスワードの対応値を所定個数記憶する記憶部に、新たに認証処理に失敗したパスワード又は該パスワードの対応値を記憶する際、該記憶部から消失するパスワード又は該パスワードの対応値の個数をカウントする処理と、
前記カウントした値が所定個数以上である場合、正しいパスワードの入力を受け付けたときに認証処理に成功したと判定せずに、前記カウントした値をリセットする処理と、
をコンピュータに実行させるための認証プログラム。
(付記5)
前記カウントした値が所定個数未満である場合、正しいパスワードの入力を受け付けたときに認証処理に成功したと判定する、
付記4に記載の認証プログラム。
(付記6)
前記カウントした値が所定個数以上である場合、動作モード情報を、攻撃者のパスワードによる認証でないことを示す第1モードから、攻撃者のパスワードによる認証であることを示す第2モードに切り替え、
前記カウントした値が所定個数以上である場合、正しいパスワードの入力を受け付けたときに、動作モード情報を前記第1モードに切り替え、
前記第2モードの状態において前記記憶部から消失するパスワード又は該パスワードの対応値が、前記第1モードの状態において前記記憶部から消失するパスワード又は該パスワードの対応値と同じ値の場合、少なくとも一回は前記カウントする個数から除外する、
付記4又は5に記載の認証プログラム。
(付記7)
正しいパスワードを受け付ける前に認証処理に失敗したパスワード又は該パスワードの対応値を所定個数記憶する記憶部に、新たに認証処理に失敗したパスワード又は該パスワードの対応値を記憶する際、該記憶部から消失するパスワード又は該パスワードの対応値の個数をカウントし、
前記カウントした値が所定個数以上である場合、正しいパスワードの入力を受け付けたときに認証処理に成功したと判定せずに、前記カウントした値をリセットする、
ことをコンピュータが実行する認証方法。
(付記8)
前記カウントした値が所定個数未満である場合、正しいパスワードの入力を受け付けたときに認証処理に成功したと判定する、
付記7に記載の認証方法。
(付記9)
前記カウントした値が所定個数以上である場合、動作モード情報を、攻撃者のパスワードによる認証でないことを示す第1モードから、攻撃者のパスワードによる認証であることを示す第2モードに切り替え、
前記カウントした値が所定個数以上である場合、正しいパスワードの入力を受け付けたときに、動作モード情報を前記第1モードに切り替え、
前記第2モードの状態において前記記憶部から消失するパスワード又は該パスワードの対応値が、前記第1モードの状態において前記記憶部から消失するパスワード又は該パスワードの対応値と同じ値の場合、少なくとも一回は前記カウントする個数から除外する、
付記7又は8に記載の認証方法。
The following sections will be further disclosed regarding the above description.
(Supplementary Note 1)
When storing a password for which authentication processing has failed anew or a corresponding value of the password in a storage unit for storing a predetermined number of passwords for which authentication processing has failed before receiving a correct password or the corresponding value of the password A counting unit that counts the number of lost passwords or corresponding values of the passwords;
An authentication unit that resets the counted value without determining that the authentication processing is successful when the input of the correct password is accepted when the counted value is equal to or greater than a predetermined number;
An authentication device having
(Supplementary Note 2)
The authentication unit determines that the authentication processing is successful when the input of the correct password is accepted when the counted value is less than a predetermined number.
The authentication device according to appendix 1.
(Supplementary Note 3)
If the counted value is equal to or more than a predetermined number, the authentication unit indicates that the operation mode information is an authentication by a password of an attacker from a first mode indicating that authentication by the password of the attacker is not performed. Switch to mode
When the counted value is equal to or more than a predetermined number, operation mode information is switched to the first mode when an input of a correct password is accepted,
The counting unit is the same as the password or the corresponding value of the password that disappears from the storage unit in the first mode state or the password that disappears from the storage unit in the second mode state. In the case of, excluding at least once from the counted number,
The authentication device according to Appendix 1 or 2.
(Supplementary Note 4)
When storing a password for which authentication processing has failed anew or a corresponding value of the password in a storage unit for storing a predetermined number of passwords for which authentication processing has failed before receiving a correct password or the corresponding value of the password A process of counting the number of lost passwords or corresponding values of the passwords;
A process of resetting the counted value without determining that the authentication process is successful when the input of a correct password is accepted when the counted value is equal to or greater than a predetermined number;
An authentication program to make a computer run.
(Supplementary Note 5)
If the counted value is less than a predetermined number, it is determined that the authentication process has succeeded when the input of the correct password is accepted.
The certification program described in Appendix 4.
(Supplementary Note 6)
When the counted value is equal to or more than a predetermined number, the operation mode information is switched from a first mode indicating that the authentication is not based on the password of the attacker to a second mode indicating that the authentication is based on the password of the attacker;
When the counted value is equal to or more than a predetermined number, operation mode information is switched to the first mode when an input of a correct password is accepted,
If at least one of the password or the corresponding value of the password lost from the storage unit in the second mode state has the same value as the password or the corresponding value of the password lost from the storage unit in the first mode state, Times are excluded from the counted number,
The authentication program according to appendix 4 or 5.
(Appendix 7)
When storing a password for which authentication processing has failed anew or a corresponding value of the password in a storage unit for storing a predetermined number of passwords for which authentication processing has failed before receiving a correct password or the corresponding value of the password Count the number of lost passwords or their corresponding values,
When the counted value is equal to or more than the predetermined number, when the input of the correct password is accepted, the counted value is reset without determining that the authentication process is successful.
An authentication method that a computer performs.
(Supplementary Note 8)
If the counted value is less than a predetermined number, it is determined that the authentication process has succeeded when the input of the correct password is accepted.
The authentication method according to appendix 7.
(Appendix 9)
When the counted value is equal to or more than a predetermined number, the operation mode information is switched from a first mode indicating that the authentication is not based on the password of the attacker to a second mode indicating that the authentication is based on the password of the attacker;
When the counted value is equal to or more than a predetermined number, operation mode information is switched to the first mode when an input of a correct password is accepted,
If at least one of the password or the corresponding value of the password lost from the storage unit in the second mode state has the same value as the password or the corresponding value of the password lost from the storage unit in the first mode state, Times are excluded from the counted number,
The authentication method according to appendix 7 or 8.

1 認証システム
10 認証サーバ
11 入力受付部
12 入力チェック部
13 記憶部
13a ユーザA用記憶部
14 パスワード変換部
15 カウント部
16 認証部
17 制御部
20 端末装置
30 ネットワーク
131a、131 パスワード履歴記憶部
132a、132 出現頻度記憶部
133a、133 動作モードフラグ
134a、134 認証状態フラグ
Reference Signs List 1 authentication system 10 authentication server 11 input reception unit 12 input check unit 13 storage unit 13a storage unit for user A 14 password conversion unit 15 count unit 16 authentication unit 17 control unit 20 terminal device 30 network 131a, 131 password history storage unit 132a, 132 appearance frequency storage unit 133a, 133 operation mode flag 134a, 134 authentication status flag

Claims (5)

正しいパスワードを受け付ける前に認証処理に失敗したパスワード又は該パスワードの対応値を所定個数記憶する記憶部に、新たに認証処理に失敗したパスワード又は該パスワードの対応値を記憶する際、該記憶部から消失するパスワード又は該パスワードの対応値の個数をカウントするカウント部と、
前記カウントした値が所定個数以上である場合、正しいパスワードの入力を受け付けたときに認証処理に成功したと判定せずに、前記カウントした値をリセットする認証部と、
を有する認証装置。
When storing a password for which authentication processing has failed anew or a corresponding value of the password in a storage unit for storing a predetermined number of passwords for which authentication processing has failed before receiving a correct password or the corresponding value of the password A counting unit that counts the number of lost passwords or corresponding values of the passwords;
An authentication unit that resets the counted value without determining that the authentication processing is successful when the input of the correct password is accepted when the counted value is equal to or greater than a predetermined number;
An authentication device having
前記認証部は、前記カウントした値が所定個数未満である場合、正しいパスワードの入力を受け付けたときに認証処理に成功したと判定する、
請求項1に記載の認証装置。
The authentication unit determines that the authentication processing is successful when the input of the correct password is accepted when the counted value is less than a predetermined number.
The authentication device according to claim 1.
前記認証部は、前記カウントした値が所定個数以上である場合、動作モード情報を、攻撃者のパスワードによる認証でないことを示す第1モードから、攻撃者のパスワードによる認証であることを示す第2モードに切り替え、
前記カウントした値が所定個数以上である場合、正しいパスワードの入力を受け付けたときに、動作モード情報を前記第1モードに切り替え、
前記カウント部は、前記第2モードの状態において前記記憶部から消失するパスワード又は該パスワードの対応値が、前記第1モードの状態において前記記憶部から消失するパスワード又は該パスワードの対応値と同じ値の場合、少なくとも一回は前記カウントする個数から除外する、
請求項1又は2に記載の認証装置。
If the counted value is equal to or more than a predetermined number, the authentication unit indicates that the operation mode information is an authentication by a password of an attacker from a first mode indicating that authentication by the password of the attacker is not performed. Switch to mode
When the counted value is equal to or more than a predetermined number, operation mode information is switched to the first mode when an input of a correct password is accepted,
The counting unit is the same as the password or the corresponding value of the password that disappears from the storage unit in the first mode state or the password that disappears from the storage unit in the second mode state. In the case of, excluding at least once from the counted number,
The authentication device according to claim 1.
正しいパスワードを受け付ける前に認証処理に失敗したパスワード又は該パスワードの対応値を所定個数記憶する記憶部に、新たに認証処理に失敗したパスワード又は該パスワードの対応値を記憶する際、該記憶部から消失するパスワード又は該パスワードの対応値の個数をカウントする処理と、
前記カウントした値が所定個数以上である場合、正しいパスワードの入力を受け付けたときに認証処理に成功したと判定せずに、前記カウントした値をリセットする処理と、
をコンピュータに実行させるための認証プログラム。
When storing a password for which authentication processing has failed anew or a corresponding value of the password in a storage unit for storing a predetermined number of passwords for which authentication processing has failed before receiving a correct password or the corresponding value of the password A process of counting the number of lost passwords or corresponding values of the passwords;
A process of resetting the counted value without determining that the authentication process is successful when the input of a correct password is accepted when the counted value is equal to or greater than a predetermined number;
An authentication program to make a computer run.
正しいパスワードを受け付ける前に認証処理に失敗したパスワード又は該パスワードの対応値を所定個数記憶する記憶部に、新たに認証処理に失敗したパスワード又は該パスワードの対応値を記憶する際、該記憶部から消失するパスワード又は該パスワードの対応値の個数をカウントし、
前記カウントした値が所定個数以上である場合、正しいパスワードの入力を受け付けたときに認証処理に成功したと判定せずに、前記カウントした値をリセットする、
ことをコンピュータが実行する認証方法。
When storing a password for which authentication processing has failed anew or a corresponding value of the password in a storage unit for storing a predetermined number of passwords for which authentication processing has failed before receiving a correct password or the corresponding value of the password Count the number of lost passwords or their corresponding values,
When the counted value is equal to or more than the predetermined number, when the input of the correct password is accepted, the counted value is reset without determining that the authentication process is successful.
An authentication method that a computer performs.
JP2017079202A 2017-04-12 2017-04-12 Authentication device, authentication program and authentication method Active JP6816623B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017079202A JP6816623B2 (en) 2017-04-12 2017-04-12 Authentication device, authentication program and authentication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017079202A JP6816623B2 (en) 2017-04-12 2017-04-12 Authentication device, authentication program and authentication method

Publications (2)

Publication Number Publication Date
JP2018180911A true JP2018180911A (en) 2018-11-15
JP6816623B2 JP6816623B2 (en) 2021-01-20

Family

ID=64275507

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017079202A Active JP6816623B2 (en) 2017-04-12 2017-04-12 Authentication device, authentication program and authentication method

Country Status (1)

Country Link
JP (1) JP6816623B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007156675A (en) * 2005-12-02 2007-06-21 Fuji Xerox Co Ltd Program for controlling user authentication, method, and computer system
JP2008046867A (en) * 2006-08-16 2008-02-28 Fuji Xerox Co Ltd Authentication control program and authentication device
JP2015072527A (en) * 2013-10-01 2015-04-16 キヤノン株式会社 Information processing system, information processing device and method of controlling the same, and program
JP2016051251A (en) * 2014-08-29 2016-04-11 キヤノンマーケティングジャパン株式会社 Authentication apparatus, authentication system, authentication method, and program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007156675A (en) * 2005-12-02 2007-06-21 Fuji Xerox Co Ltd Program for controlling user authentication, method, and computer system
JP2008046867A (en) * 2006-08-16 2008-02-28 Fuji Xerox Co Ltd Authentication control program and authentication device
JP2015072527A (en) * 2013-10-01 2015-04-16 キヤノン株式会社 Information processing system, information processing device and method of controlling the same, and program
JP2016051251A (en) * 2014-08-29 2016-04-11 キヤノンマーケティングジャパン株式会社 Authentication apparatus, authentication system, authentication method, and program

Also Published As

Publication number Publication date
JP6816623B2 (en) 2021-01-20

Similar Documents

Publication Publication Date Title
US10715320B2 (en) Password generation with key and derivation parameter
US9514294B1 (en) Accessing a computing resource
US8006078B2 (en) Central processing unit having branch instruction verification unit for secure program execution
US10320848B2 (en) Smart lockout
US10915656B2 (en) Rollback protection for login security policy
JP4845057B2 (en) Portable electronic device and program
JP5943359B2 (en) System, method and program for verifying password
US8549314B2 (en) Password generation methods and systems
US8140824B2 (en) Secure code authentication
JP5500180B2 (en) Fingerprint authentication apparatus, fingerprint authentication method, and fingerprint authentication program
CN109891422B (en) Dynamic reputation indicator for optimizing computer security operations
KR20080100204A (en) Client side attack resistant phishing detection
US10853058B1 (en) Application similarity detection
WO2013080062A1 (en) Cross system secure logon
JP5833640B2 (en) Method, device, and computer program support for password generation and verification
CN104834840A (en) Password protection method based on mapping drifting technology
JP5568696B1 (en) Password management system and program for password management system
KR102179854B1 (en) Method and apparatus for using network exhaustive resource
JP6816623B2 (en) Authentication device, authentication program and authentication method
EP2477137A1 (en) Method for verifying the integrity of a set of data
KR102350718B1 (en) Password encryption method using variable salt, apparatus and server therefor
CN112765588A (en) Identity recognition method and device, electronic equipment and storage medium
JP2015072511A (en) Onetime password device, method, and program
US20230401339A1 (en) Monitoring range determination device, monitoring range determination method, and computer readable medium
TWI807451B (en) Malware scans

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201030

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: 20201124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201207

R150 Certificate of patent or registration of utility model

Ref document number: 6816623

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150