WO2021040359A1 - Visitor management method and system using qr code - Google Patents
Visitor management method and system using qr code Download PDFInfo
- Publication number
- WO2021040359A1 WO2021040359A1 PCT/KR2020/011274 KR2020011274W WO2021040359A1 WO 2021040359 A1 WO2021040359 A1 WO 2021040359A1 KR 2020011274 W KR2020011274 W KR 2020011274W WO 2021040359 A1 WO2021040359 A1 WO 2021040359A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- code
- authentication
- virtual
- server
- time
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C9/00—Individual registration on entry or exit
- G07C9/20—Individual registration on entry or exit involving the use of a pass
Definitions
- the present invention relates to a method and apparatus for managing a visitor using a QR code generated based on a virtual code for authentication.
- OTP One Time Password
- the OTP authentication method is a system introduced to reinforce security, and because a one-time password is generated each time a login is performed to perform user authentication, it is possible to overcome a security vulnerability caused by repeated use of the same password.
- the problem to be solved by the present invention is to provide a visitor management method and system that enables a visitor who cannot use a network to perform visitor authentication by generating a disposable QR code.
- the problem to be solved by the present invention is to provide a visitor management method and system capable of preventing an administrator from performing visitor authentication by stealing a QR code.
- the problem to be solved by the present invention is to provide a visitor management method and system capable of preventing leakage of visitor information to others.
- the present invention for solving the above process, the QR code verification module receiving a QR code generated from the QR code generation module, the QR code verification module extracting a virtual code for authentication from the QR code, the A QR code verification module verifying a QR code based on the authentication virtual code, and the QR code verification module matching the receiving time of the QR code and the authentication virtual code and storing the QR code.
- the code provides a visitor management method using a QR code generated based on a virtual code for authentication generated through a virtual code generation function for authentication included in the QR code generation module.
- the present invention provides a user authentication program using a virtual code for authentication, stored in a medium in order to execute the visitor management method using the QR code in combination with a computer as hardware.
- the present invention using a detailed code generation unit that generates one or more detailed codes based on user information registered in the QR code generation device, and a virtual code generation function for authentication, a virtual authentication for authentication in which the one or more detailed codes are combined.
- a QR code generation device for visitor authentication comprising a virtual code generation unit for generating a code, a QR code generation unit for generating a QR code based on the virtual code for authentication, and a QR code providing unit for outputting the QR code.
- a QR code receiving unit for receiving a QR code
- a virtual code extraction unit for extracting a virtual code for authentication from the QR code
- a QR code verification unit for verifying the QR code based on the virtual code for authentication
- a virtual code storage unit that matches and stores the authentication virtual code and the reception time of the QR code, or at a request from the server, or at a preset time interval, the stored authentication virtual code and the QR code reception time to the server. It provides a QR code verification device for visitor authentication including a transmitting virtual code providing unit.
- a virtual code receiving unit for receiving a reception point of the stored QR code matched to the plurality of authentication virtual codes and the plurality of authentication virtual codes from the QR code verification module, in each of the plurality of authentication virtual codes
- a detailed code extracting unit for extracting at least one detailed code
- a storage location search unit for searching a storage location of user information corresponding to each of the plurality of authentication virtual codes, based on the at least one detailed code
- the server provides a server for authenticating a visitor that matches and stores the location information corresponding to the QR code reception time and the QR code verification module in the storage location.
- 1 is a conceptual diagram showing a QR code.
- FIG. 2 is a block diagram of a visitor management system using a QR code according to an embodiment of the present invention.
- FIG. 3 is a block diagram of a QR code generating device according to an embodiment of the present invention.
- FIG. 4 is a block diagram of a QR code verification device according to an embodiment of the present invention.
- FIG. 5 is a configuration diagram of a server according to an embodiment of the present invention.
- 6 and 7 are flowcharts of a visitor management method using a virtual code for authentication according to an embodiment of the present invention.
- FIG. 8 is an exemplary diagram of a storage location search algorithm for searching a storage location of user information through a k-shaped cloud movement according to an embodiment of the present invention.
- FIG. 9 is an exemplary view for explaining verification of a virtual code for authentication according to an embodiment of the present invention.
- FIG. 10 is an exemplary diagram of a storage location search algorithm for searching a storage location of user information by moving on a track based on a detailed code according to an embodiment of the present invention.
- FIG. 11 is an exemplary diagram illustrating a storage space of a server according to an embodiment of the present invention.
- 'visitor authentication' refers to an act of providing a QR code to a QR code verification means as a procedure for verifying the identity of a user when a user visits a specific place or passes through a specific area.
- characters'character' is a constituent element constituting a code, and includes all or at least one of uppercase letters, lowercase letters, numbers, and special characters.
- 'code' means a character string in which characters are listed.
- the'virtual code for authentication' is a code generated by the virtual code generation means for authentication, and means a code used to perform user authentication by the virtual code verification means for authentication. That is, the'virtual code for authentication' refers to a virtual code temporarily assigned for each unit count so that user information can be extracted and verified.
- the'detail code' means a partial code included in the virtual code for authentication.
- the'unit count' is a unit defined as being set at a specific time interval and changing as the time interval elapses. For example, 1 count may be set and used at a specific time interval (eg, 1.5 seconds).
- the'authentication virtual code generation function' means a function used to generate the authentication virtual code.
- cloud movement means that the object rotates while performing a translational motion. That is,'cloud movement' refers to moving while performing a rotational motion and a translational motion together, and means that each point of a rotating object moves while in turn contacting the moving axis.
- 'UID user identification
- UID user identification
- the'storage location' means a point (count) on a track corresponding to a time point at which user information registration is requested by a user.
- 'user information' means information that can identify a user.
- 'user information' may include personal information (eg, name, phone number, resident registration number, etc.) of a user who owns a terminal generating a QR code to be described later.
- the'user information' may include user identification information (eg, UID to be described later) used to generate a virtual code included in the QR code.
- 1 is a conceptual diagram showing a QR code.
- QR Quick Response
- the QR code can contain a maximum of 7089 characters, a maximum of 4296 characters (ASDII), and a maximum of 1817 Asian characters such as Chinese characters.
- the QR code can be freely generated by the QR code generation program.
- the QR code generation program may receive letters and numbers and generate a QR code based on them.
- the generated QR code may be printed through a separate printing means, or may be displayed through a display unit included in a terminal having a built-in QR code generation program.
- the QR code can be generated by installing a QR code generation program in an existing terminal without having to separately provide a QR code generation device.
- the printed QR code or the QR code displayed on the display may be transmitted to the QR code verification means by the QR code receiving means.
- the QR code receiving means may be an optical device such as a camera.
- a camera included in a terminal equipped with a QR code verification means may be used as a QR code receiving means.
- the QR code verification means activates a camera included in the terminal and scans the printed QR code or the QR code displayed on the display.
- the QR code can be received by installing a QR code verification program in an existing terminal without having to separately provide a QR code receiving device.
- FIG. 2 is a block diagram of a visitor management system using a QR code according to an embodiment of the present invention.
- the user authentication system includes a QR code generating means 10, a QR code verifying means 20, and a server 30.
- the QR code generation means 10 refers to a device in which a dedicated program or a dedicated application (hereinafter, a dedicated program) for generating a QR code is built-in or installed.
- the QR code generating means 10 may be initially registered in the server 30 to be described later. A method of initially registering the QR code generating means 10 will be described later.
- the dedicated program serves to generate a QR code for authenticating a visitor.
- the dedicated program generates a QR code based on a separately generated virtual code for authentication.
- the authentication virtual code is a code consisting of a combination of letters and numbers, and can be converted into a QR code based on a QR code generation rule.
- the authentication virtual code may be generated by a virtual code generator built into the dedicated program.
- the virtual code generator may generate a virtual code for authentication based on user information.
- the user information may be information stored in both the QR code generating means 10 and the server 30.
- the QR code generation unit 10 generates a QR code based on information stored in both the QR code generation unit 10 and the server 30.
- the user information need not necessarily be stored in the memory built in the QR code generating means (10).
- user information may be stored in a separate card or wearable device capable of wireless communication, and the user allows the terminal in which the user information is stored to transmit the user information to the QR code generating unit 10, thereby generating a QR code (10) You can have this QR virtual code generated.
- the dedicated program includes a virtual code generation function for authentication, and generates a virtual code for authentication using user information.
- the dedicated program generates a virtual code for authentication by using user information as seed data of a virtual code generation function for authentication.
- the user information may be User Identification (UID).
- the dedicated program serves to register the QR code generation means 10 to the server 30. That is, the user installs the dedicated program in the QR code generating means 10 (ie, the user terminal), and the dedicated program transmits user information to the server 30 to register.
- the dedicated program may be a program built into the QR code generating means 10 when leaving the factory.
- the dedicated program receives user information from a user at the time of registration or generates user information based on login information of the user's dedicated program. After that, the dedicated program transmits user information to the server 30. As the server 30 registers user information in a specific count, the dedicated program receives setting data for specifying a virtual code generation function for authentication or a virtual code generation function for authentication from the server 30.
- the dedicated program may include an authentication virtual code generation function that generates an authentication virtual code capable of searching for a specific count in which user information is registered in the server 30.
- the dedicated program generates a virtual code for authentication based on user information whenever there is a user request, and then generates a QR code based on the generated virtual code for authentication. Since the virtual code for authentication is a code that is not duplicated every time, the QR code is also generated so that it is not duplicated every time.
- the QR code verification means 20 refers to a device in which a dedicated program or a dedicated application (hereinafter, a verification program) for verifying the QR code is built-in or installed.
- the verification program activates a camera included in the device in which the verification program is installed so that a QR code can be photographed. An image file corresponding to the QR code output through the camera shooting is created. The verification program verifies whether the image file including the QR code generated through the camera includes the QR code generated correctly.
- the verification program recognizes the QR code from the QR code image generated through the camera, and converts the recognized QR code into a virtual code for authentication.
- the same rules as those applied when generating the QR code may be applied. Accordingly, when converting the QR code into a virtual code for authentication, it is possible to obtain the same code as the virtual code for authentication that was the basis for generating the QR code.
- the verification program verifies whether the virtual code for authentication converted from the QR code is a normally generated code, and if the virtual code for authentication is a code that is normally generated, the QR code image includes a QR code that is normally generated. I can judge. A method of verifying the QR code by the QR code verification means 20 will be described later.
- the QR code verification means 20 generates a QR code image by activating the camera, and the QR code verification means 20 recognizes the QR code from the QR code image.
- the time when the QR code verification means 20 receives the QR code may be a time when a QR code image is generated through a camera or a time when a QR code is recognized from the QR code image.
- the QR code verification means 20 can receive the QR code in a variety of ways other than the above-described method, the point at which the QR code verification means 20 receives the QR code depends on the method of receiving the QR code. It can be different.
- the QR code verification means 20 When it is determined that the QR code received by the QR code verification means 20 is a normally generated QR code, the QR code verification means 20 matches the time of receiving the QR code with the virtual code for authentication converted from the QR code. And save it.
- the QR code verification means 20 transmits to the server 30 a time when the server 30 requests or receives the stored authentication virtual code and QR code at predetermined time intervals.
- the QR code verification means 20 verifies only that the QR code is a QR code generated within a predetermined time from the time when a visitor authentication request is made, and then receives a virtual code for authentication and a QR code extracted from the QR code. The time point is transmitted to the server 30.
- the QR code verification means 20 transmits a virtual code for authentication and a QR code reception time point to the storage server.
- QR code generation means 10 and QR code verification means 20 may be embedded or installed in a mobile terminal having a display, a camera, and a wireless communication unit.
- a user who wants to visit or pass through a specific area registers user information on the server 30 by installing a QR code generation means 10, and then performs visitor authentication through the QR code generation means 10. You can generate and present a QR code every time.
- a visitor manager in a specific area may install a QR code verification means 20 to scan a QR code presented by a visitor to check whether the QR code is a normally generated QR code, and store the visitor's visit record. have.
- the QR code verification means 20 may be interlocked with the opening and closing device.
- the opening and closing device may switch to an open state only when the QR code received by the QR code verification means 20 is a normally generated QR code, so that the visitor enters a specific area or passes through a specific area.
- the QR code verification means 20 may be built-in or installed in the opening and closing device.
- the opening and closing device must have an optical device, a communication unit, and a storage unit capable of receiving a QR code.
- the QR code verification means 20 can control the opening and closing device, and the QR code verification means 20 is a separate device including an optical device, a communication unit, and a storage unit capable of receiving a QR code. Can be built in or installed.
- the QR code verification means 20 may be registered in the server 30. Specifically, information related to a device (hereinafter, referred to as a QR code verification device) in which the QR code verification means 20 is built-in or installed in the server 30 may be matched with information related to the location of the device and stored.
- a QR code verification device information related to a device (hereinafter, referred to as a QR code verification device) in which the QR code verification means 20 is built-in or installed in the server 30 may be matched with information related to the location of the device and stored.
- the QR code verification means 20 when the QR code verification means 20 is initially registered with the server 30, the serial number of the QR code verification device and the location information of the QR code verification device are transmitted to the server 30, and the server 30 The serial number of the code verification device and the location information of the QR code verification device are matched and stored.
- the location information of the QR code verification device is information input from the user when registering the QR code verification means 20 with the server 30, or the GPS information collected from the GPS information collection unit provided in the QR code verification device. I can. If the location of the QR code verification device is changed even after the QR code verification device is registered on the server, the location information of the QR code verification device can be updated.
- the server 30 After the QR code verification means 20 is registered in the server 30, when the server 30 receives a virtual code for authentication from the QR code verification means 20, the server 30 is the QR code verification means 20 ) And user information extracted from the received virtual code for authentication may be matched and stored. This will be described later.
- the QR code verification means 20 receives and verifies the QR code from the plurality of QR code generation means 10, and the QR code verification means 20 corresponds to a plurality of virtual codes for authentication and a plurality of virtual codes for authentication, respectively. When the QR code is received is stored.
- the QR code verification means 20 may immediately transmit a virtual code for authentication and a time of reception of the QR code to the server 30. That is, the time of receiving the virtual code for authentication and the QR code is not stored in the device in which the QR code verification means 20 is installed, but may be directly transmitted to the server 30. Through this, it is possible to prevent the administrator from arbitrarily deleting visitor information.
- the QR code verification means 20 may transmit the virtual code for authentication and the time of receiving the QR code to the storage server. . A specific embodiment in which the server 30 includes a storage server and a verification server separated from each other will be described later.
- the server 30 receives a plurality of authentication virtual codes and a QR code reception time corresponding to each of the plurality of authentication virtual codes from the plurality of QR code verification means 20, and receives user information from each of the authentication virtual codes. After extraction, the user information, the point of reception of the QR code, and the location information corresponding to the QR code verification means 20 are matched and stored. Through this, the server 30 is able to grasp which place the plurality of visitors visited and passed through at what point in time.
- the QR code generated by the QR code generating means 10 cannot be used after a certain period of time, so even if the QR code is leaked, there is no fear that other people will use the leaked QR code to perform visitor authentication. .
- the QR code verification means 20 only verifies whether the received QR code is a normal QR code, and user information cannot be extracted from the QR code.
- the QR code verification means 20 since the user information is stored only in the server 30, even if the virtual code for authentication stored in the QR code verification means 20 is leaked, the user information is not leaked. Therefore, according to the present invention, there is no fear of leakage of user information (eg, user's personal information) by the QR code verification means 20.
- FIG. 3 is a block diagram of a QR code generating device according to an embodiment of the present invention.
- the QR code generation device 100 includes a detailed code generation unit 110, a virtual code generation unit 120, and a QR code generation unit 130 and a QR code providing unit 140. .
- the QR code generating device 100 may be a user terminal in which a program (ie, an application) for generating a QR code is installed, as an embodiment.
- the QR code generating device 100 is the QR code generating means 10 described above.
- the QR code generating device 100 After receiving the QR code generation request from the user, the QR code generating device 100 generates a virtual code for authentication, and generates a QR code based on the generated virtual code for authentication.
- the QR code generation device 100 when the QR code generation device 100 receives a QR code generation request from a user, the QR code generation device 100 activates a biometric authentication means provided in the QR code generation device 100 so that the user can perform biometric authentication. can do.
- the biometric authentication is to perform user authentication through at least one of the user's fingerprint, iris, vein, and face recognition, and the user registers biometric information in the QR code generation device 100 in advance and then each QR code generation request Biometric authentication can be performed.
- the QR code generating device 100 must have a means for recognizing biometric information.
- the QR code generation apparatus 100 may include at least one of a fingerprint recognition sensor, an iris recognition sensor, a vein recognition sensor, and a face recognition sensor.
- the QR code generating apparatus 100 may include various biometric information recognition means.
- the QR code generating device 100 may generate a QR code only when a user performs biometric authentication. Through this, it is possible to prevent another person from performing visitor authentication using the user's QR code generating device 100 or from denying that another person has performed visitor authentication through the user's QR code.
- the QR code generating device 100 may not generate a new QR code for a predetermined time after generating the QR code. Through this, it is possible to prevent the authentication of a plurality of visitors through one QR code generating device 100.
- the detailed code generation unit 110 plays a role of generating one or more detailed codes based on user information.
- the authentication virtual code generation function includes one or more detailed code generation functions. For example, if the virtual code for authentication includes a plurality of detailed codes, the virtual code generation function for authentication generates a plurality of detailed codes using a plurality of detailed code generation functions, and combines the plurality of detailed codes. Generate a virtual code for authentication by using the code combination function.
- the authentication virtual code is generated for each unit count by the QR code generating device 100, that is, a dedicated program 11 built-in or installed inside the user terminal, and means a mobile OTP (mobile one time password, mOTP). do.
- a mobile OTP mobile one time password, mOTP
- the QR code generating device 100 may use at least some of the user information stored in the QR code generating device 100 as one of the seed data of the virtual code generation function for authentication.
- the detailed code generation unit 110 generates each detailed code by using the UID as the seed data of each detailed code generation function using one detailed code generation function.
- the detailed code generation unit 110 may generate each detailed code using a time point or a count value at which the QR code generation is requested from the user.
- the detailed code generation unit 110 may generate a first code and a second code, including a first function and a second function as a detailed code generation function.
- the QR code generation device 100 only includes a first function for generating a first code and a second function for generating a second code as detailed code generation functions, in order to increase security. It may not include data on the correlation of the code.
- the virtual code generation unit 120 plays a role of generating a virtual code for authentication by combining one or more detailed codes using a virtual code generation function for authentication.
- the authentication virtual code is generated by combining a plurality of detailed codes according to a specific rule.
- the authentication virtual code generation function includes a rule for assembling a plurality of detailed codes (that is, a detailed code combining function). That is, the virtual code generation unit 120 may combine one or more detailed codes using a detailed code combining function included in the authentication virtual code generation function.
- the authentication virtual code generation unit 120 may generate an authentication virtual code by alternately arranging an N-digit first code and an N-digit second code.
- the detailed code combining function may be a function that combines the second code after the first code. As the number of detailed codes included in the authentication virtual code increases, various detailed code combining functions can be generated.
- the first code and the second code store the UID in the storage location search algorithm where user information is stored.
- Each can play a role in navigating a location.
- the first code sets the start point of the storage location search
- the second code sets the search path from the start point to the storage location of the UID according to a specific search method. That is, when the virtual code for authentication that is normally generated for each unit count is provided by the QR code generating device 100, the server 30 moves from the search start point corresponding to the first code to the search path corresponding to the second code.
- One point is determined as the point where user information is stored (i.e., the UID storage location).
- a specific method of searching for the storage location of the UID based on the first code and the second code constituting the virtual code for authentication will be described later.
- the QR code generation device 100 combines the first and second codes and a first virtual security code that is changed for each count from the initial time when the detailed code generation function is driven regardless of the user to generate a virtual code for authentication. Can be formed.
- the first virtual security code is formed by the same seed data (hereinafter, referred to as first seed data) regardless of the user, and is changed for each unit count. Since the first virtual security code is formed identically in all QR code generation devices 100, when different QR code generation devices 100 form the first virtual security code at the same time, the same code is formed.
- the first and second codes are formed by different seed data (hereinafter, referred to as second seed data) according to the user, and may include a second virtual security code that is changed for each unit count.
- Each of the first and second virtual security codes is formed to have different values even if they are formed at the same time.
- the second virtual security code may be included in at least one of the first and second codes, and even if different QR code generating apparatuses 100 are formed at the same time, they are formed with different values.
- the above-described QR code verification means 20 may include only an algorithm for extracting the first virtual security code from the virtual code for authentication and an algorithm for generating the first virtual security code.
- the QR code verification means 20 converts the received QR code into a virtual code for authentication, and extracts only the first virtual security code from the converted virtual code for authentication. Thereafter, when the QR code verification means 20 has a code that matches the extracted first virtual security code among the first virtual security codes generated within a predetermined unit count from the time the QR code is received, the QR code is normally It can be determined that it is a formed QR code. That is, the QR code verification means 20 may be made so that no information related to a specific user can be extracted from the virtual code for authentication.
- the first virtual security code may be used in addition to the above-described method for generating a virtual code for authentication and a method for generating a virtual code for authentication to be described later.
- the above-described authentication virtual code includes any one of a terminal unique value of the terminal (ie, the QR code generating device 100) installed with the QR code generation module 10 and a unique value generated through the user's biometric information. can do.
- the present invention can prevent the visitor from denying the fact that the person has visited the QR code used for visitor authentication.
- the unique value that can be included in the authentication virtual code for preventing visitor denial is not limited thereto.
- the authentication virtual code may include time information at which the QR code generation request is authorized.
- the time information may be used by a QR code verification device to be described later to verify the QR code. This will be described later.
- the detailed code generation unit 110 generates a new detailed code for each unit count, and accordingly, the QR code generation device 100 A new authentication virtual code is generated for each unit count.
- the virtual code for authentication that is newly generated for each unit count is not duplicated.
- the detailed code generation unit 110, the authentication virtual code newly generated for each unit count is not duplicated for a predetermined period of time to a specific user or a specific QR code generation device 100, and belongs to a specific group. It can be set so that it is not duplicated between users.
- the detailed code generation function included in the authentication virtual code generation function is MN
- Two codes may be generated as a first code or a second code, and each code is matched for each count from an initial point at which the detailed code generation function is driven. For example, when the unit count is set to 1 second, different MN codes are matched every second from the time when the detailed code generation function is initially driven.
- the period of using a specific detailed code generation function or the period of use of the QR code generation device 100 is a time length corresponding to the MN count.
- the QR code generation device 100 has a count corresponding to the specific time.
- the code value matched to may be generated as a first code or a second code.
- the QR code The generating device 100 may provide 366 codes as the first code and the second code. At this time, the QR code generation apparatus 100 may match each code for each count, and thus provide a first code and a second code changed for each count.
- a function for generating a first code or a second code i.e., a first function or a second code
- a function for generating a first code or a second code i.e., a first function or a second code
- the QR code generation device 100 may apply a virtual code generation function for authentication, which generates a virtual code for authentication different from the previous cycle, to the new use cycle, as the order in which the first code or the second code appears is different from the previous use cycle.
- the QR code generation device 100 prevents the same code as the authentication virtual code used in the previous use cycle from appearing as the authentication virtual code for each count in the new use cycle (that is, the first function generated according to the first function).
- the first function and the second function may be selected so that the matching relationship between the first code and the second code generated according to the second function is not included in the matching relationship included in the previous use period in all counts of the new use period.
- Generation function can be applied.
- the first code is the initial point at which the first function is driven so that duplicate virtual codes for authentication are not generated regardless of the user in the entire cycle. From among the codes matched for each count, set as a code value corresponding to the time (or count) at which the QR code generation request was made, and the second code reflects a value (e.g., UID) that always exists differently at the same time. It is set as the generated code value, and the authentication virtual code can be used as a code value in which the first code and the second code are combined. The first code has a different code value for each count, and the second code has a different code value for each UID at the same time, so that the authentication virtual code combined with the first code and the second code has different code values at all times. Will be printed.
- any one of a plurality of enumeration rules for listing M characters in ascending order is applied. That is, the QR code generation apparatus 100 may variously apply a rule of listing M characters in ascending order to the detailed code generation function included in the authentication virtual code generation function.
- the order of listing uppercase alphabetic letters in ascending order is the general order of A, B, C,... , Z can be in the order, A, C, B,... , May be in the Z order.
- the enumeration rule is changed in the authentication virtual code generation function, the order in which the codes are matched in turn with each count from the initial point in which the authentication virtual code generation function is operated is changed.
- the QR code generation unit 130 converts the virtual code for authentication generated in the above-described manner into a QR code according to the QR code generation rule.
- the QR code generation device 100 and the QR code verification device 200 used for visitor authentication may include the same QR code generation rule.
- the QR code providing unit 140 is a means for outputting the generated QR code, and may be a display provided in the QR code generating device 100.
- FIG. 4 is a block diagram of a QR code verification device according to an embodiment of the present invention.
- the QR code verification apparatus 200 may be a user terminal in which a program (ie, an application) for verifying a QR code is installed, as an embodiment.
- the QR code verification device 200 is the QR code verification means 20 described above.
- the QR code verification device 200 includes a QR code receiving unit 210, a virtual code extracting unit 220, a QR code verification unit 230, a virtual code storage unit 240, and a virtual code. Including study (250).
- the QR code receiver 210 may be a camera provided in the QR code verification device 200. However, the present invention is not limited thereto, and the QR code receiving unit 210 may include an optical device capable of imaging a printed QR code or a QR code displayed on a display device.
- the virtual code extraction unit 220 recognizes the QR code from the QR code image, and converts the recognized QR code into a virtual code for authentication. To this end, the virtual code extracting unit 220 may include the same rules as the QR code generation rule embedded in the QR code generation device 100. Through this, the virtual code extracting unit 220 may extract a virtual code for authentication identical to the virtual code for authentication formed in the QR code generating device 100 from the received QR code.
- the QR code verification unit 230 verifies whether the virtual code for authentication extracted by the virtual code extraction unit 220 is a normally formed code. Specifically, the QR code verification unit 230 extracts a virtual security code (OTP) that is changed for each unit count from the virtual code for authentication, and whether the extracted OTP is a virtual security code formed within a predetermined count from the time when the QR code is received.
- OTP virtual security code
- the virtual security code extracted from the virtual code for authentication is formed by the same first seed data regardless of the user, and may be a first virtual security code that is changed for each unit count. Since the first virtual security code is formed identically in all QR code generation devices 100, when different QR code generation devices 100 form the first virtual security code at the same time, the same code is formed.
- the QR code verification unit 230 may have the same function as the virtual security code generation function provided in the QR code generation device 100, and after generating a virtual security code within a predetermined count from the time when the QR code is received , It is determined whether there is a code identical to the virtual security code extracted from the virtual code for authentication among the generated virtual security codes.
- the QR code verification unit 230 determines that the QR code is normal if there is a code identical to the virtual security code extracted from the virtual code for authentication among the generated virtual security codes. In an embodiment, when it is determined that the QR code is normal, the QR code verification device 200 may output a message informing it. The administrator can check the message and allow the visitor to enter.
- the QR code verification unit 230 determines that the received QR code is not a normally generated QR code.
- the QR code verification device 200 may be configured to output a warning message. The administrator can check the warning message and deny access to the visitor.
- the QR code verification unit 230 compares the time information with the current time, and the current time corresponds to the time information. It is judged that the QR code is normal only when it is within a predetermined time from.
- the QR code verification unit 230 generates a virtual security code based on the time information and then determines whether it is the same as the virtual security code extracted from the authentication virtual code. When the generated virtual security code is the same as the virtual security code extracted from the virtual code for authentication, the QR code verification unit 230 determines that the QR code is normal.
- the QR code verification device 200 when the QR code verification device 200 is interlocked with the opening and closing device, the QR code verification device 200 opens the opening and closing device only when the received QR code is a normally generated QR code, and the QR code If it is determined that is an abnormally generated QR code, the opening and closing device is not opened.
- the QR code generated by the QR code generating device is leaked, it cannot be used after a predetermined period of time, so that other people cannot use the leaked QR code to authenticate visitors.
- the above-described QR code verification unit 230 may include only a function for extracting the first virtual security code from the virtual code for authentication and a function for generating the first virtual security code. Accordingly, the QR code verification device 200 only determines that the QR code is a normally generated code, and cannot extract any user information from the QR code. Through this, the present invention can prevent the leakage of user information through the QR code verification device 200.
- the virtual code storage unit 240 matches and stores the authentication virtual code extracted from the QR code with the QR code reception time point.
- the QR code verification device 200 performs a plurality of visitor authentication
- the virtual code storage unit 240 stores a plurality of authentication virtual codes and a QR code reception point matching each of the plurality of authentication virtual codes. .
- the virtual code providing unit 260 transmits to the server 30 the time of receiving the stored QR code matched with the virtual code for authentication and the virtual code for authentication stored whenever the server 30 requests or at predetermined time intervals.
- the virtual code providing unit 260 may transmit to the server 30 the time of receiving the stored QR code matched with the virtual code for authentication and the virtual code for authentication as soon as the QR code is verified.
- the server 30 or 300 includes a virtual code receiving unit 310, a detailed code extracting unit 320, a virtual code verification unit 330, and a storage location search unit 330.
- the server 30 extracts user information based on the virtual code for authentication, searches for a storage location corresponding to the extracted user information, and stores the searched user information by matching the visited place and time of the user.
- the virtual code receiving unit 310 receives a virtual code for authentication and a point of time of receiving the QR code from the QR code verification device 200.
- the detailed code extracting unit 320 serves to extract one or more detailed codes included in the virtual code for authentication.
- the detailed code extracting unit 320 includes a detailed code combining function included in the authentication virtual code generation function. Accordingly, when the authentication virtual code includes a plurality of detailed codes, the detailed code extracting unit 220 may extract a plurality of detailed codes from the authentication virtual codes by applying the detailed code combining function. For example, in the case of generating a virtual code for authentication in which two detailed codes (ie, a first code and a second code) are combined in the QR code generation device 100, the detailed code extraction unit 320 is The first code and the second code can be separated by applying the detailed code combining function to the character arrangement of the code.
- the QR code generating device 100 when the QR code generating device 100 generates a virtual code for authentication in which three detailed codes (ie, a first code, a second code, and a first virtual security code) are combined, the detailed code
- the extraction unit 320 may separate the first code, the second code, and the first virtual security code by applying a detailed code combining function to the character array of the virtual code for authentication.
- the storage location search unit 330 serves to search for a storage location of user information in a storage location search algorithm based on the extracted one or more detailed codes.
- the storage location search algorithm is matched to the authentication virtual code generation function used when generating the authentication virtual code in the QR code generation device 100.
- Various methods may be applied as a method in which the storage location search unit 330 searches for a storage location of user information based on each detailed code. In order for the storage location search unit 330 to search for a storage location based on a plurality of detailed codes, a correlation may be included between the detailed codes.
- the storage location means a point (count) on the track corresponding to the time point at which the registration of the virtual code generating means 10 is requested by the user. That is, when the track for the QR code generating means 10 is driven in the server 30, and a specific user information (for example, UID) is requested to be registered by a specific user at a specific time, corresponding to the corresponding time.
- the corresponding UID is registered in the count (that is, the count that has elapsed from the time of the last driving of the track to the time of registration).
- other types of user information are matched and stored in the storage location of the corresponding UID.
- the storage format of user information will be described later.
- the case where the user information extracted from the authentication security code by the server 30 is a UID is described as an example, but the present specification is not limited thereto, and the server 30 provides various types of authentication security codes. User information can be extracted.
- the storage location search unit 330 determines a search start point corresponding to the first code, The point moved according to the search path corresponding to the second code from the search start point can be found as the storage location of the UID. That is, the detailed code may include a first code for setting a starting point of the storage location search and a second code for setting a search path from the starting point to the storage location of the UID according to a specific search method. .
- the QR code verification device 200 uses the first code and the second code that are changed for each count. Based on the search start point and search path, you can search the storage location of UID.
- the storage location search unit 330 may include a storage location search algorithm to find the storage location of the UID using a plurality of detailed codes having correlations.
- the storage location search algorithm is an algorithm that enables storage location search when each detailed code included in the authentication virtual code is applied, and the authentication virtual code used when generating the authentication virtual code in the QR code generator 100 is applied. It matches the code generation function.
- the storage location search algorithm is in the first code.
- the storage location matching the registration time of the UID is arranged at the corresponding location.
- the server 30 can search the UID storage location even if the first code and the second code included in the authentication virtual code are changed.
- Various methods can be applied to the storage location search algorithm, and a specific example will be described later.
- the storage location search algorithm is not limited to the examples described later.
- the storage location search algorithm is a k-corner (k is MN) in which clouds move along a track in which MN codes corresponding to the first code are listed, and the vertex of the k-corner is a first code track.
- k is MN
- each vertex of the k-angle matches the storage location of the UID, and the point where the first code track (i.e., the first track) and the k-angle correspond to the first code It can be the starting point for searching the storage location corresponding to.
- the storage location search unit 330 may cloud-mov the k-angle so that a vertex of the k-angle is in contact with a point corresponding to the first code extracted from the detailed code extracting unit 220.
- the storage location search unit 330 is an angle corresponding to the second code at the position on the first track where the k-angle is in contact (for example, a specific angle divided by 180 degrees into MN to face the vertex of the k-angle)
- it is possible to search the vertex of the k-square which is the storage location where the UID corresponding to the authentication virtual code is stored.
- the server 30 cloud moves the k-angle to a point corresponding to the first code (that is, moves while making each vertex of the k-angle and each point on the track contact in turn). After that, the server 30 searches for a vertex corresponding to the storage location by instructing the angular direction corresponding to the second code.
- the storage location search unit 330 searches for the storage location of the UID using the first code and the second code in the authentication virtual code in the storage location search algorithm, the user's visit location and visit to the searched storage location Match the time and save it.
- the virtual code verification unit 340 compares the time when the QR code is received and the time when the authentication virtual code is generated using the authentication virtual code generation function in the QR code generation means (ie, the user terminal), and calculates the authentication virtual code. It plays the role of verifying. That is, the virtual code verification unit 340 does not verify the validity of the authentication virtual code based on the time when the authentication virtual code is received from the QR code verification unit, but when the QR code received together with the authentication virtual code is received. Based on, verify the validity of the virtual code for authentication.
- the virtual code verification unit 340 uses the virtual code generation function for authentication at the time of receiving the QR code and in the dedicated program 11 embedded or installed in the user terminal. By comparing the generated time points, when the generation time point falls within a preset error range from the reception time point, it may be determined that the received authentication virtual code is a normal code.
- the first code and the second code are randomly generated from the time when the UID is registered or the time when the QR code generation is requested by the virtual code generation means 10 It may be a code for a reference count added as much as the OTP code to be used.
- the QR code generation device 100 generates the virtual security code by reflecting it on the first code and the second code without outputting it to the outside.
- the authentication virtual code generation means e.g., a dedicated program
- generates a virtual security code value e.g., OTP code
- UID i.e., unique value
- a first code of the added count is generated, and a second code of the count corresponding to the virtual security code value is generated (ie, the virtual security code itself is generated as a second code). That is, the first code and the second code are generated based on the count shifted by the virtual security code value from the point A registered in the server 30 by the QR code generating device 100.
- the count shifted from the point A may be a count before or after the count corresponding to the current point according to the generated virtual security code value.
- the server 30 may search the UID storage location (or registration location) by applying the received first code and the second code to the storage location search algorithm. Through this, it is impossible for others to check the order in which the first code and the second code constituting the virtual code for authentication are provided, so that security can be improved.
- the server 30 extracts the virtual security code from the second code generated based on the virtual security code, and then receives the virtual code for authentication with a virtual security code generation function (ie, OTP function). It is checked whether there is a value that matches the virtual security code among the calculated OTP numbers by entering a count within a specific range from one count.
- the server 30 obtains the virtual security code value (that is, the OTP function value) used to generate the second code by applying the inverse function of the second function to the second code, and calculates the same value as the virtual security code value. I find it.
- the QR code verification means is the QR code. Since the count received from and the count generated by the OTP number corresponding to the virtual security code may not match, the server 30 allows an error range from the count receiving the QR code. Through this, the server 30 can select a virtual code for authentication formed by a normal method, so that security can be improved.
- the server 30 generates a first code corresponding to the count of adding the UID to the time at which the visitor authentication is requested (or the time at which the QR code is received) (time B), and , A second code corresponding to the count difference between the UID registration time (time A) and the user authentication request time (time B) plus the virtual security code value is generated. That is, the formula for generating the first code and the second code by the dedicated program for generating a virtual code for authentication is as follows.
- Second code f2 (Time B count-Time A count + virtual security code)
- the server 30 searches for the location where the UID is stored based on the first code and the second code in the received authentication virtual code, and based on this, a virtual security code within a specific count range from the time of receiving the visitor authentication request (i.e., OTP Number).
- the server 30 finds the UID registration time (point A) by searching for the point where the user information is stored based on the first code and the second code.
- the server 30 calculates a calculated value corresponding to the sum of the number of counts and the virtual security code (i.e., OTP number) within a specific count range from the UID registration time (point A) to the user authentication request reception time.
- Each is calculated, and it is checked whether there is a count equal to the number of counts corresponding to the second code (ie, a value obtained by applying the inverse function of the second function to the second code) among the calculated values.
- the server 30 can check whether the virtual code for authentication is normally provided.
- the server 30 receives the QR code received from the QR code verification device 200 in the storage location extracted from the verification virtual code (visit time) and the QR code verification device The location information (visited place) corresponding to 200 is matched and stored. Accordingly, when a specific user performs visitor authentication through the QR code verification device 200 located in a specific place, the specific user information, location information, and visit time are stored in the server.
- the server 30 may be formed of a plurality of servers.
- the specific user information, location information, and visit time may be stored in a plurality of servers in a block chain. Through this, it is possible to prevent others from manipulating the visitor record.
- the server 30 may physically separate the hardware including the storage location search unit 330 from the user information storage location. Through this, the present invention reduces the possibility of leakage of personal information.
- the server 30 may be formed of a storage server and a verification server separated from each other.
- the virtual code receiving unit 310 is included in the storage server, and the detailed code extracting unit 320, the virtual code verifying unit 330, and the storage location searching unit 330 may be included in the verification server.
- the storage server only stores the virtual code for authentication and the point at which the QR code is received, does not store user information, and cannot extract user information from the virtual code for authentication.
- the storage server and the verification server are configured to communicate with each other, and the storage server transmits a virtual code for authentication and a QR code reception time collected at a specific time and/or at a specific place according to a user request to the verification server. At this time, if necessary, location information corresponding to the virtual code for authentication, the serial number of the QR code verification device 200, or a unique value corresponding to the QR code verification module may be transmitted to the verification server together.
- the verification server stores user information and includes a virtual code verification algorithm for authentication.
- the verification server receives the authentication virtual code and the QR code reception point from the storage server, verifies the authentication virtual code, and extracts and stores user information from the authentication virtual code.
- the authentication virtual code presented when a visitor visits a specific place is stored only in the storage server, and the visitor's user information is stored only in the verification server.
- the present invention prevents leakage of personal information.
- the location information corresponding to the QR code verification device 200 may be stored in at least one of a storage server and a verification server.
- the location information corresponding to the QR code verification device 200 is stored only in the verification server, and when the storage server receives a virtual code for authentication from the QR code verification device 200, the QR code verification device ( 200) or a unique value corresponding to the QR code verification module is received, matched with the virtual code for authentication, and stored.
- the QR code verification module is registered in the verification server, and when the QR code verification module is initially registered in the verification server, the serial number of the QR code verification device 200 or the unique value of the QR code verification module and the QR code verification device 200 The location information of is transmitted to the verification server, and the verification server matches and stores the serial number of the QR code verification device 200 or the unique value of the QR code verification module with the location information of the QR code verification device 200.
- the verification server searches the serial number of the QR code verification device 200 corresponding to the specific location or the unique value of the QR code verification module, and the searched QR code
- the serial number of the verification device 200 or the unique value of the QR code verification module is transmitted to the storage server.
- the storage server transmits the serial number of the received QR code verification device 200 or the authentication virtual code corresponding to the unique value of the QR code verification module and the QR code reception time point to the verification server.
- the storage server searches for the time of receiving the QR code corresponding to the specific time range, and the time when the searched QR code is received and the corresponding authentication virtual code Is sent to the verification server.
- the verification server searches the serial number of the QR code verification device 200 corresponding to the specific location or the unique value of the QR code verification module. And, the serial number of the searched QR code verification device 200 or the unique value of the QR code verification module is transmitted to the storage server. Thereafter, the storage server searches for an authentication virtual code corresponding to the serial number of the received QR code verification device 200 or a unique value of the QR code verification module, and then corresponds to a specific time range among the searched authentication virtual codes. The virtual code for authentication that matches the QR code reception point is extracted. Thereafter, the storage server transmits the extracted virtual code for authentication and the corresponding QR code reception point to the verification server.
- the location information corresponding to the QR code verification device 200 is stored only on the storage server, and when the storage server receives a virtual code for authentication from the QR code verification device 200, the QR code verification device The location information corresponding to (200) is matched with a virtual code for authentication and stored.
- the QR code verification module is registered in the storage server, and when the QR code verification module is initially registered in the storage server, the serial number of the QR code verification device 200 or the unique value of the QR code verification module and the QR code verification device 200 ) Is transmitted to the storage server, and the storage server matches and stores the serial number of the QR code verification device 200 or the unique value of the QR code verification module with the location information of the QR code verification device 200.
- the storage server searches for a virtual code for authentication corresponding to the specific place, and when the searched virtual code for authentication and the QR code corresponding to the virtual code for authentication are received. And location information corresponding to the virtual code for authentication is transmitted to the verification server.
- the storage server searches for the time of receiving the QR code corresponding to the specific time range, and the time when the searched QR code is received and the corresponding authentication virtual code And the location information are sent to the verification server.
- the storage server matches the QR code reception time corresponding to the specific time range and the location information corresponding to the specific place, and stores the authentication.
- the virtual code is searched, and the searched authentication virtual code, location information corresponding thereto, and the time of receiving the QR code are transmitted to the verification server.
- the location information may be information input from a user when registering the QR code verification module in a storage server or a verification server, or GPS information collected from a GPS information collection unit provided in the QR code verification device 200. If the location of the QR code verification device 200 is changed even after the QR code verification device 200 is registered in the storage server or the verification server, the location information of the QR code verification device 200 may be updated.
- FIG. 6 is a flowchart of a QR code verification method according to an embodiment of the present invention.
- a QR code verification module is a QR code generated from the QR code generation module (QR code generation means 10) QR code receiving step of receiving a code (S110), QR code verification module extracting a virtual code for authentication from the QR code (S120), QR code verification module when the QR code is received and the authentication virtual Verifying the QR code based on the code (S130), and a step (S140) of matching and storing, by the QR code verification module, the time when the QR code is received and the virtual code for authentication.
- QR code verification means 20 is a QR code generated from the QR code generation module (QR code generation means 10) QR code receiving step of receiving a code (S110), QR code verification module extracting a virtual code for authentication from the QR code (S120), QR code verification module when the QR code is received and the authentication virtual Verifying the QR code based on the code (S130), and a step (S140) of matching and storing, by the QR code verification module, the time when the QR code is received and the virtual code for authentication.
- the QR code generation device 100 ie, the user terminal including the QR code generation unit 10
- the QR code verification device 200 ie, the user terminal including the QR code verification unit 20
- the administrator executes the verification program 12 to execute the QR code receiving function. Accordingly, the camera included in the device in which the verification program 12 is installed is activated to take a QR code.
- the verification program 12 when the visitor authentication is performed non-face-to-face, the verification program 12 may be executed by the visitor.
- the verification program 120 activates the camera so that the QR code can be photographed.
- the QR code verification module extracts the virtual code for authentication from the QR code, and verifies the QR code based on the time when the QR code is received and the virtual code for authentication. Specifically, the QR code verification module determines that the QR code is normal only when the time when the QR code is received is within a predetermined time from the time when the QR code is generated.
- the QR code verification module may have the same function as the virtual security code generation function provided in the QR code generation module, and after generating a virtual security code within a predetermined count from the time when the QR code is received, , It is determined whether there is a code identical to the virtual security code extracted from the virtual code for authentication among the generated virtual security codes.
- the QR code verification module determines that the received QR code is a normally generated QR code.
- the QR code verification module matches and stores the QR code reception time point and the authentication virtual code.
- the stored QR code reception point and the authentication virtual code are transmitted to the server at a request from the server or at predetermined time intervals.
- FIG. 7 is a flow chart illustrating a visitor management method according to an embodiment of the present invention.
- a QR code verification module determines a time when a QR code verification module is matched to each of a plurality of authentication virtual codes and the plurality of authentication virtual codes to receive a stored QR code. Transmitting (S210); Extracting at least one detail code from each of the plurality of authentication virtual codes (S220); A step (S230) of searching, by a server, a storage location of user information corresponding to each of the plurality of virtual codes for authentication based on the at least one detailed code (S230); And matching and storing the location information with the user information (S240).
- S210 Transmitting
- S230 A step of searching, by a server, a storage location of user information corresponding to each of the plurality of virtual codes for authentication based on the at least one detailed code (S230); And matching and storing the location information with the user information (S240).
- step S210 the server 30 receives a plurality of authentication virtual codes from a plurality of QR code verification modules and a time point of receiving a stored QR code matched to each of the plurality of authentication virtual codes.
- the server 30 may simultaneously receive location information corresponding to the QR code verification module from each of the plurality of QR code verification modules.
- the server 30 may match and store the received location information with a user information storage location to be described later.
- the QR code verification module may transmit location information input from an administrator to the server 30 or may transmit GPS information collected from a GPS information collection unit provided in the QR code verification device 200 to the server 30.
- the server 30 may receive a serial number of the QR code verification device 200 or a unique value corresponding to the QR code verification module from each of the plurality of QR code verification modules.
- the server 30 may search for location information of each of the QR code verification modules through the serial number or the unique value.
- the QR code verification module when the QR code verification module is initially registered with the server 30, the serial number of the QR code verification device 200 or the unique value of the QR code verification module and the location information of the QR code verification device 200 are stored in the server 30. And the server 30 matches and stores the serial number of the QR code verification device 200 or the unique value of the QR code verification module with the location information of the QR code verification device 200. The server 30 may search for location information using the serial number of the QR code verification device 200 or a unique value of the QR code verification module.
- the location information may be information input from a user when registering the QR code verification module with the server 30 or may be GPS information collected from a GPS information collection unit provided in the QR code verification device 200. If the location of the QR code verification device 200 is changed even after the QR code verification device 200 is registered in the server 30, the location information of the QR code verification device 200 may be updated.
- the server 30 extracts at least one detailed code from the authentication virtual code, and in S230, based on the at least one detailed code, user information corresponding to each of the plurality of authentication virtual codes Search the storage location of.
- the server 30 uses the first code and the second code to determine the UID storage location in the storage location search algorithm.
- the first code is a code that sets the starting point of the UID storage location search within the storage location search algorithm
- the second code sets the search path from the starting point to the UID storage location according to a specific search method. It could be code.
- the server 30 sets the location corresponding to the first code as a starting point, and according to the search method applied to the second code, based on the second code, the UID in the k-shaped arrangement state Searches for a point matched to the storage location (that is, a specific vertex of a k-square).
- the storage location is matched to each vertex of the k-square.
- the point where the first code track (ie, the first track) and the k-shape correspond to the first code is the starting point for searching the storage location corresponding to the first code.
- the server 30 searches for a matching point of the UID storage location based on the second code at the search start point.
- Various methods can be applied as a method of searching for a storage location in a k-angle based on the second code.
- the server 30 indicates an angle corresponding to the second code at a position on the first track where the k-angle is in contact (for example, a specific angle divided by MN by 180 degrees to face the vertices of the k-angle). Accordingly, based on the virtual code for authentication, it is possible to search the vertex of the k-angle, which is the storage location where the UID is stored.
- the server 30 in a state in which the k-angle is in contact with the point corresponding to the first code on the first track, the server 30 is based on the center of the k-angle and the contact point on the first track, ) Is divided into MN and each angle is matched to MN second codes.
- the direction of the line moving a specific number of unit angles (ie, 360 degrees/MN) from the line connecting the center of the k-angle and the contact point on the first track becomes a specific vertex of the k-angle.
- the server 30 may search for a vertex located in the corresponding angle direction.
- a specific position of the second code may be used to determine the angle calculation direction. That is, when the second code is generated using N characters (N is a natural number), the angle measurement direction can be determined with one digit.
- the server 30 divides the entire central angle (i.e., 360 degrees) based on the center of the k-angle and the contact point on the first track and matches the second code to each angle, the center of the k-angle The angle measured in the left direction or the right direction from the line connecting the contact point on the and the first track may be determined as a value of one digit.
- two second codes which are different according to the angle measurement direction, may be assigned to one vertex to each vertex on a k-angle. That is, when reaching one vertex to the inside and outside, it is matched with another second code, and a storage location of a different UID may be connected.
- the storage location search algorithm when generating a second code using N characters (N is a natural number), has a total angle of N-1 (e.g., 360 degrees when divided based on a central angle). You can determine the direction of angle application to reach each vertex by matching for half of) and using one digit.
- the method of searching for a storage location in the k-angle based on the second code is not limited to this, and a point dividing the point on the k-angle corresponding to the second code and the contact point on the first track by a specific ratio is searched as a storage location Various methods such as method can be applied.
- the authentication virtual code when the authentication virtual code includes a first code and a second code that are changed for each unit count, the first code is the unit count that has elapsed from the initial time when UID registration was started in the server 30. It is generated based on, and the second code is generated based on the unit count elapsed from the time when each user registers the UID through the dedicated program 11 installed in the QR code generating device 100. At this time, the unit count is set at a specific time interval and is changed as the time interval elapses.
- the storage location search algorithm moves on a track based on a plurality of detailed codes constituting a virtual code for authentication, and moves to a point matching the storage location of the UID.
- the server 30 sets the count on the track in which the code value corresponding to the first code is matched as the search start point, and the count corresponding to the second code It returns along the track from the search start point by the value, and searches for a point on the track (ie, the UID storage location) at the time when the UID is registered in the server 30.
- the server 30 searches for a point (or count) to which the first code is assigned in the authentication virtual code in the first code track, sets the search start point, and sets the second code in the reverse direction from the search start point.
- a target track is arranged to search for a point (or count) to which a second code is assigned in the authentication virtual code, and a point (or count) at which a UID is registered on the first code track is extracted.
- the count calculated as the server 30 sets the search start point based on the first code in the virtual code for authentication and applies the inverse function of the second function to the second code in the virtual code for authentication. It regresses as much as the value and searches for a point corresponding to the UID registration point.
- the server 30 may additionally verify the validity of the authentication virtual code. Specifically, the server 30 compares the reception time of the received QR code and the generation time of the authentication virtual code generated by using the authentication virtual code generation function in the authentication virtual code generation program, as shown in FIG. As shown, when the generation time is within an error range from the QR code reception time, it may be determined that the received virtual code for authentication is a normal code.
- the dedicated program 11 uses the virtual code generation function for authentication to correspond to the request time (ie, the generation time).
- An authentication virtual code (specifically, a second code) is generated based on the count value.
- one of the plurality of detailed codes may be generated using an OTP function using the generation time as seed data. That is, the OTP code may be included and generated in the second code.
- the authentication virtual code is provided to the server 30, and the server 30 extracts a plurality of detailed codes using a storage location search algorithm that matches the authentication virtual code generation function or the authentication virtual code generation function. do.
- the OTP code is extracted through one of the plurality of detailed codes (for example, the second code), and the time point at which the virtual code for authentication is generated is extracted through the OTP code.
- the virtual code for authentication is generated at the current time. You will be able to verify cognition. That is, if the generation time of the authentication virtual code is included within the range including the preset count value from the time when the QR code verification device 200 receives the QR code, the authentication virtual code is verified as a normally generated code. It becomes.
- the server 30 may store various user information.
- the user information may include at least one of a UID, a name, a terminal serial number, and a phone number, and the server 30 stores the user information after receiving it from the QR code generating device 100. I can.
- the server 30 may store a user's diagnosis result and information related to whether or not the confirmed person is contacted by matching the UID.
- the diagnosis result and whether the confirmed person is contacted may be updated by a user of the QR code generating device 100 or an administrator who has been given a separate authority.
- the server 30 searches for a visited place within a predetermined time from the changed point of time, and another user who performs visitor authentication at the same place as the user within a predetermined time from the changed point of time. Send a message to you. Further, the server 30 may change whether the confirmed person is contacted in the user information of another user who has performed visitor authentication in the same place as the corresponding user from non-contact to contact. When the contact of the confirmed person is changed from non-contact to contact, the server 30 may transmit a guide message recommending self-isolation to the corresponding user.
- the server 30 corresponds to the QR code verification device 200 whenever a storage location of specific user information is searched based on the authentication virtual code received from the QR code verification device 200.
- the location information and the QR code reception time can be matched to the storage location of the user information and stored.
- the user authentication method using a virtual code for authentication according to an embodiment of the present invention described above may be implemented as a program (or application) to be executed by being combined with a computer that is hardware and stored in a medium.
- the above-described program includes C, C++, JAVA, Ruby, which can be read by a processor (CPU) of the computer through the device interface of the computer, in order for the computer to read the program and execute the methods implemented as a program.
- It may include a code (Code) coded in a computer language such as machine language.
- code may include a functional code related to a function defining necessary functions for executing the methods, and a control code related to an execution procedure necessary for the processor of the computer to execute the functions according to a predetermined procedure. can do.
- code may further include code related to a memory reference to which location (address address) of the internal or external memory of the computer or the media or additional information necessary for the processor of the computer to execute the functions. have.
- the code uses the communication module of the computer to determine how It may further include a communication-related code for whether to communicate or what information or media to transmit and receive during communication.
- the storage medium is not a medium that stores data for a short moment, such as a register, cache, memory, etc., but a medium that stores data semi-permanently and can be read by a device.
- examples of the storage medium include, but are not limited to, ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, and the like. That is, the program may be stored in various recording media on various servers to which the computer can access, or on various recording media on the user's computer.
- the medium may be distributed over a computer system connected through a network, and computer-readable codes may be stored in a distributed manner.
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Lock And Its Accessories (AREA)
Abstract
Description
본 발명은 인증용가상코드를 기반으로 생성된 QR 코드를 이용한 방문자 관리 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for managing a visitor using a QR code generated based on a virtual code for authentication.
OTP(One Time Password)는 무작위로 생성되는 난수의 일회용 패스워드를 이용하는 사용자 인증 방식이다. OTP 인증 방식은 보안을 강화하기 위하여 도입한 시스템으로, 로그인할 때마다 일회용 패스워드를 생성하여 사용자 인증을 수행하기 때문에, 동일한 패스워드가 반복해서 사용됨으로 발생하는 보안상의 취약점을 극복할 수 있다.OTP (One Time Password) is a user authentication method that uses a one-time password with a random number generated at random. The OTP authentication method is a system introduced to reinforce security, and because a one-time password is generated each time a login is performed to perform user authentication, it is possible to overcome a security vulnerability caused by repeated use of the same password.
코로나 19에 의해 오프라인 사업장 방문자 확인을 위해 방문자의 개인정보(이름, 연락처, 주소 등)를 직접 기재하고 있으나, 이는 방문자가 직접 수기로 기재하여야 하여 출입에 긴 시간이 소요되는 불편이 있으며, 방문자가 사업장에 개인정보를 제공하는 것을 꺼려 개인정보를 허위 기재하는 문제가 다수 발생하고 있다. 또한, 토큰 등 기존 인증방식의 경우, 인증 시마다 네트워크 비용이 발생하며, 네트워크 사용이 제한되는 환경에서는 이용이 불가능한 문제점이 존재한다. 구체적으로, 핸드폰 SMS 인증의 경우, 인증을 위한 문자 발신 시마다 비용이 발생하게 된다. Due to Corona 19, personal information (name, contact information, address, etc.) of the visitor is directly written in order to identify visitors to offline business sites, but this is inconvenient that it takes a long time to enter and exit because the visitor must manually write it Reluctance to provide personal information to workplaces has caused a number of problems of falsely recording personal information. In addition, in the case of existing authentication methods such as tokens, network costs are incurred every time of authentication, and there is a problem that it cannot be used in environments where network use is restricted. Specifically, in the case of mobile phone SMS authentication, costs are incurred every time a text message is sent for authentication.
모바일 네트워크를 사용할 수 없는 내국인, 외국인 모두 방문자 인증을 할 수 있어야 하므로, 방문자의 사용자 단말이 네트워크를 이용할 수 없는 경우에도 가상 인증코드를 생성한 후 QR코드로 제공하여 방문자 기록을 생성할 수 있어야 한다. 또한, 방문자 기록(즉, 방명록)을 생성하여야 하는 오프라인 매장의 네트워크가 제한되는 경우에는 관리자의 사용자단말도 네트워크가 제한될 수 있으므로, 서버로 실시간으로 각 방문자의 방문기록을 전송하지 않으면서 타인의 QR코드 또는 이전에 생성한 QR코드를 이용하여 출입을 시도하는 것을 방지할 수 있어야 한다.Since both Koreans and foreigners who cannot use the mobile network must be able to authenticate visitors, even if the visitor's user terminal cannot use the network, it must be able to generate a visitor record by generating a virtual authentication code and providing it as a QR code. . In addition, if the network of offline stores in which visitor records (i.e., guestbooks) must be generated is restricted, the network of the administrator's user terminal may also be restricted. It should be possible to prevent access by using a QR code or a previously generated QR code.
또한, 방문자들은 본인의 개인정보가 유출되지 않기를 원하므로, 관리자에게 제공되는 코드는 해당 코드만으로 사용자를 확인할 수 없으며 시간마다 변경되어서 도용될 가능성도 없어야 한다.In addition, since visitors do not want their personal information to be leaked, the code provided to the administrator cannot identify the user with the code alone, and there should be no possibility of being stolen because it changes every time.
이에 대해, 선행기술문헌으로는 한국등록특허 10-1316466호(2013.10.01)가 존재한다.On the other hand, as a prior art document, there is Korean Patent Registration No. 10-1316466 (2013.10.01).
본 발명이 해결하고자 하는 과제는 네트워크를 이용할 수 없는 방문자가 일회용 QR코드를 생성하여 방문자 인증을 수행할 수 있도록 하는 방문자 관리 방법 및 시스템을 제공하는 것이다.The problem to be solved by the present invention is to provide a visitor management method and system that enables a visitor who cannot use a network to perform visitor authentication by generating a disposable QR code.
또한, 본 발명이 해결하고자 하는 과제는 관리자가 타인이 QR코드를 도용하여 방문자 인증을 하는 것을 방지할 수 있는 방문자 관리 방법 및 시스템을 제공하는 것이다. In addition, the problem to be solved by the present invention is to provide a visitor management method and system capable of preventing an administrator from performing visitor authentication by stealing a QR code.
또한, 본 발명이 해결하고자 하는 과제는 방문자 정보가 타인에게 유출되는 것을 방지할 수 있는 방문자 관리 방법 및 시스템을 제공하는 것이다.In addition, the problem to be solved by the present invention is to provide a visitor management method and system capable of preventing leakage of visitor information to others.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the problems mentioned above, and other problems that are not mentioned will be clearly understood by those skilled in the art from the following description.
상술한 과정을 해결하기 위한 본 발명은, QR코드검증모듈이 QR코드생성모듈로부터 생성된 QR코드를 수신하는 단계, 상기 QR코드검증모듈이 상기 QR코드에서 인증용가상코드를 추출하는 단계, 상기 QR코드검증모듈이 상기 인증용가상코드를 기반으로 QR코드를 검증하는 단계, 상기 QR코드검증모듈이 상기 QR코드의 수신 시점 및 상기 인증용가상코드를 매칭시켜 저장하는 단계를 포함하고, 상기 QR코드는 상기 QR코드생성모듈에 포함된 인증용가상코드생성함수를 통해 생성된 인증용가상코드에 기반하여 생성되는 QR코드를 이용한 방문자 관리 방법을 제공한다.The present invention for solving the above process, the QR code verification module receiving a QR code generated from the QR code generation module, the QR code verification module extracting a virtual code for authentication from the QR code, the A QR code verification module verifying a QR code based on the authentication virtual code, and the QR code verification module matching the receiving time of the QR code and the authentication virtual code and storing the QR code. The code provides a visitor management method using a QR code generated based on a virtual code for authentication generated through a virtual code generation function for authentication included in the QR code generation module.
또한, 본 발명은, 하드웨어인 컴퓨터와 결합되어, 상기 QR코드를 이용한 방문자 관리 방법을 실행시키기 위하여 매체에 저장된, 인증용가상코드를 이용한 사용자 인증 프로그램을 제공한다.In addition, the present invention provides a user authentication program using a virtual code for authentication, stored in a medium in order to execute the visitor management method using the QR code in combination with a computer as hardware.
또한, 본 발명은, QR코드생성장치에 등록된 사용자 정보를 기반으로 하나 이상의 세부코드를 생성하는 세부코드생성부, 인증용가상코드생성함수를 이용하여 상기 하나 이상의 세부코드가 조합된 인증용가상코드를 생성하는 가상코드생성부, 상기 인증용가상코드에 기반하여 QR코드를 생성하는 QR코드생성부, 상기 QR코드를 출력하는 QR코드제공부를 포함하는 방문자 인증을 위한 QR코드생성장치를 제공한다.In addition, the present invention, using a detailed code generation unit that generates one or more detailed codes based on user information registered in the QR code generation device, and a virtual code generation function for authentication, a virtual authentication for authentication in which the one or more detailed codes are combined. Provides a QR code generation device for visitor authentication comprising a virtual code generation unit for generating a code, a QR code generation unit for generating a QR code based on the virtual code for authentication, and a QR code providing unit for outputting the QR code. .
또한, 본 발명은, QR코드를 수신하는 QR코드수신부, 상기 QR코드에서 인증용가상코드를 추출하는 가상코드추출부, 상기 인증용가상코드에 기반하여 상기 QR코드를 검증하는 QR코드검증부, 상기 인증용가상코드와 상기 QR코드의 수신 시점을 매칭시켜 저장하는 가상코드저장부, 서버의 요청이 있거나, 또는 기 설정된 시간 간격으로 상기 저장된 인증용가상코드 및 상기 QR코드 수신 시점을 상기 서버로 송신하는 가상코드제공부를 포함하는 방문자 인증을 위한 QR코드검증장치를 제공한다.In addition, the present invention, a QR code receiving unit for receiving a QR code, a virtual code extraction unit for extracting a virtual code for authentication from the QR code, a QR code verification unit for verifying the QR code based on the virtual code for authentication, A virtual code storage unit that matches and stores the authentication virtual code and the reception time of the QR code, or at a request from the server, or at a preset time interval, the stored authentication virtual code and the QR code reception time to the server. It provides a QR code verification device for visitor authentication including a transmitting virtual code providing unit.
또한, 본 발명은, QR코드검증모듈로부터 복수의 인증용가상코드 및 상기 복수의 인증용가상코드에 매칭되어 저장된 QR코드의 수신 시점을 수신하는 가상코드수신부, 상기 복수의 인증용가상코드 각각에서 적어도 하나의 세부코드를 추출하는 세부코드추출부, 상기 적어도 하나의 세부코드에 기반하여, 상기 복수의 인증용가상코드 각각에 대응하는 사용자 정보의 저장위치를 탐색하는 저장위치탐색부를 포함하고, 상기 서버는 상기 저장위치에 상기 QR코드 수신 시점 및 상기 QR코드검증모듈에 대응하는 위치 정보를 매칭시켜 저장하는 방문자 인증을 위한 서버를 제공한다.In addition, the present invention, a virtual code receiving unit for receiving a reception point of the stored QR code matched to the plurality of authentication virtual codes and the plurality of authentication virtual codes from the QR code verification module, in each of the plurality of authentication virtual codes A detailed code extracting unit for extracting at least one detailed code, and a storage location search unit for searching a storage location of user information corresponding to each of the plurality of authentication virtual codes, based on the at least one detailed code, the The server provides a server for authenticating a visitor that matches and stores the location information corresponding to the QR code reception time and the QR code verification module in the storage location.
상기와 같은 본 발명의 인증용가상코드를 이용한 사용자 인증 방법 및 이를 위한 시스템이 제공하는 효과에 대해 설명하면 다음과 같다.The user authentication method using the virtual code for authentication of the present invention as described above and the effects provided by the system therefor will be described as follows.
첫째, 일시적으로 방문자는 네트워크가 없는 환경에서도 일회용 QR코드를 형성하여 방문자 인증을 수행할 수 있는 효과를 제공한다.First, it provides an effect that visitors can temporarily perform visitor authentication by forming a disposable QR code even in an environment without a network.
둘째, QR코드가 생성된 시점부터 일정시간이 지나면 해당 QR코드를 이용하여 방문자 인증을 수행할 수 없게 되기 때문에, 타인이 QR코드를 도용하여 방문자 인증을 수행하는 것을 방지할 수 있는 효과를 제공한다.Second, after a certain period of time from the time when the QR code is generated, visitor authentication cannot be performed using the QR code, so it provides an effect of preventing other people from stealing the QR code to perform visitor authentication. .
셋째, 방문자의 정보가 관리자의 단말기에 저장되지 않기 때문에, 방문자의 개인정보가 유출될 우려가 없는 효과를 제공한다.Third, since the visitor's information is not stored in the administrator's terminal, it provides an effect that there is no fear of leakage of the visitor's personal information.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.
도 1은 QR코드를 나타내는 개념도이다. 1 is a conceptual diagram showing a QR code.
도 2은 본 발명의 일 실시예에 따른 QR코드를 이용한 방문자 관리 시스템의 구성도이다.2 is a block diagram of a visitor management system using a QR code according to an embodiment of the present invention.
도 3은 본 발명의 일 실시예에 따른 QR코드생성장치의 구성도이다.3 is a block diagram of a QR code generating device according to an embodiment of the present invention.
도 4는 본 발명의 일 실시예에 따른 QR코드검증장치의 구성도이다.4 is a block diagram of a QR code verification device according to an embodiment of the present invention.
도 5는 본 발명의 일 실시예에 따른 서버의 구성도이다.5 is a configuration diagram of a server according to an embodiment of the present invention.
도 6 및 7은 본 발명의 일 실시예에 따른 인증용가상코드를 이용한 방문자 관리 방법의 순서도이다.6 and 7 are flowcharts of a visitor management method using a virtual code for authentication according to an embodiment of the present invention.
도 8은 본 발명의 일 실시예에 따른 k각형의 구름이동을 통해 사용자 정보의 저장위치를 탐색하는 저장위치탐색알고리즘에 대한 예시도이다.8 is an exemplary diagram of a storage location search algorithm for searching a storage location of user information through a k-shaped cloud movement according to an embodiment of the present invention.
도 9는 본 발명의 일 실시예에 따른 인증용가상코드의 검증을 설명하기 위한 예시도이다.9 is an exemplary view for explaining verification of a virtual code for authentication according to an embodiment of the present invention.
도 10은 본 발명의 일 실시예에 따른 세부코드를 기반으로 트랙상을 이동하여 사용자 정보의 저장위치를 탐색하는 저장위치탐색알고리즘에 대한 예시도이다.10 is an exemplary diagram of a storage location search algorithm for searching a storage location of user information by moving on a track based on a detailed code according to an embodiment of the present invention.
도 11은 본 발명의 일 실시예에 따른 서버의 저장공간을 설명하기 위한 예시도이다.11 is an exemplary diagram illustrating a storage space of a server according to an embodiment of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. Advantages and features of the present invention, and a method of achieving them will become apparent with reference to the embodiments described below in detail together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in a variety of different forms. It is provided to fully inform the skilled person of the scope of the present invention, and the present invention is only defined by the scope of the claims.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terms used in the present specification are for describing exemplary embodiments and are not intended to limit the present invention. In this specification, the singular form also includes the plural form unless specifically stated in the phrase. As used herein, “comprises” and/or “comprising” do not exclude the presence or addition of one or more other elements other than the mentioned elements. Throughout the specification, the same reference numerals refer to the same elements, and "and/or" includes each and all combinations of one or more of the mentioned elements. Although "first", "second", and the like are used to describe various elements, it goes without saying that these elements are not limited by these terms. These terms are only used to distinguish one component from another component. Therefore, it goes without saying that the first component mentioned below may be the second component within the technical idea of the present invention.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in the present specification may be used with meanings that can be commonly understood by those of ordinary skill in the art to which the present invention belongs. In addition, terms defined in a commonly used dictionary are not interpreted ideally or excessively unless explicitly defined specifically.
본 명세서에서 '방문자 인증'은 사용자가 특정 장소에 방문하거나 특정 영역을 통과할 때, 사용자의 신원을 확인하는 절차로 QR코드를 QR코드검증수단에 제공하는 행위를 의미한다.In the present specification,'visitor authentication' refers to an act of providing a QR code to a QR code verification means as a procedure for verifying the identity of a user when a user visits a specific place or passes through a specific area.
본 명세서에서 '문자'는 코드를 구성하는 구성요소로서, 대문자알파벳, 소문자알파벳, 숫자 및 특수문자 등의 전부 또는 적어도 하나를 포함한다.In the present specification,'character' is a constituent element constituting a code, and includes all or at least one of uppercase letters, lowercase letters, numbers, and special characters.
본 명세서에서 '코드'는 문자가 나열된 문자열을 의미한다.In this specification,'code' means a character string in which characters are listed.
본 명세서에서 '인증용가상코드'는 인증용가상코드생성수단에서 생성되는 코드로서, 인증용가상코드검증수단에서 사용자 인증을 수행하는데 이용되는 코드를 의미한다. 즉, '인증용가상코드'는 사용자 정보를 추출하고 검증할 수 있도록 단위카운트마다 임시적으로 부여된 가상의 코드를 의미한다.In the present specification, the'virtual code for authentication' is a code generated by the virtual code generation means for authentication, and means a code used to perform user authentication by the virtual code verification means for authentication. That is, the'virtual code for authentication' refers to a virtual code temporarily assigned for each unit count so that user information can be extracted and verified.
본 명세서에서 '세부코드'는 인증용가상코드에 포함되는 일부코드를 의미한다. In this specification, the'detail code' means a partial code included in the virtual code for authentication.
본 명세서에서 '단위카운트'는 특정한 시간간격으로 설정되어, 시간간격이 경과됨에 따라 변경되는 것으로 정의된 단위이다. 예를 들어, 1카운트는 특정한 시간간격(예를 들어, 1.5초)으로 설정되어 사용될 수 있다.In this specification, the'unit count' is a unit defined as being set at a specific time interval and changing as the time interval elapses. For example, 1 count may be set and used at a specific time interval (eg, 1.5 seconds).
본 명세서에서 '인증용가상코드생성함수'는 인증용가상코드를 생성하는데 이용되는 함수를 의미한다. In this specification, the'authentication virtual code generation function' means a function used to generate the authentication virtual code.
본 명세서에서 '구름이동'은 대상체가 회전하면서 병진운동을 하는 것을 의미한다. 즉, '구름이동'은 회전운동과 병진운동을 함께 수행하면서 이동하는 것으로서, 회전하는 대상체의 각 지점이 이동하는 축 상에 차례대로 접하면서 이동하는 것을 의미한다.In the present specification, "cloud movement" means that the object rotates while performing a translational motion. That is,'cloud movement' refers to moving while performing a rotational motion and a translational motion together, and means that each point of a rotating object moves while in turn contacting the moving axis.
본 명세서에서 'UID(user identification)'는 사용자를 식별하기 위해 사용자별로 중복되지 않게 부여되는 고유한 코드 형태의 값을 의미한다.In this specification,'UID (user identification)' refers to a value in the form of a unique code that is not duplicated for each user to identify a user.
본 명세서에서 '저장위치'는 사용자에 의해 사용자 정보 등록이 요청된 시점에 해당하는 트랙 상 지점(카운트)을 의미한다.In this specification, the'storage location' means a point (count) on a track corresponding to a time point at which user information registration is requested by a user.
본 명세서에서 '사용자 정보'는 사용자를 식별할 수 있는 정보를 의미한다. 예를 들어, '사용자 정보'는 후술되는 QR코드를 생성하는 단말을 소유한 사용자의 개인정보(예를 들어, 성명, 전화번호, 주민등록번호 등)를 포함할 수 있다. 또한, 예를 들어, '사용자 정보'는 QR코드 내에 포함되는 가상코드 생성에 이용되는 사용자 식별정보(예를 들어, 후술되는 UID)를 포함할 수 있다.In this specification,'user information' means information that can identify a user. For example,'user information' may include personal information (eg, name, phone number, resident registration number, etc.) of a user who owns a terminal generating a QR code to be described later. In addition, for example, the'user information' may include user identification information (eg, UID to be described later) used to generate a virtual code included in the QR code.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 QR코드를 나타내는 개념도이다. 1 is a conceptual diagram showing a QR code.
도 1을 참조하면, QR(Quick Response) 코드는 2차원 형태의 격자무늬 바코드이다. QR코드에 저장할 수 있는 숫자는 최대 7089자, 문자(ASDII)는 최대 4296자, 한자 같은 아시아 문자는 최대 1817자 까지 담을 수 있다. Referring to FIG. 1, a QR (Quick Response) code is a two-dimensional grid pattern barcode. The QR code can contain a maximum of 7089 characters, a maximum of 4296 characters (ASDII), and a maximum of 1817 Asian characters such as Chinese characters.
QR코드는 QR코드생성프로그램에 의해 자유롭게 생성될 수 있다. 구체적으로, QR코드생성프로그램은 문자 및 숫자를 입력받아 이를 기반으로 QR코드를 생성할 수 있다. 생성된 QR코드는 별도의 인쇄 수단을 통해 인쇄되거나, QR코드생성프로그램을 내장하고 있는 단말기에 포함된 디스플레이부를 통해 표시될 수 있다. 상술한 바와 같이, QR코드는 QR코드생성장치를 별도로 구비할 필요없이 기존 단말기에 QR코드생성프로그램을 설치함으로써, 생성할 수 있다. The QR code can be freely generated by the QR code generation program. Specifically, the QR code generation program may receive letters and numbers and generate a QR code based on them. The generated QR code may be printed through a separate printing means, or may be displayed through a display unit included in a terminal having a built-in QR code generation program. As described above, the QR code can be generated by installing a QR code generation program in an existing terminal without having to separately provide a QR code generation device.
인쇄된 QR코드 또는 디스플레이부에 표시된 QR코드는 QR코드수신수단에 의해 QR코드검증수단으로 전달될 수 있다. 구체적으로, QR코드수신수단은 카메라와 같은 광학장치일 수 있다. 일 실시 예에 있어서, QR코드검증수단이 설치된 단말기에 포함된 카메라가 QR코드수신수단으로 활용될 수 있다. QR코드검증수단은 QR코드 스캔 요청을 수신할 경우, 단말기에 포함된 카메라를 활성화시켜 인쇄된 QR코드 또는 디스플레이부에 표시된 QR코드를 스캔한다. 상술한 바와 같이, QR코드는 QR코드수신장치를 별도로 구비할 필요없이 기존 단말기에 QR코드검증프로그램을 설치함으로써, 수신할 수 있다. The printed QR code or the QR code displayed on the display may be transmitted to the QR code verification means by the QR code receiving means. Specifically, the QR code receiving means may be an optical device such as a camera. In one embodiment, a camera included in a terminal equipped with a QR code verification means may be used as a QR code receiving means. When receiving a QR code scan request, the QR code verification means activates a camera included in the terminal and scans the printed QR code or the QR code displayed on the display. As described above, the QR code can be received by installing a QR code verification program in an existing terminal without having to separately provide a QR code receiving device.
도 2는 본 발명의 일 실시예에 따른 QR코드를 이용한 방문자 관리 시스템의 구성도이다.2 is a block diagram of a visitor management system using a QR code according to an embodiment of the present invention.
도 2에 도시된 바와 같이, 사용자 인증 시스템은 QR코드생성수단(10), QR코드검증수단(20), 서버(30)를 포함한다.As shown in FIG. 2, the user authentication system includes a QR code generating means 10, a QR code verifying means 20, and a server 30.
QR코드생성수단(10)은 QR코드를 생성하기 위한 전용프로그램 또는 전용어플리케이션(이하, 전용프로그램)이 내장 또는 설치되어 있는 장치를 의미한다. The QR code generation means 10 refers to a device in which a dedicated program or a dedicated application (hereinafter, a dedicated program) for generating a QR code is built-in or installed.
일 실시예로, QR코드생성수단(10)은 후술할 서버(30)에 초기 등록될 수 있다. QR코드생성수단(10)을 초기 등록하는 방법에 대하여는 후술한다. In one embodiment, the QR code generating means 10 may be initially registered in the server 30 to be described later. A method of initially registering the QR code generating means 10 will be described later.
또한, 일 실시예로, 상기 전용프로그램은 방문자 인증을 위한 QR코드를 생성하는 역할을 수행한다. 여기서, 상기 전용프로그램은 별도로 생성된 인증용가상코드에 기반하여 QR코드를 생성한다. In addition, as an embodiment, the dedicated program serves to generate a QR code for authenticating a visitor. Here, the dedicated program generates a QR code based on a separately generated virtual code for authentication.
인증용가상코드는 문자 및 숫자의 조합으로 이루어진 코드로, QR코드생성 규칙에 기반하여 QR코드로 변환될 수 있다. 인증용가상코드는 상기 전용프로그램에 내장된 가상코드생성부에 의해 생성될 수 있다. 가상코드생성부는 사용자 정보를 기초로 인증용가상코드를 생성할 수 있다. 여기서, 사용자 정보는 QR코드생성수단(10) 및 서버(30)에 모두 저장된 정보일 수 있다.The authentication virtual code is a code consisting of a combination of letters and numbers, and can be converted into a QR code based on a QR code generation rule. The authentication virtual code may be generated by a virtual code generator built into the dedicated program. The virtual code generator may generate a virtual code for authentication based on user information. Here, the user information may be information stored in both the QR code generating means 10 and the server 30.
정리하면, QR코드생성수단(10)은 QR코드생성수단(10) 및 서버(30)에 모두 저장된 정보를 기반으로 QR코드를 생성한다. In summary, the QR code generation unit 10 generates a QR code based on information stored in both the QR code generation unit 10 and the server 30.
한편, 사용자 정보는 반드시 QR코드생성수단(10)에 내장된 메모리에 저장될 필요는 없다. 예를 들어, 사용자 정보는 별도의 무선 통신이 가능한 카드 또는 웨어러블 장치 내에 저장될 수 있으며, 사용자는 사용자 정보가 저장된 단말기가 사용자 정보를 QR코드생성수단(10)으로 전송하도록 함으로써, QR코드생성수단(10)이 QR가상코드를 생성하도록 할 수 있다.On the other hand, the user information need not necessarily be stored in the memory built in the QR code generating means (10). For example, user information may be stored in a separate card or wearable device capable of wireless communication, and the user allows the terminal in which the user information is stored to transmit the user information to the QR code generating unit 10, thereby generating a QR code (10) You can have this QR virtual code generated.
한편, 상기 전용프로그램은 인증용가상코드생성함수를 포함하며, 사용자 정보를 이용하여 인증용가상코드를 생성한다. 예를 들어, 상기 전용프로그램은 사용자 정보를 인증용가상코드생성함수의 시드데이터로 이용하여 인증용가상코드를 생성한다. 여기서, 사용자 정보는 UID(User Identification)일 수 있다.Meanwhile, the dedicated program includes a virtual code generation function for authentication, and generates a virtual code for authentication using user information. For example, the dedicated program generates a virtual code for authentication by using user information as seed data of a virtual code generation function for authentication. Here, the user information may be User Identification (UID).
또한, 일 실시예로, 상기 전용프로그램은 QR코드생성수단(10)을 서버(30)에 등록하는 역할을 수행한다. 즉, 사용자는 QR코드생성수단(10)(즉, 사용자 단말)에 상기 전용프로그램을 설치하고, 상기 전용프로그램은 서버(30)로 사용자 정보를 전송하여 등록한다. 다만, 이에 한정되지 않고, 상기 전용프로그램은 공장 출고시 QR코드생성수단(10)에 내장된 프로그램일 수 있다.In addition, in one embodiment, the dedicated program serves to register the QR code generation means 10 to the server 30. That is, the user installs the dedicated program in the QR code generating means 10 (ie, the user terminal), and the dedicated program transmits user information to the server 30 to register. However, the present invention is not limited thereto, and the dedicated program may be a program built into the QR code generating means 10 when leaving the factory.
구체적인 예로, 상기 전용프로그램은 등록 시에 사용자로부터 사용자 정보를 입력받거나, 사용자의 전용프로그램의 로그인 정보를 기반으로 사용자 정보를 생성한다. 그 후, 상기 전용프로그램은 사용자 정보를 서버(30)로 전송한다. 서버(30)가 특정카운트에 사용자 정보를 등록함에 따라, 상기 전용프로그램은 서버(30)로부터 인증용가상코드생성함수 또는 인증용가상코드생성함수를 특정하기 위한 설정데이터를 수신한다. 이를 통해, 상기 전용프로그램은 서버(30) 내에 사용자 정보가 등록된 특정카운트 탐색이 가능한 인증용가상코드를 생성하는 인증용가상코드생성함수를 포함할 수 있다.As a specific example, the dedicated program receives user information from a user at the time of registration or generates user information based on login information of the user's dedicated program. After that, the dedicated program transmits user information to the server 30. As the server 30 registers user information in a specific count, the dedicated program receives setting data for specifying a virtual code generation function for authentication or a virtual code generation function for authentication from the server 30. Through this, the dedicated program may include an authentication virtual code generation function that generates an authentication virtual code capable of searching for a specific count in which user information is registered in the server 30.
상기 전용프로그램은 사용자 요청이 있을 때마다 사용자 정보에 기반하여 인증용가상코드를 생성한 후, 생성된 인증용가상코드에 기반하여 QR코드를 생성한다. 상기 인증용가상코드는 매번 중복되지 않게 생성되는 코드이므로, QR코드 또한 매번 중복되지 않게 생성된다. The dedicated program generates a virtual code for authentication based on user information whenever there is a user request, and then generates a QR code based on the generated virtual code for authentication. Since the virtual code for authentication is a code that is not duplicated every time, the QR code is also generated so that it is not duplicated every time.
QR코드검증수단(20)는 QR코드를 검증하기 위한 전용프로그램 또는 전용어플리케이션(이하, 검증프로그램)이 내장 또는 설치되어 있는 장치를 의미한다. The QR code verification means 20 refers to a device in which a dedicated program or a dedicated application (hereinafter, a verification program) for verifying the QR code is built-in or installed.
상기 검증프로그램은 상기 검증프로그램이 설치된 장치에 포함된 카메라를 활성화시켜 QR코드를 촬영할 수 있도록 한다. 카메라 촬영을 통해 출력된 QR코드에 대응하는 이미지 파일이 생성된다. 상기 검증프로그램은 카메라를 통해 생성된 QR 코드를 포함하는 이미지 파일이 올바르게 생성된 QR코드를 포함하는지 검증한다. The verification program activates a camera included in the device in which the verification program is installed so that a QR code can be photographed. An image file corresponding to the QR code output through the camera shooting is created. The verification program verifies whether the image file including the QR code generated through the camera includes the QR code generated correctly.
구체적으로, 상기 검증프로그램은 카메라를 통해 생성된 QR코드 이미지에서, QR코드를 인식하고, 인식된 QR코드를 인증용가상코드로 변환한다. 이때, QR코드 생성시 적용된 규칙과 동일한 규칙이 적용될 수 있다. 이에 따라, QR코드를 인증용가상코드로 변환할 경우, QR코드 생성시 기반이 된 인증용가상코드와 동일한 코드를 얻을 수 있게 된다. Specifically, the verification program recognizes the QR code from the QR code image generated through the camera, and converts the recognized QR code into a virtual code for authentication. At this time, the same rules as those applied when generating the QR code may be applied. Accordingly, when converting the QR code into a virtual code for authentication, it is possible to obtain the same code as the virtual code for authentication that was the basis for generating the QR code.
이후, 상기 검증프로그램은 QR코드로부터 변환된 인증용가상코드가 정상적으로서 생성된 코드인지 검증하고, 인증용가상코드가 정상적으로 생성된 코드일 경우 상기 QR코드 이미지가 정상적으로 생성된 QR코드를 포함하는 것으로 판단할 수 있다. QR코드검증수단(20)이 QR코드를 검증하는 방법에 대하여는 후술한다.Thereafter, the verification program verifies whether the virtual code for authentication converted from the QR code is a normally generated code, and if the virtual code for authentication is a code that is normally generated, the QR code image includes a QR code that is normally generated. I can judge. A method of verifying the QR code by the QR code verification means 20 will be described later.
한편, 본 명세서에서는 설명의 편의를 위하여, QR코드검증수단(20)이 카메라를 활성화하여 QR코드 이미지를 생성하고, QR코드 이미지로부터 QR코드를 인식하는 것을 QR코드검증수단(20)이 QR코드를 수신한다고 표현한다. QR코드검증수단(20)이 QR코드를 수신한 시점은 카메라를 통해 QR코드 이미지가 생성된 시점이거나, QR코드 이미지에서 QR코드를 인식한 시점일 수 있다. 한편, QR코드검증수단(20)은 상술한 방식 이외에서 다양한 방식으로 QR코드를 수신할 수 있는 바, QR코드검증수단(20)이 QR코드를 수신한 시점은 QR코드를 수신하는 방식에 따라 달라질 수 있다. Meanwhile, in the present specification, for convenience of explanation, the QR code verification means 20 generates a QR code image by activating the camera, and the QR code verification means 20 recognizes the QR code from the QR code image. Express that you receive The time when the QR code verification means 20 receives the QR code may be a time when a QR code image is generated through a camera or a time when a QR code is recognized from the QR code image. On the other hand, the QR code verification means 20 can receive the QR code in a variety of ways other than the above-described method, the point at which the QR code verification means 20 receives the QR code depends on the method of receiving the QR code. It can be different.
QR코드검증수단(20)이 수신한 QR코드가 정상적으로 생성된 QR코드인 것으로 판단하는 경우, QR코드검증수단(20)은 QR코드로부터 변환된 인증용가상코드와 QR코드를 수신한 시점을 매칭시켜 저장한다. When it is determined that the QR code received by the QR code verification means 20 is a normally generated QR code, the QR code verification means 20 matches the time of receiving the QR code with the virtual code for authentication converted from the QR code. And save it.
이후, QR코드검증수단(20)은 서버(30)의 요청이 있거나, 일정 시간 간격마다 저장된 인증용가상코드 및 QR코드를 수신한 시점을 서버(30)로 송신한다. Thereafter, the QR code verification means 20 transmits to the server 30 a time when the server 30 requests or receives the stored authentication virtual code and QR code at predetermined time intervals.
구체적인 실시 예로, QR코드검증수단(20)은 QR코드가 방문자 인증 요청을 하는 시점을 기준으로 소정 시간 이내에 생성된 QR코드인지만 검증한 후, QR코드로부터 추출된 인증용가상코드 및 QR코드 수신시점을 서버(30)로 송신한다. 후술할 서버가 저장서버 및 검증서버로 분리되어 있는 경우, QR코드검증수단(20)은 저장서버로 인증용가상코드 및 QR코드 수신시점을 송신한다. In a specific embodiment, the QR code verification means 20 verifies only that the QR code is a QR code generated within a predetermined time from the time when a visitor authentication request is made, and then receives a virtual code for authentication and a QR code extracted from the QR code. The time point is transmitted to the server 30. When the server to be described later is separated into a storage server and a verification server, the QR code verification means 20 transmits a virtual code for authentication and a QR code reception time point to the storage server.
상술한 QR코드생성수단(10) 및 QR코드검증수단(20)은 디스플레이, 카메라 및 무선 통신부를 구비하는 이동 단말기에 내장 또는 설치될 수 있다. The above-described QR code generation means 10 and QR code verification means 20 may be embedded or installed in a mobile terminal having a display, a camera, and a wireless communication unit.
일 실시 예에 있어서, 특정 지역을 방문하거나 통과하려는 사용자는 QR코드생성수단(10)을 설치하여 사용자 정보를 서버(30)에 등록한 후, QR코드생성수단(10)을 통해 방문자 인증을 수행할 때마다 QR코드를 생성하여 제시할 수 있다.In one embodiment, a user who wants to visit or pass through a specific area registers user information on the server 30 by installing a QR code generation means 10, and then performs visitor authentication through the QR code generation means 10. You can generate and present a QR code every time.
일 실시 예에 있어서, 특정 지역의 방문자 관리자는 QR코드검증수단(20)을 설치하여 방문자가 제시하는 QR코드를 스캔하여 QR코드가 정상적으로 생성된 QR코드인지 확인하고, 방문자의 방문기록을 저장할 수 있다. In one embodiment, a visitor manager in a specific area may install a QR code verification means 20 to scan a QR code presented by a visitor to check whether the QR code is a normally generated QR code, and store the visitor's visit record. have.
다른 일 실시 예에 있어서, 방문자 인증이 비대면으로 진행될 경우, QR코드검증수단(20)은 개폐장치와 연동될 수 있다. 개폐장치는 QR코드검증수단(20)이 수신한 QR코드가 정상적으로 생성된 QR코드인 경우에만 개방상태로 전환하여 방문자가 특정 지역으로 진입하거나, 특정 지역을 통과하도록 할 수 있다. 이를 위해, QR코드검증수단(20)은 개폐장치에 내장 또는 설치될 수 있다. 이 경우, 개폐장치는 QR코드를 수신할 수 있는 광학장치, 통신부, 저장부를 구비해야 한다. 다만, 이에 한정되지 않고, QR코드검증수단(20)은 개폐장치를 제어할 수 있으며, QR코드검증수단(20)은 QR코드를 수신할 수 있는 광학장치, 통신부, 저장부를 포함하는 별도의 장치에 내장 또는 설치될 수 있다. In another embodiment, when the visitor authentication is performed non-face-to-face, the QR code verification means 20 may be interlocked with the opening and closing device. The opening and closing device may switch to an open state only when the QR code received by the QR code verification means 20 is a normally generated QR code, so that the visitor enters a specific area or passes through a specific area. To this end, the QR code verification means 20 may be built-in or installed in the opening and closing device. In this case, the opening and closing device must have an optical device, a communication unit, and a storage unit capable of receiving a QR code. However, the present invention is not limited thereto, and the QR code verification means 20 can control the opening and closing device, and the QR code verification means 20 is a separate device including an optical device, a communication unit, and a storage unit capable of receiving a QR code. Can be built in or installed.
한편, QR코드검증수단(20)은 서버(30)에 등록될 수 있다. 구체적으로, 서버(30)에는 QR코드검증수단(20)이 내장 또는 설치된 장치(이하, QR코드검증장치)와 관련된 정보가 상기 장치의 위치와 관련된 정보와 매칭되어 저장될 수 있다. Meanwhile, the QR code verification means 20 may be registered in the server 30. Specifically, information related to a device (hereinafter, referred to as a QR code verification device) in which the QR code verification means 20 is built-in or installed in the server 30 may be matched with information related to the location of the device and stored.
예를 들어, QR코드검증수단(20)을 서버(30)에 초기 등록 시 QR코드검증장치의 일련번호와 QR코드검증장치의 위치정보가 서버(30)로 전송되며, 서버(30)는 QR코드검증장치의 일련번호와 QR코드검증장치의 위치정보를 매칭시켜 저장한다. 여기서, QR코드검증장치의 위치정보는 QR코드검증수단(20)을 서버(30)에 등록할 때 사용자로부터 입력받은 정보이거나, QR코드검증장치에 구비된 GPS정보수집부로부터 수집된 GPS정보일 수 있다. QR코드검증장치가 서버에 등록된 후에도 QR코드검증장치의 위치가 변경될 경우, QR코드검증장치의 위치 정보를 갱신할 수 있다. For example, when the QR code verification means 20 is initially registered with the server 30, the serial number of the QR code verification device and the location information of the QR code verification device are transmitted to the server 30, and the server 30 The serial number of the code verification device and the location information of the QR code verification device are matched and stored. Here, the location information of the QR code verification device is information input from the user when registering the QR code verification means 20 with the server 30, or the GPS information collected from the GPS information collection unit provided in the QR code verification device. I can. If the location of the QR code verification device is changed even after the QR code verification device is registered on the server, the location information of the QR code verification device can be updated.
QR코드검증수단(20)이 서버(30)에 등록된 후, 서버(30)가 QR코드검증수단(20)으로부터 인증용가상코드를 수신하는 경우, 서버(30)는 QR코드검증수단(20)에 대응하는 위치 정보와 수신된 인증용가상코드로부터 추출된 사용자 정보를 매칭시켜 저장할 수 있다. 이에 대하여는 후술한다. After the QR code verification means 20 is registered in the server 30, when the server 30 receives a virtual code for authentication from the QR code verification means 20, the server 30 is the QR code verification means 20 ) And user information extracted from the received virtual code for authentication may be matched and stored. This will be described later.
QR코드검증수단(20)은 복수의 QR코드생성수단(10)으로부터 QR코드를 수신 및 검증하며, QR코드검증수단(20)에는 복수의 인증용가상코드와 복수의 인증용가상코드 각각에 대응하는 QR코드 수신시점이 저장된다. The QR code verification means 20 receives and verifies the QR code from the plurality of QR code generation means 10, and the QR code verification means 20 corresponds to a plurality of virtual codes for authentication and a plurality of virtual codes for authentication, respectively. When the QR code is received is stored.
한편, QR코드검증수단(20)은 수신된 QR코드가 정상적으로 생성된 QR코드인 것으로 판단되는 경우, 곧바로 인증용가상코드와 QR코드 수신 시점을 서버(30)로 송신할 수 있다. 즉, 인증용가상코드와 QR코드 수신 시점은 QR코드검증수단(20)이 설치된 장치에 저장되지 않고, 곧바로 서버(30)로 송신될 수 있다. 이를 통해, 관리자가 임의로 방문자 정보를 삭제하는 것을 방지할 수 있다. 일 실시 예에 있어서, 후술할 서버(30)가 서로 분리된 저장서버 및 검증서버로 이루어지는 경우, QR코드검증수단(20)은 인증용가상코드와 QR코드 수신 시점을 저장서버로 송신할 수 있다. 서버(30)가 서로 분리된 저장서버 및 검증서버로 이루어지는 구체적인 실시 예에 대하여는 후술한다. Meanwhile, when it is determined that the received QR code is a normally generated QR code, the QR code verification means 20 may immediately transmit a virtual code for authentication and a time of reception of the QR code to the server 30. That is, the time of receiving the virtual code for authentication and the QR code is not stored in the device in which the QR code verification means 20 is installed, but may be directly transmitted to the server 30. Through this, it is possible to prevent the administrator from arbitrarily deleting visitor information. In one embodiment, when the server 30 to be described later is composed of a storage server and a verification server separated from each other, the QR code verification means 20 may transmit the virtual code for authentication and the time of receiving the QR code to the storage server. . A specific embodiment in which the server 30 includes a storage server and a verification server separated from each other will be described later.
서버(30)는 복수의 QR코드검증수단(20)으로부터 복수의 인증용가상코드와 복수의 인증용가상코드 각각에 대응하는 QR코드 수신시점을 수신하고, 각각의 인증용가상코드에서 사용자 정보를 추출한 후 사용자 정보, QR코드 수신시점 및 QR코드검증수단(20)에 대응하는 위치정보를 매칭시켜 저장한다. 이를 통해, 서버(30)는 복수의 방문자가 어느 시점에 어느 장소를 방문 및 통과하였는지 파악할 수 있게 된다. The server 30 receives a plurality of authentication virtual codes and a QR code reception time corresponding to each of the plurality of authentication virtual codes from the plurality of QR code verification means 20, and receives user information from each of the authentication virtual codes. After extraction, the user information, the point of reception of the QR code, and the location information corresponding to the QR code verification means 20 are matched and stored. Through this, the server 30 is able to grasp which place the plurality of visitors visited and passed through at what point in time.
상술한 바와 같이, QR코드생성수단(10)에 의해 생성된 QR코드는 일정시간이 지날 경우 사용할 수 없기 때문에 QR코드가 유출되더라도 타인이 유출된 QR코드를 이용하여 방문자 인증을 수행할 우려가 없다. As described above, the QR code generated by the QR code generating means 10 cannot be used after a certain period of time, so even if the QR code is leaked, there is no fear that other people will use the leaked QR code to perform visitor authentication. .
또한, QR코드검증수단(20)은 수신한 QR코드가 정상적인 QR코드 인지 여부만 검증할 뿐, QR코드로부터 사용자 정보도 추출할 수 없다. In addition, the QR code verification means 20 only verifies whether the received QR code is a normal QR code, and user information cannot be extracted from the QR code.
또한, 사용자 정보는 서버(30)에만 저장되므로, QR코드검증수단(20)에 저장된 인증용가상코드가 유출되더라도, 사용자 정보가 유출되지 않는다. 따라서, 본 발명에 따르면, QR코드검증수단(20)에 의해 사용자 정보(예를 들어, 사용자의 개인정보)가 유출될 우려가 없다.In addition, since the user information is stored only in the server 30, even if the virtual code for authentication stored in the QR code verification means 20 is leaked, the user information is not leaked. Therefore, according to the present invention, there is no fear of leakage of user information (eg, user's personal information) by the QR code verification means 20.
도 3는 본 발명의 일 실시예에 따른 QR코드생성장치의 구성도이다.3 is a block diagram of a QR code generating device according to an embodiment of the present invention.
도 3에 도시된 바와 같이, QR코드생성장치(100)는 세부코드생성부(110), 가상코드생성부(120) 및 QR코드생성부(130) 및 QR코드제공부(140)를 포함한다. As shown in Fig. 3, the QR
QR코드생성장치(100)는, 일 실시예로, QR코드를 생성하는 프로그램(즉, 애플리케이션)이 설치된 사용자 단말일 수 있다. QR코드생성장치(100)는 상술한 QR코드생성수단(10)이다. The QR
QR코드생성장치(100)는 사용자로부터 QR코드 생성요청을 수신한 후, 인증용가상코드를 생성하고, 생성된 인증용가상코드에 기반하여 QR코드를 생성한다. After receiving the QR code generation request from the user, the QR
일 실시 예에 있어서, QR코드생성장치(100)는 사용자로부터 QR코드 생성요청을 수신하는 경우, QR코드생성장치(100)에 구비된 생체 인증 수단을 활성화하여 사용자가 생체 인증을 수행할 수 있도록 할 수 있다. 여기서, 생체 인증이란, 사용자의 지문, 홍체, 정맥 및 얼굴 인식 중 적어도 하나를 통해 사용자 인증을 수행하는 것으로, 사용자는 사전에 QR코드생성장치(100)에 생체 정보를 등록한 후 QR코드 생성 요청마다 생체 인증을 수행할 수 있다.In one embodiment, when the QR
이를 위해, QR코드생성장치(100)는 생체 정보를 인식할 수 있는 수단을 구비해야 한다. 예를 들어, QR코드생성장치(100)는 지문 인식 센서, 홍체 인식 센서, 정맥 인식 센서 및 얼굴 인식 센서 중 적어도 하나를 구비할 수 있다. 다만, 상술한 생체 정보 인식 수단 이 외에도, QR코드생성장치(100)는 다양한 생체 정보 인식 수단을 구비할 수 있다.To this end, the QR
한편, 상기 QR코드생성장치(100)는 사용자가 생체 인증을 수행한 경우에만 QR코드를 생성할 수 있다. 이를 통해, 타인이 사용자의 QR코드생성장치(100)를 이용하여 방문자 인증을 수행하거나, 또한 타인이 사용자의 QR코드를 통해 방문자 인증을 수행한 사실에 대해 부인하는 것을 방지할 수 있다. Meanwhile, the QR
한편, 상기 QR코드생성장치(100)는 QR코드를 생성한 후 소정 시간동안 새로운 QR코드를 생성하지 않도록 할 수 있다. 이를 통해, 하나의 QR코드생성장치(100)를 통해 복수의 방문자 인증을 수행하는 것을 방지할 수 있다. On the other hand, the QR
세부코드생성부(110)는 사용자 정보를 기반으로 하나 이상의 세부코드를 생성하는 역할을 수행한다.The detailed code generation unit 110 plays a role of generating one or more detailed codes based on user information.
인증용가상코드생성함수는 하나 이상의 세부코드생성함수를 포함한다. 예를 들어, 인증용가상코드가 복수의 세부코드를 포함하는 경우, 인증용가상코드생성함수는 복수의 세부코드생성함수를 이용하여 복수의 세부코드를 생성하고, 복수의 세부코드를 결합하는 세부코드결합함수를 이용하여 인증용가상코드를 생성한다.The authentication virtual code generation function includes one or more detailed code generation functions. For example, if the virtual code for authentication includes a plurality of detailed codes, the virtual code generation function for authentication generates a plurality of detailed codes using a plurality of detailed code generation functions, and combines the plurality of detailed codes. Generate a virtual code for authentication by using the code combination function.
이때, 인증용가상코드는 QR코드생성장치(100), 즉, 사용자 단말 내부에 내장 또는 설치된 전용프로그램(11)에 의해 단위카운트마다 생성되는 것으로서, 모바일 OTP(mobile one time password, mOTP)를 의미한다.At this time, the authentication virtual code is generated for each unit count by the QR
일 실시예로, QR코드생성장치(100)는 QR코드생성장치(100)에 저장된 사용자 정보 중 적어도 일부를 인증용가상코드생성함수의 시드데이터 중 하나로 이용할 수 있다. 구체적인 예로, 세부코드생성부(110)는 하나의 세부코드생성함수를 이용하여 UID를 각 세부코드생성함수의 시드데이터로 이용하여 각각의 세부코드를 생성한다. 이때, 세부코드생성부(110)는 사용자로부터 QR코드 생성이 요청된 시점 또는 카운트 값도 이용하여 각각의 세부코드를 생성할 수 있다.In one embodiment, the QR
일 실시예로, 세부코드생성부(110)는 세부코드생성함수로 제1함수와 제2함수를 포함하여, 제1코드 및 제2코드를 생성할 수 있다. 이때, QR코드생성장치(100)는 보안성을 높이기 위해 제1코드를 생성하는 제1함수와 제2코드를 생성하는 제2함수를 세부코드생성함수로 포함할 뿐, 제1코드와 제2코드의 상관관계에 대한 데이터는 포함하지 않을 수 있다.In one embodiment, the detailed code generation unit 110 may generate a first code and a second code, including a first function and a second function as a detailed code generation function. At this time, the QR
가상코드생성부(120)는 인증용가상코드생성함수를 이용하여 하나 이상의 세부코드를 조합하여 인증용가상코드로 생성하는 역할을 수행한다. 일 실시예로, 인증용가상코드는 복수의 세부코드를 특정한 규칙에 따라 결합하여 생성된다. 인증용가상코드생성함수는 복수의 세부코드를 조합하는 규칙(즉, 세부코드결합함수)을 포함한다. 즉, 가상코드생성부(120)는 하나 이상의 세부코드를 인증용가상코드생성함수에 포함된 세부코드결합함수를 이용하여 조합할 수 있다.The virtual code generation unit 120 plays a role of generating a virtual code for authentication by combining one or more detailed codes using a virtual code generation function for authentication. In one embodiment, the authentication virtual code is generated by combining a plurality of detailed codes according to a specific rule. The authentication virtual code generation function includes a rule for assembling a plurality of detailed codes (that is, a detailed code combining function). That is, the virtual code generation unit 120 may combine one or more detailed codes using a detailed code combining function included in the authentication virtual code generation function.
복수의 세부코드를 결합하여 하나의 인증용가상코드를 생성하는 방식으로는 다양한 방식이 적용될 수 있다. 세부코드결합함수의 일 예로, 인증용가상코드생성부(120)는 N자리의 제1코드와 N자리의 제2코드를 번갈아 배치하는 방식으로 인증용가상코드를 생성할 수 있다. 또한, 다른 일 예로, 세부코드결합함수는 제1코드 뒤에 제2코드를 결합하는 함수일 수 있다. 인증용가상코드에 포함되는 세부코드가 늘어남에 따라 세부코드결합함수도 다양하게 생성될 수 있다.Various methods can be applied as a method of generating one authentication virtual code by combining a plurality of detailed codes. As an example of the detailed code combining function, the authentication virtual code generation unit 120 may generate an authentication virtual code by alternately arranging an N-digit first code and an N-digit second code. In addition, as another example, the detailed code combining function may be a function that combines the second code after the first code. As the number of detailed codes included in the authentication virtual code increases, various detailed code combining functions can be generated.
또한, 일 실시예로, 인증용가상코드가 제1코드 및 제2코드의 특정한 규칙에 따른 조합으로 생성되는 경우, 제1코드와 제2코드는 사용자 정보가 저장된 저장위치탐색알고리즘 내의 UID의 저장위치를 탐색하기 위한 각각의 역할을 수행할 수 있다. 예를 들어, 제1코드는 저장위치탐색의 시작지점을 설정하고, 제2코드는 특정한 탐색방식에 따라 상기 시작지점으로부터 상기 UID 의 저장위치로의 탐색경로를 설정한다. 즉, QR코드생성장치(100)에서 단위카운트마다 정상적으로 생성된 인증용가상코드가 제공되면, 서버(30)는 제1코드에 대응하는 탐색시작지점으로부터 제2코드에 상응하는 탐색경로에 따라 이동한 지점을 사용자 정보가 저장된 지점(즉, UID 저장위치)으로 판단한다. 인증용가상코드를 구성하는 제1코드와 제2코드를 기반으로 UID 의 저장위치를 탐색하는 구체적인 방식은 후술한다.In addition, as an embodiment, when a virtual code for authentication is generated in a combination according to a specific rule of the first code and the second code, the first code and the second code store the UID in the storage location search algorithm where user information is stored. Each can play a role in navigating a location. For example, the first code sets the start point of the storage location search, and the second code sets the search path from the start point to the storage location of the UID according to a specific search method. That is, when the virtual code for authentication that is normally generated for each unit count is provided by the QR
한편, QR코드생성장치(100)는 상기 제1 및 제2코드와 사용자에 관계없이 세부코드생성함수가 구동되는 초기시점으로부터 각 카운트마다 변경되는 제1가상보안코드를 조합하여 인증용가상코드를 형성할 수 있다. On the other hand, the QR
제1가상보안코드는 사용자에 관계없이 동일한 시드데이터(이하, 제1시드데이터)에 의해 형성되며, 단위카운트마다 변경된다. 제1가상보안코드는 모든 QR코드생성장치(100)에서 동일하게 형성되므로, 서로 다른 QR코드생성장치(100)가 동일한 시점에 제1가상보안코드를 형성하는 경우, 동일한 코드를 형성하게 된다. The first virtual security code is formed by the same seed data (hereinafter, referred to as first seed data) regardless of the user, and is changed for each unit count. Since the first virtual security code is formed identically in all QR
이와 달리, 제1 및 제2코드는 사용자에 따라 다른 시드데이터(이하, 제2시드데이터)에 의해 형성되며, 단위카운트마다 변경되는 제2가상보안코드를 포함할 수 있다. 제1 및 제2가상보안코드 각각은 동일한 시점에 형성되더라도, 서로 다른 값으로 형성된다. 제2가상보안코드는 제1 및 제2코드 중 적어도 하나에 포함될 수 있으며, 서로 다른 QR코드생성장치(100)가 동일한 시점에 형성하더라도, 서로 다른 값으로 형성된다. In contrast, the first and second codes are formed by different seed data (hereinafter, referred to as second seed data) according to the user, and may include a second virtual security code that is changed for each unit count. Each of the first and second virtual security codes is formed to have different values even if they are formed at the same time. The second virtual security code may be included in at least one of the first and second codes, and even if different QR
상술한 QR코드검증수단(20)은 인증용가상코드에서 상기 제1가상보안코드를 추출하는 알고리즘과 상기 제1가상보안코드를 생성하는 알고리즘만 포함할 수 있다. QR코드검증수단(20)은 QR코드가 수신되면, 상기 수신된 QR코드를 인증용가상코드로 변환하고, 상기 변환된 인증용가상코드에서 제1가상보안코드만 추출한다. 이후, QR코드검증수단(20)은 상기 QR코드를 수신한 시점부터 소정 단위카운트 이내에 생성된 제1가상보안코드 중 상기 추출된 제1가상보안코드와 일치하는 코드가 있는 경우 상기 QR코드가 정상적으로 형성된 QR코드인 것으로 판단할 수 있다. 즉, QR코드검증수단(20)은 인증용가상코드에서 특정 사용자와 연관된 어떠한 정보도 추출할 수 없도록 이루어질 수 있다. The above-described QR code verification means 20 may include only an algorithm for extracting the first virtual security code from the virtual code for authentication and an algorithm for generating the first virtual security code. When the QR code is received, the QR code verification means 20 converts the received QR code into a virtual code for authentication, and extracts only the first virtual security code from the converted virtual code for authentication. Thereafter, when the QR code verification means 20 has a code that matches the extracted first virtual security code among the first virtual security codes generated within a predetermined unit count from the time the QR code is received, the QR code is normally It can be determined that it is a formed QR code. That is, the QR code verification means 20 may be made so that no information related to a specific user can be extracted from the virtual code for authentication.
상기 제1가상보안코드는 상술한 인증용가상코드 생성 방법 및 후술할 인증용가상코드 생성 방법에 추가적으로 결합되어 사용될 수 있다. The first virtual security code may be used in addition to the above-described method for generating a virtual code for authentication and a method for generating a virtual code for authentication to be described later.
한편, 상술한 인증용가상코드는 QR코드생성모듈(10)이 설치된 단말기(즉, QR코드생성장치(100))의 단말기 고유값 및 사용자의 생체 정보를 통해 생성된 고유값 중 어느 하나를 포함할 수 있다. 이를 통해, 본 발명은 방문자가 방문자 인증에 사용된 QR코드에 대해 본인이 방문한 사실에 대해 부인하는 것을 방지할 수 있다. 다만, 상기 인증용가상코드 내에 방문자 부인 방지용으로 포함될 수 있는 고유값은 이에 한정되지 않는다.On the other hand, the above-described authentication virtual code includes any one of a terminal unique value of the terminal (ie, the QR code generating device 100) installed with the QR code generation module 10 and a unique value generated through the user's biometric information. can do. Through this, the present invention can prevent the visitor from denying the fact that the person has visited the QR code used for visitor authentication. However, the unique value that can be included in the authentication virtual code for preventing visitor denial is not limited thereto.
한편, 상기 인증용가상코드는 QR코드생성요청이 인가된 시간 정보를 포함할 수 있다. 상기 시간 정보는 후술할 QR코드검증장치가 QR코드를 검증하는데 사용될 수 있다. 이에 대하여는 후술한다.Meanwhile, the authentication virtual code may include time information at which the QR code generation request is authorized. The time information may be used by a QR code verification device to be described later to verify the QR code. This will be described later.
한편, 세부코드생성부(110)가 세부코드를 생성하는 방식의 일 실시예로, 세부코드생성부(110)는 단위카운트마다 새로운 세부코드를 생성하고, 이에 따라 QR코드생성장치(100)는 단위카운트마다 새로운 인증용가상코드를 생성한다. 단위카운트마다 신규로 생성되는 인증용가상코드는 중복되어 생성되지 않는다. 구체적으로, 세부코드생성부(110)는, 단위카운드마다 신규 생성되는 인증용가상코드가 특정한 사용자 또는 특정한 QR코드생성장치(100)에게 정해진 기간 동안 중복 생성되지 않을 뿐만 아니라, 특정한 그룹에 속한 사용자간에도 중복 생성되지 않도록 설정될 수 있다.On the other hand, as an embodiment of a method in which the detailed code generation unit 110 generates a detailed code, the detailed code generation unit 110 generates a new detailed code for each unit count, and accordingly, the QR code generation device 100 A new authentication virtual code is generated for each unit count. The virtual code for authentication that is newly generated for each unit count is not duplicated. Specifically, the detailed code generation unit 110, the authentication virtual code newly generated for each unit count is not duplicated for a predetermined period of time to a specific user or a specific QR
인증용가상코드의 중복생성을 방지하는 구체적인 일 실시예로, M개 문자로 N자리의 제1코드 또는 제2코드를 생성하는 경우, 인증용가상코드생성함수에 포함되는 세부코드생성함수는 MN개의 코드를 제1코드 또는 제2코드로 생성할 수 있고, 각각의 코드를 세부코드생성함수가 구동되는 초기시점으로부터 각 카운트마다 매칭한다. 예를 들어, 단위카운트를 1초로 설정하는 경우, 세부코드생성함수가 최초 구동된 시점에서부터 매 초에 상이한 MN개의 코드를 매칭한다. 그리고, 특정한 세부코드생성함수를 이용하는 주기 또는 QR코드생성장치(100)의 사용주기(예를 들어, 인증용가상코드를 생성하는 애플리케이션이 설치된 사용자 단말의 유효기간)를 MN 카운트에 해당하는 시간길이(예를 들어, 1카운트가 1초인 경우, MN 초)보다 짧은 시간길이로 설정하면 제1코드 또는 제2코드는 사용주기 동안에 동일한 코드가 중복 생성되지 않는다. 즉, 시간이 흐름에 따라 카운트가 증가할 때, 사용자가 특정시점에 QR코드생성장치(100)에 인증용가상코드생성요청을 하는 경우, QR코드생성장치(100)는 특정시점에 대응되는 카운트에 매칭된 코드값을 제1코드 또는 제2코드로 생성할 수 있다.As a specific embodiment of preventing duplicate generation of a virtual code for authentication, when generating an N-digit first code or a second code with M characters, the detailed code generation function included in the authentication virtual code generation function is MN Two codes may be generated as a first code or a second code, and each code is matched for each count from an initial point at which the detailed code generation function is driven. For example, when the unit count is set to 1 second, different MN codes are matched every second from the time when the detailed code generation function is initially driven. And, the period of using a specific detailed code generation function or the period of use of the QR code generation device 100 (for example, the validity period of the user terminal on which the application generating the virtual code for authentication is installed) is a time length corresponding to the MN count. (For example, if one count is 1 second, MN seconds), if the time length is shorter than that of the first code or the second code, the same code is not duplicated during the use period. That is, when the count increases with the passage of time, when the user requests the QR
구체적으로, 알파벳 대문자와 0부터 9까지의 숫자를 코드에 포함이 가능한 문자로 사용(즉, 36개의 문자를 사용)하고, 제1코드와 제2코드에 각각 6자리를 할당하는 경우, QR코드생성장치(100)는 제1코드 및 제2코드로 366개의 코드를 제공할 수 있다. 이때, QR코드생성장치(100)는 각각의 코드를 각 카운트마다 매칭시켜서, 각 카운트마다 변경된 제1코드 및 제2코드를 제공할 수 있다.Specifically, if capital letters and numbers from 0 to 9 are used as characters that can be included in the code (i.e., 36 characters are used), and 6 digits are allocated to the first and second codes respectively, the QR code The generating
인증용가상코드의 중복생성을 방지하는 구체적인 다른 일 실시예로, QR코드생성장치(100)의 사용주기가 경과되면, 제1코드 또는 제2코드를 생성하는 함수(즉, 제1함수 또는 제2함수)를 변경하거나 제1코드와 제2코드의 매칭관계를 변경하여 이전 사용주기와 상이한 인증용가상코드가 생성되도록 한다. 인증용가상코드가 제1함수에 의해 생성되는 제1코드와 제2함수에 의해 생성되는 제2코드가 결합되는 경우, 제1코드생성함수 또는 제2코드생성함수가 변경되면, QR코드생성장치(100)는 제1코드 또는 제2코드가 등장하는 순서가 이전 사용주기와 달라짐에 따라 이전 주기와 상이한 인증용가상코드를 생성하는 인증용가상코드생성함수를 신규 사용주기에 적용할 수 있다. 또한, QR코드생성장치(100)는 이전 사용주기에서 사용된 인증용가상코드와 동일한 코드가 신규 사용주기 내 각 카운트의 인증용가상코드로 등장하지 않도록(즉, 제1함수에 따라 생성되는 제1코드와 제2함수에 따라 생성되는 제2코드의 매칭관계가 신규 사용주기의 모든 카운트에서 이전 사용주기 내에 포함된 매칭관계 중에 포함되지 않도록) 제1함수와 제2함수를 선택할 수 있다. 즉, MN 개의 코드를 1회씩 적용할 수 있는 사용주기를 경과한 후 인증용가상코드생성함수 조절 또는 갱신을 통해 이전 사용주기와 겹치는 인증용가상코드가 생성되지 않는 신규 사용주기의 인증용가상코드생성함수를 적용할 수 있다.As another specific embodiment of preventing duplicate generation of a virtual code for authentication, a function for generating a first code or a second code (i.e., a first function or a second code) when the use period of the QR
또한, 인증용가상코드의 중복생성을 방지하는 구체적인 또 다른 일 실시예로, 전체주기에서 사용자에 무관하게 중복된 인증용가상코드가 발생되지 않도록, 제1코드는 제1함수가 구동되는 초기시점으로부터 각 카운트마다 매칭된 코드 중에서 QR코드 생성요청이 된 시점(또는 카운트)에 대응되는 코드값으로 설정하고, 제2코드는 동일시점에 항상 상이하게 존재하는 값(예를 들어, UID)을 반영하여 생성되는 코드값으로 설정하고, 인증용가상코드를 상기 제1코드와 제2코드가 결합된 코드값으로 이용할 수 있다. 제1코드는 각 카운트마다 상이한 코드값이 되고 제2코드는 동일시점에 UID 마다 상이한 코드값을 가지게 되어서, 제1코드와 제2코드가 결합된 인증용가상코드는 모든 시점에 상이한 코드값이 출력되게 된다.In addition, as another specific embodiment that prevents duplicate generation of virtual codes for authentication, the first code is the initial point at which the first function is driven so that duplicate virtual codes for authentication are not generated regardless of the user in the entire cycle. From among the codes matched for each count, set as a code value corresponding to the time (or count) at which the QR code generation request was made, and the second code reflects a value (e.g., UID) that always exists differently at the same time. It is set as the generated code value, and the authentication virtual code can be used as a code value in which the first code and the second code are combined. The first code has a different code value for each count, and the second code has a different code value for each UID at the same time, so that the authentication virtual code combined with the first code and the second code has different code values at all times. Will be printed.
또한, 다른 일 실시예로, 상기 인증용가상코드생성함수(또는 세부코드생성함수)는, M개의 문자를 오름차순으로 나열하는 다수의 나열규칙 중 어느 하나가 적용된다. 즉, QR코드생성장치(100)는 인증용가상코드생성함수 내에 포함되는 세부코드생성함수에 M개 문자를 오름차순으로 나열하는 규칙을 다양하게 적용하여 할 수 있다. 예를 들어, 알파벳 대문자를 오름차순으로 나열하는 나열규칙은, 일반적인 순서인 A, B, C,…, Z 순서가 될 수 있고, A, C, B,…, Z 순서가 될 수도 있다. 인증용가상코드생성함수에서 나열규칙이 달라짐에 따라 인증용가상코드생성함수가 구동되는 초기시점부터 각 카운트에 차례대로 코드가 매칭되는 순서가 달라지게 된다. In another embodiment, as the authentication virtual code generation function (or detailed code generation function), any one of a plurality of enumeration rules for listing M characters in ascending order is applied. That is, the QR
QR코드생성부(130)는 QR코드 생성규칙에 따라 상술한 방식으로 생성된 인증용가상코드를 QR코드로 변환한다. 방문자 인증에 활용되는 QR코드생성장치(100)와 QR코드검증장치(200)는 동일한 QR코드 생성규칙을 포함할 수 있다. The QR code generation unit 130 converts the virtual code for authentication generated in the above-described manner into a QR code according to the QR code generation rule. The QR
QR코드제공부(140)는 생성된 QR코드를 출력하는 수단으로, QR코드생성장치(100)에 구비된 디스플레이일 수 있다.The QR code providing unit 140 is a means for outputting the generated QR code, and may be a display provided in the QR
도 4는 본 발명의 일 실시예에 따른 QR코드검증장치의 구성도이다.4 is a block diagram of a QR code verification device according to an embodiment of the present invention.
도 4를 참조하면, QR코드검증장치(200)는, 일 실시예로, QR코드를 검증하는 프로그램(즉, 애플리케이션)이 설치된 사용자 단말일 수 있다. QR코드검증장치(200)는 상술한 QR코드검증수단(20)이다. Referring to FIG. 4, the QR
도 4에 도시된 바와 같이, QR코드검증장치(200)는 QR코드수신부(210), 가상코드추출부(220), QR코드검증부(230), 가상코드저장부(240) 및 가상코드제공부(250)를 포함한다. As shown in Fig. 4, the QR
QR코드수신부(210)는 QR코드검증장치(200)에 구비된 카메라일 수 있다. 다만, 이에 한정되지 않고, QR코드수신부(210)는 인쇄된 QR코드 또는 디스플레이장치에 표시된 QR코드를 이미지화할 수 있는 광학장비를 포함할 수 있다. The QR code receiver 210 may be a camera provided in the QR
가상코드추출부(220)는 QR코드 이미지에서 QR코드를 인식하고, 인식된 QR코드를 인증용가상코드로 변환한다. 이를 위해, 가상코드추출부(220)는 QR코드생성장치(100)에 내장된 QR코드 생성규칙과 동일한 규칙을 포함할 수 있다. 이를 통해, 가상코드추출부(220)는 수신된 QR코드로부터 QR코드생성장치(100)에서 형성된 인증용가상코드와 동일한 인증용가상코드를 추출할 수 있다.The virtual code extraction unit 220 recognizes the QR code from the QR code image, and converts the recognized QR code into a virtual code for authentication. To this end, the virtual code extracting unit 220 may include the same rules as the QR code generation rule embedded in the QR
QR코드검증부(230)는 가상코드추출부(220)가 추출한 인증용가상코드가 정상적으로 형성된 코드인지 검증한다. 구체적으로, QR코드검증부(230)는 인증용가상코드에서 단위카운트마다 변경되는 가상보안코드(OTP)를 추출하고, 추출된 OTP가 QR코드를 수신한 시점으로부터 소정 카운트 이내에 형성된 가상보안코드인지 판단한다.The QR code verification unit 230 verifies whether the virtual code for authentication extracted by the virtual code extraction unit 220 is a normally formed code. Specifically, the QR code verification unit 230 extracts a virtual security code (OTP) that is changed for each unit count from the virtual code for authentication, and whether the extracted OTP is a virtual security code formed within a predetermined count from the time when the QR code is received. Judge.
일 실시 예에 있어서, 상기 인증용가상코드에서 추출되는 가상보안코드는 사용자에 관계없이 동일한 제1시드데이터에 의해 형성되며, 단위카운트마다 변경되는 제1가상보안코드일 수 있다. 제1가상보안코드는 모든 QR코드생성장치(100)에서 동일하게 형성되므로, 서로 다른 QR코드생성장치(100)가 동일한 시점에 제1가상보안코드를 형성하는 경우, 동일한 코드를 형성하게 된다. In an embodiment, the virtual security code extracted from the virtual code for authentication is formed by the same first seed data regardless of the user, and may be a first virtual security code that is changed for each unit count. Since the first virtual security code is formed identically in all QR
QR코드검증부(230)는 QR코드생성장치(100)에 구비된 가상보안코드생성함수와 동일한 함수를 구비할 수 있으며, QR코드가 수신된 시점으로부터 소정 카운트 이내의 가상보안코드를 생성한 후, 생성된 가상보안코드들 중 인증용가상코드에서 추출한 가상보안코드와 동일한 코드가 있는지 판단한다.The QR code verification unit 230 may have the same function as the virtual security code generation function provided in the QR
QR코드검증부(230)는 상기 생성된 가상보안코드들 중 인증용가상코드에서 추출한 가상보안코드와 동일한 코드가 있는 경우, QR코드가 정상인 것으로 판단한다. 일 실시 예에 있어서, QR코드검증장치(200)는 QR코드가 정상인 것으로 판단되는 경우 이를 안내하는 메시지를 출력할 수 있다. 관리자는 상기 메시지를 확인하고, 방문자의 출입을 허용할 수 있다.The QR code verification unit 230 determines that the QR code is normal if there is a code identical to the virtual security code extracted from the virtual code for authentication among the generated virtual security codes. In an embodiment, when it is determined that the QR code is normal, the QR
QR코드가 생성된 시점부터 소정 시간이 지난 후 QR코드검증장치(200)가 QR코드를 수신하는 경우, QR코드검증부(230)는 수신된 QR코드가 정상적으로 생성된 QR코드가 아닌것으로 판단하고, QR코드검증장치(200)가 경고 메시지를 출력하도록 할 수 있다. 관리자는 상기 경고 메시지를 확인하고 해당 방문자의 출입을 불허할 수 있다. When the QR
다른 일 실시 예에 있어서, 인증용가상코드가 QR코드생성 요청 시간 정보를 포함하는 경우, QR코드검증부(230)는 상기 시간 정보와 현재 시간을 비교하여 현재 시간이 상기 시간 정보에 대응하는 시점으로부터 소정 시간 내에 있는 경우에만 QR코드가 정상인 것으로 판단한다. In another embodiment, when the virtual code for authentication includes information on a request time for generating a QR code, the QR code verification unit 230 compares the time information with the current time, and the current time corresponds to the time information. It is judged that the QR code is normal only when it is within a predetermined time from.
다른 일 실시 예에 있어서, QR코드검증부(230)는 상기 시간 정보를 기반으로 가상보안코드를 생성한 후 인증용가상코드에서 추출한 가상보안코드와 동일한지 판단한다. QR코드검증부(230)는 상기 생성된 가상보안코드가 인증용가상코드에서 추출한 가상보안코드와 동일한 경우, QR코드가 정상인 것으로 판단한다.In another embodiment, the QR code verification unit 230 generates a virtual security code based on the time information and then determines whether it is the same as the virtual security code extracted from the authentication virtual code. When the generated virtual security code is the same as the virtual security code extracted from the virtual code for authentication, the QR code verification unit 230 determines that the QR code is normal.
일 실시 예에 있어서, QR코드검증장치(200)가 개폐장치와 연동되는 경우, QR코드검증장치(200)는 수신된 QR코드가 정상적으로 생성된 QR코드인 경우에만 개폐장치를 개방하고, QR코드가 비정상적으로 생성된 QR코드인 것으로 판단되는 경우, 개폐장치를 개방하지 않는다.In one embodiment, when the QR
상술한 바와 같이, 본 발명은 QR코드생성장치에서 생성된 QR코드가 유출되더라도 소정 시간이 지난후에는 사용할 수 없게되기 때문에, 타인이 유출된 QR코드를 이용하여 방문자 인증을 할 수 없도록 한다. As described above, according to the present invention, even if the QR code generated by the QR code generating device is leaked, it cannot be used after a predetermined period of time, so that other people cannot use the leaked QR code to authenticate visitors.
상술한 QR코드검증부(230)는 인증용가상코드에서 상기 제1가상보안코드를 추출하는 함수와 상기 제1가상보안코드를 생성하는 함수만 포함할 수 있다. 이에 따라, QR코드검증장치(200)는 QR코드가 정상적으로 생성된 코드인지만 판단할 뿐, QR코드로부터 어떠한 사용자 정보도 추출할 수 없다. 이를 통해, 본 발명은 QR코드검증장치(200)를 통해 사용자 정보가 유출되는 것을 방지할 수 있다.The above-described QR code verification unit 230 may include only a function for extracting the first virtual security code from the virtual code for authentication and a function for generating the first virtual security code. Accordingly, the QR
가상코드저장부(240)는 수신된 QR코드가 정상적으로 생성된 QR코드인 것으로 판단되는 경우, QR코드로부터 추출된 인증용가상코드와 QR코드 수신시점을 매칭시켜 저장한다. QR코드검증장치(200)가 복수의 방문자 인증을 수행할 경우, 가상코드저장부(240)는 복수의 인증용가상코드와 복수의 인증용가상코드 각각에 매칭되는 QR코드 수신시점을 저장하게 된다. When it is determined that the received QR code is a normally generated QR code, the virtual code storage unit 240 matches and stores the authentication virtual code extracted from the QR code with the QR code reception time point. When the QR
가상코드제공부(260)는 서버(30)가 요청할때마다 또는 일정 시간 간격마다 저장된 인증용가상코드 및 인증용가상코드에 매칭되어 저장된 QR코드 수신시점을 서버(30)로 전송한다. 또한, 가상코드제공부(260)는 QR코드를 검증하는 즉시 인증용가상코드 및 인증용가상코드에 매칭되어 저장된 QR코드 수신시점을 서버(30)로 전송할 수 있다.The virtual code providing unit 260 transmits to the server 30 the time of receiving the stored QR code matched with the virtual code for authentication and the virtual code for authentication stored whenever the server 30 requests or at predetermined time intervals. In addition, the virtual code providing unit 260 may transmit to the server 30 the time of receiving the stored QR code matched with the virtual code for authentication and the virtual code for authentication as soon as the QR code is verified.
도 5에 도시된 바와 같이, 서버(30 또는 300)는 가상코드수신부(310), 세부코드추출부(320), 가상코드검증부(330), 저장위치탐색부(330)를 포함한다. 서버(30)는 인증용가상코드를 기반으로 사용자 정보를 추출하고, 추출된 사용자 정보에 대응하는 저장위치를 탐색한 후 탐색된 사용자 정보에 사용자의 방문 장소 및 방문 시간을 매칭시켜 저장한다.As shown in FIG. 5, the
가상코드수신부(310)는 QR코드검증장치(200)로부터 인증용가상코드 및 QR코드 수신시점을 제공받는다. The virtual code receiving unit 310 receives a virtual code for authentication and a point of time of receiving the QR code from the QR
세부코드추출부(320)는 인증용가상코드에 포함된 하나 이상의 세부코드를 추출하는 역할을 수행한다. The detailed code extracting unit 320 serves to extract one or more detailed codes included in the virtual code for authentication.
일 실시예로, 세부코드추출부(320)는 인증용가상코드생성함수에 포함된 세부코드결합함수를 포함한다. 따라서, 인증용가상코드가 복수의 세부코드를 포함하는 경우, 세부코드추출부(220)는 세부코드결합함수를 적용하여 인증용가상코드에서 복수의 세부코드를 추출할 수 있다. 예를 들어, QR코드생성장치(100)에서 두 개의 세부코드(즉, 제1코드 및 제2코드)가 결합된 인증용가상코드를 생성하는 경우, 세부코드추출부(320)는 인증용가상코드의 문자배열에 세부코드결합함수를 적용하여 제1코드 및 제2코드를 분리해낼 수 있다.In one embodiment, the detailed code extracting unit 320 includes a detailed code combining function included in the authentication virtual code generation function. Accordingly, when the authentication virtual code includes a plurality of detailed codes, the detailed code extracting unit 220 may extract a plurality of detailed codes from the authentication virtual codes by applying the detailed code combining function. For example, in the case of generating a virtual code for authentication in which two detailed codes (ie, a first code and a second code) are combined in the QR
다른 일 실시 예에 있어서, QR코드생성장치(100)에서 세 개의 세부코드(즉, 제1코드, 제2코드 및 제1가상보안코드)가 결합된 인증용가상코드를 생성하는 경우, 세부코드추출부(320)는 인증용가상코드의 문자배열에 세부코드결합함수를 적용하여 제1코드, 제2코드 및 제1가상보안코드를 분리해낼 수 있다.In another embodiment, when the QR
저장위치탐색부(330)는 추출된 하나 이상의 세부코드를 기반으로 저장위치탐색알고리즘 내에 사용자 정보의 저장위치를 탐색하는 역할을 수행한다. 여기서, 저장위치탐색알고리즘은 QR코드생성장치(100)에서 인증용가상코드를 생성할 때 이용했던 인증용가상코드생성함수에 매칭되는 것이다. 저장위치탐색부(330)에서 각각의 세부코드를 기반으로 사용자 정보의 저장위치를 탐색하는 방식으로는 다양한 방식이 적용될 수 있다. 저장위치탐색부(330)가 복수의 세부코드를 기반으로 저장위치를 탐색하기 위해 세부코드 간에는 상관관계를 포함할 수 있다.The storage location search unit 330 serves to search for a storage location of user information in a storage location search algorithm based on the extracted one or more detailed codes. Here, the storage location search algorithm is matched to the authentication virtual code generation function used when generating the authentication virtual code in the QR
여기서, 저장위치는 사용자에 의해 가상코드생성수단(10)의 등록이 요청된 시점에 해당하는 트랙 상 지점(카운트)을 의미한다. 즉, 서버(30) 내에서 해당 QR코드생성수단(10)에 대한 트랙이 구동되고, 특정 시점에 특정 사용자에 의해 특정 사용자 정보(예를 들어, UID)의 등록이 요청되면, 해당 시점에 대응되는 카운트(즉, 트랙의 최종 구동시로부터 등록시점까지 경과된 카운트)에 해당 UID 가 등록되게 된다. 그리고 해당 UID 의 저장위치에는 다른 종류의 사용자 정보가 매칭되어 저장된다. 사용자 정보의 저장 형식에 대하여는 후술한다. Here, the storage location means a point (count) on the track corresponding to the time point at which the registration of the virtual code generating means 10 is requested by the user. That is, when the track for the QR code generating means 10 is driven in the server 30, and a specific user information (for example, UID) is requested to be registered by a specific user at a specific time, corresponding to the corresponding time. The corresponding UID is registered in the count (that is, the count that has elapsed from the time of the last driving of the track to the time of registration). In addition, other types of user information are matched and stored in the storage location of the corresponding UID. The storage format of user information will be described later.
본 명세서에서는 설명의 편의를 위하여 서버(30)가 인증용보안코드에서 추출하는 사용자 정보가 UID인 경우를 예로 들어 설명하나, 이에 한정되지 않고, 서버(30)는 인증용보안코드에서 다양한 종류의 사용자 정보를 추출할 수 있다.In this specification, for convenience of explanation, the case where the user information extracted from the authentication security code by the server 30 is a UID is described as an example, but the present specification is not limited thereto, and the server 30 provides various types of authentication security codes. User information can be extracted.
인증용가상코드가 제1코드 및 제2코드로 구성되는 경우, 세부코드 간에 상관관계를 가지는 일 실시예로, 저장위치탐색부(330)는 제1코드에 대응하는 탐색시작지점을 결정하고, 상기 탐색시작지점으로부터 제2코드에 상응하는 탐색경로에 따라 이동한 지점을 UID의 저장위치로 찾을 수 있다. 즉, 상기 세부코드는, 저장위치탐색의 시작지점을 설정하는 제1코드 및 특정한 탐색방식에 따라, 상기 시작지점으로부터 상기 UID의 저장위치로의 탐색경로를 설정하는 제2코드를 포함할 수 있다. When the authentication virtual code is composed of a first code and a second code, in an embodiment having a correlation between the detailed codes, the storage location search unit 330 determines a search start point corresponding to the first code, The point moved according to the search path corresponding to the second code from the search start point can be found as the storage location of the UID. That is, the detailed code may include a first code for setting a starting point of the storage location search and a second code for setting a search path from the starting point to the storage location of the UID according to a specific search method. .
또한, 다른 일 실시예로, QR코드생성장치(100)가 단위카운트마다 신규 인증용가상코드를 제공함에 따라, QR코드검증장치(200)는 각 카운트마다 변경되는 제1코드 및 제2코드를 기반으로 탐색시작지점과 탐색경로를 설정하여 UID의 저장위치를 탐색할 수 있다.In addition, in another embodiment, as the QR
또한, 다른 일 실시예로, 저장위치탐색부(330)는 상관관계를 가지는 복수의 세부코드를 이용하여 UID의 저장위치를 찾기 위해, 저장위치탐색알고리즘을 포함할 수 있다. 저장위치탐색알고리즘은 인증용가상코드에 포함되는 각각의 세부코드 적용 시에 저장위치 탐색이 가능하도록 하는 알고리즘으로서, QR코드생성장치(100)에서 인증용가상코드를 생성할 때 이용했던 인증용가상코드생성함수에 매칭되는 것이다. In addition, in another embodiment, the storage location search unit 330 may include a storage location search algorithm to find the storage location of the UID using a plurality of detailed codes having correlations. The storage location search algorithm is an algorithm that enables storage location search when each detailed code included in the authentication virtual code is applied, and the authentication virtual code used when generating the authentication virtual code in the
예를 들어, 인증용가상코드가 저장위치의 탐색시작지점을 결정하는 제1코드와 탐색시작지점으로부터의 저장위치 방향을 제시하는 제2코드를 포함하는 경우, 저장위치탐색알고리즘은 제1코드에 대응되는 지점에서 제2코드에 대응되는 방향을 지시할 때, 해당 위치에 UID의 등록 시점이 매칭되는 저장위치가 배치되도록 조절하는 알고리즘이다. For example, if the virtual code for authentication includes a first code that determines the search start point of the storage location and a second code that indicates the direction of the storage location from the search start point, the storage location search algorithm is in the first code. When a direction corresponding to the second code is indicated at a corresponding point, the storage location matching the registration time of the UID is arranged at the corresponding location.
저장위치탐색알고리즘을 이용함에 따라, 서버(30)는 인증용가상코드에 포함된 제1코드와 제2코드가 변경되어도 UID 저장위치를 탐색할 수 있다. 저장위치탐색알고리즘은 다양한 방식이 적용될 수 있으며, 구체적인 예시는 후술한다. 다만, 저장위치탐색알고리즘은 후술되는 예시에 한정되지 않는다.By using the storage location search algorithm, the server 30 can search the UID storage location even if the first code and the second code included in the authentication virtual code are changed. Various methods can be applied to the storage location search algorithm, and a specific example will be described later. However, the storage location search algorithm is not limited to the examples described later.
예를 들어, 도 8을 참조하면, 저장위치탐색알고리즘이 제1코드에 해당하는 MN개의 코드가 나열된 트랙을 따라 구름이동하는 k각형(k는 MN)이며, k각형의 꼭지점이 제1코드 트랙 상에 코드가 배치되는 지점에 대응되면서 이동하는 경우, k각형의 각 꼭지점이 UID의 저장위치와 매칭되고, 제1코드 트랙(즉, 제1트랙)과 k각형이 대응되는 지점이 제1코드에 대응하는 저장위치 탐색시작지점이 될 수 있다. 이때, 저장위치탐색부(330)는 세부코드추출부(220)에서 추출된 제1코드에 대응되는 지점에 k각형의 꼭지점이 접하도록 k각형을 구름이동할 수 있다. 이를 통해, 저장위치탐색부(330)는 k각형이 접한 제1트랙 상의 위치에서 제2코드에 상응하는 각도(예를 들어, k각형의 꼭지점을 향하도록 180도를 MN개로 분할한 특정한 각도)로 지시함에 따라, 인증용가상코드에 대응하는 UID가 저장된 저장위치인 k각형의 꼭지점을 탐색할 수 있다.For example, referring to FIG. 8, the storage location search algorithm is a k-corner (k is MN) in which clouds move along a track in which MN codes corresponding to the first code are listed, and the vertex of the k-corner is a first code track. When moving while corresponding to the point where the code is placed on the image, each vertex of the k-angle matches the storage location of the UID, and the point where the first code track (i.e., the first track) and the k-angle correspond to the first code It can be the starting point for searching the storage location corresponding to. In this case, the storage location search unit 330 may cloud-mov the k-angle so that a vertex of the k-angle is in contact with a point corresponding to the first code extracted from the detailed code extracting unit 220. Through this, the storage location search unit 330 is an angle corresponding to the second code at the position on the first track where the k-angle is in contact (for example, a specific angle divided by 180 degrees into MN to face the vertex of the k-angle) As indicated by, it is possible to search the vertex of the k-square, which is the storage location where the UID corresponding to the authentication virtual code is stored.
구체적으로, 도 8에서와 같이, 서버(30)는 제1코드에 대응하는 지점으로 k각형을 구름이동(즉, k각형의 각 꼭지점과 트랙 상의 각 지점이 차례대로 접하도록 하면서 이동)시킨다. 그 후, 서버(30)는 제2코드에 상응하는 각도 방향을 지시하여 저장위치에 상응하는 꼭지점을 탐색한다. Specifically, as shown in FIG. 8, the server 30 cloud moves the k-angle to a point corresponding to the first code (that is, moves while making each vertex of the k-angle and each point on the track contact in turn). After that, the server 30 searches for a vertex corresponding to the storage location by instructing the angular direction corresponding to the second code.
저장위치탐색부(330)에 의해 저장위치 탐색알고리즘 내에서 인증용가상코드 내의 제1코드 및 제2코드를 이용하여 UID의 저장위치가 탐색된 후에, 탐색된 저장위치에 사용자의 방문 장소 및 방문 시간을 매칭시켜 저장한다.After the storage location search unit 330 searches for the storage location of the UID using the first code and the second code in the authentication virtual code in the storage location search algorithm, the user's visit location and visit to the searched storage location Match the time and save it.
이외의 다양한 저장위치탐색알고리즘에 대한 상세한 설명은 후술한다.A detailed description of the other various storage location search algorithms will be described later.
가상코드검증부(340)는 QR코드 수신 시점과 인증용가상코드가 QR코드생성수단(즉, 사용자 단말)에서 인증용가상코드생성함수를 이용하여 생성된 시점을 비교하여, 인증용가상코드를 검증하는 역할을 수행한다. 즉, 가상코드검증부(340)는 QR코드검증부로부터 인증용가상코드를 수신한 시점을 기준으로 인증용가상코드의 유효성을 검증하는 것이 아니라, 인증용가상코드와 함께 수신한 QR코드 수신 시점을 기준으로 인증용가상코드의 유효성을 검증한다. The virtual code verification unit 340 compares the time when the QR code is received and the time when the authentication virtual code is generated using the authentication virtual code generation function in the QR code generation means (ie, the user terminal), and calculates the authentication virtual code. It plays the role of verifying. That is, the virtual code verification unit 340 does not verify the validity of the authentication virtual code based on the time when the authentication virtual code is received from the QR code verification unit, but when the QR code received together with the authentication virtual code is received. Based on, verify the validity of the virtual code for authentication.
일 실시예로, 도 10을 참조하면, 가상코드검증부(340)는 QR코드 수신 시점과 사용자 단말에 내장 또는 설치된 전용프로그램(11)에서 인증용가상코드생성함수를 이용하여 인증용가상코드가 생성된 시점을 비교하여, 생성 시점이 수신 시점으로부터 기 설정된 오차 범위 내에 포함된 경우 수신된 상기 인증용가상코드가 정상 코드인 것으로 판단할 수 있다.As an embodiment, referring to FIG. 10, the virtual code verification unit 340 uses the virtual code generation function for authentication at the time of receiving the QR code and in the dedicated program 11 embedded or installed in the user terminal. By comparing the generated time points, when the generation time point falls within a preset error range from the reception time point, it may be determined that the received authentication virtual code is a normal code.
또한, 인증용가상코드를 검증하는 방식에 대한 다른 일 실시예로, 제1코드 및 제2코드는 가상코드생성수단(10)에 의해 UID가 등록된 시점 또는 QR코드 생성 요청 시점으로부터 랜덤으로 생성되는 OTP코드만큼 부가된 기준 카운트에 대한 코드일 수 있다. In addition, as another embodiment of the method of verifying the virtual code for authentication, the first code and the second code are randomly generated from the time when the UID is registered or the time when the QR code generation is requested by the virtual code generation means 10 It may be a code for a reference count added as much as the OTP code to be used.
구체적인 실시예로, QR코드생성장치(100)가 가상보안코드를 외부로 출력하지 않고 제1코드 및 제2코드에 반영하여 생성한다. 인증용가상코드생성수단(예를 들어, 전용프로그램)은 UID(즉, 고유값)를 기반으로 가상보안코드값(예를 들어, OTP코드)를 생성하고, UID 등록시점에 가상보안코드값을 더한 카운트의 제1코드를 생성하고, 가상보안코드값에 대응되는 카운트의 제2코드를 생성(즉, 가상보안코드 자체를 제2코드로 생성)한다. 즉, 제1코드 및 제2코드는 QR코드생성장치(100)에 의해 UID가 서버(30)에 등록된 A시점으로부터 가상보안코드값만큼 이동(shifting)된 카운트를 기반으로 생성된다. A시점으로부터 이동(Shifting)된 카운트는 생성되는 가상보안코드 값에 따라 현재시점에 대응하는 카운트보다 이전 카운트가 될 수도 있고, 이후 카운트가 될 수도 있다. 서버(30)는 수신된 제1코드와 제2코드를 저장위치탐색알고리즘에 적용하여 UID 저장위치(또는 등록위치)를 탐색할 수 있다. 이를 통해, 타인이 인증용가상코드를 구성하는 제1코드 및 제2코드가 제공되는 순서를 확인할 수 없게 되어, 보안성이 향상될 수 있다.In a specific embodiment, the QR
또한, 다른 일 실시예로, 서버(30)는 가상보안코드를 기반으로 생성된 제2코드에서 가상보안코드를 추출한 후, 가상보안코드생성함수(즉, OTP함수)를 인증용가상코드를 수신한 카운트로부터 특정범위 내의 카운트를 입력하여 산출된 OTP번호 중에 가상보안코드와 일치하는 값이 있는지 여부를 확인한다. 서버(30)는 제2코드에 제2함수의 역함수를 적용하여 제2코드 생성에 이용된 가상보안코드값(즉, OTP함수값)을 획득하고, 가상보안코드값과 동일한 값을 산출하는 카운트를 찾아낸다. 인증용가상코드의 전송시간이나 딜레이에 의해 인증용가상코드생성수단에서 가상보안코드가 생성된 시점과 QR코드검증수단이 QR코드를 수신한 시점의 차이가 존재함에 따라 QR코드검증수단이 QR코드를 수신한 카운트와 가상보안코드에 해당하는 OTP번호를 생성한 카운트가 일치하지 않을 수도 있으므로, 서버(30)는 QR코드를 수신한 카운트로부터 오차범위를 허용한다. 이를 통해, 서버(30)는 정상적인 방법으로 형성된 인증용가상코드를 선별할 수 있어 보안성이 향상될 수 있다. In addition, in another embodiment, the server 30 extracts the virtual security code from the second code generated based on the virtual security code, and then receives the virtual code for authentication with a virtual security code generation function (ie, OTP function). It is checked whether there is a value that matches the virtual security code among the calculated OTP numbers by entering a count within a specific range from one count. The server 30 obtains the virtual security code value (that is, the OTP function value) used to generate the second code by applying the inverse function of the second function to the second code, and calculates the same value as the virtual security code value. I find it. As there is a difference between the time when the virtual security code is generated in the virtual code generation means for authentication and the time when the QR code verification means receives the QR code due to the transmission time or delay of the virtual code for authentication, the QR code verification means is the QR code. Since the count received from and the count generated by the OTP number corresponding to the virtual security code may not match, the server 30 allows an error range from the count receiving the QR code. Through this, the server 30 can select a virtual code for authentication formed by a normal method, so that security can be improved.
또한, 다른 일 실시예로, 도 9를 참조하면, 서버(30)는 방문자 인증이 요청된 시점(또는 QR코드 수신 시점)(B시점)에 UID를 더한 카운트에 대응하는 제1코드를 생성하고, UID 등록시점(A시점)과 사용자인증요청시점(B시점) 간의 카운트 차이와 가상보안코드값을 더한 카운트에 대응하는 제2코드를 생성한다. 즉, 인증용가상코드생성 전용프로그램이 제1코드와 제2코드를 생성하는 수식은 다음과 같다.In addition, as another embodiment, referring to FIG. 9, the server 30 generates a first code corresponding to the count of adding the UID to the time at which the visitor authentication is requested (or the time at which the QR code is received) (time B), and , A second code corresponding to the count difference between the UID registration time (time A) and the user authentication request time (time B) plus the virtual security code value is generated. That is, the formula for generating the first code and the second code by the dedicated program for generating a virtual code for authentication is as follows.
제1코드 = f1(B시점 카운트 + 가상보안코드)1st code = f1 (B time point count + virtual security code)
제2코드 = f2(B시점 카운트 - A시점 카운트 + 가상보안코드)Second code = f2 (Time B count-Time A count + virtual security code)
(A시점: UID 등록시점, B시점: 사용자인증요청시점의 카운트, 가상보안코드: OTP번호)(Point A: UID registration point, point B: count of user authentication request point, virtual security code: OTP number)
서버(30)는 수신한 인증용가상코드 내의 제1코드 및 제2코드를 기반으로 UID가 저장된 위치를 탐색하고, 이를 기반으로 방문자 인증요청 수신시점으로부터 특정카운트 범위 내의 가상보안코드(즉, OTP번호)를 생성한다. The server 30 searches for the location where the UID is stored based on the first code and the second code in the received authentication virtual code, and based on this, a virtual security code within a specific count range from the time of receiving the visitor authentication request (i.e., OTP Number).
그 후, 서버(30)는 제1코드 및 제2코드를 기반으로 사용자 정보가 저장된 지점을 탐색함에 따라 UID 등록시점(A시점)을 파악한다. 서버(30)는 UID 등록시점(A시점)으로부터 사용자인증요청 수신시점을 기준으로 특정카운트범위 내의 각각의 카운트까지의 카운트 개수와 가상보안코드(즉, OTP번호)의 합에 해당하는 계산값을 각각 산출하고, 상기 각각의 계산값 중에 제2코드에 대응하는 카운트수(즉, 제2코드에 제2함수의 역함수를 적용한 값)와 같은 카운트가 존재하는지 확인한다. 이를 통해, 서버(30)는 인증용가상코드가 정상적으로 제공된 것인지 확인할 수 있다.Thereafter, the server 30 finds the UID registration time (point A) by searching for the point where the user information is stored based on the first code and the second code. The server 30 calculates a calculated value corresponding to the sum of the number of counts and the virtual security code (i.e., OTP number) within a specific count range from the UID registration time (point A) to the user authentication request reception time. Each is calculated, and it is checked whether there is a count equal to the number of counts corresponding to the second code (ie, a value obtained by applying the inverse function of the second function to the second code) among the calculated values. Through this, the server 30 can check whether the virtual code for authentication is normally provided.
서버(30)는 인증용가상코드가 정상적으로 제공된 것으로 확인되는 경우, 인증용가상코드로부터 추출된 저장위치에 QR코드검증장치(200)로부터 수신된 QR코드 수신 시점(방문 시간) 및 QR코드검증장치(200)에 대응하는 위치 정보(방문 장소)를 매칭시켜 저장한다. 이에 따라, 특정 사용자가 특정 장소에 위치한 QR코드검증장치(200)를 통해 방문자 인증을 수행하는 경우, 상기 특정 사용자 정보, 위치 정보 및 방문 시간이 서버에 저장된다. When it is confirmed that the virtual code for authentication is normally provided, the server 30 receives the QR code received from the QR
한편, 상기 서버(30)는 복수의 서버로 이루어질 수 있다. 상기 특정 사용자 정보, 위치 정보 및 방문 시간은 복수의 서버에 블록체인으로 저장될 수 있다. 이를 통해, 타인이 방문자 기록을 조작하는 것을 방지할 수 있다. Meanwhile, the server 30 may be formed of a plurality of servers. The specific user information, location information, and visit time may be stored in a plurality of servers in a block chain. Through this, it is possible to prevent others from manipulating the visitor record.
한편, 상기 서버(30)는 저장위치탐색부(330)가 포함된 하드웨어와 사용자 정보 저장위치가 물리적으로 분리되도록 할 수 있다. 이를 통해, 본 발명은 개인정보가 유출될 가능성을 낮춘다.Meanwhile, the server 30 may physically separate the hardware including the storage location search unit 330 from the user information storage location. Through this, the present invention reduces the possibility of leakage of personal information.
구체적인 실시 예로, 서버(30)는 서로 분리된 저장서버 및 검증서버로 이루어질 수 있다. 이러한 경우, 가상코드수신부(310)는 저장서버에 포함되며, 세부코드추출부(320), 가상코드검증부(330) 및 저장위치탐색부(330)는 검증서버에 포함될 수 있다. In a specific embodiment, the server 30 may be formed of a storage server and a verification server separated from each other. In this case, the virtual code receiving unit 310 is included in the storage server, and the detailed code extracting unit 320, the virtual code verifying unit 330, and the storage location searching unit 330 may be included in the verification server.
저장서버는 인증용가상코드 및 QR코드 수신시점을 저장할 뿐, 사용자 정보를 저장하지 않으며, 인증용가상코드로부터 사용자 정보를 추출할 수 없다. 저장서버와 검증서버는 서로 통신가능하도록 이루어지며, 저장서버는 사용자 요청에 따라 특정 시간 및/또는 특정 장소에서 수집된 인증용가상코드 및 QR코드 수신시간을 검증서버로 송신한다. 이때, 필요에 따라, 인증용가상코드에 대응하는 위치 정보, QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈에 대응하는 고유값이 함께 검증서버로 전송될 수 있다. The storage server only stores the virtual code for authentication and the point at which the QR code is received, does not store user information, and cannot extract user information from the virtual code for authentication. The storage server and the verification server are configured to communicate with each other, and the storage server transmits a virtual code for authentication and a QR code reception time collected at a specific time and/or at a specific place according to a user request to the verification server. At this time, if necessary, location information corresponding to the virtual code for authentication, the serial number of the QR
검증서버는 사용자 정보를 저장하고, 인증용가상코드 검증알고리즘을 포함한다. 검증서버는 저장서버로부터 인증용가상코드 및 QR코드 수신시점을 수신한 후, 인증용가상코드를 검증하고, 인증용가상코드로부터 사용자 정보를 추출하여 저장한다. The verification server stores user information and includes a virtual code verification algorithm for authentication. The verification server receives the authentication virtual code and the QR code reception point from the storage server, verifies the authentication virtual code, and extracts and stores user information from the authentication virtual code.
상술한 바와 같이, 방문자가 특정 장소 방문시 제시한 인증용가상코드는 저장서버에만 저장되고, 방문자의 사용자 정보는 검증서버에만 저장된다. 이를 통해, 본 발명은 개인정보 유출을 방지한다. As described above, the authentication virtual code presented when a visitor visits a specific place is stored only in the storage server, and the visitor's user information is stored only in the verification server. Through this, the present invention prevents leakage of personal information.
한편, QR코드검증장치(200)에 대응하는 위치 정보는 저장서버 및 검증서버 중 적어도 하나에 저장될 수 있다.Meanwhile, the location information corresponding to the QR
일 실시 예에 있어서, QR코드검증장치(200)에 대응하는 위치 정보는 검증서버에만 저장되고, 저장서버는 QR코드검증장치(200)로부터 인증용가상코드를 수신할 때, QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈에 대응하는 고유값을 수신하여 인증용가상코드와 매칭시켜 저장한다. In one embodiment, the location information corresponding to the QR
한편, QR코드검증모듈은 검증서버에 등록되며, QR코드검증모듈을 검증서버에 초기 등록 시 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값과 QR코드검증장치(200)의 위치 정보가 검증서버로 전송되며, 검증서버는 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값과 QR코드검증장치(200)의 위치 정보를 매칭시켜 저장한다.On the other hand, the QR code verification module is registered in the verification server, and when the QR code verification module is initially registered in the verification server, the serial number of the QR
사용자가 특정 장소에서 수집된 인증용가상코드를 요청하는 경우, 검증서버는 특정 장소에 대응하는 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값을 탐색하고, 탐색된 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값을 저장서버로 송신한다. 저장서버는 수신한 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값에 대응하는 인증용가상코드 및 QR코드 수신시점을 검증서버로 송신한다.When a user requests a virtual code for authentication collected in a specific place, the verification server searches the serial number of the QR
한편, 사용자가 특정 시간 범위에 수집된 인증용가상코드를 요청하는 경우, 저장서버는 특정 시간 범위에 해당하는 QR코드 수신 시점을 탐색하고, 탐색된 QR코드 수신 시점 및 이에 대응하는 인증용가상코드를 검증서버로 송신한다.On the other hand, when a user requests a virtual code for authentication collected in a specific time range, the storage server searches for the time of receiving the QR code corresponding to the specific time range, and the time when the searched QR code is received and the corresponding authentication virtual code Is sent to the verification server.
한편, 사용자가 특정 시간 범위 및 특정 장소에서 수집된 인증용가상코드를 요청하는 경우, 검증서버는 특정 장소에 대응하는 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값을 탐색하고, 탐색된 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값을 저장서버로 송신한다. 이후, 저장서버는 수신한 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값에 대응하는 인증용가상코드를 탐색한 후, 탐색된 인증용가상코드들 중에서 특정 시간 범위에 대응하는 QR코드 수신 시점이 매칭된 인증용가상코드를 추출한다. 이후, 저장서버는 추출된 인증용가상코드 및 이에 대응하는 QR코드 수신 시점을 검증서버로 송신한다.On the other hand, when a user requests a virtual code for authentication collected in a specific time range and in a specific place, the verification server searches the serial number of the QR
다른 일 실시 예에 있어서, QR코드검증장치(200)에 대응하는 위치 정보는 저장서버에만 저장되고, 저장서버는 QR코드검증장치(200)로부터 인증용가상코드를 수신할 때, QR코드검증장치(200)에 대응하는 위치 정보를 인증용가상코드와 매칭시켜 저장한다.In another embodiment, the location information corresponding to the QR
이 경우, QR코드검증모듈은 저장서버에 등록되며, QR코드검증모듈을 저장서버에 초기 등록 시 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값과 QR코드검증장치(200)의 위치 정보가 저장서버로 전송되며, 저장서버는 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값과 QR코드검증장치(200)의 위치 정보를 매칭시켜 저장한다.In this case, the QR code verification module is registered in the storage server, and when the QR code verification module is initially registered in the storage server, the serial number of the QR
사용자가 특정 장소에서 수집된 인증용가상코드를 요청하는 경우, 저장서버는 특정 장소에 대응하는 인증용가상코드를 탐색하고, 탐색된 인증용가상코드, 인증용가상코드에 대응하는 QR코드 수신시점 및 인증용가상코드에 대응하는 위치정보를 검증서버로 송신한다.When a user requests a virtual code for authentication collected in a specific place, the storage server searches for a virtual code for authentication corresponding to the specific place, and when the searched virtual code for authentication and the QR code corresponding to the virtual code for authentication are received. And location information corresponding to the virtual code for authentication is transmitted to the verification server.
한편, 사용자가 특정 시간 범위에 수집된 인증용가상코드를 요청하는 경우, 저장서버는 특정 시간 범위에 해당하는 QR코드 수신 시점을 탐색하고, 탐색된 QR코드 수신 시점 및 이에 대응하는 인증용가상코드와 위치 정보를 검증서버로 송신한다.On the other hand, when a user requests a virtual code for authentication collected in a specific time range, the storage server searches for the time of receiving the QR code corresponding to the specific time range, and the time when the searched QR code is received and the corresponding authentication virtual code And the location information are sent to the verification server.
한편, 사용자가 특정 시간 범위 및 특정 장소에서 수집된 인증용가상코드를 요청하는 경우, 저장서버는 특정 시간 범위에 해당하는 QR코드 수신 시점 및 특정 장소에 대응하는 위치 정보가 함께 매칭되어 저장된 인증용가상코드를 탐색하고, 탐색된 인증용가상코드와 이에 대응하는 위치 정보 및 QR코드 수신 시점을 검증서버로 송신한다.On the other hand, when a user requests a virtual code for authentication collected in a specific time range and in a specific place, the storage server matches the QR code reception time corresponding to the specific time range and the location information corresponding to the specific place, and stores the authentication. The virtual code is searched, and the searched authentication virtual code, location information corresponding thereto, and the time of receiving the QR code are transmitted to the verification server.
여기서, 상기 위치 정보는 QR코드검증모듈을 저장서버 또는 검증서버에 등록할 때 사용자로부터 입력받은 정보이거나, QR코드검증장치(200)에 구비된 GPS정보수집부로부터 수집된 GPS정보일 수 있다. QR코드검증장치(200)가 저장서버 또는 검증서버에 등록된 후에도 QR코드검증장치(200)의 위치가 변경될 경우, QR코드검증장치(200)의 위치 정보를 갱신할 수 있다.Here, the location information may be information input from a user when registering the QR code verification module in a storage server or a verification server, or GPS information collected from a GPS information collection unit provided in the QR
도 6은 본 발명의 일 실시예에 따른 QR코드 검증 방법의 순서도이다.6 is a flowchart of a QR code verification method according to an embodiment of the present invention.
도 6을 참조하면, 본 발명의 일 실시예에 따른 방문자 관리 방법은, QR코드검증모듈(QR코드검증수단(20))이 QR코드생성모듈(QR코드생성수단(10))로부터 생성된 QR코드를 수신하는 QR코드수신단계(S110), QR코드검증모듈이 상기 QR코드에서 인증용가상코드를 추출하는 단계(S120), QR코드검증모듈이 상기 QR코드가 수신된 시점 및 상기 인증용가상코드를 기반으로 QR코드를 검증하는 단계(S130), QR코드검증모듈이 상기 QR코드가 수신된 시점 및 상기 인증용가상코드를 매칭시켜 저장하는 단계(S140)를 포함한다. 이하, 각 단계에 대한 상세한 설명을 기재한다. 다만, QR코드생성장치(100)(즉, QR코드생성수단(10)이 포함된 사용자 단말) 및 QR코드검증장치(200)(즉, QR코드검증수단(20)이 포함된 사용자 단말)에 대한 설명 과정에서 상술된 내용에 대한 구체적인 개시는 생략한다.6, the visitor management method according to an embodiment of the present invention, a QR code verification module (QR code verification means 20) is a QR code generated from the QR code generation module (QR code generation means 10) QR code receiving step of receiving a code (S110), QR code verification module extracting a virtual code for authentication from the QR code (S120), QR code verification module when the QR code is received and the authentication virtual Verifying the QR code based on the code (S130), and a step (S140) of matching and storing, by the QR code verification module, the time when the QR code is received and the virtual code for authentication. Hereinafter, a detailed description of each step will be described. However, in the QR code generation device 100 (ie, the user terminal including the QR code generation unit 10) and the QR code verification device 200 (ie, the user terminal including the QR code verification unit 20) In the description process, detailed disclosure of the above-described contents will be omitted.
일 실시 예에 있어서, 관리자는 검증프로그램(12)을 실행하여 QR코드수신기능을 실행한다. 이에 따라, 검증프로그램(12)이 설치된 장치에 포함된 카메라가 활성화되어 QR코드를 촬영할 수 있게 된다.In one embodiment, the administrator executes the verification program 12 to execute the QR code receiving function. Accordingly, the camera included in the device in which the verification program 12 is installed is activated to take a QR code.
다른 일 실시 예에 있어서, 방문자 인증이 비대면으로 수행되는 경우, 검증프로그램(12)은 방문자에 의해 실행될 수 있다. 방문자가 QR코드검증장치(200)에 방문자 인증 요청을 하면 검증프로그램(120)은 카메라를 활성화시켜 QR코드를 촬영할 수 있도록 한다.In another embodiment, when the visitor authentication is performed non-face-to-face, the verification program 12 may be executed by the visitor. When a visitor requests a visitor authentication to the QR
이후, QR코드검증모듈이 상기 QR코드에서 인증용가상코드를 추출하고, QR코드가 수신된 시점 및 상기 인증용가상코드를 기반으로 QR코드를 검증한다. 구체적으로, QR코드검증모듈은 QR코드 수신 시점이 QR코드 생성 시점으로부터 소정 시간 이내에 있는 경우에만 QR코드가 정상인 것으로 판단한다.Thereafter, the QR code verification module extracts the virtual code for authentication from the QR code, and verifies the QR code based on the time when the QR code is received and the virtual code for authentication. Specifically, the QR code verification module determines that the QR code is normal only when the time when the QR code is received is within a predetermined time from the time when the QR code is generated.
일 실시 예에 있어서, QR코드검증모듈은 QR코드생성모듈에 구비된 가상보안코드생성함수와 동일한 함수를 구비할 수 있으며, QR코드가 수신된 시점으로부터 소정 카운트 이내의 가상보안코드를 생성한 후, 생성된 가상보안코드들 중 인증용가상코드에서 추출한 가상보안코드와 동일한 코드가 있는지 판단한다.In one embodiment, the QR code verification module may have the same function as the virtual security code generation function provided in the QR code generation module, and after generating a virtual security code within a predetermined count from the time when the QR code is received, , It is determined whether there is a code identical to the virtual security code extracted from the virtual code for authentication among the generated virtual security codes.
생성된 가상보안코드들 중 인증용가상코드에서 추출한 가상보안코드와 동일한 코드가 있는 경우, QR코드검증모듈은 상기 수신된 QR코드가 정상적으로 생성된 QR코드인 것으로 판단한다.If there is a code identical to the virtual security code extracted from the virtual security code for authentication among the generated virtual security codes, the QR code verification module determines that the received QR code is a normally generated QR code.
이후, QR코드검증모듈은 상기 QR코드 수신 시점 및 상기 인증용가상코드를 매칭시켜 저장한다. 상기 저장된 QR코드 수신 시점 및 인증용가상코드는 서버의 요청이 있거나, 일정 시간간격으로 서버로 송신된다. Thereafter, the QR code verification module matches and stores the QR code reception time point and the authentication virtual code. The stored QR code reception point and the authentication virtual code are transmitted to the server at a request from the server or at predetermined time intervals.
도 7은 본 발명의 일 실시예에 따른 방문자 관리 방법을 나타내는 순서도이다.7 is a flow chart illustrating a visitor management method according to an embodiment of the present invention.
도 7을 참조하면, 본 발명의 일 실시예에 따른 방문자 관리 방법은, QR코드검증모듈이 서버로 복수의 인증용가상코드 및 상기 복수의 인증용가상코드 각각에 매칭되어 저장된 QR코드 수신 시점을 전송하는 단계(S210); 서버가 상기 복수의 인증용가상코드 각각에서 적어도 하나의 세부코드를 추출하는 단계(S220); 서버가 상기 적어도 하나의 세부코드에 기반하여, 상기 복수의 인증용가상코드 각각에 대응하는 사용자 정보의 저장위치를 탐색하는 단계(S230); 상기 위치 정보를 상기 사용자 정보에 매칭시켜 저장하는 단계(S240)를 포함한다. 다만, QR코드검증장치(200)(즉, QR코드검증수단(20)이 포함된 사용자 단말) 및 서버(30)에 대한 설명 과정에서 상술된 내용에 대한 구체적인 개시는 생략한다.Referring to FIG. 7, in the visitor management method according to an embodiment of the present invention, a QR code verification module determines a time when a QR code verification module is matched to each of a plurality of authentication virtual codes and the plurality of authentication virtual codes to receive a stored QR code. Transmitting (S210); Extracting at least one detail code from each of the plurality of authentication virtual codes (S220); A step (S230) of searching, by a server, a storage location of user information corresponding to each of the plurality of virtual codes for authentication based on the at least one detailed code (S230); And matching and storing the location information with the user information (S240). However, in the process of describing the QR code verification device 200 (ie, the user terminal including the QR code verification means 20) and the server 30, detailed disclosure of the above-described contents will be omitted.
단계 S210에서, 서버(30)는 복수의 QR코드검증모듈로부터 복수의 인증용가상코드 및 상기 복수의 인증용가상코드 각각에 매칭되어 저장된 QR코드 수신 시점을 수신한다.In step S210, the server 30 receives a plurality of authentication virtual codes from a plurality of QR code verification modules and a time point of receiving a stored QR code matched to each of the plurality of authentication virtual codes.
일 실시 예에 있어서, 서버(30)는 복수의 QR코드검증모듈 각각으로부터 QR코드검증모듈에 대응하는 위치 정보를 함께 수신할 수 있다. 서버(30)는 수신된 위치 정보를 후술할 사용자 정보 저장위치에 매칭시켜 저장할 수 있다. QR코드검증모듈은 관리자로부터 입력받은 위치 정보를 서버(30)로 송신하거나, QR코드검증장치(200)에 구비된 GPS정보수집부로부터 수집된 GPS정보를 서버(30)로 송신할 수 있다.In an embodiment, the server 30 may simultaneously receive location information corresponding to the QR code verification module from each of the plurality of QR code verification modules. The server 30 may match and store the received location information with a user information storage location to be described later. The QR code verification module may transmit location information input from an administrator to the server 30 or may transmit GPS information collected from a GPS information collection unit provided in the QR
다른 일 실시 예에 있어서, 서버(30)는 복수의 QR코드검증모듈 각각으로부터 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈에 대응하는 고유값을 함께 수신할 수 있다. 서버(30)는 상기 일련번호 또는 고유값을 통해 QR코드검증모듈 각각의 위치 정보를 탐색할 수 있다.In another embodiment, the server 30 may receive a serial number of the QR
구체적으로, QR코드검증모듈을 서버(30)에 초기 등록 시 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값과 QR코드검증장치(200)의 위치정보가 서버(30)로 전송되며, 서버(30)는 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값과 QR코드검증장치(200)의 위치 정보를 매칭시켜 저장한다. 서버(30)는 QR코드검증장치(200)의 일련번호 또는 QR코드검증모듈의 고유값을 이용하여 위치 정보를 탐색할 수 있다.Specifically, when the QR code verification module is initially registered with the server 30, the serial number of the QR
여기서, 상기 위치 정보는 QR코드검증모듈을 서버(30)에 등록할 때 사용자로부터 입력받은 정보이거나, QR코드검증장치(200)에 구비된 GPS정보수집부로부터 수집된 GPS정보일 수 있다. QR코드검증장치(200)가 서버(30)에 등록된 후에도 QR코드검증장치(200)의 위치가 변경될 경우, QR코드검증장치(200)의 위치 정보를 갱신할 수 있다. Here, the location information may be information input from a user when registering the QR code verification module with the server 30 or may be GPS information collected from a GPS information collection unit provided in the QR
이후, S220에서, 서버(30)는 인증용가상코드에서 적어도 하나의 세부코드를 추출하고, S230에서, 상기 적어도 하나의 세부코드에 기반하여, 상기 복수의 인증용가상코드 각각에 대응하는 사용자 정보의 저장위치를 탐색한다.Thereafter, in S220, the server 30 extracts at least one detailed code from the authentication virtual code, and in S230, based on the at least one detailed code, user information corresponding to each of the plurality of authentication virtual codes Search the storage location of.
일 실시예에 따라, 인증용가상코드가 제1코드와 제2코드의 결합으로 생성된 경우, 서버(30)는 제1코드와 제2코드를 이용하여 저장위치탐색알고리즘 내에서 UID 저장위치를 탐색하게 된다. 예를 들어, 제1코드는 저장위치탐색알고리즘 내에서 UID의 저장위치탐색의 시작지점을 설정하는 코드이고, 제2코드는 특정한 탐색방식에 따라 시작지점으로부터 UID 저장위치로의 탐색경로를 설정하는 코드일 수 있다.According to an embodiment, when the authentication virtual code is generated by combining the first code and the second code, the server 30 uses the first code and the second code to determine the UID storage location in the storage location search algorithm. You will explore. For example, the first code is a code that sets the starting point of the UID storage location search within the storage location search algorithm, and the second code sets the search path from the starting point to the UID storage location according to a specific search method. It could be code.
도 8에 도시된 바와 같이, 서버(30)는 제1코드에 대응하는 위치를 시작지점으로 설정하고, 제2코드에 적용된 탐색방식에 따라 제2코드를 기반으로 k각형의 배치상태에서의 UID 저장위치에 매칭된 지점(즉, k각형의 특정한 꼭지점)을 탐색한다. 저장위치는 k각형의 각각의 꼭지점에 매칭된다. 제1코드 트랙(즉, 제1트랙)과 k각형이 대응되는 지점이 제1코드에 대응하는 저장위치 탐색시작지점이 된다. 서버(30)는 탐색시작지점에서 제2코드를 기반으로 UID 저장위치의 매칭지점을 탐색한다.As shown in Fig. 8, the server 30 sets the location corresponding to the first code as a starting point, and according to the search method applied to the second code, based on the second code, the UID in the k-shaped arrangement state Searches for a point matched to the storage location (that is, a specific vertex of a k-square). The storage location is matched to each vertex of the k-square. The point where the first code track (ie, the first track) and the k-shape correspond to the first code is the starting point for searching the storage location corresponding to the first code. The server 30 searches for a matching point of the UID storage location based on the second code at the search start point.
제2코드를 기반으로 k각형에서 저장위치를 탐색하는 방식으로는 다양한 방식이 적용될 수 있다. 일 예로, 서버(30)는 k각형이 접한 제1트랙 상의 위치에서 제2코드에 상응하는 각도(예를 들어, k각형의 꼭지점을 향하도록 180도를 MN개로 분할한 특정한 각도)로 지시함에 따라, 인증용가상코드를 기반으로 UID가 저장된 저장위치인 k각형의 꼭지점을 탐색할 수 있다.Various methods can be applied as a method of searching for a storage location in a k-angle based on the second code. As an example, the server 30 indicates an angle corresponding to the second code at a position on the first track where the k-angle is in contact (for example, a specific angle divided by MN by 180 degrees to face the vertices of the k-angle). Accordingly, based on the virtual code for authentication, it is possible to search the vertex of the k-angle, which is the storage location where the UID is stored.
또한, 다른 예로, k각형이 제1트랙 상의 제1코드에 대응하는 지점에 접한 상태에서, 서버(30)는 k각형의 중심과 제1트랙 상의 접점을 기준으로, 전체 중심각(즉, 360도)을 MN개로 분할하고, 각각의 각도를 MN개의 제2코드에 매칭한다. 이때, k각형의 중심과 제1트랙 상의 접점을 이은 선으로부터 특정개수의 단위각도(즉, 360도/MN)를 이동한 선의 방향은 k각형의 특정한 꼭지점이 된다. 따라서, 특정한 각도에 대응하는 제2코드가 수신되면, 서버(30)는 해당 각도 방향에 위치한 꼭지점을 탐색할 수 있다.In addition, as another example, in a state in which the k-angle is in contact with the point corresponding to the first code on the first track, the server 30 is based on the center of the k-angle and the contact point on the first track, ) Is divided into MN and each angle is matched to MN second codes. At this time, the direction of the line moving a specific number of unit angles (ie, 360 degrees/MN) from the line connecting the center of the k-angle and the contact point on the first track becomes a specific vertex of the k-angle. Accordingly, when a second code corresponding to a specific angle is received, the server 30 may search for a vertex located in the corresponding angle direction.
또한, 다른 예로, 제2코드의 특정 자리를 각도산출 방향을 결정하는 것으로 사용할 수 있다. 즉, N개(N은 자연수)의 문자를 이용하여 제2코드를 생성하는 경우, 1개의 자리(Digit)로 각도 측정방향을 결정할 수 있다. 예를 들어, 서버(30)는 k각형의 중심과 제1트랙 상의 접점을 기준으로, 전체 중심각(즉, 360도)을 분할하여 각각의 각도에 제2코드를 매칭하는 경우, k각형의 중심과 제1트랙 상의 접점을 이은 선으로부터 좌측 방향으로 측정되는 각도인지 우측 방향으로 측정되는 각도인지를 1개의 자리(Digit)의 값으로 결정할 수 있다. In addition, as another example, a specific position of the second code may be used to determine the angle calculation direction. That is, when the second code is generated using N characters (N is a natural number), the angle measurement direction can be determined with one digit. For example, the server 30 divides the entire central angle (i.e., 360 degrees) based on the center of the k-angle and the contact point on the first track and matches the second code to each angle, the center of the k-angle The angle measured in the left direction or the right direction from the line connecting the contact point on the and the first track may be determined as a value of one digit.
일 예로, 저장위치탐색알고리즘은, k각형 상의 각 꼭지점에 각도 측정방향에 따라 다른 2개의 제2코드가 하나의 꼭지점에 배정할 수 있다. 즉, 하나의 꼭지점에 내각으로 도달 시와 외각으로 도달 시에 다른 제2코드와 매칭되고, 다른 UID의 저장위치가 연결될 수 있다. 다른 일 예로, 저장위치탐색알고리즘은, N개(N은 자연수)의 문자를 이용하여 제2코드를 생성하는 경우에 N-1개로 전체각도(예를 들어, 중심각을 기준으로 분할하는 경우 360도)의 반에 대해 매칭하고 1개 자리를 이용하여 각 꼭지점에 도달하기 위한 각도 적용방향을 결정할 수 있다.As an example, in the storage location search algorithm, two second codes, which are different according to the angle measurement direction, may be assigned to one vertex to each vertex on a k-angle. That is, when reaching one vertex to the inside and outside, it is matched with another second code, and a storage location of a different UID may be connected. As another example, the storage location search algorithm, when generating a second code using N characters (N is a natural number), has a total angle of N-1 (e.g., 360 degrees when divided based on a central angle). You can determine the direction of angle application to reach each vertex by matching for half of) and using one digit.
제2코드를 기반으로 k각형에서 저장위치를 탐색하는 방식은 이에 한정되지 아니하고, 제2코드에 상응하는 k각형 상의 지점과 제1트랙 상의 접점 사이를 특정한 비율로 나누는 지점을 저장위치로 탐색하는 방식 등의 다양한 방식이 적용될 수 있다.The method of searching for a storage location in the k-angle based on the second code is not limited to this, and a point dividing the point on the k-angle corresponding to the second code and the contact point on the first track by a specific ratio is searched as a storage location Various methods such as method can be applied.
다른 일 실시예에 따라, 인증용가상코드가 단위카운트마다 변경되는 제1코드 및 제2코드를 포함하는 경우, 제1코드는 서버(30)에서 UID 등록을 시작한 최초시점으로부터 경과된 단위카운트를 기반으로 생성되고, 제2코드는 각 사용자가 QR코드생성장치(100)에 설치된 전용프로그램(11)을 통해 UID를 등록한 시점으로부터 경과된 단위카운트를 기반으로 생성되는 것이다. 이때, 단위카운트는 특정한 시간간격으로 설정되어 시간간격이 경과됨에 따라 변경되는 것이다.According to another embodiment, when the authentication virtual code includes a first code and a second code that are changed for each unit count, the first code is the unit count that has elapsed from the initial time when UID registration was started in the server 30. It is generated based on, and the second code is generated based on the unit count elapsed from the time when each user registers the UID through the dedicated program 11 installed in the QR
도 9에 도시된 바와 같이, 저장위치탐색알고리즘은 인증용가상코드를 구성하는 복수의 세부코드를 기반으로 트랙상을 이동하여 UID의 저장위치에 매칭된 지점으로 이동하는 것이다. As shown in FIG. 9, the storage location search algorithm moves on a track based on a plurality of detailed codes constituting a virtual code for authentication, and moves to a point matching the storage location of the UID.
구체적으로, 인증용가상코드가 서비스를 구동함에 따라 저장위치탐색알고리즘이 시작된 초기시점으로부터 경과된 단위카운트를 기반으로 제1코드와, 각 사용자의 UID가 등록된 시점으로부터 경과된 단위카운트를 기반으로 생성된 제2코드를 포함하는 경우, 도 9에서와 같이, 서버(30)는 제1코드에 대응되는 코드값이 매칭된 트랙상의 카운트를 탐색시작지점으로 설정하고, 제2코드에 상응하는 카운트값만큼 상기 탐색시작지점으로부터 트랙을 따라서 회귀하여 서버(30)에 UID를 등록한 시점의 트랙상의 지점(즉, UID 저장위치)을 탐색한다. 예를 들어, 서버(30)가 제1코드용 트랙에서 인증용가상코드 내의 제1코드가 부여된 지점(또는 카운트)를 탐색하여 탐색시작지점을 설정하고, 탐색시작지점으로부터 역방향으로 제2코드용 트랙을 배치하여 인증용가상코드 내의 제2코드가 부여된 지점(또는 카운트)를 탐색하여 제1코드용 트랙 상에서 UID 가 등록된 지점(또는 카운트)를 추출한다. 또한, 예를 들어, 서버(30)가 인증용가상코드 내의 제1코드를 기반으로 탐색시작지점을 설정하고, 인증용가상코드 내의 제2코드에 제2함수의 역함수를 적용함에 따라 산출된 카운트값만큼 회귀하여 UID 등록시점에 대응되는 지점을 탐색한다. Specifically, based on the unit count that has elapsed from the initial time when the storage location search algorithm started as the virtual code for authentication starts the service, and the unit count that has elapsed from the time when each user's UID is registered. In the case of including the generated second code, as shown in FIG. 9, the server 30 sets the count on the track in which the code value corresponding to the first code is matched as the search start point, and the count corresponding to the second code It returns along the track from the search start point by the value, and searches for a point on the track (ie, the UID storage location) at the time when the UID is registered in the server 30. For example, the server 30 searches for a point (or count) to which the first code is assigned in the authentication virtual code in the first code track, sets the search start point, and sets the second code in the reverse direction from the search start point. A target track is arranged to search for a point (or count) to which a second code is assigned in the authentication virtual code, and a point (or count) at which a UID is registered on the first code track is extracted. In addition, for example, the count calculated as the server 30 sets the search start point based on the first code in the virtual code for authentication and applies the inverse function of the second function to the second code in the virtual code for authentication. It regresses as much as the value and searches for a point corresponding to the UID registration point.
한편, 서버(30)는 추가적으로 인증용가상코드의 유효성을 검증할 수 있다. 구체적으로, 서버(30)는 수신된 QR코드 수신 시점과 상기 인증용가상코드생성용 프로그램에서 인증용가상코드생성함수를 이용하여 생성된 상기 인증용가상코드의 생성 시점을 비교하여, 도 10에 도시된 바와 같이, 상기 생성 시점이 상기 QR코드수신 시점으로부터 오차 범위 내에 포함된 경우 수신된 상기 인증용가상코드가 정상 코드인 것으로 판단할 수 있다.Meanwhile, the server 30 may additionally verify the validity of the authentication virtual code. Specifically, the server 30 compares the reception time of the received QR code and the generation time of the authentication virtual code generated by using the authentication virtual code generation function in the authentication virtual code generation program, as shown in FIG. As shown, when the generation time is within an error range from the QR code reception time, it may be determined that the received virtual code for authentication is a normal code.
구체적이 실시 예로, 사용자가 QR코드생성장치(100)를 이용하여 QR코드 생성을 요청하면, 전용프로그램(11)은 인증용가상코드생성함수를 이용하여 요청 시점(즉, 생성 시점)에 해당하는 카운트 값을 기반으로 인증용가상코드(구체적으로, 제2코드)를 생성한다. 일 실시예로, 복수의 세부코드 중 하나의 세부코드(예를 들어, 제2코드)는 생성 시점을 시드 데이터로 하는 OTP 함수를 이용하여 생성될 수 있다. 즉, 제2코드 내에 OTP 코드가 포함되어 생성될 수 있다.In a specific embodiment, when a user requests generation of a QR code using the QR
이후, 상기 인증용가상코드는 서버(30)로 제공되며, 서버(30)는 인증용가상코드생성함수 또는 인증용가상코드생성함수에 매칭되는 저장위치탐색알고리즘을 이용하여 복수의 세부코드를 추출한다. 그리고, 복수의 세부코드 중 하나의 세부코드(예를 들어, 제2코드)를 통해 OTP 코드를 추출하고, OTP 코드를 통해 인증용가상코드가 생성된 시점을 추출하게 된다. Thereafter, the authentication virtual code is provided to the server 30, and the server 30 extracts a plurality of detailed codes using a storage location search algorithm that matches the authentication virtual code generation function or the authentication virtual code generation function. do. In addition, the OTP code is extracted through one of the plurality of detailed codes (for example, the second code), and the time point at which the virtual code for authentication is generated is extracted through the OTP code.
이후, 트랙 상에서 QR코드검증장치(200)가 QR코드를 수신한 시점과 QR코드생성장치(100)에서 인증용가상코드가 생성된 시점을 비교하여, 인증용가상코드가 현재 시점에 생성된 코드인지를 검증할 수 있게 된다. 즉, QR코드검증장치(200)가 QR코드를 수신한 시점으로부터 기 설정된 카운트 값을 포함하는 범위 내에 인증용가상코드의 생성 시점이 포함되면, 해당 인증용가상코드는 정상적으로 생성된 코드인 것으로 검증되는 것이다.Thereafter, by comparing the time when the QR
한편, 도 11을 참조하면, 서버(30)에는 다양한 사용자 정보가 저장될 수 있다. 일 실시 예에 있어서, 상기 사용자 정보는 UID, 성명, 단말기일련번호 및 전화번호 중 적어도 하나를 포함할 수 있고, 서버(30)는 상기 사용자 정보를 QR코드생성장치(100)로부터 수신한 후에 저장할 수 있다.Meanwhile, referring to FIG. 11, the server 30 may store various user information. In one embodiment, the user information may include at least one of a UID, a name, a terminal serial number, and a phone number, and the server 30 stores the user information after receiving it from the QR
다른 일 실시 예에 있어서, 서버(30)는 사용자의 진단결과, 확진자 접촉여부와 관련된 정보가 UID에 매칭되어 저장될 수 있다. 상기 진단결과 및 확진자 접촉여부는 해당 QR코드생성장치(100)의 사용자 또는 별도의 권한이 주어진 관리자에 의해 갱신될 수 있다.In another embodiment, the server 30 may store a user's diagnosis result and information related to whether or not the confirmed person is contacted by matching the UID. The diagnosis result and whether the confirmed person is contacted may be updated by a user of the QR
서버(30)는 상기 진단결과가 음성에서 양성으로 변경되는 경우, 변경된 시점으로부터 소정 시간 이내의 방문 장소를 탐색하고, 상기 변경된 시점으로부터 소정 시간 이내에 해당 사용자와 동일한 장소에서 방문자 인증을 수행한 다른 사용자에게 안내 메시지를 발송한다. 나아가, 서버(30)는 해당 사용자와 동일한 장소에서 방문자 인증을 수행한 다른 사용자의 사용자 정보에서 확진자 접촉 여부를 비접촉에서 접촉으로 변경할 수 있다. 확진자 접촉 여부가 비접촉에서 접촉으로 변경되는 경우, 서버(30)는 해당 사용자에게 자가 격리를 권고하는 안내 메시지를 송신할 수 있다.When the diagnosis result is changed from negative to positive, the server 30 searches for a visited place within a predetermined time from the changed point of time, and another user who performs visitor authentication at the same place as the user within a predetermined time from the changed point of time. Send a message to you. Further, the server 30 may change whether the confirmed person is contacted in the user information of another user who has performed visitor authentication in the same place as the corresponding user from non-contact to contact. When the contact of the confirmed person is changed from non-contact to contact, the server 30 may transmit a guide message recommending self-isolation to the corresponding user.
다른 일 실시 예에 있어서, 서버(30)는 QR코드검증장치(200)로부터 수신한 인증용가상코드를 기반으로 특정 사용자 정보의 저장위치가 탐색될 때마다 QR코드검증장치(200)에 대응하는 위치 정보 및 QR코드 수신 시간을 사용자 정보의 저장위치에 매칭시켜 저장할 수 있다. 이를 통해, 본 발명은 특정 사용자의 방문 장소 및 시간을 관리할 수 있도록 한다.In another embodiment, the server 30 corresponds to the QR
이상에서 전술한 본 발명의 일 실시예에 따른 인증용가상코드를 이용한 사용자 인증 방법은, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.The user authentication method using a virtual code for authentication according to an embodiment of the present invention described above may be implemented as a program (or application) to be executed by being combined with a computer that is hardware and stored in a medium.
상기 전술한 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, Ruby, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.The above-described program includes C, C++, JAVA, Ruby, which can be read by a processor (CPU) of the computer through the device interface of the computer, in order for the computer to read the program and execute the methods implemented as a program. It may include a code (Code) coded in a computer language such as machine language. Such code may include a functional code related to a function defining necessary functions for executing the methods, and a control code related to an execution procedure necessary for the processor of the computer to execute the functions according to a predetermined procedure. can do. In addition, such code may further include code related to a memory reference to which location (address address) of the internal or external memory of the computer or the media or additional information necessary for the processor of the computer to execute the functions. have. In addition, when the processor of the computer needs to communicate with any other computer or server in the remote in order to execute the functions, the code uses the communication module of the computer to determine how It may further include a communication-related code for whether to communicate or what information or media to transmit and receive during communication.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.The storage medium is not a medium that stores data for a short moment, such as a register, cache, memory, etc., but a medium that stores data semi-permanently and can be read by a device. Specifically, examples of the storage medium include, but are not limited to, ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, and the like. That is, the program may be stored in various recording media on various servers to which the computer can access, or on various recording media on the user's computer. In addition, the medium may be distributed over a computer system connected through a network, and computer-readable codes may be stored in a distributed manner.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다. In the above, embodiments of the present invention have been described with reference to the accompanying drawings, but those skilled in the art to which the present invention pertains can be implemented in other specific forms without changing the technical spirit or essential features. You will be able to understand. Therefore, the embodiments described above are illustrative in all respects, and should be understood as non-limiting.
Claims (15)
Applications Claiming Priority (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR10-2019-0107065 | 2019-08-30 | ||
| KR20190107065 | 2019-08-30 | ||
| KR20200068428 | 2020-06-05 | ||
| KR10-2020-0068428 | 2020-06-05 | ||
| KR1020200091939A KR102451863B1 (en) | 2019-08-30 | 2020-07-23 | Method and system for managing visitor using qr code |
| KR10-2020-0091939 | 2020-07-23 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2021040359A1 true WO2021040359A1 (en) | 2021-03-04 |
Family
ID=74685645
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/KR2020/011274 Ceased WO2021040359A1 (en) | 2019-08-30 | 2020-08-24 | Visitor management method and system using qr code |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2021040359A1 (en) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101296137B1 (en) * | 2012-11-30 | 2013-08-13 | 주식회사 한국심트라 | A mobile phone id card security methods and system by the using of qr code |
| KR101601636B1 (en) * | 2015-06-18 | 2016-03-10 | 주식회사 렛츠온 | Identity verification system using the QR code |
| US9672458B2 (en) * | 2013-08-07 | 2017-06-06 | International Business Machines Corporation | Creation and management of dynamic quick response (QR) codes |
| KR101967874B1 (en) * | 2017-02-22 | 2019-04-10 | 한국스마트인증 주식회사 | Method for Generating Dynamic Code Which Varies Periodically and Method for Authenticating the Dynamic Code |
| KR102005554B1 (en) * | 2018-08-09 | 2019-07-30 | 주식회사 센스톤 | Method and system for providing financial transaction using empty card |
-
2020
- 2020-08-24 WO PCT/KR2020/011274 patent/WO2021040359A1/en not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101296137B1 (en) * | 2012-11-30 | 2013-08-13 | 주식회사 한국심트라 | A mobile phone id card security methods and system by the using of qr code |
| US9672458B2 (en) * | 2013-08-07 | 2017-06-06 | International Business Machines Corporation | Creation and management of dynamic quick response (QR) codes |
| KR101601636B1 (en) * | 2015-06-18 | 2016-03-10 | 주식회사 렛츠온 | Identity verification system using the QR code |
| KR101967874B1 (en) * | 2017-02-22 | 2019-04-10 | 한국스마트인증 주식회사 | Method for Generating Dynamic Code Which Varies Periodically and Method for Authenticating the Dynamic Code |
| KR102005554B1 (en) * | 2018-08-09 | 2019-07-30 | 주식회사 센스톤 | Method and system for providing financial transaction using empty card |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2020032321A1 (en) | Virtual code-based financial transaction provision system, virtual code generation device, virtual code verification device, virtual code-based financial transaction provision method, and virtual code-based financial transaction provision program | |
| WO2017003051A1 (en) | Electronic device and method for generating random and unique code | |
| WO2020032498A1 (en) | User authentication method and system using virtual authentication code | |
| WO2020032482A1 (en) | Method and system for providing financial transaction using empty card | |
| WO2019182409A1 (en) | Electronic device and authentication method thereof | |
| WO2022102930A1 (en) | Did system using browser-based security pin authentication and control method thereof | |
| WO2020149500A1 (en) | Method and apparatus for registering shared key | |
| WO2017039287A1 (en) | Segment-based manual signature authentication system and method | |
| WO2020091525A1 (en) | Payment method using biometric authentication and electronic device therefor | |
| WO2017061758A1 (en) | Segment-block-based handwritten signature authentication system and method | |
| WO2018164363A1 (en) | Contactless multiple body part recognition method and multiple body part recognition device, using multiple biometric data | |
| WO2015126037A1 (en) | Personal identification and anti-theft system and method using disposable random key | |
| WO2019031716A2 (en) | Virtual token-based settlement providing system, virtual token generation apparatus, virtual token verification server, virtual token-based settlement providing method, and virtual token-based settlement providing program | |
| WO2017183830A1 (en) | Security enhancement method and apparatus for iris recognition, using distributed iris template storage and matching | |
| WO2016006831A1 (en) | Door-lock using iris recognition and system thereof, mobile communication terminal and network gateway used therein, and user authentication method | |
| WO2018070576A1 (en) | User recognition method using hybrid biometric information and device thereof | |
| WO2018199576A1 (en) | Method and apparatus for performing authentication based on biometric information | |
| WO2021049681A1 (en) | Electronic device for performing authentication on basis of cloud server and control method therefor | |
| WO2021040359A1 (en) | Visitor management method and system using qr code | |
| WO2022186654A1 (en) | Sim card apparatus for verifying authentication virtual code generated for security of iot device | |
| WO2019031715A1 (en) | Virtual code-based control system, method and program, control device and control signal generating means | |
| WO2020162710A1 (en) | Virtual code-based control system, method and program, control device and control signal generating means for unmanned moving object | |
| WO2022186605A1 (en) | Smart card device, device for generating virtual code for authentication, method for generating virtual code for authentication using same, and server for verifying virtual code for authentication | |
| WO2021172876A1 (en) | Device and method for virtual authorization code-based process authorization | |
| WO2020032504A1 (en) | Virtual vote code-based voting and counting method and system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20859279 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 20859279 Country of ref document: EP Kind code of ref document: A1 |
|
| 32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM1205A DATED 17/03/2023) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 20859279 Country of ref document: EP Kind code of ref document: A1 |