Program

JP2025031293AInactive Publication Date: 2025-03-07COLOPL
View PDF 9 Cites 0 Cited by

Patent Information

Application Number
JP2023137423
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-08-25
Publication Date
2025-03-07
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Benefits of technology

【0009】 本発明によれば、3次元の仮想空間の世界観を壊すことなく人間認証が行えるプログラム及びシステムを提供することができる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025031293000001_ABST
    Figure 2025031293000001_ABST
Patent Text Reader

Abstract

To provide a program that can perform human authentication without destroying a worldview of a three-dimensional virtual space.SOLUTION: A program causes a computer to function as challenge providing means that provides a challenge, which is a task to be performed in a virtual space, to a respondent who performs the challenge, and response determination means that determines, on the basis of a comparison result between a response resulting from the respondent performing the challenge and a correct answer to the challenge, whether a respondent is a human being.SELECTED DRAWING: Figure 8
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a program and a system. [Background technology]

[0002] Conventionally, human authentication technology (also called "CAPTCHA") that determines whether a respondent is a human being and not a computer has been known.

[0003] As one example, Patent Document 1 discloses a response determination device that generates a character-converted question by converting part of any word contained in a question consisting of one or more words into another character string or character that is predictable by the user according to predetermined conversion rules, and determines that a response to the character-converted question is a human response if it matches the correct answer to the question before the character conversion. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] International Publication No. 2012 / 029519 Summary of the Invention [Problem to be solved by the invention]

[0005] In Patent Document 1, a response to a character conversion question is input into a form formed on a two-dimensional screen. Therefore, when the response determination device is applied to human authentication in a three-dimensional virtual space, a two-dimensional input form is displayed in the three-dimensional virtual space. As a result, there is a problem that a user who sees this feels uncomfortable and loses a sense of immersion in the virtual space.

[0006] The present invention has been made in consideration of the above circumstances, and has an object to provide a program and a system capable of performing human authentication without destroying the worldview of a three-dimensional virtual space. [Means for solving the problem]

[0007] In order to solve the above problem, the program of the present invention causes a computer to function as a challenge providing means for providing a challenge, which is a task to be performed in a virtual space, to a respondent who performs the challenge, and as a response determination means for determining whether the respondent is human or not based on the result of comparing the response, which is the result of the respondent performing the challenge, with the correct answer to the challenge.

[0008] In addition, the system of the present invention is a system that includes a server and a terminal communicatively connected to the server, wherein the terminal is equipped with a response input receiving means that receives an input operation of a response indicating the result of executing a challenge, which is a task to be performed in a virtual space, generates response data including the content of the response, and transmits it to the server, and the server is equipped with a challenge providing means that provides the challenge to the terminal operated by a respondent executing the challenge, a response acquisition means that acquires the response data, and a response determination means that determines whether or not the respondent is a human being based on the result of comparing the content of the response included in the response data with the correct answer to the challenge. Effect of the Invention

[0009] According to the present invention, it is possible to provide a program and a system that can perform human authentication without destroying the worldview of a three-dimensional virtual space. [Brief description of the drawings]

[0010] [Figure 1] 1 is a diagram showing an overview of a system according to an embodiment of the present invention; [Diagram 2] FIG. 2 is a diagram illustrating a hardware configuration of a server. [Diagram 3] FIG. 2 is a hardware configuration diagram of an HMD set, which is an example of a user terminal. [Figure 4] FIG. 11 is a hardware configuration diagram of a tablet terminal, which is another example of a user terminal. [Diagram 5]FIG. 1 is a diagram conceptually illustrating one aspect of a virtual space. [Figure 6] 1 is a diagram showing a YZ cross section of a field of view in a virtual space as viewed from an X direction. [Figure 7] 1 is a diagram showing an XZ cross section of a field of view in a virtual space as viewed from the Y direction. [Figure 8] FIG. 2 is a functional block diagram of a server and a user terminal. [Figure 9] 1 is a flowchart showing the operation of the system when performing human authentication when a user terminal logs in to a server. [Figure 10] 13 is a flowchart showing details of a challenge execution screen display process in a user terminal. [Figure 11] 11A to 11C are diagrams illustrating an example of screen transition when human authentication is performed at login. [Figure 12] 13A to 13C are diagrams illustrating an example of screen transition of a challenge execution screen. [Figure 13] FIG. 13 is a diagram showing another example of the challenge execution screen. [Figure 14] FIG. 13 is a diagram showing another example of the challenge execution screen. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0011] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. Note that the embodiment of the present invention described below is an example of how the present invention is embodied, and the scope of the present invention is not limited to the scope of the embodiment. Therefore, the present invention can be implemented by adding various modifications to the embodiment.

[0012] [System 1 Overview] FIG. 1 is a diagram showing an overview of a system 1 according to this embodiment. As shown in FIG. 1, the system 1 mainly includes a server 10 and user terminals 20A, 20B, and 20C (hereinafter, these may be collectively referred to as "user terminals 20"). Although three user terminals 20 are shown in FIG. 1, examples of the user terminals 20 included in the system 1 are not limited to these. The server 10 and the user terminals 20 are connected to each other so as to be able to communicate with each other via a communication network 2. A specific example of the communication network 2 is not particularly limited, and may be, for example, the Internet, a mobile communication system (e.g., 4G, 5G, etc.), a wireless network such as Wi-Fi (registered trademark), or a combination of these.

[0013] The system 1 according to this embodiment is a system for allowing each user of a plurality of user terminals 20A to 20C to experience a common virtual space provided by a server 10. More specifically, the user terminal 20 places a user character (hereinafter, sometimes referred to as an "avatar") associated with the user in the virtual space, and causes the user terminal 20 to display an image of the virtual space viewed from a preset viewpoint.

[0014] Furthermore, in conjunction with the user's operation on the operating device, the user terminal 20 moves an avatar in the virtual space corresponding to the user operated by the user terminal 20. The movements of the avatar include, for example, moving in the virtual space, moving various parts of the body, changing posture, changing facial expressions, speaking, moving objects arranged in the virtual space, and the like.

[0015] Furthermore, the user terminal 20 transmits avatar data indicating the avatar's movements and status changes to the server 10 via the communication network 2. The server 10 transmits the avatar data received from the user terminal 20 to other user terminals 20 via the communication network 2. Then, the user terminal 20 updates the movements and status of the corresponding avatar in the virtual space based on the avatar data received from the server 10.

[0016] The user terminal 20 for operating the avatar may be an HMD set, a laptop computer, a desktop computer, a tablet terminal, a smartphone, or the like, and the specific form of the user terminal is not limited to the above-mentioned examples.

[0017] [Server 10 configuration] Fig. 2 is a hardware configuration diagram of the server 10. The server 10 is realized by, for example, a general-purpose computer such as a workstation or a personal computer. As shown in Fig. 2, the server 10 mainly includes a processor 11, a memory 12, a storage 13, an input / output interface 14, and a communication interface 15. Each component of the server 10 is connected to a communication bus 19.

[0018] The processor 11 realizes processes described below by executing a series of instructions included in a server program 13P stored in the memory 12 or the storage 13. The processor 11 is realized as, for example, a central processing unit (CPU), a graphics processing unit (GPU), a micro processing unit (MPU), a field-programmable gate array (FPGA), or other devices.

[0019] The memory 12 temporarily holds a server program 13P and data. The server program 13P is loaded from, for example, the storage 13. The data includes data input to the server 10 and data generated by the processor 11. For example, the memory 12 is realized as a RAM (Random Access Memory) or other volatile memory.

[0020] The storage 13 permanently holds the server program 13P and data. The storage 13 is realized, for example, as a ROM (Read-Only Memory), a hard disk drive, a flash memory, or other non-volatile storage device. The storage 13 may also be realized as a removable storage device such as a memory card. As yet another example, the storage 13 may be connected to the server 10 as an external storage device instead of being built into the server 10. With this configuration, for example, in a scene where a plurality of user terminals 20 are used, such as an amusement facility, it becomes possible to collectively update the server program 13P and data.

[0021] The input / output interface 14 is an interface for connecting external devices such as a monitor, an input device (e.g., a keyboard, a pointing device), an external storage device, a speaker, a camera, a microphone, a sensor, etc. to the server 10. The processor 11 communicates with the external devices through the input / output interface 14. The input / output interface 14 is realized using, for example, a Universal Serial Bus (USB), a Digital Visual Interface (DVI), a High-Definition Multimedia Interface (HDMI, registered trademark), or other terminals.

[0022] The communication interface 15 communicates with other devices (e.g., user terminal 20) connected to the communication network 2. The communication interface 15 is realized as, for example, a wired communication interface such as a Local Area Network (LAN) or a wireless communication interface such as Wireless Fidelity (Wi-Fi), Bluetooth (registered trademark), or Near Field Communication (NFC).

[0023] [Configuration of user terminal 20] Fig. 3 is a hardware configuration diagram of an HMD (Head Mounted Display) set, which is an example of the user terminal 20. Fig. 4 is a hardware configuration diagram of a tablet terminal, which is another example of the user terminal 20. The user terminal 20 is realized as, for example, an HMD set shown in Fig. 3, a tablet terminal shown in Fig. 4, a smartphone, a feature phone, a laptop computer, a desktop computer, or the like.

[0024] As shown in Fig. 3, a user terminal 20 realized as an HMD set includes a computer 26 having a processor 21, a memory 22, a storage 23, an input / output interface 24, and a communication interface 25. The components of the computer 26 are connected to a communication bus 29. The basic configuration of the processor 21, memory 22, storage 23, input / output interface 24, communication interface 25, and communication bus 29 is the same as that of the processor 11, memory 12, storage 13, input / output interface 14, communication interface 15, and communication bus 19 shown in Fig. 2. In addition, the storage 23 holds a terminal program 23P.

[0025] The user terminal 20 realized as an HMD set also includes an HMD 30, a motion sensor 41, and an operation device 42 as external devices of the computer 26. The HMD 30, the motion sensor 41, and the operation device 42 are connected to the processor 21 via the input / output interface 24.

[0026] The HMD 30 is worn on the user's head to provide the user with a virtual space. More specifically, the HMD 30 may include both a so-called head-mounted display equipped with a monitor and a head-mounted device to which a smartphone or other terminal having a monitor can be attached. The HMD 30 mainly includes a monitor 31 (display device), a gaze sensor 32, cameras 33 and 34, a microphone 35, and a speaker 36.

[0027] As an example, the monitor 31 is realized as a non-transmissive display device. The monitor 31 is disposed on the main body of the HMD 30 so as to be located in front of both eyes of the user. The non-transmissive monitor 31 is realized as, for example, a liquid crystal monitor or an organic EL (Electro Luminescence) monitor.

[0028] As another example, the monitor 31 is realized as a transmissive display device. In this case, the HMD 30 is not a closed type that covers the user's eyes, but an open type such as glasses. The monitor 31 may include a configuration that simultaneously displays a part of an image that constitutes a virtual space and a real space. As an example, the transmissive monitor 31 may display an image of the real space captured by a camera mounted on the HMD 30. As another example, the transmissive monitor 31 may be configured to have an adjustable transmittance. The transmissive monitor 31 may set the transmittance of a part of the display area high so that the real space can be directly viewed.

[0029] Furthermore, the monitor 31 may employ the following configuration to allow the user to view a three-dimensional image. As an example, the monitor 31 may include a sub-monitor for displaying an image for the right eye and a sub-monitor for displaying an image for the left eye. As another example, the monitor 31 may be configured to display an image for the right eye and an image for the left eye as a single unit. In this case, the monitor 31 includes a high-speed shutter. The high-speed shutter operates to alternately display an image for the right eye and an image for the left eye so that the image is recognized by only one of the eyes.

[0030] The gaze sensor 32 detects the direction in which the gaze of the user's right eye and left eye is directed. That is, the gaze sensor 32 detects the gaze of the user. The gaze sensor 32 is realized by, for example, a sensor having an eye tracking function. The gaze sensor 32 preferably includes a sensor for the right eye and a sensor for the left eye. The gaze sensor 32 irradiates the user's right eye and left eye with infrared light and detects the rotation angle of each eyeball by receiving reflected light from the cornea and iris of the irradiated light. Then, the gaze sensor 32 identifies the gaze of the user based on each detected rotation angle.

[0031] The camera 33 captures an image of the upper part of the face of the user wearing the HMD 30 (more specifically, the user's eyes, eyebrows, etc.). The camera 34 captures an image of the lower part of the face of the user wearing the HMD 30 (more specifically, the user's nose, mouth, etc.). For example, the camera 33 is attached to the side of the housing of the HMD 30 that faces the user, and the camera 34 is attached to the side opposite to the side facing the user. Note that the HMD 30 may include one camera that captures an image of the entire face of the user, instead of the two cameras 33 and 34.

[0032] The microphone 35 converts the user's speech into an audio signal (electrical signal) and outputs it to the computer 26. The speaker 36 converts the audio signal output from the computer 26 into sound and outputs it to the user. Note that the HMD 30 may include earphones instead of the speaker 36.

[0033] The motion sensor 41 has a position tracking function for detecting the motion of the HMD 30. As one example, the motion sensor 41 may detect the position and inclination of the HMD 30 in real space by reading a plurality of infrared rays emitted by the HMD 30. As another example, the motion sensor 41 may be realized by a camera. In this case, the motion sensor 41 analyzes image information of the HMD 30 output from the camera to detect the position and inclination of the HMD 30. As yet another example, the motion sensor 41 may be realized by an angular velocity sensor, a geomagnetic sensor, or an acceleration sensor.

[0034] The operation device 42 is connected to the computer 26 by wire or wirelessly. The operation device 42 accepts input (operation) of commands to the computer 26 by the user. As one example, the operation device 42 may be a so-called controller that is operated while being held by the user. As another example, the operation device 42 may be configured to be wearable on the user's body or part of his / her clothing, and may detect the user's movements by a motion sensor. However, specific examples of the operation device 42 are not limited to these, and may be a keyboard, a pointing device, a touch panel, or the like.

[0035] 4, the user terminal 20 realized as a tablet terminal mainly includes a processor 21, a memory 22, a storage 23, a communication interface 25, a monitor 31, cameras 33 and 34, a microphone 35, a speaker 36, a motion sensor 41, and an operation device 42. The components of the tablet terminal are connected to a communication bus 29. The basic configuration of the processor 21, memory 22, storage 23, communication interface 25, monitor 31, cameras 33 and 34, microphone 35, speaker 36, motion sensor 41, and operation device 42 is the same as that of an HMD set, so the configuration specific to the tablet terminal will be described below.

[0036] The monitor 31 is provided on the surface of a flat housing. The camera 33 is a so-called in-camera that is attached to the surface of the flat housing and captures an image of the face of a user viewing the monitor 31. The camera 34 is a so-called out-camera that is attached to the back surface of the flat housing (the surface opposite to the monitor 31) and captures an image of the surroundings. The motion sensor 41 detects the motion of the housing (for example, rotation around three axes perpendicular to each other). An example of an operation device 42 suitable for a tablet terminal is a touch panel that is superimposed on the monitor 31 and receives various touch operations by the user (for example, tapping, sliding, flicking, pinching in, pinching out, etc.).

[0037] [Overview of Virtual Space 90] Fig. 5 is a diagram conceptually illustrating one aspect of the virtual space 90. Fig. 6 is a diagram illustrating a YZ cross section of the field of view 94 in the virtual space 90 as viewed from the X direction. Fig. 7 is a diagram illustrating an XZ cross section of the field of view 94 in the virtual space 90 as viewed from the Y direction.

[0038] As shown in Fig. 5, the virtual space 90 has a celestial sphere-like structure covering the entire 360-degree direction from the center C. In Fig. 5, in order to avoid complicating the explanation, the celestial sphere in the upper half of the virtual space 90 is illustrated as an example. Meshes are defined in the virtual space 90. The position of each mesh is defined in advance as a coordinate value in an XYZ coordinate system, which is a global coordinate system defined in the virtual space 90. Each partial image constituting a panoramic image 91 (still image, video, etc.) that can be deployed in the virtual space 90 is associated with a corresponding mesh in the virtual space 90.

[0039] For example, in the virtual space 90, an XYZ coordinate system is defined with the center C as the origin. The XYZ coordinate system is, for example, parallel to the real coordinate system. The horizontal direction, vertical direction (up-down direction), and front-back direction in the XYZ coordinate system are defined as the X-axis, Y-axis, and Z-axis, respectively. Therefore, the X-axis (horizontal direction) of the XYZ coordinate system is parallel to the x-axis of the real coordinate system, the Y-axis (vertical direction) of the XYZ coordinate system is parallel to the y-axis of the real coordinate system, and the Z-axis (front-back direction) of the XYZ coordinate system is parallel to the z-axis of the real coordinate system.

[0040] A virtual camera 92 associated with the user terminal 20 is placed in the virtual space 90. The position of the virtual camera 92 in the virtual space 90 corresponds to the user's viewpoint in the virtual space 90. The orientation of the virtual camera 92 corresponds to the user's line of sight (reference line of sight 93) in the virtual space 90. The processor 21 then determines a viewing area 94 (the angle of view of the virtual camera 92) in the virtual space 90 based on the position and orientation of the virtual camera 92. Therefore, the virtual space image captured by the virtual camera 92 is an image seen from the user operating the user terminal 20, and is therefore referred to as a "self-viewpoint image" in the following description.

[0041] As shown in Fig. 6, the field of view region 94 includes an area 95 in the YZ cross section. The area 95 is a range of a polar angle α centered on the reference line of sight 93 in a vertical cross section (YZ cross section) including the reference line of sight 93 in the virtual space 90. As shown in Fig. 7, the field of view region 94 includes an area 96 in the XZ cross section. The area 96 is a range of an azimuth angle β centered on the reference line of sight 93 in a horizontal cross section (XZ cross section) including the reference line of sight 93 in the virtual space 90.

[0042] Processor 21 generates (extracts) a partial image included in field of view 94 of panoramic image 91 deployed in virtual space 90 as virtual space image 97 captured by virtual camera 92. Then, processor 21 displays the generated virtual space image 97 on monitor 31. That is, field of view 94 corresponds to the user's field of view in virtual space 90. Furthermore, field of view 94 moves in response to changes in the position and orientation of virtual camera 92 in virtual space 90, and virtual space image 97 displayed on monitor 31 is updated. That is, the user's field of view moves.

[0043] For example, the processor 21 moves the virtual camera 92 in the virtual space 90 in conjunction with a user's operation received by the operation device 42. The processor 21 also changes the orientation of the virtual camera 92 (i.e., the reference line of sight 93) in conjunction with the movement of the user terminal 20 detected by the motion sensor 41 (e.g., rotation around three mutually perpendicular axes). Furthermore, the processor 21 causes the monitor 31 to display a virtual space image 97 captured by the virtual camera 92 after the position and orientation have been changed.

[0044] [Functional block diagram of server 10 and user terminal 20] Fig. 8 is a functional block diagram of the server 10 and the user terminal 20. As shown in Fig. 8, the server program 13P loaded into the memory 12 causes the server 10 to function mainly as a virtual reality providing means 100 and a human authentication means 110. In this embodiment, an example is illustrated in which the server 10 includes both the virtual reality providing means 100 and the human authentication means 110, but the virtual reality providing means 100 and the human authentication means 110 may be configured using separate servers.

[0045] (Server program: Virtual reality provision means) The virtual reality providing means 100 transmits and receives virtual space image data and audio data according to the virtual reality service to be provided, and also performs payment processing as necessary. Specific examples of virtual reality services include a virtual mall, a virtual showroom, a virtual event, a virtual tour, a virtual school, and a game distribution service, and the type of service is not important as long as it can be provided in a virtual space.

[0046] The virtual reality providing means 100 includes, for example, a login authentication means 101, a virtual space data transmission means 102, a service providing means 103, a payment means 104, and an avatar synchronization means 105. The configuration example of the virtual reality providing means 100 is merely an example and is not limited thereto.

[0047] The login authentication means 101 performs user authentication by uniquely identifying a user who logs in to the server 10. In this embodiment, the login authentication means 101 also performs authentication via the human authentication means 110 as to whether the person making the login request is a human.

[0048] The virtual space data transmission means 102 transmits to the user terminal 20 virtual space data required for displaying a virtual space image on the user terminal 20. The virtual space data includes, for example, a panoramic image 91 and shapes and positions of objects (e.g., buildings, plants) placed in the virtual space 90.

[0049] The service providing means 103 generates and transmits / receives information necessary for the service provided by the virtual reality providing means 100. For example, when providing a virtual mall or a virtual showroom, the service provides customer service and product explanations by a salesclerk avatar in a virtual shop or showroom deployed in a virtual space, the service provides live video and audio within the virtual space in a virtual event, the service provides video of tourist spots provided by virtual space video and tourist spot guide information by a tour conductor avatar in a virtual tour, the service provides classroom video and teaching material video provided by virtual space video as well as lesson information by a teacher avatar in a virtual school, and the service provides a game video distribution service to the user terminal 20.

[0050] The payment means 104 handles payment processing when a user makes a purchase within the virtual reality providing means 100.

[0051] Avatar synchronization means 105 transmits (relays) avatar data received from one of user terminals 20 via communication network 2 to the other user terminals 20. As a result, all user terminals 20A to 20C hold the same avatar data. As a result, the same avatar is placed at the same position in virtual space 90 defined in each of user terminals 20A to 20C. That is, the avatars are synchronized in all user terminals 20A to 20C.

[0052] (Server program: Human authentication means) The human authentication means 110 is a means for determining whether or not the person receiving the virtual reality service is a human being.

[0053] The human authentication means 110 includes, for example, a challenge generation means 111, a challenge providing means 112, a response acquisition means 113, a response determination means 114, and a challenge correct data storage means 115. The configuration of the human authentication means 110 is not limited to this.

[0054] A "challenge" here is a task presented to a respondent to determine whether the respondent is a human or a computer. When a user performs a challenge, the user becomes the respondent. The content of the challenge performed by the respondent is called a "response." The challenge correct answer data stored in the challenge correct answer data storage means 115 is a pair of challenge data indicating the content of the challenge and correct answer data.

[0055] The challenge generation means 111 generates a task to be performed by the respondent, i.e., a challenge and a correct answer. The challenge generation means 111 generates a challenge when there is a request from the virtual reality provision means 100, or when the challenge generation means 111 monitors the service provided by the virtual reality provision means 100 and meets predetermined conditions. The challenge to be generated may be unrelated to the service provided by the virtual reality provision means 100, or may be mixed into a scene of the service provided by the virtual reality provision means 100.

[0056] The challenge generating means 111 may generate challenge answer data that matches the image each time based on the image being displayed on the user terminal 20 and use the generated challenge answer data for human authentication processing. Alternatively, when the challenge generating means 111 reads out challenge answer data from the challenge answer data storage means 115, it is not necessary to generate a challenge.

[0057] The challenge providing means 112 transmits challenge data to the user terminal 20. The challenge data includes video data for displaying a challenge execution screen. The challenge data may further include audio data indicating the instruction content of the challenge, for example, notification content such as "Put the ball on the table." When challenge data is generated by combining video data and audio data in this way, if the respondent is a computer, the content of the challenge needs to be deciphered using image analysis means and audio analysis means, which increases the difficulty of responding to the challenge, whereas if a human being does not feel any particular difficulty, it becomes easier to distinguish between human and computer respondents.

[0058] The response acquisition means 113 acquires (receives) from the user terminal 20 response data indicating the result of the challenge.

[0059] The response determination means 114 compares the response included in the response data with the correct answer included in the correct answer data, and determines whether the response is correct or not based on the degree of match. If the response is correct, the response determination means 114 determines that the respondent is a human. The above-mentioned "degree of match" is not limited to a perfect match, and the challenge may be determined to be successful if the degree of match is equal to or greater than a predetermined threshold. This allows the user to perform the challenge with sufficient accuracy to determine that the respondent is a human even if the user's operation technique of the operation device 42 is not sufficient to achieve a perfect match, and as a result, it is possible to reduce the frequency of false positive determinations in which the respondent is determined to be non-human because the response and the correct answer do not match perfectly even though the respondent is a human.

[0060] (Terminal Program) The terminal program 23P loaded into the memory 22 causes the user terminal 20 (computer 26) to function as a virtual space definition means 210, a placement means 220, an image generation means 230, an image display means 240, an audio output means 250, and a response input reception means 260.

[0061] The virtual space definition means 210 defines a virtual space 90 corresponding to a real space. More specifically, the virtual space definition means 210 expands virtual space data indicating the virtual space 90 in the memory 22. The virtual space data may be downloaded in advance from the server 10 and stored in the storage 23, or may be downloaded from the server 10 when the virtual space 90 is defined. The virtual space definition means 210 may also define a virtual space 90 selected from a plurality of virtual spaces 90 via the operation device 42. The specific process of defining the virtual space 90 is already well known, and therefore a detailed description thereof will be omitted.

[0062] The arrangement means 220 arranges avatars and virtual objects in the virtual space 90 defined by the virtual space definition means 210. Here, a case will be described where the terminal program 23P is executed in the user terminal 20A. The avatars arranged in the virtual space 90 by the arrangement means 220 include the avatar of the user of the user terminal 20A (hereinafter referred to as the "user's avatar") and the avatars of the users of the other user terminals 20B and 20C (hereinafter referred to as the "other users' avatars").

[0063] First, the arrangement means 220 arranges the principal avatar in the virtual space 90 based on the avatar data pre-stored in the storage 23. Then, the arrangement means 220 transmits the avatar data of the principal avatar to the server 10 through the communication network 2. Furthermore, when the arrangement means 220 receives a user's operation instructing the principal avatar to move through the operation device 42, the arrangement means 220 moves the principal avatar in the virtual space 90 in accordance with the operation. Then, the arrangement means 220 updates the avatar data to indicate a state of the principal avatar after the movement, and transmits the updated avatar data to the server 10 through the communication network 2.

[0064] Furthermore, the arrangement means 220 receives avatar data of the other person's avatar from the server 10 through the communication network 2. Then, the arrangement means 220 arranges the other person's avatar in the virtual space 90 based on the avatar data received from the server 10. Furthermore, the arrangement means 220 rearranges the other person's avatar every time the avatar data is updated, thereby causing the other person's avatar to operate within the virtual space 90.

[0065] The image generating means 230 generates an image captured in the virtual space 90 by the virtual camera 92. More specifically, the image generating means 230 extracts an image corresponding to the field of view 94 from the panoramic image 91 as a virtual space image 97. The image generating means 230 also generates an image by arranging the virtual space images 97 extracted at a predetermined time interval (for example, 1 / 60 second interval) in time series. When the virtual camera 92 is placed at the viewpoint of the person's avatar, the image generating means 230 generates a self-designated image from the viewpoint of the person's avatar, a so-called first-person viewpoint. When the virtual camera 92 is placed at a position different from the viewpoint of the person's avatar, for example, behind the person's avatar, the image generating means 230 generates a self-viewpoint image from a viewpoint different from the viewpoint of the person's avatar, a so-called third-person viewpoint.

[0066] The video display means 240 displays the self-viewpoint video on the monitor 31. More specifically, the video display means 240 expands the self-viewpoint video data generated by the video generation means 230 in the graphic memory of the monitor 31. Then, every time the character in the virtual space 90 is updated, the video generation means 230 generates a new virtual space image 97, and the video display means 240 displays the newly generated virtual space image 97 on the monitor 31. This allows the user of the user terminal 20 to view, through the monitor 31, a self-viewpoint video from a first-person or third-person perspective based on the user's own avatar operating in the virtual space 90.

[0067] The audio output means 250 outputs the audio data received from the server 10 from the speaker 36 .

[0068] The response input receiving means 260 receives input of a response operation to a challenge executed on the virtual space image in accordance with a user's operation via the operation device 42. The response input receiving means 260 generates response data indicating the content of the response based on the operation signal input from the operation device 42, and transmits the response data to the server 10.

[0069] (Human authentication process: when logging in) 9 is a flowchart showing the operation of the system 1 when performing human authentication when the user terminal 20 logs in to the server 10. In this embodiment, when the user terminal 20 logs in to the server 10, authentication is performed not only to determine whether the user is a specific individual, but also to determine whether the user is a human. This is expected to provide a defensive effect against attacks in which a computer automatically inputs a login ID and a login password to illegally log in.

[0070] The user terminal 20 inputs a login ID and a login password into a login page provided by the server 10 (virtual reality providing means 100) and transmits login request information to the server 10 (S01).

[0071] The server 10 (login authentication means 101) compares the login ID and login password included in the login request information with the login authentication data (S02). If the login authentication is not successful, the login authentication means 101 notifies the user terminal 20 of "login authentication failure" and ends the login authentication process.

[0072] If the login authentication is successful, the server 10 (human authentication means 110) starts the human authentication process shown in steps S11 to S16. First, the server 10 (challenge generation means 111) generates challenge data to be executed in the virtual space image and its correct answer data (S11).

[0073] Next, the server 10 (challenge providing means 112) transmits the virtual space data and the challenge data to the user terminal 20 (S12).

[0074] The user terminal 20 (image generating means 230) generates a screen (challenge execution screen) for executing the challenge in the three-dimensional virtual space based on the virtual space data and the challenge data. Then, the user terminal 20 (image display means 240) displays the challenge execution screen on the screen of the monitor 31 (S13). If the challenge data includes audio data, the user terminal 20 (audio output means 250) outputs audio uttering the content of the challenge from the speaker 36. Details of this step will be described later with reference to FIG. 10.

[0075] The user performs a response operation on the challenge execution screen using the operation device 42 (S14), and the user terminal 20 (response input receiving means 260) generates response data indicating the response operation based on the operation signal from the operation device 42 and transmits it to the server 10 (S15).

[0076] The server 10 (response acquisition means 113) acquires the response data. Then, the server 10 (response determination means 114) compares the response operation with the correct answer based on the response data and the correct answer data, and performs human authentication (S16).

[0077] If the human authentication is successful, the server 10 (login authentication means 101) permits the login, and if the human authentication fails, it denies the login and terminates the login authentication process. If the login is permitted, the server 10 (virtual space data transmission means 102, service providing means 103) starts providing the virtual space data and virtual reality services. In this way, the human authentication means 110 performs human authentication in response to a request from the virtual reality provision means 100 and returns the result to the virtual reality provision means 100, and the virtual reality provision means 100 decides whether to provide the service and whether to continue or discontinue it depending on the result of the human authentication.

[0078] (Human authentication process: Challenge execution screen display process) Fig. 10 is a flowchart showing details of the display process (S13) of the challenge execution screen in the user terminal 20. As shown in Fig. 10, the user terminal 20A (virtual space definition means 210) defines the virtual space 90 by expanding the virtual space data received from the server 10 (challenge providing means 112) in the memory 12 (S131).

[0079] Next, the user terminal 20A (placement means 220) places the person's avatar 50 in the virtual space 90 defined in step S131, and transmits the avatar data to the server 10 via the communication network 2 (S132). The initial position of the person's avatar 50 is, for example, the center C of the virtual space 90.

[0080] Next, when the challenge data received from the server 10 via the communication network 2 includes a virtual object (S133: Yes), the user terminal 20A (placement means 220) places the virtual object in the virtual space 90 in accordance with the received challenge data (S134). This allows the virtual object to be placed in a three-dimensional virtual space. In the following description, a virtual object that is the target of operation by the user terminal 20A when executing a challenge is called a challenge object. Also, a virtual object that is placed in a position that hides a part or all of the challenge object is called an interference object.

[0081] Next, the user terminal 20A (image generating means 230 and image display means 240) displays a challenge execution screen in which a virtual object is arranged in a virtual space image 97 constituting a part of the user's viewpoint image (S135). In the challenge execution screen, all virtual objects in addition to the challenge object are displayed in a three-dimensional virtual space that is two-dimensional, i.e., the left-right direction and the up-down direction of the screen of the monitor 31, plus the depth direction of the screen, so that the user can perform a response operation using the challenge object without losing the worldview of the three-dimensional virtual space.

[0082] Furthermore, if an interference object is placed between the self viewpoint position and the challenge object along the depth direction, an occlusion process is performed between the interference object and the challenge object, so that the interference object can be used to hide part or all of the challenge object. As a result, if the responder is a computer, it becomes difficult to recognize the challenge object even if the challenge execution screen is image-analyzed, making it easier to prevent a response. When the challenge execution screen is displayed on the monitor 31, the process continues to the response operation in step S14.

[0083] (Challenge execution screen example 1) Fig. 11 is a diagram showing an example of screen transition when performing human authentication at login. As shown in Fig. 11, the server 10 (login authentication means 101) prepares a login screen 400 having a user ID input field 401 and a login password input field 402. When a user inputs a user ID and login password in the user terminal 20 and operates a login button 403, the server 10 (login authentication means 101) performs user authentication. If the user authentication fails, a login disallowed screen 410 is transmitted from the server 10 (login authentication means 101) to the user terminal 20, and the screen on the monitor 31 transitions from the login screen 400 to the login disallowed screen 410.

[0084] When the user authentication is successful, the screen on the monitor 31 of the user terminal 20 transitions from the login screen 400 to a challenge execution screen 420. On the challenge execution screen 420, a message 421 consisting of text indicating the content of the challenge, an avatar 422 of the user operating the user terminal 20A, a ball 423 which is an item required for the challenge, and an avatar A 424 are arranged in a three-dimensional virtual space.

