WO2015177825A1 - 電子機器、ロック解除方法およびロック解除プログラム - Google Patents
電子機器、ロック解除方法およびロック解除プログラム Download PDFInfo
- Publication number
- WO2015177825A1 WO2015177825A1 PCT/JP2014/002735 JP2014002735W WO2015177825A1 WO 2015177825 A1 WO2015177825 A1 WO 2015177825A1 JP 2014002735 W JP2014002735 W JP 2014002735W WO 2015177825 A1 WO2015177825 A1 WO 2015177825A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- points
- pattern
- point
- displayed
- control unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
Definitions
- This technology relates to electronic devices, unlock methods, and unlock programs.
- the screen is locked when it is not operated for a certain period of time, and it is necessary to perform a predetermined operation to release the lock in order to resume use. It is common to do.
- this screen lock there is a technique of releasing the lock of the electronic device when a pattern by a locus input on the touch panel corresponds to a predetermined pattern.
- Android registered trademark
- a pattern based on a trajectory obtained by tracing nine points displayed in a 3 ⁇ 3 grid pattern on the touch panel is registered in advance.
- the present invention has been made in view of the above-described problems, and even when a user inputs a pattern, the risk of guessing a pattern to be used for unlocking is reduced even if it is stolen by a third party.
- An object is to provide an unlocking method and an unlocking program.
- the first pattern input by the user touching at least a part of the plurality of points displayed on the touch panel and the order of passing through at least a part of the plurality of points registered in advance Is a method for unlocking the electronic device by comparing the second pattern with the second pattern defined in the above, wherein the plurality of points are set to a second position dissimilar to the first position displayed last time.
- the first pattern passing through at least a part of the plurality of points displayed at the second position is acquired, and whether or not the acquired first pattern matches the second pattern
- a method for unlocking is provided.
- the electronic device, the unlocking method, and the unlocking method can reduce the risk of guessing the pattern to be used for unlocking even if it is stolen by a third party
- An unlock program can be provided.
- FIG. 1 is a schematic diagram of a hardware configuration of the mobile terminal 100 according to the first embodiment.
- FIG. 2 is a functional block diagram of the mobile terminal 100 according to the first embodiment.
- FIG. 3 is a diagram illustrating a plurality of points displayed on the display when the pattern lock is released.
- FIG. 4 is a diagram showing the coordinates of the touch panel 7.
- FIG. 5 is a coordinate input history table showing an input history of coordinates input by touch.
- FIG. 6 is a table showing point display positions and release patterns.
- FIG. 7A is an example of a flowchart of pattern lock control of the mobile terminal 100 according to the first embodiment.
- FIG. 7B is an example of a flowchart of pattern lock control of the mobile terminal 100 according to the first embodiment.
- FIG. 8 is a table showing point display position change information.
- FIG. 9A is an example of a flowchart for calculating Current_location information referred to for determining coordinates for displaying a plurality of points according to the first embodiment.
- FIG. 9B is an example of a flowchart for calculating Current_location information referred to for determining coordinates for displaying a plurality of points according to the first embodiment.
- FIG. 10A is an example of a flowchart for calculating Current_location information referred to for determining coordinates for displaying a plurality of points according to the second embodiment.
- FIG. 10B is an example of a flowchart for calculating Current_location information referred to for determining coordinates for displaying a plurality of points according to the second embodiment.
- FIG. 9A is an example of a flowchart for calculating Current_location information referred to for determining coordinates for displaying a plurality of points according to the first embodiment.
- FIG. 10B is an example of a flowchart for calculating Current_location information referred to for determining coordinates for
- FIG. 11A is an example of a flowchart for calculating Current_location information referred to for determining coordinates for displaying a plurality of points according to the third embodiment.
- FIG. 11B is an example of a flowchart for calculating Current_location information referred to for determining coordinates for displaying a plurality of points according to the third embodiment.
- FIG. 12A is an example of a flowchart of pattern lock control of the mobile terminal 100 according to the fourth embodiment.
- FIG. 12B is an example of a flowchart of pattern lock control of the mobile terminal 100 according to the fourth embodiment.
- FIG. 12C is an example of a flowchart of pattern lock control of the mobile terminal 100 according to the fourth embodiment.
- FIG. 12A is an example of a flowchart of pattern lock control of the mobile terminal 100 according to the fourth embodiment.
- FIG. 12B is an example of a flowchart of pattern lock control of the mobile terminal 100 according to the fourth embodiment.
- FIG. 12C is an example of a flowchart of
- FIG. 13A is an example of a flowchart for calculating Transform_location information that is referred to in order to determine coordinates for changing coordinates for displaying a plurality of points during pattern unlocking according to the fourth embodiment.
- FIG. 13B is an example of a flowchart for calculating Transform_location information referred to in order to determine coordinates for changing coordinates for displaying a plurality of points in the middle of pattern lock release according to the fourth embodiment.
- FIG. 14A is an example of a flowchart of pattern lock control of the mobile terminal 100 according to the fifth embodiment.
- FIG. 14B is an example of a flowchart of pattern lock control of the mobile terminal 100 according to the fifth embodiment.
- the display position, size, and orientation of the guide display such as nine points displayed in a grid pattern on the touch panel of the electronic device are changed when the screen lock is released, thereby locking the fingerprint trace remaining on the touch panel.
- the risk of a pre-registered pattern used for cancellation being guessed by a third party is reduced.
- the pattern of the locus by the touch input that is input when the display positions, sizes, and orientations of the nine points are changed is a pattern that is similar to a previously registered pattern. For this reason, the inventor of the present invention can assume that the release pattern is inferred from the shape of the trajectory input by the user when the user inputs the pattern and is stolen by a third party.
- the technology considered that the secrecy of the release pattern was insufficient.
- FIG. 1 is a schematic diagram of a hardware configuration of the mobile terminal according to the first embodiment.
- a mobile phone such as a smartphone or a feature phone, a tablet computer, or a personal computer may be used as the mobile terminal 100.
- the mobile terminal 100 authenticates the user before executing a predetermined process.
- the predetermined process is, for example, a process of releasing the lock of the mobile terminal 100 or a process of accessing the user's private data.
- a mobile terminal 100 includes, as hardware components, a wireless communication unit 2 connected to an antenna 1, a CPU 3, a flash memory 4, a main memory 5, and a display 6 that displays a screen. And a touch panel 7 that detects input by a finger, a touch pen, or the like.
- These hardware modules are interconnected by, for example, a bus.
- the portable terminal 100 has a display area in which the touch panel 7 and the display 6 are provided to overlap each other.
- the wireless communication unit 2 is a means for communicating with an external device.
- the wireless communication unit is a means for connecting to a network such as a mobile communication network. Note that the wireless communication unit 2 is not essential in the present invention.
- the flash memory 4 stores various programs executed by the CPU 3.
- the flash memory 4 is a non-volatile memory in which data is not lost even when the power is turned off.
- Examples of the various programs include an application program executed by the mobile terminal 100 and an OS (Operation System), which are held in the flash memory 4 even when the power of the mobile terminal 100 is turned off.
- the main memory 5 is used as a storage area where the CPU 3 develops data such as an OS in the flash memory 4.
- RAM Random Access Memory
- the CPU 3 reads out various programs stored in the flash memory 4 and executes the various programs, thereby operating as a pattern lock control unit 10 that performs pattern lock control described later.
- the portable terminal 100 stores the OS in the flash memory 4.
- the CPU 3 expands the OS data in the flash memory 4 to the main memory 5, executes a program defined in advance by the OS, and displays a screen. After the screen display is performed, when the user enters an operation waiting state and the user detects an operation on the mobile terminal 100, an interrupt process is entered into the CPU 3, and a process predefined by the OS for the user operation Is executed.
- the display 6 includes a display panel that displays an image using a liquid crystal element or an organic EL (ElectroLuminescence) element, a drive circuit that drives the display panel, and the like.
- the touch panel 7 has a sensor provided so as to overlap the display surface of the display 6, and supplies coordinate information indicating a position instructed by the user to the pattern lock control unit 10.
- the sensor of the touch panel 7 is, for example, a capacitive sensor that senses a finger using electrostatic coupling with the finger.
- FIG. 2 is a functional block diagram of the mobile terminal 100 according to the first embodiment.
- the mobile terminal 100 has the following functional blocks.
- the portable terminal 100 reads out various programs stored in the flash memory 4 by the CPU 3 and executes the various programs, whereby various programs using the pattern lock control unit 10 that performs pattern lock control described later and the flash memory 4 are used.
- a first storage unit 11 that stores information
- a second storage unit 15 that stores coordinate input history information 12, point display position / cancellation pattern information 13, and point display position change information 14 to be described later using the main memory 5.
- the mobile terminal 100 includes a display control unit 17 that controls the display unit 16 using the display 6 that displays a screen, and a touch input control unit 19 that controls detection of an input to the touch input detection unit 18 using the touch panel 7. .
- the pattern lock control unit 10 causes the display 6 to display a plurality of points that serve as a guide for pattern input when the pattern lock is released.
- the pattern lock control unit 10 compares the pattern in which the order of passing through at least a part of the plurality of points is defined (hereinafter, release pattern) with the input pattern input by the user, and the release pattern matches the input pattern. When it does, the lock
- the pattern lock control unit 10 performs control to display a plurality of points at non-similar positions with respect to the positions of the plurality of points at which the pattern input previously displayed is performed. Accordingly, the portable terminal 100 prevents a pattern used for pattern lock release from being inferred even when the user inputs a pattern and is stolen by a third party.
- FIG. 3 is a diagram illustrating a plurality of points displayed on the display when the pattern lock is released.
- the pattern lock control unit 10 uses the coordinate input history information 12, the point display position / cancellation pattern information 13, and the point display position change information 14 stored in the second storage unit 15, so that a plurality of points serving as a pattern input guide
- the coordinate position is determined, and the display control unit 17 is caused to display a plurality of points on the display unit 16.
- a total of nine points are arranged in a lattice shape, three in the vertical direction and three in the horizontal direction.
- the user causes the mobile terminal 100 to release the pattern lock by touch-inputting a pattern that traces some or all of these nine points in a predetermined order.
- the pattern lock control unit 10 releases the pattern lock.
- FIG. 4 is a diagram showing the coordinates of the touch panel 7.
- a touch panel with a resolution of 7 ⁇ 8 is shown as a model.
- the coordinates are represented as (X, Y)
- the touch input control unit 19 stores the coordinate input history information 12 in the coordinate input history information 12.
- the touch input control unit 19 stores in the coordinate input history information 12 the coordinate information in which the touch input is detected by the touch input detection unit 18 and the time stamp indicating the time of the touch input.
- FIG. 5 shows a coordinate input history table representing the coordinate input history information 12.
- FIG. 5 is a coordinate input history table showing an input history of coordinates input by touch.
- the coordinate input history table is a table storing coordinate information when the user traces the broken line shown in FIG. 4 with a finger and a time stamp indicating the time when the coordinate information is input. 2014/2/19 17: 18: 11.0000000 indicates that there was an input to the coordinates (2, 2). Hereinafter, data is added in the order of touch input.
- FIG. 6 is a table showing point display positions and release patterns.
- the table is stored in the second storage unit 15 as point display position / release pattern information.
- the pattern lock control unit 10 determines the display positions of the plurality of points using the table, and determines whether or not the pattern input by the user matches the release pattern.
- a plurality of points here nine points, are each assigned ID information of A1 to A9.
- the Order information indicates the order in which the release pattern passes. This corresponds to the order of A7-> A4-> A1-> A5-> A9-> A6-> A3 indicated by the broken line in FIG.
- the input information stores the order in which the pattern input by the user has passed through each point.
- Model_location information is positional information indicating the relative positional relationship of nine points.
- Default_location information is coordinate information indicating initial coordinate information for displaying nine points on the screen.
- Current_location information is coordinate information of nine points currently displayed.
- Next_location information is coordinate information for displaying 9 points next time.
- Transform_location information is coordinate information used when changing the display positions of nine points during pattern input.
- the pattern lock control unit 10 displays nine points on the display 6 based on the coordinate information stored in the Next_location information, and the passage order of the patterns input by the user stored in the Input information is stored in the Order information. It is determined whether or not it matches the passage order of the released release pattern.
- the pattern lock control unit 10 of the portable terminal 100 is defined by a pattern input by a user passing through at least some of the displayed points and an order of passing through at least some of the plurality of points registered in advance.
- the mobile terminal 100 is unlocked by comparison with the release pattern.
- the pattern lock control unit 10 displays a plurality of points at a second position that is dissimilar to the first position at which the plurality of points were previously displayed, is displayed at the second position, and is a user to at least some of the plurality of points.
- the mobile terminal 100 is unlocked by comparing the input pattern with a pattern in which the order of passing through at least some of the plurality of points is defined.
- FIGS. 7A and 7B are examples of a flowchart of pattern lock control of the mobile terminal 100 according to the first embodiment.
- the pattern lock control unit 10 of the portable terminal 100 determines coordinates for displaying a plurality of points with reference to the Current_location information stored in the table indicating the display positions and release patterns of points shown in FIG. The point is displayed on the display 6 (S001).
- the pattern lock control unit 10 initializes information on the point input state (S002). Specifically, the input information stored in the table indicating the display position and release pattern of points shown in FIG. 6 is all set to 0, so that no input is made for each point. Wait until a touch input by the user is detected (S003).
- the pattern lock control unit 10 determines whether the touched coordinates are the same as any of the coordinates of the plurality of points displayed in step S001 (S004). When it is determined that the touched coordinates are not the same as any of the coordinates of the plurality of points (S004, No), it is determined whether the touch input has been released (S005). When the touch input is moved without being released (S005, No), the pattern lock control unit 10 determines whether or not the touched coordinates are the same as any of a plurality of points.
- the pattern lock control unit 10 determines that the touched point has already been touched in the current process. It is determined whether or not (S006). The pattern lock control unit 10 determines whether the input information of the touched point is not 0 or 0. If the touched point is a point that has already been touched in this processing (Input ⁇ 0) (S006, Yes), it is determined whether or not the touch input has been released (S005). When the touch input is moved without being released (S005, No), the pattern lock control unit 10 determines whether or not the touched coordinates are the same as any of a plurality of points.
- the pattern lock control unit 10 changes the display of the touched point. Specifically, the color of the point is changed (S007).
- the pattern lock control unit 10 stores, in the input information of the touched point, a value obtained by adding 1 to the value of the maximum input information among all the input information stored in the table (S008).
- the pattern lock control unit 10 connects the previous point and the display with a line (S009). That is, the pattern lock control unit 10 performs display connected with points having a value obtained by subtracting 1 from the maximum input information among the input information.
- the control unit 10 determines whether or not the touch input is released (S005). When it is determined that the touch input has been released (S005, Yes), the pattern lock control unit 10 determines whether the input point pattern is the same as the release pattern (S010). Step S010 and subsequent steps are shown in FIG. 7B. It is determined whether the input information stored in the table indicating the point display position and the release pattern shown in FIG. 6 matches the Order information. If the input information stored in the table indicating the point display position and the release pattern matches the Order information (S010, Yes), the input pattern is the same as the release pattern, so that the user is an authorized user. Therefore, the pattern lock control unit 10 releases the pattern lock (S011).
- the pattern lock control unit 10 If the input information stored in the table indicating the point display position and the release pattern does not match the Order information (No in S010), the pattern lock control unit 10 returns the point color to the initial value (S012). The line displayed between them is deleted (S013), the value of Input information is all updated to 0 (S014), and the process of waiting for the user's touch input shown in step S003 shown in FIG. 7A is performed again. .
- FIG. 8 is a table showing point display position change information.
- the table stores the following information as the point display position change information.
- the table includes Min_point_range information that is a minimum interval that must be opened between a plurality of points, Trace_time_range information that is a time (seconds) when the coordinate input history is valid, and points for changing the display positions of the plurality of points.
- Transform_order information that is order information
- Transform_zoom information that is a limit (%) of magnification when the display of a plurality of points is enlarged or reduced
- Transform_angle information is stored.
- Candidate_point_num information that is the number of candidates evaluated when determining the display position of the point
- Candidate_poi indicating an error that is allowed when evaluating the candidate of the display position of the point t_margin information is stored.
- the pattern lock control unit 10 determines coordinates for displaying a plurality of points using the point display position change information.
- the Transform_order information, the Transform_zoom information, and the Transform_angle information may not be stored in the point display position change information table.
- FIG. 9A and FIG. 9B are examples of a flowchart for calculating Current_location information referred to for determining coordinates for displaying a plurality of points according to the first embodiment.
- the pattern lock control unit 10 of the mobile terminal 100 calculates the coordinates of a plurality of points one by one.
- the pattern lock control unit 10 stores the calculation order of the points in Array_point_ID [n], and stores the calculated coordinates of each point in the Next_location information.
- the pattern lock control unit 10 of the mobile terminal 100 randomly determines an ID of a point as a starting point (S101), and repeats the following processing for the number of points to calculate display position candidate coordinates for all points. .
- the pattern lock control unit 10 includes Model_location information corresponding to the ID of the point that is the starting point determined in step S101 or the point where the candidate coordinates of the display position have already been calculated (hereinafter described as a reference point), and the display position Model_location information corresponding to a point whose candidate coordinates have not been calculated is acquired. Based on each referenced Model_location information, the pattern lock control unit 10 calculates the distance between the reference point and each point for which the candidate coordinates of the display position have not been calculated yet, and displays the point with the largest distance this time A point for calculating position candidate coordinates (hereinafter, a candidate calculation target point) is used (S102).
- a candidate calculation target point A point for calculating position candidate coordinates (hereinafter, a candidate calculation target point) is used (S102).
- the Model_location information of the reference point A1 is [1, 3]
- the point with the longest distance is the point A9 where the calculated distance is 2 ⁇ 2 is the most distance Is a large point
- point A9 is a candidate calculation target point.
- the pattern lock control unit 10 calculates the difference between the X component and the Y component of the Model_location information of the reference point and the X component and the Y component of the Model_location information of the candidate calculation target point determined in step S102 (S103). .
- the pattern lock control unit 10 determines that the X component and Y component of the Model_location information of the reference point A1 are [1, 3] from the table of FIG. Then, the fact that the X component and the Y component of the Model_location information of the candidate calculation target point A9 are [3, 1] is acquired. Next, by calculating the absolute value of the difference between each X component and Y component, it is calculated that the difference between the X components is 2 and the difference between the Y components is 2.
- the pattern lock control unit 10 calculates the distance based on each value obtained by multiplying each of the X component and Y component of the Model_location information of the candidate calculation target point calculated in step S103 and the Min_point_range information.
- a range in which the distance between the coordinates of the candidate calculation target point and the coordinates of the reference point is equal to or greater than the calculated distance is set as a first candidate condition (S104).
- the pattern lock control unit 10 determines the second candidate condition from the Model_location information of each point where the relative position between the reference point and the candidate calculation target point is defined, and the already calculated reference point candidate coordinates ( S105). As the coordinate position on the display screen of the starting point, the Current_location information is used, or a coordinate position set in advance in relation to the Model_location information is used.
- the pattern lock control unit 10 extracts the coordinates where the touch input is made within the period of the Trace_time_range information, which is the time during which the coordinate input history is valid, in the range corresponding to the first candidate condition and the second candidate condition. To do.
- the pattern lock control unit 10 calculates a range in which Candidate_point_margin information indicating an error allowed when evaluating the candidate of the display position of the point is added to the extracted coordinates, and from among the coordinates that do not overlap with the calculated range
- the candidate coordinates of the display position for the candidate calculation target point are acquired at random (S106).
- the number of candidate coordinates acquired here is determined based on Candidate_point_num information, which is the number of candidates evaluated when determining the display position of the point.
- step S102 determines the next candidate calculation target point.
- step S107 shown in FIG. 9B.
- the pattern lock control unit 10 creates a combination of candidate coordinates acquired for a plurality of points, and creates a locus drawn by the release pattern for each combination. The number of unused coordinates through which the created trajectory passes is calculated, and the number of intersections between the created trajectory and the trajectory for which the previous pattern lock was released is calculated. From the created point combinations, determine the combination of points with a large number of unused coordinates and a large number of intersections with the trajectory for which pattern lock was released previously, and set the coordinates of each point as Next_location information. Store (S107).
- the pattern lock control unit 10 stores the coordinates stored in the Next_location information in the Current_location information (S108).
- the pattern lock control unit 10 refers to the Current_location information, determines coordinates for displaying a plurality of points, and displays the plurality of points on the display 6.
- FIG. 10A and FIG. 10B are examples of a flowchart for calculating Current_location information referred to for determining coordinates for displaying a plurality of points according to the second embodiment.
- the range is narrowed by correcting the angle with respect to the reference point using the Transform_angle information.
- the Transform_order information and the Transform_zoom information may not be stored in the point display position change information table.
- the pattern lock control unit 10 of the mobile terminal 100 calculates the coordinates of a plurality of points one by one.
- the pattern lock control unit 10 stores the calculation order of the points in Array_point_ID [n], and stores the calculated coordinates of each point in the Next_location information.
- the pattern lock control unit 10 of the mobile terminal 100 randomly determines an ID of a point as a starting point (S201), and repeats the following processing for the number of points to calculate display point candidate coordinates for all points. .
- the pattern lock control unit 10 acquires Model_location information corresponding to the reference point determined in step S201, and Model_location information corresponding to a point for which the display position candidate coordinates have not been calculated yet.
- the pattern lock control unit 10 calculates the distance between the reference point and each point for which the display position candidate coordinates have not been calculated yet, based on each referenced Model_location information, and the point with the largest distance is a candidate calculation target Points are set (S202). When there are a plurality of points having the same distance from the reference point, candidate calculation target points are determined at random from the points.
- the pattern lock control unit 10 calculates the difference between the X component and the Y component of the Model_location information of the reference point and the X component and the Y component of the Model_location information of the candidate calculation target point determined in step S202 (S203). .
- the pattern lock control unit 10 calculates the distance based on each value obtained by multiplying each of the X component and Y component of the Model_location information of the candidate calculation target point calculated in step S203 and the Min_point_range information.
- a range in which the distance between the coordinates of the candidate calculation target point and the coordinates of the reference point is equal to or greater than the calculated distance is set as a first candidate condition (S204).
- the pattern lock control unit 10 determines the second candidate condition from the Transform_angle information that defines the positional relationship between the reference point and the candidate calculation target point by an angle and the already calculated reference point candidate coordinates (S205). As the coordinate position on the display screen of the starting point, the Current_location information is used, or a coordinate position set in advance in relation to the Model_location information is used.
- the pattern lock control unit 10 extracts the coordinates where the touch input is made within the period of the Trace_time_range information, which is the time during which the coordinate input history is valid, in the range corresponding to the first candidate condition and the second candidate condition. To do.
- the pattern lock control unit 10 calculates a range in which Candidate_point_margin information indicating an error allowed when evaluating the candidate of the display position of the point is added to the extracted coordinates, and from among the coordinates that do not overlap with the calculated range
- the candidate coordinates of the display position for the candidate calculation target point are acquired at random (S206).
- the number of candidate coordinates acquired here is determined based on Candidate_point_num information, which is the number of candidates evaluated when determining the display position of the point.
- the pattern lock control unit 10 acquires the candidate coordinates of the candidate calculation target point
- the pattern lock control unit 10 returns to step S202 and determines the next candidate calculation target point.
- the process proceeds to step S207 shown in FIG. 10B.
- the pattern lock control unit 10 creates a combination of candidate coordinates acquired for a plurality of points, and creates a locus drawn by the release pattern for each combination. The number of unused coordinates through which the created trajectory passes is calculated, and the number of intersections between the created trajectory and the trajectory for which the previous pattern lock was released is calculated. From the created point combinations, determine the combination of points with a large number of unused coordinates and a large number of intersections with the trajectory for which pattern lock was released previously, and set the coordinates of each point as Next_location information. Store (S207).
- the pattern lock control unit 10 stores the coordinates stored in the Next_location information in the Current_location information (S208).
- the pattern lock control unit 10 refers to the Current_location information, determines coordinates for displaying a plurality of points, and displays the plurality of points on the display 6.
- a plurality of points are displayed at non-similar positions with respect to the positions of the plurality of points at which the previously displayed lock pattern input is performed.
- FIG. 11A and FIG. 11B are examples of a flowchart for calculating Current_location information referred to for determining coordinates for displaying a plurality of points according to the third embodiment.
- the Transform_order information and the Transform_angle information may not be stored in the point display position change information table.
- the pattern lock control unit 10 of the mobile terminal 100 calculates the coordinates of a plurality of points one by one.
- the pattern lock control unit 10 stores the calculation order of the points in Array_point_ID [n], and stores the calculated coordinates of each point in the Next_location information.
- the pattern lock control unit 10 of the portable terminal 100 randomly determines an ID of a point as a starting point (S301), and repeats the following processing for the number of points to calculate display point candidate coordinates for all points. .
- the pattern lock control unit 10 acquires Model_location information corresponding to the ID of the reference point determined in step S301 and Model_location information corresponding to the point for which the display position candidate coordinates have not been calculated yet.
- the pattern lock control unit 10 calculates the distance between the reference point and each point for which the display position candidate coordinates have not yet been calculated based on each referenced Model_location information, and calculates the point having the largest distance as a candidate. It is set as a target point (S302).
- the pattern lock control unit 10 calculates the difference between the X component and Y component of the Model_location information of the reference point and the X component and Y component of the Model_location information of the candidate calculation target point determined in step S302 (S303). .
- the pattern lock control unit 10 calculates the distance based on each value obtained by multiplying each of the X component and the Y component of the Model_location information of the candidate calculation target point calculated in step S303 and the Min_point_range information.
- a range in which the distance between the coordinates of the candidate calculation target point and the coordinates of the reference point is equal to or greater than the calculated distance is set as a first candidate condition (S304).
- the pattern lock control unit 10 determines the second candidate condition from the Model_location information of each point where the relative position between the reference point and the candidate calculation target point is defined, and the already calculated reference point candidate coordinates ( S305). As the coordinate position on the display screen of the starting point, the Current_location information is used, or a coordinate position set in advance in relation to the Model_location information is used.
- the pattern lock control unit 10 sets a position obtained by multiplying the screen size from the start point by the Transform_zoom information as a third candidate condition (S306).
- the pattern lock control unit 10 receives a touch input within the period of the Trace_time_range information, which is the time during which the coordinate input history is valid, within the range applicable to the first candidate condition, the second candidate condition, and the third candidate condition. Extract the coordinates that have been made.
- the pattern lock control unit 10 calculates a range in which Candidate_point_margin information indicating an error allowed when evaluating the candidate of the display position of the point is added to the extracted coordinates, and from among the coordinates that do not overlap with the calculated range
- the candidate coordinates of the display position for the candidate calculation target point are acquired at random (S307).
- the number of candidate coordinates acquired here is determined based on Candidate_point_num information, which is the number of candidates evaluated when determining the display position of the point.
- step S302 determines the next candidate calculation target point.
- step S308 shown in 11B.
- the pattern lock control unit 10 creates a combination of candidate coordinates acquired for a plurality of points, and creates a locus drawn by the release pattern for each combination. The number of unused coordinates through which the created trajectory passes is calculated, and the number of intersections between the created trajectory and the trajectory for which the previous pattern lock was released is calculated. From the created point combinations, determine the combination of points with a large number of unused coordinates and a large number of intersections with the trajectory for which pattern lock was released previously, and set the coordinates of each point as Next_location information. Store (S308).
- the pattern lock control unit 10 stores the coordinates stored in the Next_location information in the Current_location information (S309).
- the pattern lock control unit 10 refers to the Current_location information, determines coordinates for displaying a plurality of points, and displays the plurality of points on the display 6.
- a plurality of points are displayed at non-similar positions with respect to the positions of the plurality of points at which the lock pattern input displayed previously is performed.
- (Fourth embodiment) 12A, 12B, and 12C are examples of a flowchart of pattern lock control of the mobile terminal 100 according to the fourth embodiment.
- the pattern lock control unit 10 of the portable terminal 100 determines coordinates for displaying a plurality of points with reference to the Current_location information stored in the table indicating the display positions and release patterns of points shown in FIG. The points are displayed on the display 6 (S401).
- the pattern lock control unit 10 initializes information on the point input state (S402). Specifically, the input information stored in the table indicating the display position and release pattern of points shown in FIG. 6 is all set to 0, so that no input is made for each point. Wait until a touch input by the user is detected (S403).
- the pattern lock control unit 10 determines whether the touched coordinates are the same as any of the coordinates of the plurality of points displayed in step S401 (S404). When it is determined that the touched coordinates are not the same as any of the coordinates of the plurality of points (S404, No), the process of step 405 shown in FIG. 12B is performed. The pattern lock control unit 10 determines whether or not the touch input is released (S405). When the touch input is moved without being released (S405, No), the pattern lock control unit 10 performs the process of step S404 illustrated in FIG. 12A again.
- step S404 when it is determined that the touched coordinate is the same as any of the coordinates of the plurality of points (S404, Yes), the pattern lock control unit 10 has already touched the point in the current process. It is determined whether or not the touched point (S406). The pattern lock control unit 10 determines whether the input information of the touched point is not 0 or 0. If the touched point is a point that has already been touched in this processing (Input ⁇ 0) (S406, Yes), it is determined whether or not the touch input has been released (S405). When the touch input is moved without being released (S405, No), the pattern lock control unit 10 determines whether or not the touched coordinates are the same as any of a plurality of points.
- the pattern lock control unit 10 changes the display of the touched point. Specifically, the color of the point is changed (S407).
- the pattern lock control unit 10 stores, in the input information of the touched point, a value obtained by adding 1 to the value of the maximum input information among all the input information stored in the table (S408).
- the pattern lock control unit 10 connects the previous point and the display with a line (S409). That is, the pattern lock control unit 10 performs display connected with points having a value obtained by subtracting 1 from the maximum input information among the input information.
- the pattern lock control unit 10 determines whether or not the value stored in the Transform_order information matches the value stored in the Input information (S410). When it is determined that the value stored in the Transform_order information and the value stored in the Input information do not match (S410, No), the process of step S405 shown in FIG. 12B is performed. The pattern lock control unit 10 determines whether or not the touch input is released (S405). At this time, the pattern lock control unit 10 temporarily prohibits acceptance of touch input.
- step S411 shown in FIG. 12C uses the coordinate information of the plurality of points stored in the Transform_location information to change the display positions of the plurality of points and display them on the display 6 (S411).
- the pattern lock control unit 10 changes the color of the already touched point (Input ⁇ 0) based on the input information, displays lines connecting the points based on the touched order (S412), and again. Then, the process of step S403 shown in FIG. 12A is performed. The pattern lock control unit 10 waits for a user's touch input (S403).
- step S404 when it is determined that the touched coordinate is not the same as any of the coordinates of the plurality of points (No in S404), the pattern lock control unit 10 determines whether or not the touch input is released ( S405). When it is determined that the touch input is released (S405, Yes), the pattern lock control unit 10 determines whether or not the input point pattern is the same as the release pattern (S413). It is determined whether the input information stored in the table indicating the point display position and the release pattern shown in FIG. 6 matches the Order information. When the input information and Order information stored in the table indicating the point display position and the cancellation pattern match (S413, Yes), the input pattern is the same as the cancellation pattern. Therefore, the pattern lock control unit 10 releases the pattern lock (S414).
- the pattern lock control unit 10 If the input information stored in the table indicating the point display position and the release pattern does not match the Order information (S413, No), the pattern lock control unit 10 returns the point color to the initial value (S415). The line displayed between them is deleted (S416), the value of Input information is all updated to 0 (S417), and the process of step S403 shown in FIG. 12A is performed again.
- FIG. 13A and FIG. 13B are examples of a flowchart for calculating Transform_location information referred to in order to determine coordinates for changing coordinates for displaying a plurality of points during pattern lock release according to the fourth embodiment.
- the pattern lock control unit 10 of the mobile terminal 100 calculates the coordinates of a plurality of points one by one.
- the pattern lock control unit 10 stores the calculation order of points in Array_point_ID [n], and stores the calculated coordinates of each point in Transform_location information.
- the pattern lock control unit 10 of the mobile terminal 100 randomly determines an ID of a point as a starting point (S501), and repeats the following processing for the number of points, thereby calculating display position candidate coordinates for all points. .
- the pattern lock control unit 10 acquires Model_location information corresponding to the reference point ID determined in step S501 and Model_location information corresponding to a point whose display position candidate coordinates have not yet been calculated.
- the pattern lock control unit 10 calculates the distance between the reference point and each point for which the display position candidate coordinates have not been calculated yet, based on each referenced Model_location information, and the point with the largest distance is a candidate calculation target Points are set (S502).
- the pattern lock control unit 10 calculates the difference between the X component and Y component of the Model_location information of the reference point and the X component and Y component of the Model_location information of the candidate calculation target point determined in step S502 (S503). .
- the pattern lock control unit 10 calculates the distance based on each value obtained by multiplying each of the X component and Y component of the Model_location information of the candidate calculation target point calculated in step S503 and the Min_point_range information.
- a range in which the distance between the coordinates of the candidate calculation target point and the coordinates of the reference point is equal to or greater than the calculated distance is set as a first candidate condition (S504).
- the pattern lock control unit 10 determines the second candidate condition from the Model_location information of each point where the relative position between the reference point and the candidate calculation target point is defined, and the already calculated reference point candidate coordinates ( S505). As the coordinate position on the display screen of the starting point, the Current_location information is used, or a coordinate position set in advance in relation to the Model_location information is used.
- the pattern lock control unit 10 extracts the coordinates where the touch input is made within the period of the Trace_time_range information, which is the time during which the coordinate input history is valid, in the range corresponding to the first candidate condition and the second candidate condition. To do.
- the pattern lock control unit 10 calculates a range in which Candidate_point_margin information indicating an error allowed when evaluating the candidate of the display position of the point is added to the extracted coordinates, and from among the coordinates that do not overlap with the calculated range
- the candidate coordinates of the display position with respect to the candidate calculation target point are acquired at random (S506).
- the number of candidate coordinates acquired here is determined based on Candidate_point_num information, which is the number of candidates evaluated when determining the display position of the point.
- the pattern lock control unit 10 When acquiring the candidate coordinates of the candidate calculation target point, the pattern lock control unit 10 returns to step S502 and determines the next candidate calculation target point. When candidates are acquired for all points, the process proceeds to step S507 shown in FIG. 13B.
- the pattern lock control unit 10 creates a combination of candidate coordinates acquired for a plurality of points, and creates a locus drawn by the release pattern for each combination.
- the number of unused coordinates through which the created trajectory passes is calculated, and the number of intersections between the created trajectory and the trajectory for which the previous pattern lock was released is calculated.
- a combination of points having a large number of unused coordinates and a large number of intersections with the locus for which pattern lock was released last time is determined from the created combinations of points (S507).
- the pattern lock control unit 10 stores the determined combination of a plurality of points in the Transform_location information (S508).
- the pattern lock control unit 10 refers to the Current_location information, determines coordinates for displaying a plurality of points, and displays the plurality of points on the display 6.
- a plurality of points are displayed at non-similar positions with respect to the positions of the plurality of points at which the previously displayed lock pattern input is performed.
- the risk of guessing a pattern to be used for unlocking is reduced even if it is stolen by a third party.
- (Fifth embodiment) 14A and 14B are examples of a flowchart of pattern lock control of the mobile terminal 100 according to the fifth embodiment.
- the pattern lock control unit 10 of the portable terminal 100 determines coordinates for displaying a plurality of points with reference to the Current_location information stored in the table indicating the display positions and release patterns of points shown in FIG. The points are displayed on the display 6 (S601).
- the pattern lock control unit 10 initializes information on the point input state (S602). Specifically, the input information stored in the table indicating the display position and release pattern of points shown in FIG. 6 is all set to 0, so that no input is made for each point. It waits until a touch input by the user is detected (S603).
- the pattern lock control unit 10 calculates a locus drawn by the release pattern from the display coordinates of the displayed points and Order information.
- the pattern lock control unit 10 extracts a first point and a second point that are considered to pass through the locus of the calculated release pattern.
- the Order information of the first point and the second point is 0 or smaller than the Order information of the next passing point.
- the determination range in which it is determined that the first point and the second point are touch-input is reduced (S604). ).
- the pattern lock control unit 10 determines that a touch input is made to each of the plurality of points when a predetermined range is touched from the displayed coordinates. For example, when the plurality of points are displayed on the screen, a circular image indicating the determination range is displayed, and the user performs touch input using the image as an index.
- the pattern lock control unit 10 determines whether the touched coordinates are the same as any of the coordinates of the plurality of points displayed in step S601 (S605). If it is determined that the touched coordinates are not the same as any of the coordinates of the plurality of points (S605, No), it is determined whether or not the touch input has been released (S606). When the touch input is moved without being released (S606, No), the process of step S604 is performed.
- the pattern lock control unit 10 determines that the touched point has already been touched in the current process. It is determined whether or not (S607). The pattern lock control unit 10 determines whether the input information of the touched point is not 0 or 0. If the touched point is a point already touched in this process (Input ⁇ 0) (S607, Yes), it is determined whether or not the touch input has been released (S606). When the touch input is moved without being released (S606, No), the process of step S604 is performed.
- the pattern lock control unit 10 changes the display of the touched point. Specifically, the color of the point is changed (S608).
- the pattern lock control unit 10 stores, in the input information of the touched point, a value obtained by adding 1 to the value of the maximum input information among all the input information stored in the table (S609).
- the pattern lock control unit 10 connects the previous point and the display with a line (S610). That is, the pattern lock control unit 10 performs display connected with points having a value obtained by subtracting 1 from the maximum input information among the input information.
- the pattern lock control unit 10 determines whether or not the touch input is released (S606). When it is determined that the touch input is released (S606, Yes), the pattern lock control unit 10 performs the process of step S611 illustrated in FIG. 14B. The pattern lock control unit 10 determines whether or not the input point pattern is the same as the release pattern (S611). It is determined whether the input information stored in the table indicating the point display position and the release pattern shown in FIG. 6 matches the Order information. If the input information stored in the table indicating the point display position and the release pattern matches the Order information (Yes in S611), the input pattern is the same as the release pattern, so that the user is an authorized user. Therefore, the pattern lock control unit 10 releases the pattern lock (S612).
- the pattern lock control unit 10 When the input information stored in the table indicating the point display position and the release pattern does not match the Order information (S611, No), the pattern lock control unit 10 returns the point color to the initial value (S613). The line displayed between them is deleted (S614), the value of Input information is all updated to 0 (S615), and the process of step S603 shown in FIG. 14A is performed again.
- the fifth embodiment by determining the Current_location information, it is possible to display a plurality of points at non-similar positions with respect to the positions of the plurality of points at which the lock pattern input displayed previously is performed.
- the risk of guessing a pattern to be used for unlocking is reduced even if it is stolen by a third party.
- the point display interval is narrow, and it is possible to suppress an unintended touch input to an incorrect point.
- the electronic device is applied to the mobile terminal 100 such as a smartphone or a tablet computer.
- the present invention is not limited to this, and the electronic device is also applied to a desktop computer or the like. be able to.
- Antenna 2 Wireless communication unit 3: CPU 4: Flash memory 5: Main memory 6: Display 7: Touch panel 10: Pattern lock control unit 11: First storage unit 12: Coordinate input history information 13: Point display position / release pattern information 14: Point display position change information 15: Second storage unit 16: display unit 17: display control unit 18: touch input detection unit 19: touch input control unit 100: portable terminal
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Telephone Function (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
【課題】解除パターンの秘匿性が不十分である。 【解決手段】タッチパネルに表示された複数のポイントの少なくとも一部を通る、ユーザがタッチ入力した第1パターンと、予め登録された、複数のポイントの少なくとも一部を通る順序が規定された第2パターンとを比較することで電子機器のロックを解除するロック解除方法であって、前記複数のポイントが前回表示された第1位置に対し非相似な第2位置に前記複数のポイントを表示し、前記第2の位置に表示された前記複数のポイントの少なくとも一部を通る前記第1パターンを取得し、取得した前記第1パターンと前記第2パターンとが一致するか否かを判定することを特徴とするロック解除方法。
Description
本技術は、電子機器、ロック解除方法およびロック解除プログラムに関する。
近年、タッチパネルを有する携帯電話端末、携帯情報端末、タブレット型端末等の電子機器が多用されている。電子機器において、第三者に電子機器が操作された際に、端末内部もしくは端末からアクセス可能なネットワーク上の情報が漏えいすることや、不正な操作が行われること等を防止するためのセキュリティの必要性が高まっている。
このような電子機器では、上記のセキュリティを考慮して、例えば一定時間以上操作されなかった場合に画面ロックがかかり、使用を再開するには所定の操作を行ってロックを解除することを必要とすることが一般的である。この画面ロックには、タッチパネル上で入力した軌跡によるパターンが所定のパターンに対応する場合に電子機器のロックを解除するという技術がある。例えば、携帯端末向けOSである、Android(登録商標)を搭載した携帯端末では、タッチパネル上に3×3の格子状に表示された9つのポイントをなぞることで得られる軌跡によるパターンが、予め登録されているものと合致した場合に画面ロックを解除するものがある(以下ではこれらの仕組みを総称して「パターンロック」と記載する)。
パターンロックを用いた画面ロックの機能として、例えば特許文献1に記載されているように、タッチパネル上に格子状に表示された9つのポイントなどのガイド表示の表示位置、大きさ、向きを画面ロックの解除時に毎回変更し、指紋跡から第三者によるパターンの推測を困難にするものが開示されている。
また、画面ロックの解除に限らず、ユーザのプライベートな情報へアクセスする場合などにもパターンロックを用いてユーザの認証を行い、アクセスを許可する技術がある。
電子機器のタッチパネル上に格子状に表示された9つのポイントなどのガイド表示の表示位置、大きさ、向きを画面ロックの解除時に変更するのみでは、第三者にユーザのタッチ入力動作を盗み見られた場合、タッチ入力動作から解除パターンを推測されてしまう危険性がある。
本発明は、上記の問題点を鑑みたものであり、ユーザがパターンを入力する際に、第三者により盗み見られても、ロック解除に用いるパターンを推測される危険性が低減される電子機器、ロック解除方法およびロック解除プログラムを提供することを目的とする。
開示の技術の一観点によれば、タッチパネルに表示された複数のポイントの少なくとも一部を通る、ユーザがタッチ入力した第1パターンと、予め登録された、複数のポイントの少なくとも一部を通る順序が規定された第2パターンとを比較することで電子機器のロックを解除するロック解除方法であって、前記複数のポイントが前回表示された第1位置に対し非相似な第2位置に前記複数のポイントを表示し、前記第2の位置に表示された前記複数のポイントの少なくとも一部を通る前記第1パターンを取得し、取得した前記第1パターンと前記第2パターンとが一致するか否かを判定することを特徴とするロック解除方法が提供される。
開示の技術の一観点によれば、ユーザがパターンを入力する際に、第三者により盗み見られても、ロック解除に用いるパターンを推測される危険性が低減される電子機器、ロック解除方法およびロック解除プログラムを提供することができる。
従来技術では、電子機器のタッチパネル上に格子状に表示された9つのポイントなどのガイド表示の表示位置、大きさ、向きを画面ロックの解除時に変更することで、タッチパネル上に残る指紋跡からロック解除に用いる予め登録されたパターンが第三者に推測される危険性を低減している。しかしながら、9つのポイントの表示位置、大きさ、向きを変更した際に入力されるタッチ入力による軌跡のパターンは、予め登録されたパターンと相似したパターンとなる。このため、本件発明者は、ユーザがパターンを入力する際に、第三者により盗み見られた場合、ユーザが入力した軌跡の形状から、解除パターンが推測されてしまうことが考えられることから、従来技術では、解除パターンの秘匿性が不十分であると考えた。
本件では、軌跡の形状を盗み見られても解除パターンを類推されない、秘匿性の高いパターンロック解除方法を提供する。
以下に、電子機器およびロック解除方法の実施例を図面に基づいて詳細に説明する。なお、この実施例は、開示の技術を限定するものではない。
(第1の実施形態)
図1は、第1の実施形態に係る携帯端末のハードウェア構成の概略図である。第1の実施形態では、携帯端末100として、例えば、スマートフォンやフィーチャーフォンなどの携帯電話機、タブレットコンピュータ、パーソナルコンピュータ等を使用してもよい。
図1は、第1の実施形態に係る携帯端末のハードウェア構成の概略図である。第1の実施形態では、携帯端末100として、例えば、スマートフォンやフィーチャーフォンなどの携帯電話機、タブレットコンピュータ、パーソナルコンピュータ等を使用してもよい。
携帯端末100は、所定の処理を実行する前に、ユーザの認証を行う。所定の処理は、例えば、携帯端末100のロックを解除する処理や、ユーザのプライベートなデータにアクセスする処理などである。
図1に示すように、携帯端末100は、ハードウェアの構成要素として、アンテナ1に接続される無線通信部2と、CPU3と、フラッシュメモリ4と、メインメモリ5と、画面を表示するディスプレイ6と、指やタッチペンなどによる入力を検出するタッチパネル7とを有する。これらのハードウェアモジュール(ハードウェアの構成要素)は、例えば、バスにより相互接続される。携帯端末100は、タッチパネル7とディスプレイ6が重ねて設けられた表示領域を有する。
無線通信部2は、外部装置と通信するための手段である。無線通信部は、本実施形態においては、移動通信網等のネットワークに接続するための手段である。なお、無線通信部2は、本発明にあっては必須ではない。
フラッシュメモリ4は、CPU3により実行される各種プログラムを格納する。フラッシュメモリ4は、電源を切ってもデータが消えない不揮発性のメモリである。各種プログラムとしては、例えば、携帯端末100が実行するアプリケーションプログラムやOS(Operation System)などがあり、これらは携帯端末100の電源が切れてもフラッシュメモリ4に保持される。
メインメモリ5は、CPU3が、フラッシュメモリ4内のOSなどのデータを展開する記憶領域として用いられる。例えば、RAM(Random Access Memory)などを使用してもよい。
CPU3は、フラッシュメモリ4に格納された各種プログラムを読み出して、各種プログラムを実行することで、後述するパターンロック制御を行うパターンロック制御部10として動作する。
携帯端末100は、フラッシュメモリ4内にOSを格納する。携帯端末100の電源が入れられると、CPU3が、フラッシュメモリ4内のOSのデータをメインメモリ5に展開し、OSで予め定義されているプログラムが実行され、画面表示が行われる。画面表示が行われた後に、ユーザの操作待ち状態となり、ユーザが携帯端末100を操作が検出された際に、CPU3に割り込み処理が入り、ユーザの操作に対して、OSで予め定義された処理が実行される。
ディスプレイ6は、液晶素子や有機EL(ElectroLuminescence)素子により画像を表示する表示パネルと、表示パネルを駆動する駆動回路等を有する。タッチパネル7は、ディスプレイ6の表示面に重ねて設けられるセンサを有し、ユーザに指示された位置を表す座標情報をパターンロック制御部10に供給する。タッチパネル7のセンサは、例えば、指との静電結合を利用して指を感知する静電容量方式のセンサである。
次に、第1の実施形態に係る携帯端末100の機能ブロックについて説明する。図2は、第1の実施形態に係る携帯端末100の機能ブロック図である。
図2に示すように、携帯端末100は、以下の機能ブロックを有する。携帯端末100は、CPU3がフラッシュメモリ4に格納された各種プログラムを読み出して、各種プログラムを実行することで、後述するパターンロック制御を行うパターンロック制御部10と、フラッシュメモリ4を用いて各種プログラムを格納する第1記憶部11と、メインメモリ5を用いて、後述する座標入力履歴情報12、ポイント表示位置・解除パターン情報13及び、ポイント表示位置変更情報14を格納する第2記憶部15とを有する。また、携帯端末100は、画面を表示するディスプレイ6による表示部16を制御する表示制御部17と、タッチパネル7によるタッチ入力検出部18への入力の検出を制御するタッチ入力制御部19とを有する。
第1の実施形態において、パターンロック制御部10は、パターンロック解除に際して、パターン入力の目安となる複数のポイントをディスプレイ6に表示させる。パターンロック制御部10は、複数のポイントの少なくとも一部を通る順序が規定されたパターン(以下、解除パターン)と、ユーザが入力した入力パターンとを比較し、解除パターンと、入力パターンとが一致する場合に、携帯端末100のロックを解除する。
パターンロック制御部10は、前回表示したパターン入力が行われる複数のポイントの位置に対して、複数のポイントを非相似な位置に表示する制御を行う。これによって、携帯端末100は、ユーザがパターンを入力する際に、第三者により盗み見られても、パターンロック解除に用いるパターンを推測されることを防止する。
図3は、パターンロック解除に際してディスプレイに表示される複数のポイントを例示する図である。
パターンロック制御部10は、第2記憶部15に格納される座標入力履歴情報12、ポイント表示位置・解除パターン情報13、ポイント表示位置変更情報14を用いて、パターン入力の目安となる複数のポイントの座標位置を決定し、表示制御部17に対して表示部16に複数のポイントを表示させる処理を行う。一例として、複数のポイントは、縦方向及び横方向に3個ずつ、計9個が格子状に配置される。ユーザは、携帯端末100に対して、これらの9個のポイントの一部または全部を所定の順序でなぞるパターンをタッチ入力することによってパターンロックの解除を行わせる。図3の破線は、A7→A4→A1→A5→A9→A6→A3という順序でユーザの指などを移動させた軌跡である。ユーザの指が移動した軌跡が、解除パターンと一致した場合は、パターンロック制御部10は、パターンロックを解除する。
次に、図4、図5を用いてパターンロック解除に際してタッチ入力される座標情報について説明する。
図4は、タッチパネル7の座標を示す図である。説明のために、分解能が7×8のタッチパネルをモデルとして示してある。座標を(X,Y)として表すと、タッチ入力検出部18で検出されるタッチ入力が描く軌跡が、図4に示す破線となる場合、タッチ入力制御部19は、座標入力履歴情報12に、(2,2)→(2,3)→(2,4)→(2,5)→(2,6)→(2,7)→(2,8)→(3,8)→(3,7)→(3,6)→(4,6)→(4,5)→(4,4)→(5,4)→(5,3)→(5,2)→(6,2)→(6,3)→(6,4)→(6,5)→(6,6)→(6,7)という座標を格納する。このとき、タッチ入力制御部19は、タッチ入力検出部18によってタッチ入力が検出された座標情報とタッチ入力された時間を示すタイムスタンプとを座標入力履歴情報12に格納する。図5に座標入力履歴情報12を表す座標入力履歴テーブルを示す。
図5は、タッチ入力された座標の入力履歴を示す座標入力履歴テーブルである。座標入力履歴テーブルは、図4に示した破線をユーザが指でなぞった場合の座標情報と、座標情報が入力された時間を示したタイムスタンプとを格納したテーブルである。2014/2/19 17:18:11.0000000に、座標(2,2)への入力があったことを示す。以下、タッチ入力された順にデータが追加されている。
次に、パターンロック解除に際して、パターン入力の目安となる複数のポイントの表示位置と、ユーザによって入力されたパターンと比較する解除パターンを示すテーブルについて説明する。
図6は、ポイントの表示位置と解除パターンを示すテーブルである。当該テーブルは、第2記憶部15にポイント表示位置・解除パターン情報として格納される。パターンロック制御部10は、当該テーブルを用いて、複数のポイントの表示位置を決定し、ユーザによって入力されたパターンが解除パターンと一致するか否か判定する。
テーブルに示した各項目について説明する。複数のポイント、ここでは9個のポイントは、それぞれA1~A9のID情報が振られている。Order情報は、解除パターンの通過順序を示すものである。図3の破線で示した、A7→A4→A1→A5→A9→A6→A3という順序に該当する。Input情報は、ユーザが入力したパターンがそれぞれのポイントに対して、通過した順序を格納するものである。
Model_location情報は、9個のポイントの相対的な位置関係を示す位置情報である。Default_location情報は、9個のポイントを画面上に表示する初期の座標情報を示す座標情報である。Current_location情報は、現在表示している9個のポイントの座標情報である。Next_location情報は、次回、9個のポイントを表示するための座標情報である。Transform_location情報は、パターン入力中に、9個のポイントの表示位置を変更する際に用いる座標情報である。
パターンロック制御部10は、Next_location情報に格納された座標情報に基づき9個のポイントをディスプレイ6に表示させ、Input情報に格納された、ユーザによって入力されたパターンの通過順序が、Order情報に格納された解除パターンの通過順序と一致するか否か判定する。
(パターンロック制御方法)
携帯端末100のパターンロック制御部10は、表示された複数のポイントの少なくとも一部を通るユーザが入力したパターンと、予め登録された、複数のポイントの少なくとも一部を通過する順序が規定された解除パターンとの比較により携帯端末100のロックを解除する。パターンロック制御部10は、複数のポイントが前回表示された第1位置に対し非相似な第2位置に複数のポイントを表示し、第2位置に表示され、少なくとも一部の複数ポイントへのユーザの入力パターンと、複数のポイントの少なくとも一部を通る順序が規定されたパターンとの比較により、携帯端末100のロック解除の判定を行う。
携帯端末100のパターンロック制御部10は、表示された複数のポイントの少なくとも一部を通るユーザが入力したパターンと、予め登録された、複数のポイントの少なくとも一部を通過する順序が規定された解除パターンとの比較により携帯端末100のロックを解除する。パターンロック制御部10は、複数のポイントが前回表示された第1位置に対し非相似な第2位置に複数のポイントを表示し、第2位置に表示され、少なくとも一部の複数ポイントへのユーザの入力パターンと、複数のポイントの少なくとも一部を通る順序が規定されたパターンとの比較により、携帯端末100のロック解除の判定を行う。
具体的なパターンロック制御方法について、図7A、図7Bを用いて説明する。図7A、図7Bは、第1の実施形態に係る携帯端末100のパターンロック制御のフローチャートの一例である。
携帯端末100のパターンロック制御部10は、図6に示したポイントの表示位置と解除パターンを示すテーブルに格納されるCurrent_location情報を参照して、複数のポイントを表示する座標を決定し、複数のポイントをディスプレイ6に表示させる(S001)。
パターンロック制御部10は、ポイントの入力状態の情報を初期化する(S002)。具体的には、図6に示したポイントの表示位置と解除パターンを示すテーブルに格納されるInput情報を全て0にすることによって、それぞれのポイントに対し入力がなされていない状態となる。ユーザによるタッチ入力が検出されるまで待機する(S003)。
タッチパネル7に対するタッチ入力が検出された場合、パターンロック制御部10は、タッチされた座標がステップS001において表示した複数のポイントのいずれかの座標と同一か否かを判定する(S004)。タッチされた座標が複数のポイントのいずれかの座標と同一でないと判定された場合(S004,No)、タッチ入力が解除されたか否かを判定する(S005)。タッチ入力が解除されず移動した場合(S005,No)、パターンロック制御部10は、再度タッチされた座標が複数のポイントのいずれかの座標と同一か否かを判定する。
タッチされた座標が複数のポイントのいずれかの座標と同一であると判定された場合(S004,Yes)、パターンロック制御部10は、タッチされたポイントが、今回の処理で既にタッチされたポイントであるか否かを判定する(S006)。パターンロック制御部10は、タッチされたポイントのInput情報が0でないか0かを判定する。タッチされたポイントが、今回の処理ですでにタッチされたポイントである場合(Input≠0)(S006,Yes)、タッチ入力が解除されたか否かを判定する(S005)。タッチ入力が解除されず移動した場合(S005,No)、パターンロック制御部10は、再度タッチされた座標が複数のポイントのいずれかの座標と同一か否かを判定する。
タッチされたポイントが、今回の処理で既にタッチされたポイントでない場合(Input=0)(S006,No)、パターンロック制御部10は、タッチされたポイントの表示を変更する。具体的には、ポイントの色を変更する(S007)。
次に、パターンロック制御部10は、タッチされたポイントのInput情報に、テーブルに格納された全てのInput情報のうちの最大のInput情報の値に1を加算した値を格納する(S008)。
続いて、パターンロック制御部10は、ひとつ前のポイントと表示を線で結ぶ(S009)。つまり、パターンロック制御部10は、Input情報のうち最大のInput情報から1を減算した値を持つポイントと線で結ぶ表示を行う。
制御部10は、タッチ入力が解除されたか否かを判定する(S005)。タッチ入力が解除されたと判定された場合(S005,Yes)、パターンロック制御部10は、入力されたポイントのパターンと、解除パターンが同一であるか否かを判定する(S010)。ステップS010以降は図7Bに示す。図6に示したポイントの表示位置と解除パターンを示すテーブルに格納されたInput情報とOrder情報とが一致するかを判定する。ポイントの表示位置と解除パターンを示すテーブルに格納されたInput情報とOrder情報とが一致した場合(S010,Yes)、入力されたパターンと、解除パターンが同一であるため、正規のユーザであるとみなし、パターンロック制御部10は、パターンロックを解除する(S011)。ポイントの表示位置と解除パターンを示すテーブルに格納されたInput情報とOrder情報とが一致しない場合(S010,No)、パターンロック制御部10は、ポイントの色を初期値に戻し(S012)、ポイント間に表示されている線を消去し(S013)、Input情報の値を全て0に更新し(S014)、再度、図7Aに示したステップS003に示したユーザのタッチ入力を待機する処理を行う。
ここで、図8、図9Aおよび図9Bを用いて複数のポイントを表示する座標を決定するために参照されるCurrent_location情報の算出方法を説明する。
図8は、ポイント表示位置変更情報を示すテーブルである。当該テーブルは、ポイント表示位置変更情報として、以下の情報を格納する。
当該テーブルには、複数のポイント間であけなければならない最小の間隔であるMin_point_range情報、座標入力履歴が有効となる時間(秒)であるTrace_time_range情報、複数のポイントの表示位置の変更を行うポイントの順序情報であるTransform_order情報、複数のポイントの表示の拡大または縮小を行う場合の倍率の限度(%)であるTransform_zoom情報、複数のポイントの表示の回転を行う場合の角度の限度(°)であるTransform_angle情報、ポイントの表示位置を決定する際に評価される候補の数であるCandidate_point_num情報、ポイントの表示位置の候補を評価する際に許容する誤差を示すCandidate_point_margin情報が格納される。
パターンロック制御部10は、ポイント表示位置変更情報を用いて、複数のポイントを表示する座標を決定する。
なお、第1の実施形態の携帯端末100において、ポイント表示位置変更情報テーブルに、Transform_order情報、Transform_zoom情報、およびTransform_angle情報は格納されなくともよい。
図9Aおよび図9Bは、第1の実施形態に係る複数のポイントを表示する座標を決定するために参照されるCurrent_location情報を算出するフローチャートの一例である。
携帯端末100のパターンロック制御部10は、複数のポイントの座標を一つずつ算出する。パターンロック制御部10は、ポイントの算出順を、Array_point_ID[n]に格納し、算出された各ポイントの座標をNext_location情報に格納する。
携帯端末100のパターンロック制御部10は、始点とするポイントのIDをランダムに決定し(S101)、以下の処理をポイントの数だけ繰り返すことにより、全てのポイントに対する表示位置の候補座標を算出する。
パターンロック制御部10は、ステップS101で決定された始点となるポイントまたは既に表示位置の候補座標が算出されたポイント(以下、基準ポイントとして説明する)のIDに対応するModel_location情報と、まだ表示位置の候補座標が算出されていないポイントに対応するModel_location情報とを取得する。パターンロック制御部10は、参照したそれぞれのModel_location情報を基に、基準ポイントとまだ表示位置の候補座標が算出されていないそれぞれのポイントとの距離を算出し、もっとも距離が大きいポイントを今回、表示位置の候補座標を算出するポイント(以下、候補算出対象ポイント)とする(S102)。例えば、基準ポイントのIDがA1であった場合、基準ポイントA1のModel_location情報は[1,3]であり、もっとも距離が大きいポイントは、算出された距離が2√2となるポイントA9がもっとも距離が大きいポイントとなり、ポイントA9が候補算出対象ポイントとなる。基準ポイントとの距離が同一のポイントが複数ある場合は、その中からランダムで候補算出対象ポイントを決定する。
パターンロック制御部10は、基準ポイントのModel_location情報のX成分およびY成分と、ステップS102で決定された候補算出対象ポイントのModel_location情報のX成分およびY成分とのそれぞれの差分を算出する(S103)。例えば、基準ポイントのIDがA1、候補算出対象ポイントがA9である場合、パターンロック制御部10は、図6のテーブルから、基準ポイントA1のModel_location情報のX成分およびY成分が[1,3]、候補算出対象ポイントA9のModel_location情報のX成分およびY成分が[3,1]であることを取得する。次に、それぞれのX成分とY成分の差分の絶対値を求めることにより、X成分の差分が2、Y成分の差分が2であることが算出される。
パターンロック制御部10は、ステップS103で算出された候補算出対象ポイントのModel_location情報のX成分およびY成分のそれぞれとMin_point_range情報とを乗じたそれぞれの値を基に、距離を算出する。候補算出対象ポイントの座標と、基準ポイントの座標との距離が算出した距離以上となる範囲を第1の候補条件とする(S104)。
パターンロック制御部10は、基準ポイントと候補算出対象ポイントとの相対位置が規定されたそれぞれのポイントのModel_location情報と、既に算出された基準ポイントの候補座標とから、第2の候補条件を定める(S105)。始点となるポイントの表示画面上の座標位置は、Current_location情報を用いるか、Model_location情報に関連して予め設定された座標位置を用いる。
パターンロック制御部10は、第1の候補条件と第2の候補条件にあてはまる範囲の中で、座標入力履歴が有効となる時間であるTrace_time_range情報の期間内にタッチ入力がなされている座標を抽出する。パターンロック制御部10は、抽出された座標に、ポイントの表示位置の候補を評価する際に許容する誤差を示すCandidate_point_margin情報を付加した範囲を算出し、算出された範囲と重複しない座標の中からランダムに、候補算出対象ポイントに対する表示位置の候補座標を取得する(S106)。ここで取得される候補座標の数は、ポイントの表示位置を決定する際に評価される候補の数であるCandidate_point_num情報を基に決定される。
パターンロック制御部10は、候補算出対象ポイントの候補座標を取得すると、再び、ステップS102に戻り次の候補算出対象ポイントを決定する。全てのポイントに対し、候補を取得した場合、図9Bに示したステップS107の処理に進む。
パターンロック制御部10は、複数のポイントに対して取得された候補座標の組み合わせを作成し、それぞれの組み合わせに対し、解除パターンが描く軌跡を作成する。作成した軌跡が通る未使用座標の数を算出し、作成した軌跡と前回パターンロックの解除を行った軌跡との交点の数を算出する。作成されたポイントの組み合わせの中から未使用座標の数が多く、かつ前回パターンロックの解除を行った軌跡との交点の数が多いポイントの組み合わせを判定し、それぞれのポイントの座標をNext_location情報に格納する(S107)。
パターンロック制御部10は、Next_location情報に格納された座標をCurrent_location情報に格納する(S108)。
パターンロック制御部10は、Current_location情報を参照して、複数のポイントを表示する座標を決定し、複数のポイントをディスプレイ6に表示させる。
以上のようにCurrent_location情報を決定することにより、前回表示したロックパターン入力が行われる複数のポイントの位置に対して、複数のポイントを非相似な位置に表示することができ、ユーザがパターンを入力する際に、第三者により盗み見られても、ロック解除に用いるパターンを推測される危険性が低減される。
(第2の実施形態)
図10Aおよび図10Bは、第2の実施形態に係る複数のポイントを表示する座標を決定するために参照されるCurrent_location情報を算出するフローチャートの一例である。第2の実施形態では、第2の候補条件を決定する際に、Transform_angle情報を用いて基準ポイントに対する角度の補正をかけて範囲を絞りこむ。
図10Aおよび図10Bは、第2の実施形態に係る複数のポイントを表示する座標を決定するために参照されるCurrent_location情報を算出するフローチャートの一例である。第2の実施形態では、第2の候補条件を決定する際に、Transform_angle情報を用いて基準ポイントに対する角度の補正をかけて範囲を絞りこむ。
なお、第2の実施形態の携帯端末100において、ポイント表示位置変更情報テーブルに、Transform_order情報、Transform_zoom情報は格納されなくともよい。
携帯端末100のパターンロック制御部10は、複数のポイントの座標を一つずつ算出する。パターンロック制御部10は、ポイントの算出順を、Array_point_ID[n]に格納し、算出された各ポイントの座標をNext_location情報に格納する。
携帯端末100のパターンロック制御部10は、始点とするポイントのIDをランダムに決定し(S201)、以下の処理をポイントの数だけ繰り返すことにより、全てのポイントに対する表示位置の候補座標を算出する。
パターンロック制御部10は、ステップS201で決定された基準ポイントに対応するModel_location情報と、まだ表示位置の候補座標が算出されていないポイントに対応するModel_location情報とを取得する。パターンロック制御部10は、参照したそれぞれのModel_location情報を基に、基準ポイントとまだ表示位置の候補座標が算出されていないそれぞれのポイントとの距離を算出し、もっとも距離が大きいポイントを候補算出対象ポイントとする(S202)。基準ポイントとの距離が同一のポイントが複数ある場合は、その中からランダムで候補算出対象ポイントを決定する。
パターンロック制御部10は、基準ポイントのModel_location情報のX成分およびY成分と、ステップS202で決定された候補算出対象ポイントのModel_location情報のX成分およびY成分とのそれぞれの差分を算出する(S203)。
パターンロック制御部10は、ステップS203で算出された候補算出対象ポイントのModel_location情報のX成分およびY成分のそれぞれとMin_point_range情報とを乗じたそれぞれの値を基に、距離を算出する。候補算出対象ポイントの座標と、基準ポイントの座標との距離が算出した距離以上となる範囲を第1の候補条件とする(S204)。
パターンロック制御部10は、基準ポイントと候補算出対象ポイントとの位置関係を角度で規定したTransform_angle情報と、既に算出された基準ポイントの候補座標とから、第2の候補条件を定める(S205)。始点となるポイントの表示画面上の座標位置は、Current_location情報を用いるか、Model_location情報に関連して予め設定された座標位置を用いる。
パターンロック制御部10は、第1の候補条件と第2の候補条件にあてはまる範囲の中で、座標入力履歴が有効となる時間であるTrace_time_range情報の期間内にタッチ入力がなされている座標を抽出する。パターンロック制御部10は、抽出された座標に、ポイントの表示位置の候補を評価する際に許容する誤差を示すCandidate_point_margin情報を付加した範囲を算出し、算出された範囲と重複しない座標の中からランダムに、候補算出対象ポイントに対する表示位置の候補座標を取得する(S206)。ここで取得される候補座標の数は、ポイントの表示位置を決定する際に評価される候補の数であるCandidate_point_num情報を基に決定される。
パターンロック制御部10は、候補算出対象ポイントの候補座標を取得すると、再び、ステップS202に戻り次の候補算出対象ポイントを決定する。全てのポイントに対し、候補を取得した場合、図10Bに示したステップS207の処理に進む。
パターンロック制御部10は、複数のポイントに対して取得された候補座標の組み合わせを作成し、それぞれの組み合わせに対し、解除パターンが描く軌跡を作成する。作成した軌跡が通る未使用座標の数を算出し、作成した軌跡と前回パターンロックの解除を行った軌跡との交点の数を算出する。作成されたポイントの組み合わせの中から未使用座標の数が多く、かつ前回パターンロックの解除を行った軌跡との交点の数が多いポイントの組み合わせを判定し、それぞれのポイントの座標をNext_location情報に格納する(S207)。
パターンロック制御部10は、Next_location情報に格納された座標をCurrent_location情報に格納する(S208)。
パターンロック制御部10は、Current_location情報を参照して、複数のポイントを表示する座標を決定し、複数のポイントをディスプレイ6に表示させる。
上記のようにCurrent_location情報を決定することにより、前回表示したロックパターン入力が行われる複数のポイントの位置に対して、複数のポイントを非相似な位置に表示することができ、ユーザがパターンを入力する際に、第三者により盗み見られても、ロック解除に用いるパターンを推測される危険性が低減される。
以上により、第2の実施形態によれば、Current_location情報を決定することにより、前回表示したロックパターン入力が行われる複数のポイントの位置に対して、複数のポイントを非相似な位置に表示することができ、ユーザがパターンを入力する際に、第三者により盗み見られても、ロック解除に用いるパターンを推測される危険性が低減される。
(第3の実施形態)
図11Aおよび図11Bは、第3の実施形態に係る複数のポイントを表示する座標を決定するために参照されるCurrent_location情報を算出するフローチャートの一例である。
図11Aおよび図11Bは、第3の実施形態に係る複数のポイントを表示する座標を決定するために参照されるCurrent_location情報を算出するフローチャートの一例である。
なお、第3の実施形態の携帯端末100において、ポイント表示位置変更情報テーブルに、Transform_order情報、Transform_angle情報は格納されなくともよい。
携帯端末100のパターンロック制御部10は、複数のポイントの座標を一つずつ算出する。パターンロック制御部10は、ポイントの算出順を、Array_point_ID[n]に格納し、算出された各ポイントの座標をNext_location情報に格納する。
携帯端末100のパターンロック制御部10は、始点とするポイントのIDをランダムに決定し(S301)、以下の処理をポイントの数だけ繰り返すことにより、全てのポイントに対する表示位置の候補座標を算出する。
パターンロック制御部10は、ステップS301で決定された基準ポイントのIDに対応するModel_location情報と、まだ表示位置の候補座標が算出されていないポイントに対応するModel_location情報とを取得する。パターンロック制御部10は、参照したそれぞれのModel_location情報を基に、基準ポイントとまだ表示位置の候補座標が算出されていないそれぞれのポイントとの距離を算出し、もっとも距離が大きいポイントを、候補算出対象ポイントとする(S302)。
パターンロック制御部10は、基準ポイントのModel_location情報のX成分およびY成分と、ステップS302で決定された候補算出対象ポイントのModel_location情報のX成分およびY成分とのそれぞれの差分を算出する(S303)。
パターンロック制御部10は、ステップS303で算出された候補算出対象ポイントのModel_location情報のX成分およびY成分のそれぞれとMin_point_range情報とを乗じたそれぞれの値を基に、距離を算出する。候補算出対象ポイントの座標と、基準ポイントの座標との距離が算出した距離以上となる範囲を第1の候補条件とする(S304)。
パターンロック制御部10は、基準ポイントと候補算出対象ポイントとの相対位置が規定されたそれぞれのポイントのModel_location情報と、既に算出された基準ポイントの候補座標とから、第2の候補条件を定める(S305)。始点となるポイントの表示画面上の座標位置は、Current_location情報を用いるか、Model_location情報に関連して予め設定された座標位置を用いる。
パターンロック制御部10は、始点のポイントから画面サイズにTransform_zoom情報をかけた位置を第3の候補条件とする(S306)。
パターンロック制御部10は、第1の候補条件、第2の候補条件および第3の候補条件にあてはまる範囲の中で、座標入力履歴が有効となる時間であるTrace_time_range情報の期間内にタッチ入力がなされている座標を抽出する。パターンロック制御部10は、抽出された座標に、ポイントの表示位置の候補を評価する際に許容する誤差を示すCandidate_point_margin情報を付加した範囲を算出し、算出された範囲と重複しない座標の中からランダムに、候補算出対象ポイントに対する表示位置の候補座標を取得する(S307)。ここで取得される候補座標の数は、ポイントの表示位置を決定する際に評価される候補の数であるCandidate_point_num情報を基に決定される。
パターンロック制御部10は、候補算出対象ポイントの候補座標を取得すると、再び、ステップS302に戻り次の候補算出対象ポイントを決定する。全てのポイントに対し、候補を取得した場合、11Bに示したステップS308の処理に進む。
パターンロック制御部10は、複数のポイントに対して取得された候補座標の組み合わせを作成し、それぞれの組み合わせに対し、解除パターンが描く軌跡を作成する。作成した軌跡が通る未使用座標の数を算出し、作成した軌跡と前回パターンロックの解除を行った軌跡との交点の数を算出する。作成されたポイントの組み合わせの中から未使用座標の数が多く、かつ前回パターンロックの解除を行った軌跡との交点の数が多いポイントの組み合わせを判定し、それぞれのポイントの座標をNext_location情報に格納する(S308)。
パターンロック制御部10は、Next_location情報に格納された座標をCurrent_location情報に格納する(S309)。
パターンロック制御部10は、Current_location情報を参照して、複数のポイントを表示する座標を決定し、複数のポイントをディスプレイ6に表示させる。
上記のようにCurrent_location情報を決定することにより、前回表示したロックパターン入力が行われる複数のポイントの位置に対して、複数のポイントを非相似な位置に表示することができ、ユーザがパターンを入力する際に、第三者により盗み見られても、ロック解除に用いるパターンを推測される危険性が低減される。
以上により、第3の実施形態によれば、Current_location情報を決定することにより、前回表示したロックパターン入力が行われる複数のポイントの位置に対して、複数のポイントを非相似な位置に表示することができ、ユーザがパターンを入力する際に、第三者により盗み見られても、ロック解除に用いるパターンを推測される危険性が低減される。
(第4の実施形態)
図12A、図12B、図12Cは、第4の実施形態に係る携帯端末100のパターンロック制御のフローチャートの一例である。
図12A、図12B、図12Cは、第4の実施形態に係る携帯端末100のパターンロック制御のフローチャートの一例である。
携帯端末100のパターンロック制御部10は、図6に示したポイントの表示位置と解除パターンを示すテーブルに格納されるCurrent_location情報を参照して、複数のポイントを表示する座標を決定し、複数のポイントをディスプレイ6に表示させる(S401)。
パターンロック制御部10は、ポイントの入力状態の情報を初期化する(S402)。具体的には、図6に示したポイントの表示位置と解除パターンを示すテーブルに格納されるInput情報を全て0にすることによって、それぞれのポイントに対し入力がなされていない状態となる。ユーザによるタッチ入力が検出されるまで待機する(S403)。
タッチパネル7に対するタッチ入力が検出された場合、パターンロック制御部10は、タッチされた座標がステップS401において表示した複数のポイントのいずれかの座標と同一か否かを判定する(S404)。タッチされた座標が複数のポイントのいずれかの座標と同一でないと判定された場合(S404,No)、図12Bに示したステップ405の処理を行う。パターンロック制御部10は、タッチ入力が解除されたか否かを判定する(S405)。タッチ入力が解除されず移動した場合(S405,No)、パターンロック制御部10は、再度、図12Aに示したステップS404の処理を行う。
ステップS404において、タッチされた座標が複数のポイントのいずれかの座標と同一であると判定された場合(S404,Yes)、パターンロック制御部10は、タッチされたポイントが、今回の処理で既にタッチされたポイントであるか否かを判定する(S406)。パターンロック制御部10は、タッチされたポイントのInput情報が0でないか0かを判定する。タッチされたポイントが、今回の処理ですでにタッチされたポイントである場合(Input≠0)(S406,Yes)、タッチ入力が解除されたか否かを判定する(S405)。タッチ入力が解除されず移動した場合(S405,No)、パターンロック制御部10は、再度タッチされた座標が複数のポイントのいずれかの座標と同一か否かを判定する。
タッチされたポイントが、今回の処理で既にタッチされたポイントでない場合(Input=0)(S406,No)、パターンロック制御部10は、タッチされたポイントの表示を変更する。具体的には、ポイントの色を変更する(S407)。
次に、パターンロック制御部10は、タッチされたポイントのInput情報に、テーブルに格納された全てのInput情報のうちの最大のInput情報の値に1を加算した値を格納する(S408)。
続いて、パターンロック制御部10は、ひとつ前のポイントと表示を線で結ぶ(S409)。つまり、パターンロック制御部10は、Input情報のうち最大のInput情報から1を減算した値を持つポイントと線で結ぶ表示を行う。
パターンロック制御部10は、Transform_order情報に格納された値とInput情報に格納された値とが一致するか否かを判定する(S410)。Transform_order情報に格納された値とInput情報に格納された値とが一致しないと判定された場合(S410,No)、図12Bに示したステップS405の処理を行う。パターンロック制御部10は、タッチ入力が解除されたか否かを判定する(S405)。このとき、パターンロック制御部10は、一時的にタッチ入力の受付を禁止する。
Transform_order情報に格納された値とInput情報に格納された値とが一致すると判定された場合(S410,Yes)、図12Cに示したステップS411の処理を行う。パターンロック制御部10は、Transform_locaion情報に格納された複数のポイントの座標情報を用いて、複数のポイントの表示位置を変更してディスプレイ6に表示させる(S411)。
パターンロック制御部10は、Input情報を基に、既にタッチされたポイント(Input≠0)の色を変更し、タッチされた順番に基づき、それぞれのポイントをつなぐ線を表示し(S412)、再度、図12Aに示したステップS403の処理を行う。パターンロック制御部10は、ユーザのタッチ入力を待機する(S403)。
ステップS404において、タッチされた座標が複数のポイントのいずれかの座標と同一でないと判定された場合(S404,No)、パターンロック制御部10は、タッチ入力が解除されたか否かを判定する(S405)。タッチ入力が解除されたと判定された場合(S405,Yes)、パターンロック制御部10は、入力されたポイントのパターンと、解除パターンが同一であるか否かを判定する(S413)。図6に示したポイントの表示位置と解除パターンを示すテーブルに格納されたInput情報とOrder情報とが一致するかを判定する。ポイントの表示位置と解除パターンを示すテーブルに格納されたInput情報とOrder情報とが一致した場合(S413,Yes)、入力されたパターンと、解除パターンが同一であるため、正規のユーザであるとみなし、パターンロック制御部10は、パターンロックを解除する(S414)。ポイントの表示位置と解除パターンを示すテーブルに格納されたInput情報とOrder情報とが一致しない場合(S413,No)、パターンロック制御部10は、ポイントの色を初期値に戻し(S415)、ポイント間に表示されている線を消去し(S416)、Input情報の値を全て0に更新し(S417)、再度、図12Aに示したステップS403の処理を行う。
図13Aおよび図13Bは、第4の実施形態に係るパターンロック解除の途中で複数のポイントを表示する座標を変更する座標を決定するために参照されるTransform_location情報を算出するフローチャートの一例である。
携帯端末100のパターンロック制御部10は、複数のポイントの座標を一つずつ算出する。パターンロック制御部10は、ポイントの算出順を、Array_point_ID[n]に格納し、算出された各ポイントの座標をTransform_location情報に格納する。
携帯端末100のパターンロック制御部10は、始点とするポイントのIDをランダムに決定し(S501)、以下の処理をポイントの数だけ繰り返すことにより、全てのポイントに対する表示位置の候補座標を算出する。
パターンロック制御部10は、ステップS501で決定された、基準ポイントのIDに対応するModel_location情報と、まだ表示位置の候補座標が算出されていないポイントに対応するModel_location情報とを取得する。パターンロック制御部10は、参照したそれぞれのModel_location情報を基に、基準ポイントとまだ表示位置の候補座標が算出されていないそれぞれのポイントとの距離を算出し、もっとも距離が大きいポイントを候補算出対象ポイントとする(S502)。
パターンロック制御部10は、基準ポイントのModel_location情報のX成分およびY成分と、ステップS502で決定された候補算出対象ポイントのModel_location情報のX成分およびY成分とのそれぞれの差分を算出する(S503)。
パターンロック制御部10は、ステップS503で算出された候補算出対象ポイントのModel_location情報のX成分およびY成分のそれぞれとMin_point_range情報とを乗じたそれぞれの値を基に、距離を算出する。候補算出対象ポイントの座標と、基準ポイントの座標との距離が算出した距離以上となる範囲を第1の候補条件とする(S504)。
パターンロック制御部10は、基準ポイントと候補算出対象ポイントとの相対位置が規定されたそれぞれのポイントのModel_location情報と、既に算出された基準ポイントの候補座標とから、第2の候補条件を定める(S505)。始点となるポイントの表示画面上の座標位置は、Current_location情報を用いるか、Model_location情報に関連して予め設定された座標位置を用いる。
パターンロック制御部10は、第1の候補条件と第2の候補条件にあてはまる範囲の中で、座標入力履歴が有効となる時間であるTrace_time_range情報の期間内にタッチ入力がなされている座標を抽出する。パターンロック制御部10は、抽出された座標に、ポイントの表示位置の候補を評価する際に許容する誤差を示すCandidate_point_margin情報を付加した範囲を算出し、算出された範囲と重複しない座標の中からランダムに、候補算出対象ポイントに対する表示位置の候補座標を取得する(S506)。ここで取得される候補座標の数は、ポイントの表示位置を決定する際に評価される候補の数であるCandidate_point_num情報を基に決定される。
パターンロック制御部10は、候補算出対象ポイントの候補座標を取得すると、再び、ステップS502に戻り次の候補算出対象ポイントを決定する。全てのポイントに対し、候補を取得した場合、図13Bに示したステップS507の処理に進む。
パターンロック制御部10は、複数のポイントに対して取得された候補座標の組み合わせを作成し、それぞれの組み合わせに対し、解除パターンが描く軌跡を作成する。作成した軌跡が通る未使用座標の数を算出し、作成した軌跡と前回パターンロックの解除を行った軌跡との交点の数を算出する。作成されたポイントの組み合わせの中から未使用座標の数が多く、かつ前回パターンロックの解除を行った軌跡との交点の数が多いポイントの組み合わせを決定する(S507)。
パターンロック制御部10は、決定された複数のポイントの組み合わせをTransform_location情報に格納する(S508)。
パターンロック制御部10は、Current_location情報を参照して、複数のポイントを表示する座標を決定し、複数のポイントをディスプレイ6に表示させる。
上記のように第4の実施形態によれば、Current_location情報を決定することにより、前回表示したロックパターン入力が行われる複数のポイントの位置に対して、複数のポイントを非相似な位置に表示することができ、ユーザがパターンを入力する際に、第三者により盗み見られても、ロック解除に用いるパターンを推測される危険性が低減される。
(第5の実施形態)
図14A、図14Bは、第5の実施形態に係る携帯端末100のパターンロック制御のフローチャートの一例である。
図14A、図14Bは、第5の実施形態に係る携帯端末100のパターンロック制御のフローチャートの一例である。
携帯端末100のパターンロック制御部10は、図6に示したポイントの表示位置と解除パターンを示すテーブルに格納されるCurrent_location情報を参照して、複数のポイントを表示する座標を決定し、複数のポイントをディスプレイ6に表示させる(S601)。
パターンロック制御部10は、ポイントの入力状態の情報を初期化する(S602)。具体的には、図6に示したポイントの表示位置と解除パターンを示すテーブルに格納されるInput情報を全て0にすることによって、それぞれのポイントに対し入力がなされていない状態となる。ユーザによるタッチ入力が検出されるまで待機する(S603)。
パターンロック制御部10は、表示された複数のポイントの表示座標と、Order情報とから、解除パターンが描く軌跡を算出する。パターンロック制御部10は、算出された解除パターンの軌跡が通過するとみなされる第1のポイントと第2のポイントを抽出する。第1のポイントと第2のポイントのOrder情報は0または、次に通るポイントのOrder情報より小さい。通過見込みポイントである第1のポイントと第2のポイントとの距離が所定の距離以内である場合、第1のポイントと第2のポイントがタッチ入力されたと判定される判定範囲を小さくする(S604)。パターンロック制御部10は、複数のポイントのそれぞれは、表示される座標から所定の範囲がタッチされた場合に、当該ポイントに対し、タッチ入力がなされたと判定する。例えば、複数のポイントは、画面に表示される際に、判定範囲を示す円形状の画像が表示され、ユーザは、当該画像を指標として、タッチ入力を行う。
タッチパネル7に対するタッチ入力が検出された場合、パターンロック制御部10は、タッチされた座標がステップS601において表示した複数のポイントのいずれかの座標と同一か否かを判定する(S605)。タッチされた座標が複数のポイントのいずれかの座標と同一でないと判定された場合(S605,No)、タッチ入力が解除されたか否かを判定する(S606)。タッチ入力が解除されず移動した場合(S606,No)、ステップS604の処理を行う。
タッチされた座標が複数のポイントのいずれかの座標と同一であると判定された場合(S605,Yes)、パターンロック制御部10は、タッチされたポイントが、今回の処理で既にタッチされたポイントであるか否かを判定する(S607)。パターンロック制御部10は、タッチされたポイントのInput情報が0でないか0かを判定する。タッチされたポイントが、今回の処理ですでにタッチされたポイントである場合(Input≠0)(S607,Yes)、タッチ入力が解除されたか否かを判定する(S606)。タッチ入力が解除されず移動した場合(S606,No)、ステップS604の処理を行う。
タッチされたポイントが、今回の処理で既にタッチされたポイントでない場合(Input=0)(S607,No)、パターンロック制御部10は、タッチされたポイントの表示を変更する。具体的には、ポイントの色を変更する(S608)。
次に、パターンロック制御部10は、タッチされたポイントのInput情報に、テーブルに格納された全てのInput情報のうちの最大のInput情報の値に1を加算した値を格納する(S609)。
続いて、パターンロック制御部10は、ひとつ前のポイントと表示を線で結ぶ(S610)。つまり、パターンロック制御部10は、Input情報のうち最大のInput情報から1を減算した値を持つポイントと線で結ぶ表示を行う。
パターンロック制御部10は、タッチ入力が解除されたか否かを判定する(S606)。タッチ入力が解除されたと判定された場合(S606,Yes)、パターンロック制御部10は、図14Bに示したステップS611の処理を行う。パターンロック制御部10は、入力されたポイントのパターンと、解除パターンが同一であるか否かを判定する(S611)。図6に示したポイントの表示位置と解除パターンを示すテーブルに格納されたInput情報とOrder情報とが一致するかを判定する。ポイントの表示位置と解除パターンを示すテーブルに格納されたInput情報とOrder情報とが一致した場合(S611,Yes)、入力されたパターンと、解除パターンが同一であるため、正規のユーザであるとみなし、パターンロック制御部10は、パターンロックを解除する(S612)。ポイントの表示位置と解除パターンを示すテーブルに格納されたInput情報とOrder情報とが一致しない場合(S611,No)、パターンロック制御部10は、ポイントの色を初期値に戻し(S613)、ポイント間に表示されている線を消去し(S614)、Input情報の値を全て0に更新し(S615)、再度、図14Aに示したステップS603の処理を行う。
以上により、第5実施形態によれば、Current_location情報を決定することにより、前回表示したロックパターン入力が行われる複数のポイントの位置に対して、複数のポイントを非相似な位置に表示することができ、ユーザがパターンを入力する際に、第三者により盗み見られても、ロック解除に用いるパターンを推測される危険性が低減される。さらに、携帯端末100のパターンロック制御において、ポイント表示の間隔が狭く、意図しない誤ったポイントへのタッチ入力がなされることを抑制することができる。
第1~第5の実施形態では、電子機器として例えばスマートフォンやタブレットコンピュータ等の携帯端末100に適用するとしているが、これに限定されるものではなく、電子機器として例えばデスクトップコンピュータ等にも適用することができる。
1:アンテナ
2:無線通信部
3:CPU
4:フラッシュメモリ
5:メインメモリ
6:ディスプレイ
7:タッチパネル
10:パターンロック制御部
11:第1記憶部
12:座標入力履歴情報
13:ポイント表示位置・解除パターン情報
14:ポイント表示位置変更情報
15:第2記憶部
16:表示部
17:表示制御部
18:タッチ入力検出部
19:タッチ入力制御部
100:携帯端末
2:無線通信部
3:CPU
4:フラッシュメモリ
5:メインメモリ
6:ディスプレイ
7:タッチパネル
10:パターンロック制御部
11:第1記憶部
12:座標入力履歴情報
13:ポイント表示位置・解除パターン情報
14:ポイント表示位置変更情報
15:第2記憶部
16:表示部
17:表示制御部
18:タッチ入力検出部
19:タッチ入力制御部
100:携帯端末
Claims (10)
- タッチパネルに表示された複数のポイントの少なくとも一部を通る、ユーザがタッチ入力した第1パターンと、予め登録された、複数のポイントの少なくとも一部を通る順序が規定された第2パターンとを比較することで電子機器のロックを解除するロック解除方法であって、
前記複数のポイントが前回表示された第1位置に対し非相似な第2位置に前記複数のポイントを表示し、
前記第2の位置に表示された前記複数のポイントの少なくとも一部を通る前記第1パターンを取得し、
取得した前記第1パターンと前記第2パターンとが一致するか否かを判定する
ことを特徴とするロック解除方法。 - 前記複数のポイントを前記第1位置に表示し、
前記タッチ入力が継続されている間に、予め定められたタイミングか否かを判定し、
前記予め定められたタイミングであると判定された場合、前記第2位置に前記複数のポイントを表示することを特徴とする請求項1に記載のロック解除方法。 - 前記タッチ入力が継続されている間に、予め定められたタイミングか否かを判定し、前記予め定められたタイミングであると判定された場合、前記タッチ入力の軌跡を保持し、
前記タッチ入力の受付を禁止し、
前記第2の位置に前記複数のポイントを表示し、
前記第2の位置に前記複数のポイントが表示された後、前記タッチ入力の受付を再開することを特徴とする請求項1または2に記載のロック解除方法。 - ロック解除に関する処理を開始する操作を受け付けたとき、前記第2位置に前記複数のポイントを表示することを特徴とする請求項1~3のいずれか一項に記載のロック解除方法。
- 所定期間内にタッチ入力された座標の履歴を示す座標履歴情報に基づき、前記第2位置を決定することを特徴とする請求項1~4のいずれか一項に記載のロック解除方法。
- 前記複数のポイントの位置関係が規定された第1の位置関係情報に基づき、前記複数のポイントのそれぞれの表示位置の範囲を算出し、
前記算出された前記複数のポイントのそれぞれの表示位置の範囲内であり、前記第1位置と異なる前記第2位置に前記複数のポイントを表示することを特徴とすることを特徴とする請求項1~5のいずれか一項に記載のロック解除方法。 - 前記第2パターンに基づき、前記表示された複数のポイントを通る軌跡を算出し、
前記算出された軌跡が、前記複数のポイントのうち第1のポイントと第2のポイントとの間を通ると判定され、第1のポイントと第2のポイントとの距離が所定の距離以下である場合、前記タッチ入力が前記第1のポイントまたは前記第2のポイントを通ったと判定される判定範囲を狭めることを特徴とする請求項1~6のいずれか一項に記載のロック解除方法。 - 前記第2パターンに基づき、前記表示された複数のポイントを通る軌跡を算出し、
前記算出された軌跡が、前記複数のポイントのうち第1のポイントと第2のポイントとの間を通ると判定され、第1のポイントと第2のポイントとの距離が所定の距離以下である場合、前記タッチ入力が前記第1のポイントまたは前記第2のポイントを通ったと判定される判定範囲を無効にすることを特徴とする請求項1~6のいずれか一項に記載のロック解除方法。 - タッチ入力が検出されるタッチパネルを有し、前記タッチパネルに表示された複数のポイントの少なくとも一部を通る、ユーザがタッチ入力した第1パターンと、予め登録された、複数のポイントの少なくとも一部を通る順序が規定された第2パターンとを比較することで電子機器のロックを解除する電子機器であって、
前記複数のポイントが前回表示された第1位置に対し非相似な第2位置に前記複数のポイントを表示し、
前記第2の位置に表示された前記複数のポイントの少なくとも一部を通る前記第1パターンを取得し、
取得した前記第1パターンと前記第2パターンとが一致するか否かを判定するパターンロック制御部を備える
ことを特徴とする電子機器。 - タッチパネルに表示された複数のポイントの少なくとも一部を通る、ユーザがタッチ入力した第1パターンと、予め登録された、複数のポイントの少なくとも一部を通る順序が規定された第2パターンとを比較することで電子機器のロックを解除するロック解除方法であって、
前記複数のポイントが前回表示された第1位置に対し非相似な第2位置に前記複数のポイントを表示し、
前記第2の位置に表示された前記複数のポイントの少なくとも一部を通る前記第1パターンを取得し、
取得した前記第1パターンと前記第2パターンとが一致するか否かを判定する
ことを特徴とするロック解除プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/002735 WO2015177825A1 (ja) | 2014-05-23 | 2014-05-23 | 電子機器、ロック解除方法およびロック解除プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/002735 WO2015177825A1 (ja) | 2014-05-23 | 2014-05-23 | 電子機器、ロック解除方法およびロック解除プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015177825A1 true WO2015177825A1 (ja) | 2015-11-26 |
Family
ID=54553526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2014/002735 WO2015177825A1 (ja) | 2014-05-23 | 2014-05-23 | 電子機器、ロック解除方法およびロック解除プログラム |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2015177825A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20240040057A1 (en) * | 2022-07-22 | 2024-02-01 | Canon Kabushiki Kaisha | Information processing apparatus, method for controlling the same, and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030210127A1 (en) * | 2002-05-10 | 2003-11-13 | James Anderson | System and method for user authentication |
JP2008242589A (ja) * | 2007-03-26 | 2008-10-09 | Toppan Printing Co Ltd | 認証装置および認証方法ならびにそのプログラムと記録媒体 |
JP2013016115A (ja) * | 2011-07-06 | 2013-01-24 | Nomura Research Institute Ltd | 情報処理端末のロック解除方法 |
-
2014
- 2014-05-23 WO PCT/JP2014/002735 patent/WO2015177825A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030210127A1 (en) * | 2002-05-10 | 2003-11-13 | James Anderson | System and method for user authentication |
JP2008242589A (ja) * | 2007-03-26 | 2008-10-09 | Toppan Printing Co Ltd | 認証装置および認証方法ならびにそのプログラムと記録媒体 |
JP2013016115A (ja) * | 2011-07-06 | 2013-01-24 | Nomura Research Institute Ltd | 情報処理端末のロック解除方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20240040057A1 (en) * | 2022-07-22 | 2024-02-01 | Canon Kabushiki Kaisha | Information processing apparatus, method for controlling the same, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101425171B1 (ko) | 사용자 비밀번호 입력 장치 및 방법 | |
US8963855B2 (en) | Method for unlocking a mobile device, mobile device and application program for using the same | |
TWI628556B (zh) | 電子裝置的解鎖系統及方法 | |
CN102270097B (zh) | 一种解除终端屏幕锁的方法及便携式终端设备 | |
US9280276B2 (en) | Method for controlling electronic device with touch screen and electronic device thereof | |
JP2013016115A (ja) | 情報処理端末のロック解除方法 | |
CN105446636B (zh) | 动态解锁方法及电子装置 | |
CN103218067A (zh) | 触控装置及其手势解锁方法 | |
US10331872B2 (en) | Electronic device and password entering method | |
US20140289841A1 (en) | Authentication processing device for performing authentication processing | |
TWI644231B (zh) | 用於增強鎖定螢幕安全的設備及方法 | |
TW201512966A (zh) | 電子裝置的解鎖系統及方法 | |
TW201520823A (zh) | 螢幕解鎖系統、方法及觸摸顯示裝置 | |
KR102160253B1 (ko) | 단말기 및 단말기의 잠금 상태 해제 방법 | |
JP2015118663A (ja) | 個人認証装置、個人認証方法及び個人認証プログラム | |
WO2012144616A1 (ja) | 電子機器、電子機器の制御方法、および、プログラム | |
WO2015177825A1 (ja) | 電子機器、ロック解除方法およびロック解除プログラム | |
JP2014006706A (ja) | 電子機器、およびプログラム | |
US9613201B1 (en) | Access control by a mobile device using an image | |
JP2016001426A (ja) | タッチパネルを用いた情報入力装置および入力情報判定方法 | |
KR20190013307A (ko) | 숄더 서핑 공격에 강인한 패턴 입력 방법 및 장치 | |
JP2014010734A (ja) | 情報処理装置、ロック解除処理方法およびプログラム | |
CN109426707B (zh) | 电子设备和验证方法 | |
JP2016130963A (ja) | タッチパネルを備えた電子機器および当該電子機器を制御するためのプログラム | |
JP6153097B2 (ja) | 認証処理装置、認証処理方法及びプログラム |
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: 14892676 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: 14892676 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |