[go: up one dir, main page]

HK1260010A1 - Identity authentication using a barcode - Google Patents

Identity authentication using a barcode Download PDF

Info

Publication number
HK1260010A1
HK1260010A1 HK19119687.2A HK19119687A HK1260010A1 HK 1260010 A1 HK1260010 A1 HK 1260010A1 HK 19119687 A HK19119687 A HK 19119687A HK 1260010 A1 HK1260010 A1 HK 1260010A1
Authority
HK
Hong Kong
Prior art keywords
barcode
electronic device
portable electronic
data
authentication
Prior art date
Application number
HK19119687.2A
Other languages
Chinese (zh)
Other versions
HK1260010B (en
Inventor
Yang Chien-Kang
Original Assignee
Yang Chien-Kang
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yang Chien-Kang filed Critical Yang Chien-Kang
Publication of HK1260010A1 publication Critical patent/HK1260010A1/en
Publication of HK1260010B publication Critical patent/HK1260010B/en

Links

Description

The disclosure relates to a method for identity authentication, and more particularly to a method for identity authentication using a barcode.
In daily lives, various identity documents are required on different occasions. For example, a cash withdrawal in a bank may require an identity card, boarding a flight requires a passport, an appointment with a doctor may require a National Health Insurance IC card, and a driver's license is required for a roadside vehicle check. Each of the above exemplary identity documents is an individual document, and as a result, a person may be required to carry around multiple identity documents.
It may be desirable to digitize the multiple identity documents into digital files, and to store the digital files in a portable electronic device (e.g., a cell phone). In this way, the risk of missing one or more of the identity documents may be reduced, and the inconvenience caused by the combined size of the multiple cards may be eliminated.
It is noted that however, in the case of using a digitized identity document, there may be an issue of making sure that the digitized identity document really belongs to the person who holds the digitized identity document, since the digitized identity document may be altered, and the portable electronic device itself may be stolen.
One object of the disclosure is to provide a method for identity authentication for authenticating both a digital identification and a holder holding the digital identification.
According to one embodiment of the disclosure, the method is implemented by a portable electronic device, an identification device, and an authentication server communicating with the portable electronic device and the identification device. The method includes:
  • in response to detection of a user operation for requesting to display a barcode, displaying, by the portable electronic device, a barcode on a display thereof, the barcode encoding verification information and identification information that is associated with an identity of a user of the portable electronic device;
  • scanning, by the identification device, the barcode displayed on the display of the portable electronic device;
  • generating, by the identification device, an authentication command based on the barcode;
  • transmitting, by the identification device, the authentication command to the authentication server;
  • extracting, by the authentication server, the verification information and identification information from the authentication command;
  • determining, by the authentication server, whether the verification information is authentic;
  • when it is determined that the verification information is authentic, authenticating, by the authentication server, the identification information; and
  • transmitting, by the authentication server to the identification device, an authentication result of the step of authenticating the identification information.
According to another embodiment of the disclosure, the method is implemented by a portable electronic device and an identification device. The method includes:
  • in response to detection of a user operation for requesting to display a barcode, displaying, by the portable electronic device, a barcode on a display thereof, the barcode encoding verification information and identification information that is associated with an identity of the user;
  • scanning, by the identification device, the barcode displayed on the portable electronic device;
  • extracting, by the identification device, the verification information and identification information from the barcode, and determining whether the verification information is authentic;
  • when it is determined that the verification information is authentic, authenticating, by the identification device, the identification information; and
  • generating, by the identification device, an authentication result of the step of authenticating the identification information.
Another object of the disclosure is to provide a portable electronic device that is able to perform the above-mentioned method with other parties.
According to one embodiment of the disclosure, the portable electronic device includes a display for displaying a barcode, an input interface allowing a user to input a password, a barcode generating module, and a processor.
The barcode generating module is coupled to the input interface for receiving therefrom the password inputted by the user, and is programmed to verify the password. When the password is successfully verified, the barcode generating module is programmed to generate a barcode encoding verification information and identification information that is associated with an identity of the user.
The processor is electrically connected to the display, is operatively associated with the barcode generating module for receiving the barcode therefrom, and is programmed to control the display to display the barcode for scanning by an identification device, so as to enable the identification device to generate an authentication command based on the barcode and to transmit the authentication command to an authentication server. The authentication server extracts the verification information and the identification information from the authentication command, determines whether the verification information is authentic, authenticates the identification information when it is determined that the verification information is authentic, and transmits an authentication result of the authenticating of the identification information to the identification device.
Still another object of the disclosure is to provide a server device that is able to perform the above-mentioned method with other parties.
According to one embodiment of the disclosure, the server device includes a commercial platform for communicating with a portable electronic device and an identification device, and an authority party server communicating with the commercial platform.
The commercial platform is programmed to:
  • generate barcode data for displaying a barcode, the barcode encoding verification information and identification information that is associated with an identity of a user of the portable electronic device; transmit the barcode data to the portable electronic device so as to enable the portable electronic device to display the barcode;receive, from the identification device, an authentication command, the identification device scanning the barcode displayed by the portable electronic device and generating the authentication command based on the barcode;extract the verification information and identification information from the authentication command;determine whether the verification information is authentic; and
  • transmit the identification information to the authority party server when it is determined that the verification information is authentic.
The authority party server is programmed to, upon receipt of the identification information, authenticate the identification information, and transmit an authentication result of authenticating the identification information to the identification device.
Other features and advantages of the disclosure will become apparent in the following detailed description of the embodiments with reference to the accompanying drawings, of which:
  • Figure 1 is a flow chart illustrating steps of a method for identity authentication according to one embodiment of the disclosure;
  • Figure 2 is a block diagram illustrating a portable electronic device, an identification device, and an authentication server according to one embodiment of the disclosure;
  • Figure 3 is a block diagram illustrating the buyer device connected to the hardware security module, which is a smart card, according to one embodiment of the disclosure;
  • Figure 4 is a block diagram illustrating a portable electronic device, an identification device, and an authentication server according to one embodiment of the disclosure;
  • Figure 5 illustrates a quick response code displayed by the portable electronic device; and
  • Figures 6 and 7 illustrate two forms of identification information associated with an identity document.
Before the disclosure is described in greater detail, it should be noted that where considered appropriate, reference numerals or terminal portions of reference numerals have been repeated among the figures to indicate corresponding or analogous elements, which may optionally have similar characteristics.
Figure 1 is a flow chart illustrating steps of a method for identity authentication according to one embodiment of the disclosure. Figure 2 is a block diagram illustrating a portable electronic device 1, an identification device 2 and an authentication server 3 cooperating to implement the method for identity authentication as illustrated in Figure 1.
In this embodiment, the portable electronic device 1 is held by a holder, and may be embodied by a mobile phone, a tablet computer, or other portable electronic devices with wireless connectivity.
As shown in Figure 2, the portable electronic device 1 includes a processor 16, a communication unit 11, a display 12, a storage 13, and an input interface 15. In this embodiment, a hardware security module 14 is installed on and accessible by the portable electronic device 1. The hardware security module 14 is implemented by hardware, and may be embodied using one of a stand-alone, external portable device (e.g., a smart card) removably connected to the portable electronic device 1 and a physical built-in module (e.g., a chip) embedded in the portable electronic device 1. In general, the hardware security module 14 includes a processing component for performing computations, and a physical storage for storing data therein. An exemplary smart card may be embodied using one as disclosed in European Patent No. EP2521081 .
It is noted that in embodiments where the hardware security module 14 is omitted or when the hardware security module 14 is not available for connection with the portable electronic device 1, and the functionalities of the hardware security module 14 may be performed by the portable electronic device 1 executing a software application 160, as seen in Figure 3. Alternatively, the hardware security module 14 and the software application 160 may both be included in the portable electronic device 1.
Figure 3 is a block diagram illustrating the portable electronic device 1 connected to the hardware security module 14, which is a smart card, according to one embodiment of the disclosure. In this embodiment, the hardware security module 14 includes a processing unit 141 and a storage unit 142. In this way, the buyer device may be said to include a storage module 17 that includes the storage 13 and the storage unit 142. Moreover, the buyer device 1 may be said to include a processor module 18 that includes the processor 16 and the processing unit 141.
The communication unit 11 may be a component that supports wireless communication such as cellular connection, Wi-Fi, Bluetooth®, etc. The display 12 may be embodied using a display screen (e.g., an LCD screen). The storage 13 may be embodied using a physical memory device such as a non-volatile random access memory (NVRAM), e.g., a flash memory. The input interface 15 may be incorporated with the display screen to together form a touch screen.
The portable electronic device 1 may be associated with one or more digital identifications corresponding to one or more identity documents, and may store identification information that is associated with an identity of the holder of the portable electronic device 1. Throughout the disclosure, the term "identity document" may be a physical card or paper issued by an authority party, such as a government agency, for providing certification for identity of a person. The term "digital identification" may be a digital data file that is stored in the storage 13 and that includes at least one image of a corresponding identity document (e.g., two images of opposite sides of a National Identification Card issued in Taiwan as shown in Figure 6), text data regarding information listed on the identity document (e.g., a name, an identification card number, date of birth, gender, a registered address of the holder, as shown in Figure 7), or other information relevant to the holder. Other examples of the identity document may include a passport, a National Health Insurance IC card, a driver's license, etc. In some cases, a plurality of digital identifications, each corresponding with an identity document (e.g., an identification card, a passport or a driver's license, etc.), may be stored in the portable electronic device 1.
The term "identification information" may refer to a data set, for example in the form of a string of numbers and/or alphabets, that is associated exclusively with the user of the portable electronic device 1. For example, an identification card number or a virtual account number may serve as the identification information. It is noted that, each of the digital identifications may contain specific data (e.g., a serial number assigned by the authority party) that is unique, and that may be employed to serve as the identification information in some embodiments. Alternatively, in some implementations, the identification information may be in the form of other data uniquely associated with the identity of the holder, such as a virtual account number.
The identification device 2 may be held by a party who intends to view the identity document of the holder, and may be embodied using a personal computer, a notebook computer, a tablet computer, a mobile communication device or other electronic devices with network communication capabilities, and includes an image capturing component (not shown) (such as a camera, a barcode reader, etc.).
The authentication server 3 is capable of communicating with the portable electronic device 1 and the identification device 2 via a network 5 (e.g., the Internet), and includes a commercial platform 31 with network connectivity, and an authority party server 32 communicating with the commercial platform 31. The authority party server 32 may be owned by, operated by, or under the control of the authority party that issues one of the identity documents. For example, in cases that the identification information includes a data set that corresponds to the National Identification Card and that includes information regarding the National Identification Card, the authority party server 32 may be owned by or under the control of the Ministry of the Interior of Taiwan. It is noted that a plurality of parties that issue various identity documents may serve as the authority party that is responsible for the authority party server 32 in different embodiments.
In use, when a requesting party requires the holder of the portable electronic device 1 to present an identity document and the holder decides to present a digital identification, the holder may first initiate the method for identity authentication, so as to provide proof that the digital identification is actually associated with him/her.
To initiate the method, the holder may operate the input interface 15 of the portable electronic device 1 to input a request for displaying a barcode on the display 12.
This may be done by the holder operating the input interface 15 to generate a command for causing the processor 16 to execute the software application 160. In response to the holder's operation, in step S1, the processor 16 executes the software application 160 so as to execute a process to display a barcode on the display 12.
In this embodiment, the barcode may be in a form of a one-dimensional barcode (linear barcode), a two-dimensional barcode such as a quick response (QR) code (an example of which is shown in Figure 5), a three-dimensional barcode, etc., and encodes verification information for verifying an identity of the holder, and further encodes identification information corresponding to a digital identification associated with the holder.
In some embodiments, the processor 16 may require the holder to input a password using the input interface 15, and execute the process only when determining that the password inputted by the holder is correct.
In some embodiments, the barcode may be a static barcode that encodes data provided by the commercial platform 31 of the authentication server 3. For example, the data to be encoded in the static barcode may be stored in advance in the hardware security module 14 which is installed on and accessible by the portable electronic device 1. As such, the processor 16 may require the holder to input a password using the input interface 15, and transmit the password to the hardware security module 14, which verifies the password and allows the processor 16 to obtain the data stored therein for subsequent display only when the password is successfully verified (i.e., the password is verified or deemed to be correct).
Afterward, in step S2, the requesting party may operate the image capturing component of the identification device 2 to scan the barcode displayed on the display 12.
In step S3, the identification device 2 generates an authentication command based on the barcode (which is encoded with the verification information and the identification information), so that the authentication command includes the verification information and the identification information, either in encoded form or non-encoded form. Then, in step S4, the identification device 2 transmits the authentication command to the authentication server 3.
In response to receipt of the authentication command, the authentication server 3 extracts the verification information and the identification information from the authentication command in step S5. Then, in step S6, the authentication server 3 determines whether the verification information is authentic.
When it is determined that the verification information is authentic, the flow proceeds to step S7, in which the authentication server 3 executes an authentication procedure to authenticate the identification information included in the authentication command. This may be done by the authentication server 3 comparing parts or the entirety of the identification information to related information that is pre-stored in a storage of the authentication server 3.
Otherwise, the flow proceeds to step S10, in which the authentication server 3 transmits to the portable electronic device 1 and the identification device 2 a message indicating that the verification information is inauthentic, and the method is therefore terminated.
Following step S7, i.e., when the authenticating procedure ends, the flow proceeds to step S8, where the authentication server 3 transmits an authentication result to the identification device 2. In response to receipt of the authentication result, the identification device 2 may display the authentication result thereon in step S9 to inform the requesting party who holds the identification device 2 whether the digital identification is actually associated with the holder.
Then, the requesting party may request the holder to present the digital identification using the portable electronic device 1. The holder may input another command to invoke the digital identification to be displayed on the display 12. In one example shown in Figure 6, the digital identification displayed is an image of two sides of the National Identification Card of Taiwan. In one example shown in Figure 7, the digital identification displayed includes detailed information contained in the National Identification Card of Taiwan. In this embodiment, the portable electronic device 1 is capable of displaying the digital identification in both the forms illustrated in Figures 6 and 7.
In one embodiment, the authentication server 3 pre-stores the digital identification of the holder. Accordingly, in step S8, the authentication server 3 may further transmit the digital identification to the identification device 2, such that the identification device 2 may further display the digital identification in step S9.
In one embodiment, in step S8, the authentication server 3 further transmits the authentication result to the portable electronic device 1. In response to receipt of the authentication result, the portable electronic device 1 executing the application 160 may automatically display the digital identification.
It is noted that in various embodiments, the barcode may be generated in various ways before being displayed, and may include various information based on different conditions. As a result, before step S1 is performed, some operations may be carried out in different manners, and additional operations may be incorporated prior to or after step S1, as described in the following paragraphs.
According to one exemplary embodiment, the barcode is a static barcode encoding data provided by the authentication server 3. Before implementing step S1, the data to be encoded in the barcode and provided by the authentication server 3 is divided into a first part that is stored in the commercial platform 31 or a cloud server 4, and a second part that is stored in the hardware security module 14. As such, in step S1, the portable electronic device 1, by the communication unit 11 communicating with the commercial platform 31 or the cloud server 4, obtains the first part of the data, accesses the hardware security module 14 to obtain the second part of the data, combines the first part and the second part to obtain the data to be encoded in the barcode, and generates and displays the barcode based on the data.
According to one exemplary embodiment, the barcode is a static barcode encoding the data provided by the authentication server 3. Before implementing step S1, the portable electronic device 1 may communicate with the commercial platform 31 to obtain the data to be encoded in the barcode, divide the data obtained from the commercial platform 31 into a plurality of divided files, and store the divided files in the hardware security module 14. As such, in step S1, the portable electronic device 1 may access the hardware security module 14 to obtain the divided files, combine the divided files to obtain the data, and generate and display the barcode based on the data.
According to one exemplary embodiment, the barcode is a static barcode encoding the data provided by the authentication server 3. Before implementing step S1, the portable electronic device 1 may communicate with the commercial platform 31 to obtain the data to be encoded in the barcode, divide the data obtained from the commercial platform 31 into at least a first divided file and a second divided file, encrypt at least the first divided file into an encrypted file, and store the encrypted file and the second divided file in the storage 13.
As such, step S1 may include the sub-steps of the portable electronic device 1 accessing the storage 13 to obtain the encrypted file and the second divided file, displaying an instruction to require the holder to input a password, and determining whether a password inputted by the holder is correct. Further, in step S1, when it is determined that the password inputted by the holder is correct, the portable electronic device 1 decrypts the encrypted file to obtain the first divided file, combines the first and second divided files to obtain the data, and generates and displays the barcode based on the data. In some implementations, both the first divided file and the second divided file may be encrypted prior to step S1, and in step S1 both of the divided files are decrypted.
It is noted that this embodiment may be employed when the hardware security module 14 is not available, and the functionalities of the hardware security module 14 may be performed by the portable electronic device 1 executing the software application 160.
According to one exemplary embodiment, one or more digital identifications corresponding to one or more identity documents may be stored in the portable electronic device 1 and accessible by the software application 160, and then made available to the holder. In the case that the software application 160 is only associated with one digital identification (e.g., only one digital identification is stored in the portable electronic device 1), the identification information (e.g., a unique identification code, a virtual account number, or an identification card number, etc.) may be pre-stored in the hardware security module 14. In the case that the software application 160 is associated with a plurality of different digital identifications corresponding respectively to different identity documents (e.g., an identification card, a passport issued by the Ministry of Foreign Affairs, a National Health Insurance (NHI) IC card issued by the NHI Administration, and a driver's license issued by the Ministry of Transportation and Communications, etc.), the identification information may be generated by the portable electronic device 1 based on a selected one of the identity documents selected by the holder and stored in the hardware security module 14 prior to displaying the barcode. In use, the software application 160 may control the display 12 to display a selection screen, instructing the user to select one of the digital identifications that is available in the portable electronic device 1 (that is, the holder is instructed to select one of the identity documents, digitized as a digital identification, that he/she is to present to a requesting party). In response to the selected one of the digital identifications (e.g., the driver's license), the software application 160 extracts a data set of the selected one of the digital identifications that is uniquely associated with the holder (e.g., the license serial number) to serve as the identification information.
After the identification information is generated and becomes available, the portable electronic device 1 displays an instruction to require the holder to input a password. In response to receipt of a password inputted by the holder, the portable electronic device 1 requires the hardware security module 14 to verify the password. When the password is successfully verified by the hardware security module 14, the portable electronic device 1 transmits a request for an authorization parameter to the authentication server 3. In response to receipt of the authorization parameter from the authentication server 3 through the portable electronic device 1, the hardware security module 14 creates a message authentication code (MAC) for the authorization parameter using a preset key make makes the MAC serve as the verification information, dynamically generates barcode data based on the verification information, the identification information and the authorization parameter, and transmits the barcode data to the portable electronic device 1 to enable the portable electronic device 1 to display the barcode based on the barcode data.
In this embodiment, the commercial platform 31 stores the preset key and the authorization parameter. The authority party server 32 issues and stores the identification information therein (for example, the Ministry of Transportation and Communications issues the driver's license to the holder, and the server thereof stores the license serial number), and is for executing the authentication procedure.
Prior to step S1, the method further includes a step of transmitting, by the hardware security module 14 through the portable electronic device 1, a request for the authorization parameter to the commercial platform 31. In step S3, the authentication command generated by the identification device 2 further includes the authorization parameter.
Step S6 includes the following sub-steps. Firstly, the commercial platform 31 compares the authorization parameter included in the authentication command with the authorization parameter stored in the commercial platform 31. Then, in response to the determination that the authorization parameter included in the authentication command and the authorization parameter stored in the commercial platform 31 are identical, the commercial platform 31 uses the preset key stored in the commercial platform 31 to create a MAC for the authorization parameter stored in the commercial platform 31, and compares the MAC thus generated with the MAC that serves as the verification information.
When the MAC thus generated and the MAC that serves as the verification information are identical to each other, the commercial platform 31 determines that the verification information included in the authentication command is authentic.
In an alternative implementation, Step S6 includes the following sub-steps. Firstly, the authority party server 32, instead of the commercial platform 31, compares the authorization parameter included in the authentication command with the authorization parameter stored in the commercial platform 31. In response to the determination that the authorization parameter included in the authentication command and the authorization parameter stored in the commercial platform 31 are identical, the authority party server 32 uses the preset key stored in the commercial platform 31 to create a MAC for the authorization parameter stored in the commercial platform 31, and compares the MAC thus generated with the MAC that serves as the verification information. When the MAC thus generated and the MAC that serves as the verification information are identical, the authority party server 32 determines that the verification information included in the identification information is authentic.
According to one exemplary embodiment, one or more digital identifications corresponding to one or more identity documents may be stored in the portable electronic device 1 and accessible by the software application 160, and then made available for the holder. In the case that the software application 160 is only associated with one digital identification, the identification information may be pre-stored in the hardware security module 14. In the case that the software application 160 is associated with a plurality of different digital identifications corresponding respectively to different identity documents, the identification information may be generated by the portable electronic device 1 based on one of the digital identifications that is associated with a specific one of the identity documents selected by the holder in a manner similar to that described above. Further, the digital identifications may be stored in the hardware security module 14 prior to displaying the barcode.
After the identification information is available, the portable electronic device 1 displays an instruction to require the holder to input a password. In response to receipt of a password inputted by the holder, the portable electronic device 1 requires the hardware security module 14 to verify the password. When the password is successfully verified, the hardware security module 14 dynamically generates barcode data based on the verification information and the identification information, and transmits the barcode data to the portable electronic device 1 to enable the portable electronic device 1 to display the barcode based on the barcode data.
In this embodiment, the commercial platform 31 stores the verification information. The authority party server 32 issues and stores the identification information therein, and is for executing the authentication procedure. In step S6, the commercial platform 31 compares the verification information included in the authentication command with the verification information stored in the commercial platform 31.
In response to the determination that the verification information included in the authentication command and the verification information stored in the commercial platform 31 are identical, the commercial platform 31 transmits the identification information to the authority party server 32.
In step S7, the authority party server 32 authenticates the identification information received from the commercial platform 31 based on the identification information stored therein.
In an alternative implementation, the authority party server 32, instead of the commercial platform 31, stores the verification information therein. As such, in step S6, the commercial platform 31 first transmits the authentication command to the authority party server 32. In response, the authority party server 32 compares the verification information included in the authentication command with the verification information stored in the authority party server 32. In response to the determination that the verification information included in the authentication command and the verification information stored in the authority party server 32 are identical, the authority party server 32 proceeds to perform step S7 to authenticate the identification information received from the commercial platform 31 based on the identification information stored therein.
According to one exemplary embodiment, the authentication server 3 stores the identification information (included in, for example, at least one of the digital identifications) and the verification information therein. One or more digital identifications may be associated with the software application 160, and made available to the holder. In the case that the software application 160 is only associated with one digital identification, the identification information may be pre-stored in the hardware security module 14.
As such, prior to step S1, the portable electronic device 1 first transmits to the authentication server 3 a request for barcode data for displaying the barcode. In response to the request, the authentication server 3 dynamically generates the barcode data based on the identification information and the verification information stored therein.
In the case that the software application 160 is associated with a plurality of different digital identifications associated respectively with different identity documents, the identification information may be generated by the portable electronic device 1 based on one of the digital identifications that corresponds to a specific one of the identity documents selected by the holder. Further, the digital identifications may be stored in the hardware security module 14 prior to displaying the barcode.
As such, prior to step S1, the request transmitted to the authentication server 3 includes the user selection, and in dynamically generating the barcode data, the authentication server 3 reads a corresponding one of the digital identifications that corresponds to the selected one of the identity documents, and generates the barcode data based on the identification information of the corresponding one of the digital identifications and the verification information stored therein.
In this embodiment, the commercial platform 31 stores the verification information therein, and the authority party server 32 stores the identification information therein.
Prior to step S1, in response to receipt of the request, the commercial platform 31 dynamically generates the barcode data based on the identification information from the authority party server 32 and the verification information stored therein. Then, the commercial platform 31 transmits the barcode data thus generated to the portable electronic device 1.
In step S6, the determining of whether the verification information is authentic is performed by the commercial platform 31. In step S7, the authenticating of the identification information is performed by the authority party server 32.
In an alternative implementation, the authority party server 32 stores both the verification information and the identification information therein.
Prior to step S1, in response to receipt of the request, the authority party server 32 dynamically generates the barcode data based on the identification information and the verification information stored therein. Then, the authority party server 32 transmits the barcode data thus generated to the portable electronic device 1.
In step S6, the determining of whether the verification information is authentic is performed by the authority party server 32. In step S7, the authenticating of the identification information is performed by the authority party server 32.
According to one exemplary embodiment, priorto step S1, the portable electronic device 1 executing the software application 160 may transmit, via the network 5, a request for barcode data for displaying the barcode to the authentication server 3, and the barcode is a fixed barcode. Upon receipt of the barcode data, the portable electronic device 1 executing the software application 160 encrypts the barcode data and stores the encrypted barcode data in the storage 13 of the portable electronic device 1.
In step S1, in response to the request to display a barcode, the portable electronic device 1 displays an instruction to require the user to input a password. In response to receipt of a password inputted by the user, the portable electronic device 1 verifies the password. After the password is successfully verified, the portable electronic device 1 obtains the encrypted barcode data from the storage 13, decrypts the encrypted barcode data to obtain decrypted barcode data, and generates and displays the barcode based on the decrypted barcode data.
According to one exemplary embodiment, priorto step S1, the portable electronic device 1 executing the software application 160 may transmit, via the network 5, a request for barcode data for displaying the barcode to the authentication server 3, and the barcode is a fixed barcode.
Upon receipt of the barcode data from the authentication server 3, the portable electronic device 1 divides the barcode data into a first part and a second part, stores the first part of the barcode data in the storage 13, and stores the second part of the barcode data in one of the authentication server 3 and the cloud server 4. It is noted that in this embodiment, the first part of the barcode data is stored in the storage 13 at an arbitrary address of the storage 13, while in other implementations, the first part of the barcode data may be stored in a specified file directory of the storage 13 that is accessible by the software application 160, and the portable electronic device 1 executing the software application 160 is able to obtain the first part of the barcode data by accessing the file directory.
In step S1, the portable electronic device 1 accesses the one of the authentication server 3 and the cloud server 4 to obtain the second part of the barcode data, combines the first and second parts to obtain the barcode data, and generates and displays the barcode based on the barcode data.
In an alternative implementation, upon receipt of the barcode data from the authentication server 3, the portable electronic device 1 divides the barcode data into a plurality of divided files, and stores the plurality of divided files into the storage 13 of the portable electronic device 1.
In step S1, the portable electronic device 1 accesses the storage 13 to obtain the divided files, combines the divided files to obtain the barcode data, and generates and displays the barcode based on the barcode data.
In an alternative implementation, upon receipt of the barcode data from the authentication server 3, the portable electronic device 1 divides the barcode data into at least a first divided file and a second divided file. Afterward, the portable electronic device 1 encrypts at least the first divided file into an encrypted file, and stores the encrypted file and the second divided files into the storage 13.
In step S1, the portable electronic device 1 accesses the storage 13 to obtain the encrypted file and the second divided file, and displays an instruction to require the user to input a password. When a password inputted by the user is correct, the portable electronic device 1 decrypts the encrypted file to obtain the first divided file, combines the first and second divided files to obtain the barcode data, and generates and displays the barcode based on the barcode data.
According to one exemplary embodiment, the identification information is issued by the authentication server 3 and is pre-stored in the storage 13. In particular, a plurality of digital identifications corresponding respectively with a plurality of identity documents may be issued by various parties (servers) serving as the authority party servers 32. A part of data or a data set of each of the digital identifications may serve as the identification information.
Prior to step S1, the method further includes a number of steps.
First, the portable electronic device 1 displays an instruction to require the user (i.e., the holder of the portable electronic device 1) to input a password. In response to receipt of a password inputted by the user, the portable electronic device 1 verifies the password. When the password is successfully verified, the portable electronic device 1 transmits a request for an authorization parameter to the authentication server 3, and, when applicable, displays the available digital identifications for the holder to select one of the digital identifications.
Upon receipt of the authorization parameter, the portable electronic device 1 creates, using a preset key to serve, a message authentication code (MAC) of the authorization parameter to serve as the verification information, and dynamically generates the barcode based on the verification information, the identification information and the authorization parameter. It is noted that when only one digital identification is available, the corresponding part of data is used as the identification information. Otherwise, the part of data of the selected one of the digital identifications is used as the identification information.
It is noted that this embodiment may be employed when the hardware security module 14 is not available, and the functionalities of the hardware security module 14 may be performed by the portable electronic device 1 executing the software application 160.
In an alternative implementation, prior to step S1, the method further includes a number of steps. First, the portable electronic device 1 displays an instruction to require the user to input a password. Then, in response to receipt of a password inputted by the user, the portable electronic device 1 verifies the password. When the password is successfully verified, the portable electronic device 1 dynamically generates the barcode based on the verification information and the identification information.
According to one exemplary embodiment, in step S3, the identification device 2 is programmed to incorporate the barcode into the authentication command without decoding the barcode.
In step S5, the authentication server 3 is programmed to decode the barcode included in the authentication command to obtain the verification information and identification information therefrom.
In an alternative implementation, in step S3, the identification device 2 is programmed to decode the barcode to obtain the verification information and identification information therefrom, and to incorporate the verification information and identification information into the authentication command. As such, in step S5, the authentication server 3 is able to obtain the verification information and identification information directly from the authentication command.
In some embodiments, the authentication server 3 may include a plurality of commercial platforms 31 and/or a plurality of authority party servers 32, and implementation of various steps described above may be done by any one of the commercial platforms 31 and the authority party servers 32, or by both.
In some embodiments when the smart card is present, the operations in the portable electronic device 1 may be performed by the processor module 18. Specifically, the operations (i.e., various steps in the method) in the portable electronic device 1 may be performed interchangeably by one of the processor 16 and the processing unit 141. Moreover, the storage of data in the buyer device may be in the storage module 17. Specifically, the data may be stored interchangeably in one of the storage 13 and the storage unit 142.
According to one embodiment of the disclosure, there is provided a portable electronic device. The portable electronic device includes a processor, a communication unit, a display, a barcode generating module and an input interface.
The processor is programmed to, in response to detection of a user operation for requesting to display a barcode, control the display to display an instruction to require the user to input a password via the input interface, and to verify a password inputted by the user. When the password is successively verified, the processor controls the barcode generating module to generate a barcode that encodes verification information for verifying an identity of the user, and identification information for authenticating an identity of a user of the portable electronic device.
Afterward, the processor controls the display to display the barcode for scanning by an identification device, so as to enable the identification device to generate an authentication command based on the barcode, and to execute an authentication procedure with an authentication server.
In this embodiment, the barcode generating module may be embodied using one of a hardware security module (e.g., element 14 in Figure 2) and the processor (e.g., element 16 in Figure 2) executing an application (e.g., element 160 in Figure 3). Moreover, the hardware security module may be embodied using one of an external portable device removably connected to the portable electronic device, and a built-in module embedded in the portable electronic device.
According to one embodiment of the disclosure, there is provided a server device including a commercial platform for communicating with a portable electronic device and an identification device, and an authority party server communicating with the commercial platform.
The commercial platform is programmed to generate barcode data for displaying a barcode. The barcode encodes verification information for verifying authorization of access to the portable electronic device, and identification information for authenticating an identity of a user of the portable electronic device.
The commercial platform is programmed to transmit the barcode data to the portable electronic device, to receive from the identification device an authentication command based on the barcode, to extract the verification information and identification information from the authentication command, to determine whether the verification information is authentic, and to transmit the identification information to the authority party server when it is determined that the verification information is authentic.
The authority party server is programmed to, upon receipt of the identification information, authenticate the identification information, and to transmit an authentication result to the identification device. In this embodiment, the authority party server may store a plurality of identity data sets that are associated with a plurality of identity documents, respectively.
The commercial platform is programmed to, prior to generating the barcode data, in receipt of a request for the barcode data that includes a user selection indicating a selected one of the identity documents, read a corresponding one of the identity data sets that corresponds with the selected one of the identity documents, and generate the barcode data based on the corresponding one of the identity data sets of the identification information and the verification information stored therein.
In the description above, for the purposes of explanation, numerous specific details have been set forth in order to provide a thorough understanding of the embodiments. It will be apparent, however, to one skilled in the art, that one or more other embodiments may be practiced without some of these specific details. It should also be appreciated that reference throughout this specification to "one embodiment," "an embodiment," an embodiment with an indication of an ordinal number and so forth means that a particular feature, structure, or characteristic may be included in the practice of the disclosure . It should be further appreciated that in the description, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding various inventive aspects.

Claims (19)

  1. A method for identity authentication to be implemented by a portable electronic device (1), an identification device (2), and an authentication server (3) communicating with the portable electronic device (1) and the identification device (2), characterized in that the method includes steps of:
    in response to detection of a user operation for requesting to display a barcode, displaying, by the portable electronic device (1), a barcode on a display thereof, the barcode encoding verification information and identification information that is associated with an identity of a user of the portable electronic device (1);
    scanning, by the identification device (2), the barcode displayed on the display of the portable electronic device (1);
    generating, by the identification device (2), an authentication command based on the barcode;
    transmitting, by the identification device (2), the authentication command to the authentication server (3);
    extracting, by the authentication server (3), the verification information and identification information from the authentication command;
    determining, by the authentication server (3), whether the verification information is authentic;
    when it is determined that the verification information is authentic, authenticating, by the authentication server (3), the identification information; and
    transmitting, by the authentication server (3) to the identification device (2), an authentication result of the step of authenticating the identification information.
  2. The method of Claim 1, characterized in that the barcode is a static barcode encoding data that is provided by the authentication server (3) and that is stored in a hardware security module (14) installed on and accessible by the portable electronic device (1).
  3. The method of Claim 2, characterized in that the hardware security module (14) is one of an external portable device removably connected to the portable electronic device (1), and a built-in module embedded in the portable electronic device (1).
  4. The method of Claim 1, characterized in that the method further includes, before the step of displaying a barcode, steps, implemented by the portable electronic device (1) executing an application, of:
    transmitting, to the authentication server (3), a request for barcode data for displaying the barcode, the barcode being a fixed barcode;
    upon receipt of the barcode data, dividing the barcode data into a first part and a second part; and
    storing the first part of the barcode data in a storage module (17) of the portable electronic device (1), and the second part of the barcode data in one of the authentication server (3) and a cloud server (4),
    wherein the step of displaying a barcode includes accessing the one of the authentication server (3) and the cloud server (4) to obtain the second part of the barcode data, combining the first and second parts to obtain the barcode data, and displaying the barcode based on the barcode data.
  5. The method of Claim 1, characterized in that the method further includes, before the step of displaying a barcode, steps of:
    communicating, by the portable electronic device (1), with the authentication server (3) to obtain barcode data to be encoded in the barcode;
    dividing, by the portable electronic device (1), the data obtained from the authentication server (3) into a plurality of divided files; and
    storing, by the portable electronic device (1), the divided files in a storage module (17) of the portable electronic device (1);
    wherein the step of displaying a barcode includes accessing the storage module (17) to obtain the divided files, combining the divided files to obtain the barcode data, and generating and displaying the barcode based on the barcode data.
  6. The method of Claim 1, characterized in that the method further includes, before the step of displaying a barcode, steps of:
    communicating, by the portable electronic device (1), with the authentication server (3) to obtain barcode data to be encoded in the barcode;
    dividing, by the portable electronic device (1), the data obtained from the authentication server (3) into at least a first divided file and a second divided file;
    encrypting, by the portable electronic device (1), at least the first divided file into an encrypted file; and
    storing, by the portable electronic device (1), the encrypted file and the second divided file in a storage module (17) of the portable electronic device (1);
    wherein the step of displaying a barcode includes
    accessing the storage module (17) to obtain the encrypted file and the second divided file,
    displaying an instruction to require the user to input a password, and
    when a password inputted by the user is correct, decrypting the encrypted file to obtain the first divided file, combining the first and second divided files to obtain the barcode data, and generating and displaying the barcode based on the barcode data.
  7. The method of Claim 1, a hardware security module (14) being installed on and accessible by the portable electronic device (1), the identification information being issued by the authentication server (3) and being stored in the a storage module (17) of the portable electronic device (1), characterized in that the step of displaying a barcode includes:
    displaying, by the portable electronic device (1), an instruction to require the user to input a password;
    in response to receipt of a password inputted by the user, requiring, by the portable electronic device (1), the hardware security module (14) to verify the password;
    transmitting, by the portable electronic device (1), a request for an authorization parameter to the authentication server (3) when the password is verified to be correct by the hardware security module (14);
    in response to receipt of the authorization parameter from the authentication server (3), creating, by the hardware security module (14) using a preset key, a message authentication code (MAC) for the authorization parameter that serves as the verification information;
    dynamically generating, by the hardware security module (14), barcode data for displaying the barcode based on the verification information, the identification information and the authorization parameter; and
    transmitting, by the hardware security module (14), the barcode data to the portable electronic device (1); and
    displaying, by the portable electronic device (1), the barcode based on the barcode data;
    wherein the authentication command generated by the identification device (2) further includes the authorization parameter;
    wherein the step of determining whether the verification information received from the identification device (2) is authentic includes
    comparing, by the authentication server (3), the authorization parameter included in the authentication command with the authorization parameter stored in the authentication server (3),
    in response to the determination that the authorization parameter included in the authentication command and the authorization parameter stored in the authentication server (3) are identical, using the preset key stored in the authentication server (3) to create a MAC for the authorization parameter stored in the authentication server (3), and comparing the MAC thus generated with the MAC that serves as the verification information, and
    determining that the verification information is authentic when the MAC thus generated and the MAC that serves as the verification information are identical.
  8. The method of Claim 1, the identification information having a plurality of identity data sets that are associated with a plurality of identity documents, respectively, characterized in that the identification information is further associated with a user selection of a selected one of the identity documents.
  9. The method of Claim 1, a hardware security module (14) being installed on and accessible by the portable electronic device (1), the identification information being issued by the authentication server (3) and being stored in a storage module (17) of the portable electronic device (1), characterized in that the step of displaying a barcode includes:
    displaying, by the portable electronic device (1), an instruction to require the user to input a password;
    in response to receipt of a password inputted by the user, requiring, by the portable electronic device (1), the hardware security module (14) to verify the password;
    after the password is verified to be correct by the hardware security module (14), dynamically generating, by the hardware security module (14), barcode data based on the verification information and the identification information;
    transmitting, by the hardware security module (14), the barcode data to the portable electronic device (1); and
    displaying, by the portable electronic device (1), the barcode based on the barcode data.
  10. The method of any one of Claims 4 to 7 and 9, characterized in that the storage module (17) includes a storage (13) included in the portable electronic device (1) and the storage unit (142) included in the hardware security module (14).
  11. The method of Claim 1, the authentication server (3) storing the identification information and the verification information therein, characterized in that the method further includes, before the step of displaying a barcode, steps of:
    transmitting, by the portable electronic device (1) to the authentication server (3), a request for barcode data for displaying the barcode;
    in response to the request, dynamically generating, by the authentication server (3), the barcode data based on the identification information and the verification information stored therein; and
    transmitting, by the authentication server (3), the barcode data thus generated to the portable electronic device (1).
  12. The method of Claim 1, characterized in that the method further includes, before the step of displaying a barcode, steps, implemented by the portable electronic device (1) executing an application, of:
    transmitting, to the authentication server (3), a request for barcode data for displaying the barcode, the barcode being a fixed barcode; and
    upon receipt of the barcode data, encrypting the barcode data and storing the encrypted barcode data in a storage (13) of the portable electronic device (1);
    wherein the step of displaying a barcode includes
    displaying, by the portable electronic device (1), an instruction to require the user to input a password,
    in response to receipt of a password inputted by the user, verifying the password, and
    after the password is verified to be correct, obtaining the encrypted barcode data from the storage (13), decrypting the encrypted barcode data to obtain decrypted barcode data, and displaying the barcode based on the decrypted barcode data.
  13. The method of Claim 1, characterized in that:
    the step of generating an authentication command includes incorporating the barcode into the authentication command without decoding the barcode; and
    the step of extracting the verification information and identification information from the authentication command includes decoding, by the authentication server (3), the barcode included in the authentication command to obtain the verification information and identification information therefrom.
  14. The method of Claim 1, characterized in that the step of generating an authentication command includes steps, implemented by the portable electronic device (1), of decoding the barcode to obtain the verification information and identification information therefrom, and incorporating the verification information and identification information into the authentication command.
  15. A portable electronic device (1), characterized by:
    a display (12) for displaying a barcode;
    an input interface (15) allowing a user to input a password;
    a barcode generating module coupled to said input interface (15) for receiving therefrom the password inputted by the user, and programmed to
    verify the password, and
    when the password is successfully verified, generate a barcode encoding verification information and identification information that is associated with an identity of the user; and
    a processor (13) electrically connected to said display (12), operatively associated with said barcode generating module for receiving the barcode therefrom, and programmed to control said display (12) to display the barcode for scanning by an identification device (2), so as to enable the identification device (2) to generate an authentication command based on the barcode and to transmit the authentication command to an authentication server (3), the authentication server (3) extracting the verification information and the identification information from the authentication command, determining whether the verification information is authentic, authenticating the identification information when it is determined that the verification information is authentic, and transmitting an authentication result of the authenticating of the identification information to the identification device (2).
  16. The portable electronic device (1) of Claim 14, characterized in that said barcode generating module is one of a hardware security module (14) installed on and accessible by said portable electronic device (1), and an application executed by said processor (13), wherein said hardware security module (14) is one of an external portable device removably connected to said portable electronic device (1), and a built-in module embedded in said portable electronic device (1).
  17. The portable electronic device (1) of Claim 14, characterized in that the portable electronic device (1) further includes a storage module (17) for storing the barcode data for generating the barcode.
  18. A server device (3), characterized by:
    a commercial platform (31) for communicating with a portable electronic device (1) and an identification device (2); and
    an authority party server (32) communicating with said commercial platform (31);
    wherein said commercial platform (31) is programmed to
    generate barcode data for displaying a barcode, the barcode encoding verification information and identification information that is associated with an identity of a user of the portable electronic device (1), wherein data to be encoded in the barcode is separated into at least two data files and stored in said server device (3), and before displaying the barcode, said barcode generating module combines the at least two data files to obtain the barcode,
    transmit the barcode data to the portable electronic device (1) so as to enable the portable electronic device (1) to display the barcode,
    receive, from the identification device (2), an authentication command, the identification device (2) scanning the barcode displayed by the portable electronic device (1) and generating the authentication command based on the barcode,
    extract the verification information and identification information from the authentication command,
    determine whether the verification information is authentic, and
    transmit the identification information to said authority party server (32) when it is determined that the verification information is authentic,
    wherein, said authority party server (32) is programmed to, upon receipt of the identification information, authenticate the identification information, and transmit an authentication result of authenticating the identification information to the identification device (2).
  19. The server device of Claim 18, characterized in that said authority party server (32) stores a plurality of identity data sets that are associated with a plurality of identity documents of the user, respectively,
    wherein said commercial platform (31) is programmed to, prior to generating the barcode data, in receipt of a request for the barcode data that includes a user selection indicating a selected one of the identity documents,
    read a corresponding one of the identity data sets that is associated with the selected one of the identity documents, and
    generate the barcode data based on the corresponding one of the identity data sets of the identification information and the verification information stored therein.
HK19119687.2A 2017-03-29 2019-02-19 Identity authentication using a barcode HK1260010B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW106110440 2017-03-29

Publications (2)

Publication Number Publication Date
HK1260010A1 true HK1260010A1 (en) 2019-12-13
HK1260010B HK1260010B (en) 2022-05-27

Family

ID=

Similar Documents

Publication Publication Date Title
US10979421B2 (en) Identity authentication using a barcode
US9413753B2 (en) Method for generating a soft token, computer program product and service computer system
US9647840B2 (en) Method for producing a soft token, computer program product and service computer system
US10771256B2 (en) Method for generating an electronic signature
EP3605997A1 (en) Method, apparatus and system for securing a mobile application
US20110185181A1 (en) Network authentication method and device for implementing the same
EP3382627A1 (en) Mobile payment method using a barcode, device and server for implementing the method
JP2015088080A (en) Authentication system, authentication method, and program
WO2013175230A1 (en) Payment unit, system and method
JP2025027090A (en) Terminal, information processing method, and program
CN101501736B (en) File reader, data object reading method
CN109447029B (en) Electronic identity card photo generation system and method
JP7693309B2 (en) ID registration system, ID registration method and program
US20240214207A1 (en) Information management system, authentication device, and personal information server
US10440017B2 (en) Secure health data storage and transaction system
JP6760631B1 (en) Authentication request system and authentication request method
US20130090059A1 (en) Identity verification
TWI677842B (en) System for assisting a financial card holder in setting password for the first time and method thereof
JP6690686B2 (en) Account opening system, account opening method, and program
JP2009086890A (en) Application acceptance system and application acceptance method
WO2016013924A1 (en) System and method of mutual authentication using barcode
HK1260010A1 (en) Identity authentication using a barcode
HK1260010B (en) Identity authentication using a barcode
TWI700643B (en) Multi-dimensional barcode mobile identity authentication method
EP3145117A1 (en) A method and a system for shared digital signing of a document