Authentication device, authentication method and authentication program

The authentication system addresses the ineffectiveness of CAPTCHAs against AI by using a seed value-based image rearrangement and authentication method, enhancing security against autopilot attacks and deterring costly manual attacks.

JP2025126485APending Publication Date: 2025-08-29KDDI CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024022690
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-02-19
Publication Date
2025-08-29

AI Technical Summary

Technical Problem

Existing CAPTCHAs are ineffective against AI-driven autopilot attacks as they can be solved by AI, allowing automatic operation and reducing their protective effectiveness.

Method used

An authentication system that generates and rearranges multiple images using a seed value, requiring user selection and authentication only upon achieving a predetermined number of correct answers, with obfuscated programs and time-limited seed values to prevent easy decryption.

Benefits of technology

The system effectively suppresses autopilot attacks by making CAPTCHAs difficult to crack, even if solved by AI, reducing damage and requiring specialized equipment for attacks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025126485000001_ABST
    Figure 2025126485000001_ABST
Patent Text Reader

Abstract

To provide an authentication system which can suppress automatic operation attack and reduce damage.SOLUTION: A server 1 comprises: an image generation unit 11 which generates one original image in which a plurality of images are arranged; a seed value generation unit 12 which generates a seed value at random; a program generation unit 13 which generates a rearrangement program for rearranging the plurality of images in an order based on the seed value; a program transmission unit 14 which transmits the original image, the seed value, and the rearrangement program to a user's terminal; a selection result reception unit 15 which receives selection result information on the plurality of images together with the seed value in the order after rearrangement; a correctness determination unit 16 which, after converting the selection result information to the order before rearrangement on the basis of the seed value, compares the selection result information with selection necessity in the original image for each order to determine correctness; and an authentication processing unit 17 which permits the user's login only when the determined number of correct answers exceeds a predetermined number.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an authentication system using CAPTCHA. [Background technology]

[0002] Conventionally, to prevent autopilot attacks, an authentication method called CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) has been used to verify that the user is a human and not a computer (see, for example, Non-Patent Document 1). [Prior art documents] [Non-patent literature]

[0003] [Non-Patent Document 1] reCAPTCHA, Internet,<https: / / www.google.com / recaptcha / about / > Summary of the Invention [Problem to be solved by the invention]

[0004] However, existing common CAPTCHAs aim to create problems that cannot be solved by AI, and do not prevent automatic operation. In other words, once the problem is solved, automatic operation becomes possible. This means that as problems become more easily solved by AI, the effectiveness of CAPTCHAs against attacks is becoming ineffective.

[0005] The present invention aims to provide an authentication device, an authentication method, and an authentication program that can suppress autopilot attacks and reduce damage even if a problem is solved by AI. [Means for solving the problem]

[0006] The authentication device of the present invention comprises: an image generation unit that generates an original image containing multiple images, each of which is determined to require selection by the user; a seed value generation unit that randomly generates a seed value; a program generation unit that generates a rearrangement program for rearranging the multiple images included in the original image into an order based on the seed value; a program transmission unit that transmits the original image, the seed value, and the rearrangement program to the terminal of the user who requested login; a selection result receiving unit that, when the multiple images are rearranged and displayed by executing the rearrangement program on the terminal, receives selection result information indicating whether each of the multiple images was selected by the user together with the seed value in the rearranged order; a correct / incorrect judgment unit that converts the selection result information into the order before rearrangement based on the seed value, and then compares the selection result information with the order of whether or not the selection is required in the original image to determine whether it is correct; and an authentication processing unit that allows the user to log in only if the number of correct answers determined by the correct / incorrect judgment unit exceeds a predetermined number.

[0007] The program generation unit may generate the rearrangement program in an obfuscated manner.

[0008] The seed value generation unit may set an expiration date for the generated seed value, and the selection results reception unit may accept the selection results information only until the expiration date.