[0085] Fig. 12 is a diagram showing an example of screen transition of the challenge execution screen 420. As shown in Fig. 12, the user reads the message 421, operates the operation device 42 to have the user's avatar 422 pick up the ball 423 (see challenge execution screen 420a) and hand it over to the avatar A424 (see challenge execution screen 420b), and the user terminal 20 (response input receiving means 260) transmits the operation passed to the avatar A424 as response data to the server 10. When the server 10 (response determination means 114) confirms that the ball 423 has been handed over to the avatar A424, the challenge is successful.

[0086] In the above example, the avatar A424 moves from the back of the screen to the front, so the challenge execution screen 420 changes every moment. Therefore, if the respondent is a computer, it is necessary to recognize the avatar A424 by image analysis, but the movement of the recognition target increases the difficulty of object recognition, making it easier to guide the respondent to a failure in the challenge. This makes it easier to distinguish between humans and computers as responders.

[0087] (Challenge execution screen example 2) 13 is a diagram showing another example of the challenge execution screen. The server 10 (challenge generation means 111) may obtain a virtual space image being displayed on the monitor 31 from the user terminal 20 (image generation means 230) and generate a challenge using the virtual space image. For example, assume that the monitor 31 displays a virtual space image of a child's room with a table 504 and a desk 503 at the back, and a ball 501 rolling on the floor.

[0088] The server 10 (challenge generation means 111) generates a challenge execution screen 500 by placing a bat 502 as an interference object between the ball 501 and the user's own viewpoint position, which is in front of the ball 501. The bat 502 is placed in a position that hides a part of the ball 501. This makes the entire outline of the ball 501 invisible, which increases the difficulty of object recognition by image analysis.

[0089] The server 10 (challenge generating means 111) generates the challenge execution screen 500, voice data of "Please put the ball on the table", and image data of the challenge execution screen 500a as the correct answer data.

[0090] The user terminal 20 (video display means 240, audio output means 250) displays a challenge execution screen 500 and outputs a voice saying "Put the ball on the desk" from the speaker 36. When the user performs a response operation of moving the ball 501 onto the desk 503 and the response determination means 114 determines that the response operation matches the correct answer data, the challenge is successful.

[0091] In this example, a challenge is generated by arranging an interference object in the virtual space image displayed on the user terminal 20, so that human authentication can be performed without impairing the immersive feeling of the user viewing the virtual space image. In addition, since the challenge execution screen 500 includes a table 504 having a shape similar to that of the desk 503, the server 10 (challenge generation means 111) may modify the table 504 to resemble the desk 503 by modifying the legs of the table 504 to the same length as the legs of the desk 503 or modifying the top plate of the table 504 from a circular shape to a rectangular shape. It is easy for a human to distinguish between the desk 503 and the table 504 replaced after the modification, but it becomes difficult for a computer to distinguish between the desk 503 and the table 504, which hinders the computer from succeeding in the challenge and improves the accuracy of human authentication.

[0092] (Challenge execution screen example 3) FIG. 14 is a diagram showing another example of the challenge execution screen. The challenge execution screen 600 in FIG. 14 is an example of a screen used when the server 10 is a game distribution server. For example, the challenge execution screen 600 is displayed when the scene is switched, such as when moving from one field to another field during game play or when going shopping at a virtual shop in the game. In the challenge execution screen 600, there is a door 602 in front of the player avatar 601, and a heart-shaped keyhole 603 is provided in the door 602. In addition, diamond-shaped and spherical-shaped ores are rolling around at the feet of the player avatar 601 in addition to heart-shaped ores 604 and 605. The challenge execution screen 600 does not display a message indicating the challenge content, and no sound is played to notify the challenge content.

[0093] If the respondent is a human, he or she can guess that the content of the challenge is "Pick up an ore that fits the keyhole 603 and fit it into the keyhole 603?". If there are heart-shaped ores 604 and 605 that are similar in shape but different in size, a human can easily guess that, taking into consideration the distance in the depth direction between the positions of the ores 604 and 605 and the keyhole 603, the ore 604 that is larger than the keyhole 603 will be selected in consideration of the perspective, rather than the ore 605 of the same size on the screen. Thus, the user can operate the player avatar 601 to pick up the heart-shaped ore 604 and fit it into the keyhole 603 (see the challenge execution screen 600a), and the challenge will be successful.

[0094] On the other hand, if the respondent is a computer, even if it can perform image analysis of the challenge execution screen 600 and recognize objects, it is not easy to guess the challenge content from the results. Also, if the respondent selects the heart-shaped mineral 605 that is the same shape as the keyhole 603, the mineral that is smaller than the keyhole 603 will be selected, and the chances of the challenge failing will increase.

[0095] In this way, by presenting at least one of the shape, size, and color of the challenge object on the challenge execution screen without clearly indicating the challenge content, and by requesting guessing of the challenge content and a response operation, it is possible to prevent a computer from succeeding in the challenge and improve the accuracy of human authentication. Also, by changing the size of the challenge object using depth direction information unique to the 3D virtual space, it is possible to provide a challenge that a person can easily respond to, but that is difficult for a computer that recognizes objects from image analysis to achieve.

[0096] [Effects of this embodiment] According to this embodiment, a challenge is provided using a virtual object arranged in a virtual space, and it is possible to determine whether the respondent is a human or a computer based on the degree of match between the response to the challenge and the correct answer. This allows for human authentication of users without compromising the worldview of the virtual space, while preventing unauthorized logins to servers and provision of unintended services for computers.

[0097] In addition, in this embodiment, a challenge can be generated using the characteristics of the three-dimensional virtual space, particularly in the depth direction, by changing the size of the challenge object based on the perspective, or by placing an interference object between the challenge object and the user's viewpoint position to hide a part or all of the challenge object. This allows a human to grasp the challenge object and make a correct response, but a computer, even if it performs image analysis and object recognition, has difficulty in making a correct response based on the results of those analyses. This makes it possible to distinguish between humans and computers.

[0098] Furthermore, according to this embodiment, by conveying the content of the challenge by voice rather than displaying it in the virtual space, or by having the respondent guess the content of the challenge without informing them, it is possible to eliminate computer-based responses that rely on image analysis, thereby making it possible to distinguish between humans and computers.

[0099] The present invention is not limited to the above embodiment. For example, in FIG. 9, human authentication processing is used as part of the login authentication processing, but the execution timing of the human authentication processing according to the present invention is not limited to the time of login. For example, human authentication can be performed during a virtual reality experience by displaying a challenge execution screen shown in FIG. 14 as an entrance image of a virtual shop, a virtual event venue, or a virtual school, or by displaying a challenge execution screen with multiple doors for each destination in a virtual tour. In addition, the virtual space may be configured in two dimensions, not limited to three dimensions. This allows the human authentication processing to be performed without impairing the immersive feeling of the two-dimensional virtual space.

[0100] In addition, the program according to the present invention is not limited to a single program, but may be a collection of multiple programs. In addition, the program according to the present invention is not limited to being executed by a single device, but may be executed by multiple devices in a shared manner. Furthermore, the division of roles between the server 10 and the user terminal 20 is not limited to the above example. That is, part of the processing of the server 10 may be executed by the user terminal 20, and part of the processing of the user terminal 20 may be executed by the server 10.

[0101] Furthermore, a part or all of the means realized by the program can be realized by hardware such as an integrated circuit. Furthermore, the program may be provided by being recorded on a non-transitory recording medium that can be read by a computer. Examples of the recording medium include a hard disk, an SD card, a DVD, and a server on the Internet. [Explanation of symbols]

[0102] 1: system, 2: communication network, 10: server, 11: processor, 12: memory, 13: storage, 13P: server program, 14: input / output interface, 15: communication interface, 19: communication bus, 20: user terminal, 20A: user terminal, 20B: user terminal, 20C: user terminal, 21: processor, 22: memory, 23: storage, 23P: terminal program, 24: input / output interface, 25: communication interface, 26: computer, 29: communication bus, 30: HMD, 31: monitor, 32: gaze sensor, 33: camera, 34: camera, 35: microphone, 36: speaker, 41: movement sensor, 42: operation device, 50: user's avatar, 90: virtual space, 91: panoramic image, 92: virtual camera, 93: reference line of sight, 94: field of view area, 95: area, 96: area, 97: virtual space image, 100: virtual reality providing means, 101: login authentication means, 102: virtual space data transmission means, 103: service providing means, 104: payment means, 105: avatar synchronization means 110: human authentication means, 111: challenge generation means, 112: challenge provision means, 113: response acquisition means, 114: response determination means, 115: challenge correct answer data storage means, 210: virtual space definition means, 220: placement means, 230: image generation means, 240: image display means, 250: audio output means, 260: response input reception means, 400: login screen, 401: user ID input field, 402: login password input field, 403: login button, 410: login Cannot play screen, 420: Challenge execution screen, 420a: Challenge execution screen, 420b: Challenge execution screen, 421: Message, 422: User avatar, 423: Ball, 424: Avatar A, 500: Challenge execution screen, 500a: Challenge execution screen, 501: Ball, 502: Bat, 503: Desk, 504: Table, 600: Challenge execution screen, 600a: Challenge execution screen, 601: Player avatar, 602: Door, 603: Keyhole, 604: Ore, 605: Ore

Claims

1. Computer, A challenge providing means for providing a challenge, which is a task to be performed in a virtual space, to a respondent who is to perform the challenge; The program functions as a response determination means for determining whether the respondent is a human being based on a comparison result between the response resulting from the respondent executing the challenge and a correct answer to the challenge.

2. The program according to claim 1, The computer, The program further functions as a challenge generating means for generating challenge data indicating the challenge and correct answer data including the correct answer.

3. The program according to claim 1, The computer, The program further functions as a challenge generation means for generating the task to be performed by moving an avatar operated by the respondent placed in the virtual space.

4. The program according to claim 2, The challenge generation means is a program that generates challenge data by placing an interference object, which is a virtual object placed in the virtual space and is used when executing the challenge, based on the placement position of the challenge object used when executing the challenge, placing an interference object, which is a virtual object that hides all or part of the challenge object in the foreground along the depth direction of the virtual space, and performing occlusion processing on the interference object and the challenge object.

5. The program according to claim 2, The challenge generation means generates the challenge data including audio data indicating the content of the challenge.

6. The program according to claim 2, The challenge generation means is a program that generates as the challenge data video data of a challenge execution screen that does not include text data or audio data indicating the content of the challenge data, and that displays at least one of the shape, size, and color of a challenge object that is a virtual object placed in the virtual space and is used when executing the challenge.

7. A system including a server and a terminal communicatively connected to the server, The terminal includes: a response input receiving means for receiving an input operation of a response indicating a result of execution of a challenge, which is a task to be executed in a virtual space, generating response data including the content of the response, and transmitting the response data to the server; The server, a challenge providing means for providing the challenge to the terminal operated by a respondent who executes the challenge; A response acquisition means for acquiring the response data; A system comprising: a response determination means for determining whether the respondent is a human being based on a comparison result between the content of the response included in the response data and a correct answer to the challenge.

Citation Information

Patent Citations

  • Network game system, server, fraudulent act preventing method, fraudulent act sensing method and program

    JP2009089757A

  • Contact center integration in a virtual environment

    JP2011500235A

  • Authentication for virtual avatar

    JP2013161478A

  • Gaming Systems with Authentication Token Support

    US20080009345A1

  • System and method for human identification proof for use in virtual environments

    US20100037147A1