[0009] The seed value generation unit may generate a random value and signature data for the current time as the seed value, and the selection result reception unit may accept the seed value only up to a predetermined expiration date for the current time of the signature data.

[0010] The authentication method of the present invention includes an image generation step of generating an original image containing multiple images, each of which is determined to require selection by the user; a seed value generation step of randomly generating a seed value; a program generation step of generating a rearrangement program for rearranging the multiple images included in the original image into an order based on the seed value; a program transmission step of transmitting the original image, the seed value, and the rearrangement program to a terminal of the user who requested login; a selection result reception step of receiving, on the terminal, selection result information indicating whether each of the multiple images was selected by the user, together with the seed value, in the rearranged order, when the rearrangement program is executed on the terminal to rearrange and display the multiple images; a correct / incorrect determination step of converting the selection result information into the order before rearrangement based on the seed value, and then comparing the selection result information with the order of whether or not the user needs to select it to determine whether or not it is correct; and an authentication processing step of allowing the user to log in only if the number of correct answers determined in the correct / incorrect determination step exceeds a predetermined number.

[0011] An authentication program according to the present invention is for causing a computer to function as the authentication device. [Effects of the Invention]

[0012] According to the present invention, even if the problem is solved by AI, it is possible to suppress autopilot attacks and reduce damage. [Brief explanation of the drawings]

[0013] [Figure 1] FIG. 2 is a diagram illustrating a functional configuration of a server according to an embodiment. [Figure 2] 1 is a schematic diagram illustrating a CAPTCHA image and an authentication mechanism according to an embodiment. [Figure 3] FIG. 2 is a sequence diagram showing the procedure of an authentication method according to an embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0014] An example of an embodiment of the present invention will be described below. The authentication device of this embodiment protects image data necessary for autopilot and suppresses attacks by shuffling CAPTCHA images using a method described below.

[0015] FIG. 1 is a diagram showing the functional configuration of a server 1 (authentication device) in this embodiment. The server 1 is an information processing device that includes a control unit 10, a storage unit 20, various input / output interfaces, etc., and provides predetermined Web services in response to access from a user's terminal.

[0016] The control unit 10 is a part that controls the entire server 1, and realizes each function in this embodiment by appropriately reading and executing various programs stored in the storage unit 20. The control unit 10 may be a CPU. The storage unit 20 is a storage area for various programs for causing the hardware group to function as the server 1, various data, etc., and may be a ROM, RAM, flash memory, hard disk drive (HDD), or the like. Specifically, the control unit 10 functions as an image generation unit 11, a seed value generation unit 12, a program generation unit 13, a program transmission unit 14, a selection result reception unit 15, a correctness determination unit 16, and an authentication processing unit 17 by executing software (authentication program) stored in the memory unit 20.

[0017] The image generating unit 11 generates one original image in which a plurality of images are arranged, each of which is determined as to whether or not it is necessary for the user to select it.

[0018] The seed value generator 12 randomly generates a seed value for shuffling a plurality of images that make up the original image.

[0019] The program generating unit 13 generates a rearrangement program for rearranging a plurality of images included in the original image in an order based on the seed value. At this time, the program generation unit 13 generates the rearrangement program in an obfuscated manner, thereby preventing an attacker from deciphering the program.

[0020] The program transmission unit 14 transmits the original image, the seed value, and the rearrangement program to the terminal of the user who has requested login.

[0021] The selection result receiving unit 15 receives selection result information indicating whether each of the multiple images was selected by the user, together with the seed value, in the order after the rearrangement, when the rearrangement program is executed on the user's terminal to rearrange and display the multiple images.

[0022] The correctness determining unit 16 converts the selection result information into the order before rearrangement based on the seed value, and then compares each order with the necessity of selection in the original image to determine whether the information is correct or not.

[0023] The authentication processing unit 17 permits the user to log in only when the number of correct answers determined by the correctness determining unit 16 exceeds a predetermined number.

[0024] Here, the seed value generation unit 12 may set an expiration date for the generated seed value and store it in the storage unit 20. In this case, the selection results reception unit 15 accepts selection results information only up until the set expiration date. Alternatively, the seed value generation unit 12 may generate a random value and signature data for the current time as a seed value. In this case, the selection result receiving unit 15 will accept the seed value only up to a predetermined expiration date for the current time of the signature data.

[0025] FIG. 2 is a schematic diagram illustrating a CAPTCHA image and an authentication mechanism according to this embodiment. The server 1 transmits to the terminal of the user who has made the login request the original image in which a plurality of images are arranged (for example, 4×4), the seed value, and a rearrangement program for shuffling the original images based on the seed value.

[0026] The terminal executes a rearrangement program to shuffle the multiple images that make up the original image and display them as a CAPTCHA image. The user selects only images that meet the specified criteria from the displayed CAPTCHA images. In this example, the user selects the image of a pineapple and does not select any other images.

[0027] Whether or not the user has made a selection is notified to the server 1 together with the seed value in the order shuffled by the sorting program in the CAPTCHA image. The selection is restored to the original order using the seed value, and is checked against the selection necessity set in advance in the original image to determine whether the selection is correct or not.

[0028] FIG. 3 is a sequence diagram showing the procedure of the authentication method in this embodiment. In step S1, a user accesses a login page of a Web service provided by the server 1 from a terminal.

[0029] In step S2, the server 1 randomly generates a seed value S. In step S3, the server 1 transmits to the terminal an image A in which n images M1 to Mn, each of which may or may not be selected, are arranged in a single image, a seed value S, and a program B generated based on the seed value S, in order to display a question on the login page.

[0030] In step S4, the terminal executes program B to rearrange and arrange M1 to Mn in image A on the screen in a different order.

[0031] In step S5, the user selects one or more images from M1 to Mn on the terminal, and then presses the send button.

[0032] In step S6, the terminal transmits information on the selection result (presence or absence) for M1 to Mn in the rearranged order together with the seed value S to the server 1.

[0033] In step S7, the server 1 calculates the selection result information before rearrangement from the selection result information in the order after rearrangement based on the seed value S. Then, the server 1 compares the calculation result with the selection necessity determined in advance in the original image A, and determines whether the selection result is correct for each of the n images M1 to Mn.

[0034] In step S8, when the number of correct answers for selection presence / absence exceeds m (<n), the server 1 authenticates the user and displays the next page. On the other hand, when the number of correct answers is m or less, the login fails.

[0035] According to this embodiment, the server 1 generates a rearrangement program using the seed value, and after restoring the user's selection result to the original order based on this seed value, performs a correct / incorrect determination. By rearranging the CAPTCHA display image by the program transmitted to the terminal in this way, an attacker cannot easily obtain the display image without decrypting this program, and it is difficult to create the correct data to be answered to the server 1. Therefore, even if the problem based on the original image is solved by AI, the server 1 can suppress the automatic steering attack and reduce the damage.

[0036] Also, even if an attacker reads the communication content after decrypting the encryption such as SSL using a debugging tool or the like, the attacker cannot easily obtain the image for screen display. That is, in order to know how the screen was actually displayed from the communication content, it is necessary to know how the rearrangement program arranged the images. However, by combining with, for example, a source code obfuscation technique, it is possible to protect the rearrangement program from being decrypted by an attacker.

[0037] Furthermore, in this method, since the seed value is randomly selected each time, the rearrangement order cannot be known in advance. Also, since it is impossible to know how the rearrangement is performed based on the seed value, an attacker needs to decrypt the program every time they access. Therefore, by setting a time limit that is practically impossible to crack for the answer to the CAPTCHA, it is possible to create a CAPTCHA that is difficult to crack. For example, a time limit can be set by storing an expiration date for the seed value on server 1, or by using a signed version of the seed value and date and time instead of the seed value, thereby making it practically impossible for server 1 to decrypt the obfuscation.

[0038] The authentication method of this embodiment can be directly substituted for various existing CAPTCHAs, and can also be used in combination with other existing technologies. For example, by combining it with other technologies that detect browser autopilot, further measures can be taken, such as preventing capture of displayed images. Furthermore, attacks such as installing a camera outside a PC monitor or the like and acquiring a display image from the captured image are costly, so the authentication method of this embodiment has a high deterrent effect because attacks cannot be carried out without preparing such special equipment.

[0039] This will also make it possible to configure an authentication system that suppresses autopilot, for example, which will contribute to Goal 9 of the United Nations-led Sustainable Development Goals (SDGs), which is to "build resilient infrastructure, promote sustainable industrialization and foster innovation."

[0040] Although the embodiments of the present invention have been described above, the present invention is not limited to the above-described embodiments. Furthermore, the effects described in the above-described embodiments are merely a list of the most preferable effects resulting from the present invention, and the effects of the present invention are not limited to those described in the embodiments.

[0041] The authentication method by the server 1 is realized by software. When realized by software, the programs constituting this software are installed in an information processing device (computer). These programs may be distributed by being recorded on removable media such as CD-ROMs, or may be distributed by being downloaded to computers via a network. [Explanation of symbols]

[0042] 1 Server (authentication device) 10 Control Unit 11 Image generation unit 12 Seed value generation unit 13 Program Generation Section 14 Program Transmission Unit 15 Selection result receiving unit 16 Correctness Judgment Section 17 Authentication processing section 20 Memory section

Claims

1. an image generating unit that generates a single original image in which a plurality of images, each of which is determined as being selectable by a user, are arranged; a seed value generator that randomly generates a seed value; a program generation unit that generates a rearrangement program for rearranging the plurality of images included in the original image in an order based on the seed value; a program transmission unit that transmits the original image, the seed value, and the rearrangement program to the terminal of the user who has requested login; a selection result receiving unit that receives, in the terminal, selection result information indicating whether each of the plurality of images has been selected by the user, together with the seed value, in the order after the sorting, when the plurality of images are sorted and displayed by executing the sorting program; a correctness determining unit that converts the selection result information into an order before rearrangement based on the seed value, and then compares the selection result information with the necessity of selection in the original image for each order to determine correctness; an authentication processing unit that permits the user to log in only when the number of correct answers determined by the correct / incorrect determining unit exceeds a predetermined number.

2. The authentication device according to claim 1 , wherein the program generation unit generates the rearrangement program in an obfuscated manner.

3. the seed value generation unit sets an expiration date for the generated seed value, 3. The authentication device according to claim 1, wherein the selection result receiving unit accepts the selection result information only until the expiration date.

4. the seed value generation unit generates a random value and signature data for a current time as the seed value; 3. The authentication device according to claim 1, wherein the selection result receiving unit accepts the seed value only up to a predetermined expiration date relative to the current time of the signature data.

5. an image generating step of generating one original image in which a plurality of images, each of which is determined as being selectable by a user, are arranged; a seed value generation step of randomly generating a seed value; a program generation step of generating a sorting program for sorting the plurality of images included in the original image in an order based on the seed value; a program transmission step of transmitting the original image, the seed value, and the sorting program to the terminal of the user who has requested login; a selection result receiving step of receiving, in the terminal, selection result information indicating whether each of the plurality of images has been selected by the user, together with the seed value, in the order after the sorting, while the plurality of images are sorted and displayed by executing the sorting program; a correctness determining step of converting the selection result information into the order before rearrangement based on the seed value, and then comparing the selection necessity in the original image for each order to determine correctness; an authentication processing step of permitting login of the user only when the number of correct answers determined in the correct / incorrect determining step exceeds a predetermined number.

6. 3. An authentication program for causing a computer to function as the authentication device according to claim 1.