GB2548774A - Method, system and computer program for comparing images - Google Patents

Method, system and computer program for comparing images Download PDF

Info

Publication number
GB2548774A
GB2548774A GB1711216.0A GB201711216A GB2548774A GB 2548774 A GB2548774 A GB 2548774A GB 201711216 A GB201711216 A GB 201711216A GB 2548774 A GB2548774 A GB 2548774A
Authority
GB
United Kingdom
Prior art keywords
image
data
user
processing system
identity document
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB1711216.0A
Other versions
GB2548774B (en
GB201711216D0 (en
Inventor
King Russell
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Paycasso Verify Ltd
Original Assignee
Paycasso Verify Ltd
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
Priority claimed from GB1305814.4A external-priority patent/GB2500823B/en
Priority claimed from GBGB1319344.6A external-priority patent/GB201319344D0/en
Application filed by Paycasso Verify Ltd filed Critical Paycasso Verify Ltd
Priority claimed from GB1602863.1A external-priority patent/GB2539302B/en
Publication of GB201711216D0 publication Critical patent/GB201711216D0/en
Publication of GB2548774A publication Critical patent/GB2548774A/en
Application granted granted Critical
Publication of GB2548774B publication Critical patent/GB2548774B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/98Detection or correction of errors, e.g. by rescanning the pattern or by human intervention; Evaluation of the quality of the acquired patterns
    • G06V10/993Evaluation of the quality of the acquired pattern
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/40Spoof detection, e.g. liveness detection
    • G06V40/45Detection of the body part being alive
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07DHANDLING OF COINS OR VALUABLE PAPERS, e.g. TESTING, SORTING BY DENOMINATIONS, COUNTING, DISPENSING, CHANGING OR DEPOSITING
    • G07D7/00Testing specially adapted to determine the identity or genuineness of valuable papers or for segregating those which are unacceptable, e.g. banknotes that are alien to a currency
    • G07D7/20Testing patterns thereon
    • G07D7/202Testing patterns thereon using pattern matching
    • G07D7/206Matching template patterns
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/062Pre-authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/068Authentication using credential vaults, e.g. password manager applications or one time password [OTP] applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Collating Specific Patterns (AREA)

Abstract

A method of determining whether a user of a device corresponds to a user previously authenticated via an identity document comprising an integrated circuit component (IC or chip) storing data representative of a digital image of the user. The method comprises: causing a camera to capture a first image 100, being an image of the identity document 110 and including first data OCR encoded in a Machine Readable Zone (MRZ) of the document; causing a reader to retrieve second data from the integrated circuit component; arranging for the first data and/or second data to be compared with third data retrieved from a remoted storage device, to determine whether the first data and/or second data matches the third data. The method further comprises causing a camera to capture a second image 200, being an image of a user 210 of the device; and arranging for the second image to be compared with the digital image retrieved from the IC, and to determine whether they represent the same entity. If the second image and the digital image represent the same entity, and the first data and/or second data matches the third data, the user is authenticated as the previously authenticated user.

Description

METHOD, SYSTEM AND COMPUTER PROGRAM FOR COMPARING IMAGES
Technical Field
The present invention relates to a method, system and computer program for comparing images.
Background
There is growing demand for services providers to provide their services via devices, such as PCs, tablets and mobile phones. However, for many service providers, the need to verify the credentials of the users to whom they are providing a service is very important. For providers of certain online services, for example, there is a need to ensure that their users are above a certain age. As an example, online banking service providers need to ensure that the identity of a user is reliably verified before that user is allowed access to user-restricted banking services. There are particular challenges when verifying the identity of a user via a device, compared to, for example, verifying a person’s identity in via a face-to-face transaction.
Summary
According to a first aspect of the present invention, there is provided a method of determining whether a user of a mobile device corresponds to a previously authenticated user, the user having been previously authenticated via an identity document comprising: a photographic image of the previously authenticated user, the photographic image being visible on said identity document; and an integrated circuit component storing data representative of a digital image of the previously authenticated user, the method comprising: causing a chip reader connected to or integral with the mobile device to access the integrated circuit component, whereby to retrieve said data representative of a digital image of the previously authenticated user; causing a camera connected to or integral with the mobile device to capture a first image, the first image corresponding to an image of a portion of the identity document containing said photographic image visible on the identity document; causing a camera connected to or integral with the mobile device to capture a second image, the second image corresponding to a user of the mobile device; and, arranging for said retrieved data and data indicative of said first and second images to be compared, whereby to determine whether the first image, the second image, and the digital image represent the same user; and, in the event that it is determined that the first image, the second image, and the digital image represent the same user, forming an association between the previously authenticated user, and the mobile device.
The step of comparing the retrieved data and the data indicative of the first and second images, may be performed on the basis of every possible permutation of the retrieved data and the data indicative of the first and second images. Alternatively, a less processor intensive process may be employed, in which the retrieved data is compared to the data indicative of the first image, and separately to the data indicative of the second image.
By forming an association between the previously authenticated user and the mobile device, the mobile device is, in effect, verified as the mobile device of the previously authenticated user. The association may be used for several purposes.
As a first example, the association may be used by a third party who provides access to user-restricted services or resources via mobile devices. More specifically, the association may be used by a third party to determine the mobile device on which to provide access to a service/resource that has been requested by the previously authenticated user. In this case, upon determining that the first image, the second image, and the digital image represent the same user, the third party may be informed of the mobile device with which the previously authenticated user is associated. In this way, the third party can be sure that the services or resources they provide are being supplied to a mobile device that is held by the previously authenticated user.
As another example, the association may be used to identify suspicious user behaviour. For example, if a user of a first mobile device is purporting to be a previously authenticated user; however, the previously authenticated user is associated with a different mobile device, and has only ever authenticated himself on that device, then the user of the first mobile device may be identified as a suspicious user. In this case, more stringent verification checks may be carried out on the identity document supplied by the user of the first device.
As a further example, the association may be used to authenticate the user of the mobile device in a subsequent authentication event for that device. More specifically, upon determining that the first image, the second image, and the digital image represent the same user, the data representative of the second image, and/or the data representative of the digital image retrieved from the chip of the identity document, may be stored as a validated image of the previously authenticated user, together with an association with the mobile device.
In a subsequent authentication event for the mobile device, the stored image of the previously authenticated user that is associated with the mobile device may be retrieved and compared to a newly captured image of the user of the mobile device. In this way, it can be determined whether the current user of the mobile device is the previously authenticated user associated with the mobile device without the user being required to supply an identity document. In this case, therefore, the association between the mobile device and the previously authenticated user is, in effect, an association between the mobile device and an image that has been verified as an image of the previously authenticated user.
In the specific arrangement where the second image (i.e. the image of the previously authenticated user captured by the mobile device) is stored as a validated image of the previously authenticated user at a storage device remote from the mobile device, such an association between the mobile device and the second is of particular use. This is because a particular user will typically have a plurality of mobile devices on which he authenticates himself. Thus, the remote storage device may store multiple “second” images of the previously authenticated user; each of which were captured by a different mobile device. By storing an association between each of the second images and the mobile device that captured the second image, the “correct” second image can be retrieved from the storage device when the user attempts to authenticate himself via one of those devices. In other words, when a user attempts to authenticate himself by a particular mobile device, the second image that was captured by that mobile device may be retrieved from the storage device and compared to a newly captured image of the user of that mobile device. By comparing images that were captured by the same device, the reliability of the image matching result can be improved.
Irrespective of how the association is used, the association formed between the previously authenticated user, and the mobile device may be formed, for example, by storing an association between a unique device identifier for the mobile device and data that uniquely identifies the previously authenticated user. The data that uniquely identifies the previously authenticated user could comprise data representative of a digital image of the previously authenticated user, as described above. The unique device identifier and the data that uniquely identifies the previously authenticated user may be stored by a storage device remote from the mobile device.
By determining whether the first image, the second image, and the digital image represent the same user, it can be determined up to a high level of confidence whether the user of the mobile device is the previously authenticated user.
More specifically, by performing a three-way comparison between the retrieved data and the data indicative of the first and second images, the reliability of the image matching result is improved as compared to performing a two-way comparison between e.g. the retrieved data and the second image.
Additionally, by comparing the data representative of the first image (i.e. the image of the photographic image of the previously authenticated user visible on the identity document), and the data representative of a digital image of the previously authenticated user stored on the integrated circuit component, the validity of the identity document can be verified. For example, any alterations made to the photographic image visible on the identity document can be detected. Additional validity checks may also be performed.
Advantageously, the method may comprise arranging for the retrieved data and the data indicative of the first image to be compared, for the purposes of verifying the validity of the identity document. For example the identity document may further comprise first data, in which case the method may further comprise arranging for the first data to be derived from the identity document such that verification of the validity of the identity document is performed on the basis of the first data.
In one example, at least some of said first data may be stored in the integrated circuit component, and the step of arranging for the first data to be derived from the identity document may comprise causing a chip reader connected to or integral with the mobile device to access the integrated circuit component to retrieve said first data. As a particular example, the first data stored in the integrated circuit component may comprise data that is signed by the authority that issued the identity document. In this case, the step of verifying the validity of the identity document on the basis of the first data may comprise verifying that the data has been signed by the issuing authority.
Additionally or alternatively, at least some of said first data may be visible on said identity document, and said first image comprises a portion of the identity document containing said first data. In this case the step of arranging for the first data to be derived from the identity document comprises either: analysing features within said first image, or sending said first image to a remote processing system that is configured to analyse features within said first image, whereby to derive said first data from the identity document.
As a particular example, some of the first data may be stored in the integrated circuit component and some may be visible on the identity document. The data stored in the integrated circuit component may be encrypted with a key that is derivable from the data visible on the identity document. In this case, the step of verifying the validity of the identity document may comprise deriving the visible data from the identity document, and using the visible data to derive the key for decrypting the data stored in the integrated circuit component. In this way it can be verified, for example, that the visible data and/or the data on the integrated circuit component has not been tampered with.
As a further example, at least some of the first data may comprise a unique identifier for the user associated with the identity document. In such arrangements the unique identifier may be used to retrieve further data relating to the user from a storage device remote from the identity document. The retrieved data may be used to check the validity of the identity document. As a specific example, the retrieved data may comprise an image of the user associated with the identity document, and the validity of the identity document can be checked by comparing the retrieved image to the image of the identity document (i.e. the “first image”), and/or the data representative of the digital image stored on the chip, to verify that the identity document has not been tampered with. Additionally, or alternatively, the retrieved image can be compared to the image of the user of the device (i.e. the “second image”). This may be done to improve the reliability of the user authentication result.
In one arrangement, the identity document may further comprise second data relating to the previously authenticated user, and the method may further comprise arranging for said second data to be derived from the identity document. The second data may be data that identifies the previously authenticated user, such as the name, date of birth, and/or address of the user. In the event that the first image, the second image, and the digital image are determined to represent the same user, this second data can be stored, together with the identifier for the previously authenticated user, for use in a subsequent authentication event for the user. Thus, the user need not provide this data in a subsequent authentication event.
In one example, at least some of said second data is stored in the integrated circuit component, and said step of arranging for said second data to be derived from the identity document comprises causing a chip reader connected to or integral with the mobile device to access the integrated circuit component, whereby to retrieve said second data.
Additionally, or alternatively, at least some of said second data may be visible on said identity document, and said first image may comprise a portion of the identity document containing said second data. In this case, the step of arranging for said second data to be derived from the identity document may comprise arranging for said second data to be extracted from the first image using Optical Character Recognition.
The second data may be a subset of the above-mentioned first data.
In one arrangement, the chip reader may utilise a Near Field Communication protocol to access the integrated circuit component.
The above-mentioned step of arranging for the comparison of the data representative of a digital image of the previously authenticated user and the data indicative of the first and second images may, in some arrangements, comprise sending the data representative of a digital image of the previously authenticated user and the data indicative of said first and second images to a remote processing system configured to carry out said comparison. Alternatively, the data representative of a digital image of the previously authenticated user and the data indicative of said first and second images may be compared by a processing system of the mobile device.
According to a second aspect of the present invention, there is provided a processing system for use in determining whether a user of a mobile device corresponds to a previously authenticated user, the user having been previously authenticated via an identity document comprising: a photographic image of the previously authenticated user, the photographic image being visible on said identity document; and an integrated circuit component storing data representative of a digital image of the previously authenticated user, the processing system being configured to: cause a chip reader connected to or integral with the mobile device to access the integrated circuit component, whereby to retrieve said data representative of a digital image of the previously authenticated user; cause a camera connected to or integral with the mobile device to capture a first image, the first image corresponding to an image of a portion of the identity document containing said photographic image visible on the identity document; cause a camera connected to or integral with the mobile device to capture a second image, the second image corresponding to a user of the mobile device; arrange for said retrieved data and data indicative of said first and second images to be compared, whereby to determine whether the first image, the second image, and the digital image represent the same user; and, in the event that it is determined that the first image, the second image, and the digital image represent the same user, form an association between the previously authenticated user, and the mobile device.
According to a third aspect of the present invention, there is provided a computer program for use in determining whether a user of a mobile device corresponds to a previously authenticated user, the user having been previously authenticated via an identity document comprising: a photographic image of the previously authenticated user, the photographic image being visible on said identity document; and an integrated circuit component storing data representative of a digital image of the previously authenticated user, and the computer program comprising instructions such that when the computer program is executed on a processing system the processing system is configured to carry out a method according to the first aspect.
According to a fourth aspect of the present invention, there is provided a method of verifying, by a processing system, whether a user of a device corresponds to a previously authenticated user, the processing system having access to a first image and a second image, the first image being an image of an identity document comprising an image of the previously authenticated user and data identifying the previously authenticated user, the identity document having been validated in respect of the previously authenticated user by a trusted authority, whereby to previously authenticate the user, and the processing system being arranged to derive, from the identity document, said data identifying the previously authenticated user, wherein the second image is an image captured by the device, the method comprising: comparing said first image to said second image, whereby to determine whether they are images of the same user; and, in the event that it is determined that the first and second images are images of the same user: designating one of the first and second images as the higher quality image; storing said designated image as a validated image of the previously authenticated user in a storage device together with an identifier for the previously authenticated user, said designated image being designated for use in a subsequent verification event for the previously authenticated user and; arranging for said derived data to be stored, together with said identifier for the previously authenticated user, whereby to enable said data to be retrieved in the subsequent verification event for the previously authenticated user.
By storing the designated image in a storage device together with an association with the previously authenticated user, the higher-quality designated image can be used as an alternative to the lower-quality image to verify whether a user of a device corresponds to the previously authenticated user in a subsequent verification event.
Identity documents typically include pictures of the user with which they are associated; however, these pictures are typically of a very poor quality for the purpose of facial image matching. Currently identity documents are typically issued in the form of a card or other reprographic medium; however, the present invention is equally applicable where the identity document has an electronic identity component, for example. An example of such an electronic identity component could be a chip within an identity document, which stores data such as a digital representation of an image of the user. As another example, the electronic identity component could be a storage device that is remote from the identity document, and which stores data such as a digital image of the user.
Typically the second image, which is an image captured by the device, will be of a higher quality for the purpose of facial image matching. Thus, by storing the second image, and using the second image in preference to an image of an identity document in a subsequent verification event, the reliability of the subsequent verification result can be improved.
As mentioned, the identity document also comprises data that identifies the user with which it is associated. The data could include, for example, information, such as the name, date of birth, and/or address of the user. By arranging for this data to be stored, together with the identifier for the previously authenticated user, this data can be later retrieved in a subsequent authentication event for the user. Thus, the user need not provide this data in a subsequent authentication event.
The data may, in some cases, be printed or otherwise presented on a surface of the identity document. In such an arrangement, the data can be derived from the image of the identity document using optical character recognition, for example.
Additionally, or alternatively, an identity document may comprise a chip which stores data that identifies the previously authenticated user. In this case, the data may be derived from the identity document using, for example, near field communication. More specifically, the device which was used to capture the image of the identity document may comprise a near field communication reader configured to retrieve the data stored in the chip of the identity document when in close proximity to the chip. In effect, therefore, in this arrangement, the processing system derives the data stored in the chip indirectly, through the near field communication reader of the device.
The data stored in the chip within the identity document may comprise a digital image of the previously authenticated user. Where this is the case, the digital image may be retrieved and compared with the first image to verify that the first image is an image of a valid identity document. By this method, the processing system is able to determine whether the identity document, and in particular the picture of the previously authenticated user on the identity document, has been tampered with. The digital image from the chip may also be stored together with other data derived from the identity document and the identifier for the previously authenticated user.
The data that is derived from the identity document may additionally or alternatively comprise a unique identifier for the user associated with the identity document. In such arrangements the unique identifier may be used to retrieve further data relating to the user from a storage device remote from the identity document. The processing system may use the retrieved data to check the validity of the identity document. As a specific example, the retrieved data may comprise an image of the user associated with the identity document, and the validity of the identity document can be checked by comparing the retrieved image to the image of the identity document (i.e. the “first image”) to verify that the picture on the identity document has not been tampered with. Additionally, or alternatively, the retrieved image can be compared to the image of the user of the device (i.e. the “second image”). This may be done to improve the reliability of the user authentication result.
In addition, or as an alternative, to using the retrieved data to check the validity of the identity document, the processing system may arrange for the retrieved data to be stored such that it can be used in subsequent authentication events.
Advantageously, in a subsequent verification event for a user of the device, the method comprises comparing an image that has subsequently been captured by said device as part of the subsequent verification event to said designated image whereby to determine whether the user of the device is said previously authenticated user. Using the higher-quality designated image for the comparison improves the reliability of the result of the subsequent verification event.
In the event that it is determined, in the subsequent verification event, that the user of the device is the previously authenticated user, the method may, in one arrangement, comprise: using said identifier for the previously authenticated user to retrieve the details derived from the first image; and, sending said details to a system remote from the processing system together with said identifier.
In one arrangement, the method comprises encoding said second image using a one-way encoding algorithm prior to storing the encoded second image at said step of storing the second image.
The previously authenticated user may be associated with a unique user identifier, and in the event that it is determined that the first and second images represent the same user, the method may further comprise storing an association between said unique user identifier and the second image. The unique user identifier may be used to retrieve the second image from the storage device if the previously authenticated user subsequently wishes to authenticate himself in a subsequent verification event.
Furthermore, in the event that it is determined that the first and second images are images of the same user, the method may further comprise sending said identifier to a system remote from said processing system whereby to indicate that the user of the device has been verified as the user associated with said identifier. The system remote from the processing system may be, for example, a system associated with a service provider with which the user of the device wishes to authenticate himself.
In yet another arrangement, the device is associated with a unique device identifier, and in the event that it is determined that the first and second images are images of the same user, the method further comprises storing an association between said unique device identifier and the second image.
In the event that it is determined that the first and second images are images of the same user, the method may further comprise sending said unique device identifier to a system remote from said processing system together with an indication that the user of the device has been verified. This may be particularly useful where the system remote from the processing system is associated with a service provider as discussed above, and the service provider provides services directly to devices.
In one arrangement, said step of designating one of the first and second images as the higher quality image comprises the step of comparing the image quality of the first image to the image quality of the second image. Alternatively, it may be assumed that the second image is the higher quality image by default, without performing a comparison. However, performing such a comparison of the image qualities of the first and second images ensures that the higher quality image can always be used in a subsequent verification event.
According to a fifth aspect of the present invention, there is provided a processing system for use in comparing two images in order to determine whether they represent the same entity, the processing system being configured to: assess an image quality of each of a plurality of sections of a first of said two images, whereby to assign an image quality to each of said plurality of sections of the first image; for at least one section of the first image that is determined to have an image quality different from the image quality of others of said plurality of sections of the first image; perform an image processing process, the image processing process comprising: configuring a matching algorithm for that section of the first image in dependence on the assigned image quality of the section; and using the configured matching algorithm to compare said section of the first image with a corresponding section of the second of said two images whereby to generate an output; and, use said output to determine whether the first and second images represent the same entity.
According to a sixth aspect of the present invention, there is provided a computer program for use in verifying whether a user of a device corresponds to a previously authenticated user, the computer program comprising instructions such that when the computer program is executed on a processing system having access to a first image and a second image, the processing system is configured to carry out a method according to the third aspect, wherein: the first image is an image of an identity document comprising an image of the previously authenticated user and data identifying the previously authenticated user, the identity document having been validated in respect of the previously authenticated user by a trusted authority, whereby to previously authenticate the user, and the processing system is arranged to derive, from the identity document, said data identifying the previously authenticated user, and the second image is an image captured by the device.
According to a seventh aspect of the present invention, there is provided a method of comparing two images by a processing system in order to determine whether they represent the same entity, the method comprising: assessing an image quality of each of a plurality of sections of a first of said two images, whereby to assign an image quality to each of said plurality of sections of the first image; for at least one section of the first image that is determined to have an image quality different from the image quality of others of said plurality of sections of the first image; performing an image processing process, the image processing process comprising: configuring a matching algorithm for that section of the first image in dependence on the assigned image quality of the section; and using the configured matching algorithm to compare said section of the first image with a corresponding section of the second of said two images whereby to generate an output; using said output to determine whether the first and second images represent the same entity.
The quality of a section of the first image can be usefully assessed by determining the amount of detail the section contains that is useful for performing an image matching process with another image. Sections of the first image that contain little in the way of detail that is useful for facial matching can bias the overall comparison result between the first image and the second image. By considering the image quality of the first image section-by-section, the sections of the first image that contain little such detail can be identified, and can be taken into account when configuring the matching algorithm, such that the biasing effect of those sections can be reduced.
In one arrangement, the image quality of a said section is determined by identifying features within that section and comparing characteristics of said features to characteristics of features of a predetermined set of training features. The set of training images may comprise one or more sets of images with “desired” features and one or more sets of images with “undesirable” features. A set of images with desired features may be made up of images that are suitable for image comparison. Sets of images having undesirable features may include, for example, sets of images with poor lighting, or blurred features.
Alternatively, or additionally, the image quality of a said section may be determined by identifying features within that section and determining the sharpness of the identified features. A section having features with a relatively high determined sharpness may be assigned a higher image quality than a section having features with a relatively low determined sharpness. The sharpness of a feature can be assessed by, for example, determining the change in pixel intensity over a given area. A large change in pixel intensity over a relatively small area could indicate a relatively sharp feature, whereas a smaller change over a larger area could indicate a relatively unclear feature. Sections of an image that contain sharp features typically contain detail that can be useful for image matching.
In one arrangement, the matching algorithm for a given section of the first image is configured to: convert said section of the first image and the corresponding section of the second image into first and second numerical representations of said sections of the first and second images respectively, the first and second numerical representations being representations of characteristics of said features within the sections of the first and second images respectively; and, compare said first and second numerical representations whereby to determine whether the first and second images represent the same entity.
The method may, in one particular arrangement, comprise performing the image processing process for a plurality of said sections of the first image, whereby to generate a plurality of outputs, each corresponding to a comparison for a said section of the first image; and using the respective outputs for said sections of the first image to determine whether the first and second images represent the same entity.
Additionally, the configured matching algorithm may be configured to combine said respective outputs, said combining comprising: assigning a relatively high weighting to an output corresponding to a comparison for a said section of the first image having a relatively high assigned image quality; assigning a relatively low weighting to an output corresponding to a comparison for a said section of the first image having a relatively low assigned image quality; and combining said weighted outputs.
In the present arrangement, said weighted outputs may be combined to give a value indicative of the probability that the first and second images represent the same entity, and said step of determining whether the first and second images represent the same entity may comprise comparing said value to a predetermined threshold value.
Optionally, the first image may be an image that has been captured by or in conjunction with the processing system. Alternatively or additionally, the second image may be an image that has been captured by or in conjunction with the processing system. Where the processing system is a component of a user device, such as a mobile device, the first and/or second image may be captured by an image capture component of the user device, for example. Alternatively, where the processing system is, for example, a remote server, the first and/or second image may have been captured by a device remote from the processing system, which is working in conjunction with the processing system to determine whether the first and second images represent the same entity.
In the event that it is determined that the first and second images do not represent the same entity, the method may comprise successively capturing further images by or in conjunction with the processing system, and comparing each said further image with the first image whereby to determine whether they represent the same entity. This arrangement is particularly advantageous where the second image is an image captured by a mobile device, because the image capture conditions of a mobile device can vary (the lighting, for example, depends greatly on the location and orientation of the device). Thus, if it were erroneously determined that the first and second images do not represent the same entity due to the poor image quality of the second image, a further image can be captured and compared to the first image. The likelihood of the comparison result being correct for the further image of the user can be increased if the further image is of suitably improved image quality.
In one arrangement, the method further comprises comparing the overall image qualities of the two images and designating the image with the lower overall image quality as the first image and the image with the higher overall image quality as the second image. The lower-quality image is likely to have a greater number of sections that contain little in the way of detail that is useful for image comparison, and thus the effectiveness of the above method in improving the reliability of the image matching result can be increased be designating the lower-quality image as the first image.
According to a eighth aspect of the present invention, there is provided a processing system for use in comparing two images in order to determine whether they represent the same entity, the processing system being configured to: assess an image quality of each of a plurality of sections of a first of said two images, whereby to assign an image quality to each of said plurality of sections of the first image; for at least one section of the first image that is determined to have an image quality different from the image quality of others of said plurality of sections of the first image; perform an image processing process, the image processing process comprising: configuring a matching algorithm for that section of the first image in dependence on the assigned image quality of the section; and using the configured matching algorithm to compare said section of the first image with a corresponding section of the second of said two images whereby to generate an output; and, use said output to determine whether the first and second images represent the same entity.
According to an ninth aspect of the present invention, there is provided a computer program for use in comparing two images in order to determine whether they represent the same entity, the computer program comprising instructions such that when the computer program is executed on a processing system having access to two images, the processing system is configured to carry out a method according to the seventh aspect. as According to a tenth aspect of the present invention, there is provided, a method of verifying whether the user of a device is a user that has been previously authenticated in respect of the user, in which the device has access to a plurality of images, at least two of which have been captured for the user within a continuous time period, the method comprising: performing a difference detecting process for said at least two images, said difference detecting process comprising: comparing said at least two images whereby to detect differences therebetween; and, determining whether said detected differences are sufficient to indicate that said at least two images correspond to a live user, whereby to output a liveness indicator; and in dependence in the liveness indicator, selectively comparing one of said at least two images to a previously validated image of said previously authenticated user in an image matching process in order to determine whether said compared image corresponds to the previously authenticated user.
Performing such a difference detecting process before comparing a captured image for a user to a previously validated image of the previously authenticated user ensures that the captured image for the user is an image of a live user (i.e. the user in possession of the device) and is not, for example, an image of a photograph of a user not in possession of the device. If the difference between the two images is not found to be sufficient, then the image matching process may not be performed and the user may not be verified as the previously authenticated user.
In the event that said detected differences are determined not to be sufficient to indicate that said at least two images correspond to a live user, the method comprises repeating said difference detecting process for a different two images which have been captured for the user within said continuous time period whereby to output a liveness indicator for said two different images, and selectively performing an image matching process for one of said different two images in dependence upon the liveness indicator. This is useful in the case that the user of the device is remaining particularly still as it allows more time for movement of the user to be detected.
Furthermore, the method may further comprise repeating said difference detecting process for a plurality of different images that have been captured within said continuous time window. Thus, in effect, the user of the device is given a predetermined time in which they can “prove” that they are a live user (i.e. they are given a predetermined time to display movements indicative of “liveness”). If the difference detecting process does not find sufficient difference between the images captured in that time window, it may be determined that the images are not images of a live user, and thus the image matching process may not be carried out for the user.
In one arrangement, said step of detecting differences between said at least two images comprises comparing the pixels within a section of a first of said at least two images to the pixels within a corresponding section of the second of said two images, said sections being sections that have been determined to include facial features. Changes in the expression of the user can be detected in this way and such changes can be used to identify an image of a live user.
Alternatively or additionally, said step of detecting differences between said at least two images may comprise comparing the pixels within a section of a first of said at least two images to the pixels within a corresponding section of the second of said at least two images, said sections being sections that have been determined to include both facial features and background features. Changes of the position of the user with respect to the background can be detected in this way and such changes can be used to identify an image of a live user.
According to a eleventh aspect of the present invention, there is provided a processing system for verifying whether the user of a device is a user that has been previously authenticated in respect of the device, the processing system having access to a plurality of images, at least two of which have been captured by the device for the user within a continuous time period, the processing system being configured to: perform a difference detecting process for said at least two images, said difference detecting process comprising: comparing said at least two images whereby to detect differences therebetween; and, determining whether said detected differences are sufficient to indicate that said at least two images correspond to a live user, whereby to output a liveness indicator; and in dependence in the liveness indicator, selectively compare one of said at least two images to a previously validated image of said previously authenticated user in an image matching process in order to determine whether said compared image corresponds to the previously authenticated user.
According to a twelfth aspect of the present invention, there is provided a computer program for use in verifying whether the user of a device is a user that has been previously authenticated in respect of the device, the computer program comprising instructions such that when the computer program is executed on a processing system having access to a plurality of images, at least two of which have been captured for the user within a continuous time period, the processing system is configured to carry out a method according to the tenth aspect.
The processing system in any of the above aspects may comprise at least one processor and at least one memory including computer program instructions, the at least one memory and the computer program instructions being configured, with the at least one processor, to perform the methods of the first, fourth, seventh and tenth aspects described above. The processing system may be embodied on a user terminal device such as a mobile device, while certain functionalities described above may be embodied on a server system, in which case the images can be received by the server system from a device remote therefrom. Further, the inventions described herein may be embodied on a non-transitory computer-readable storage medium storing said computer program instructions.
Brief Description of the Drawings
Figure 1 illustrates schematically an exemplary first captured image according to an embodiment of the present invention;
Figure 2 illustrates schematically an exemplary second captured image according to an embodiment of the present invention;
Figure 3 illustrates schematically an exemplary device configured to carry out a method according to an embodiment of the present invention;
Figure 4 shows a flow chart of a method according to an embodiment of the present invention;
Figure 5 illustrates schematically a close up of an exemplary first captured image according to an embodiment of the present invention;
Figure 6 illustrates schematically an exemplary device configured to carry out a method according to an embodiment of the present invention; and,
Figure 7 an exemplary processing system, and exemplary devices configured to carry out a method according to an embodiment of the present invention.
Detailed Description A conventional way of verifying the identity and/or credentials of a person is to ask that person to provide documentation that supports their identity and/or credentials. For example, a person may be asked to provide a valid photographic ID, such as a passport or driving license as proof of their identity. In this case, in order to verify that person’s identity, typically two separate checks are performed. Firstly, the validity of the photographic ID is checked and secondly the person providing the photographic ID is compared to the image on the photographic ID in order to verify that the photographic ID belongs to that person. Typically, these checks are performed by a human.
There are known techniques for checking the validity of an identity document, such as a photographic ID, via a device. For example, by configuring a device to look for certain features in an image, it is possible to verify, up to a reasonable level of certainty, via a device, whether an image of an identity document is an image of a valid identity document. Such features may include, for example, the inclusion of certain check digits within machine readable zones on the identity document (which can be read by a device using optical character recognition (OCR) techniques), or the inclusion of an image of a human face that is located in an expected position relative to other features of the document. Other validity indicators include, for example, the inclusion of water marks or holograms, and the use of particular fonts.
It has been recognised by the present inventors that, if it were possible to perform the second check via a device, namely the comparison of the face of a user of a device to the picture of a human face on a photographic ID held by the user of the device, then it would be possible to authenticate the user of the device in this way. It has been realised by the present inventors that this could be achieved by configuring a device to capture an image of the user of the device, and an image of an identity document held by the user of the device, and to compare the image of the user of the device to the picture of the human face on the identity document to determine whether they represent the same entity. Figures 1 and 2 show examples of two such captured images 100, 200.
The first image 100, as illustrated schematically in Fig. 1, is an image of an identity document 110, which is associated with a person. The identity document 110 contains a picture 120 of the person associated with the identity document 110. Typically, an identity document 110 will include details 130 which can be used to identify the identity and/or other credentials of the person associated with the identity document 110. Some identity documents 110 may also comprise a chip, which stores additional information about the person associated with the identity document 110 and can be interrogated by a chip reader via a suitable protocol. The chip may store, for example, biometric information, such as a digital image of the person associated with the identity document 110 and/or other identifying information about the person, e.g. name, address, etc., together with data relating to the authority that issued the identity document 110.
Identity documents are typically issued by a trusted authority, such as the Government, for example. Such a trusted authority will have previously verified that the picture 120 is a picture of the person associated with the identity document 110 and will have authenticated that person as the person associated with the details 130. The identity document may be a physical document, such as an identity card, passport or certificate, or it may be an electronic document, such as a digital photograph and associated identity data.
The second image 200, as illustrated schematically in Fig. 2, is an image of the user 210 of a device, which has been captured e.g. by a camera on the device. By comparing the first and second images 100, 200, it is possible to verify whether the user 210 of the device, at the time that the second image 200 was captured, is the person associated with the identity document 110.
Many facial recognition and matching technologies exist in the art. In order to reliably perform the required matching, most such technologies require facial images to be of a high quality such that they contain sufficient distinctive detail to determine whether they represent the same person. Factors that typically affect the reliability of facial matching between two images include the resolution of the images (which can be usefully quantified as the number of pixels between the eyes of the person) and the illumination of the person’s face. Images with too much illumination appear washed out, such that only very strong facial features, such as the eyes and nose stand out, and images with too little illumination have only very limited contrast and thus the mentioned strong facial features are less visible.
Pictures 120 on identity documents 110 are typically of a low quality. For example, they are typically small, over-exposed and have a low resolution. Furthermore, many identity documents 110 have visible security features printed over the picture 120, which can obscure facial details in the picture 120, making facial matching difficult. If the identity document 110 is subsequently imaged, the quality of the face in question is yet reduced.
Current facial matching technologies do not perform well enough to reliably perform a comparison between the very low-quality captured picture 120 in an image 100 of an identity document 110 and an image 200 of a user 210 of a device, which has been captured by the device. Aspects of the present invention are, therefore, concerned with providing an image matching method that can reliably compare a low-quality image with another image so as to determine whether they represent the same entity.
Figure 3 shows a block diagram of a device 300 arranged to carry out a comparison according to an exemplary embodiment of the present invention. The device 300 may be, for example, a mobile phone, a computer or a tablet. The device 300, in this example, comprises a processing system 310 and an image capture component 320, such as a camera. The image capture component 310 may be integral with the device 300, or it may be separate from, but communicable with the device 300.
In the present arrangement, the device 300 is configured to capture both a first image 100 of an identity document 110 associated with a previously authenticated user, and a second image 200 of a user 210 of the device 300. These images 100, 200 are provided to the processing system 310 as illustrated schematically by the arrows in Fig. 3. In an alternative arrangement, the processing system 310 may be remote from the device 300, in which case, the device 300 may send the first and second images 100, 200 to the processing system 310 via a wired or wireless network for example. This arrangement is discussed in more detail below, with reference to Figure 7.
In yet another arrangement, the first image 100 may have previously been captured and stored in a storage device, and the processing system 310 may be arranged to retrieve the first image 100 from the storage device.
The processing system 310 is arranged to compare the first image 100 to the second image 200 to determine whether they represent the same user (i.e. to determine whether the user 210 represented in the second image 200 is the previously authenticated user associated with the identity document 110). Figure 4 shows a flow chart illustrating steps involved in such a comparison process according to an embodiment of the present invention.
At step 400, the processing system 310 is configured to assess an image quality of each of a plurality of sections of the first image 100, whereby to assign an image quality to each of the plurality of assessed sections of the first image 100. Figure 5 shows a close-up of the first image 100, showing the captured picture 120 of a previously authenticated user associated with the identity document 110. Two exemplary sections 500, 510 of the image are indicated by dashed lines, the first 500 covering the eye area, and the second 510 covering the cheek area. In this example, each of these sections 500, 510 is assigned an image quality. The assigned image quality may correspond to the suitability of that section for facial matching, which can be affected by a number of factors as discussed above.
Typically, images are made up of an array of pixels having different intensities. In one arrangement, the quality of a section, such as the first section 500, may be assessed using wavelet processing to identify the variation in pixel intensity between pixels within a given area within that section.
More specifically, considering the first section 500 as an example, a grid of wavelets can be convolved with the pixels that make up the first section 500 whereby to provide responses indicative of the change in pixel intensity over the area covered by the wavelet. By using wavelets of differing sizes, features of the image can be identified and the “sharpness” of those features can be determined.
For example, a large change in pixel intensity over a relatively small area would indicate a relatively sharp feature, whereas a smaller change over a larger area would indicate a relatively unclear feature. Sections of the image that contain sharp features typically contain detail that can be used for facial matching. For example, images of eyes, which typically contain a great deal of detail in a relatively small area, usually contain relatively large variations in pixel intensity over a small region. Images of cheeks, on the other hand, which typically contain little in the way of detail that is useful for facial matching, usually contain very little variation in pixel intensity over the whole area. Thus sections of the image 100 having sharper features (i .e. a greater variation in pixel intensity per unit area) may be assigned a higher quality than sections with fewer sharp features. In this case, the first section 500 would most likely be assigned a higher image quality than the second section 510.
Further, the sharpness of the features identified in a given section, and/or other characteristics of the identified features, may be compared to the characteristics of features within a set of training images. The set of training images may comprise one or more sets of images with “desired” features and one or more sets of images with “undesirable” features. These sets of images can be used to further assess the quality of a section of an image 100. For example, where a section of the image 100 having sharp features has been identified, the test images may be used to determine whether those sharp features are likely to be facial features or whether they are likely to be non-facial features, such as security marks printed over the face, for example. A set of images with desired features may be made up of a set of images of human faces that are suitable for facial comparison. Sets of images having undesirable features may include, for example, sets of images of human faces with features such as security marks imposed thereon. Sets of training images may also be used to train the processing system 310 to distinguish between the face of a person with light skin, which was captured in low lighting conditions, and the face of a person with darker skin.
Through use of such training images, the processing system 310 can, therefore be trained to distinguish between the characteristics of desirable facial features and the characteristics of un-desirable features. In other words, training images can be used to identify the sections of an image that are likely to be of most use when performing an image comparison. In this arrangement, sections 500, 510 that have been determined to include desirable features may be assigned a high image quality relative to sections with fewer desirable features, and/or sections with more undesirable features.
As another example, the quality of a section may alternatively or additionally be assessed by determining the number of pixels per unit area in a given section. It will be appreciated that there are other indicators of image quality, and these may be used as an alternative or in addition to the above to assign image qualities to sections of the first image 100.
After the processing system 310 has assigned image qualities to a plurality of sections of the first image 100, the processing system 310 then performs an image processing process for at least one section of the first image 100 that is determined to have an image quality different from the image quality of the other assessed sections of the first image 100. The processing process comprises steps 410 and 420. Considering the first section 500 as an example, at step 410, the processing system 310 configures a matching algorithm for the first section 500 in dependence on the assigned image quality of that section 500.
At step 420, the processing system 310 uses the configured matching algorithm to compare the first section 500 with a corresponding section of the second image 200 (i.e. a section of the second image 200 that covers the same part of the face as is covered by the first section 500 of the first image 100).
The section of the second image 200 that corresponds to the first section 500 of the first image 100 may be determined using conventional facial recognition techniques such as those described above to identify the major features of a human face, such as the eyes, nose, and mouth, in each of the first and second images 100, 200. These features may be used as anchor points to fit a grid of sections to each of the images 100, 200 such that each section in the grid covers a predetermined portion of the face.
The output from the matching algorithm for the first section 500 of the first image 100 may be indicative of the probability that the first section 500 represents a part of a face that is also present in the corresponding section of the second image 200. The matching algorithm may be configured to compare the first section 500 to the corresponding section of the second image 200 by comparing the features (or characteristics of the features) within the first section 500 with the features (or characteristics of the features) within the corresponding section of the second image 200 to determine whether there is a match.
More specifically, in one arrangement, the processing system 310 may compare the first section 500 of the first image 100 to the corresponding section of the second image 200 by first analysing the variation in pixel intensity as discussed above. The variation in the pixel intensity across the first section 500 may be represented numerically. This process may be repeated for the corresponding section of the second image 200 thereby generating a numeric representation of the change in pixel intensity across this section of the second image 200. The two numeric representations may then be compared to determine whether the two sections have the same feature characteristics.
To speed up the comparison process, and reduce the computational demand on the processing system 310, the size of the numerical representations of the sections may, in one arrangement, be reduced using discriminant analysis.
The image processing process may be repeated for multiple sections of the first image 100, in which case the matching algorithm is configured according to the assigned image qualities of multiple sections of the first image 100 and is used to compare those sections of the first image 100 to the corresponding sections of the second image 200 thereby generating multiple outputs.
Finally, at step 430, the processing system 310 is configured to use the one or more outputs from the matching algorithm to determine whether the first image 100 includes an image of the user 210.
Assessing the image quality of sections of the first image 100 and configuring the matching algorithm in dependence upon the assigned image quality of at least one of those sections means that the image qualities of the different sections can be taken into account when assessing the significance of a close match (or lack thereof) between a given one of those sections and the corresponding section of the second image 200.
In an example where the first section 500 of the first image 100 is assigned a higher image quality than the second section 510, greater significance may, for example, be attached to a close match (or lack thereof) between the first section 500 and the corresponding section than would be attached to a close match (or lack thereof) between the second section 510 and the corresponding section of the second image 200.
This is particularly useful where the first image 100 is of generally low quality (as is typically the case with captured images of pictures 120 on identity documents 110, as discussed above). This is because, if the first image 100 were to be compared to the second image 200 as a whole, strong correspondence (or lack thereof) between parts of the first image 100 that have little detail (such as the cheeks for example), may bias the overall comparison result, leading to an incorrect determination as to whether the images 100, 200 represent the same user 210. In other words, by considering the quality of the first image 100 section-by-section, a matching algorithm can be configured that takes into account the biasing effect of sections of an image that have a low image quality.
In one particular arrangement, the matching algorithm may be configured to take these biasing effects into account by weighting the outputs for the sections of the first image 100 and then combining the weighted outputs to generate a value indicative of the probability that the first and second images 100, 200 represent the same user 210. The weightings for outputs for sections of the first image 100 with a higher image quality can be set higher than the weightings for outputs for sections with a lower image quality. The combined weighted outputs may then be compared to a threshold value to determine whether the images represent the same user.
In one arrangement, the matching algorithm may be configured for sections of the first image that have been determined to have an image quality above a predetermined threshold. In this case, those sections with assigned image qualities above that threshold are compared to the corresponding sections of the second image 200, and the sections with assigned image qualities below the threshold are not compared to the second image 200. This reduces the computational demand on the processing system 310 and prevents strong similarities or differences between those low-quality sections and the corresponding sections of the second image 200 from biasing the overall comparison result.
If it is determined that the first and second images 100, 200 are images of the same user 210, the user 210 of the device 300 can be authenticated as the user associated with the identity document 110. Before the user 210 is authenticated as the user associated with the identity document 110, the processing system 310 may carry out further steps to verify that the image 100 is an image of a valid identity document, as will be described in more detail below.
Although the above method for comparing two images to determine whether they represent the same user 210 has been described in the context of comparing a picture 120 in a first image 100 of an identity document 110 to a second image 200 of a user 210 of a device 300, it will be appreciated that the method is applicable for comparing any two images to determine whether they represent the same entity. As discussed above, the method is particularly useful where the first image 100 is a low-quality image, such as any image that was previously captured on a reprographic medium other than one directly associated with the processing system 310, as the biasing effects of the low-quality sections of the image on the overall comparison result can be reduced.
In general, therefore, the method may comprise a preliminary step of assessing the overall image qualities of the two images to be compared and designating the image with the lower overall image quality as the first image 100 and the image with the higher overall image quality as the second image 200 before carrying out the image matching process as described above.
When it is known that the one of the two images to be compared is an image 100 of an identity document 110, it may be assumed that the image of the identity document 110 is the lower-quality image (as discussed above, the pictures 120 on identity documents 110 are, in general, of very poor quality for the purpose of facial matching).
More generally, however, where the above method is used to compare any two facial images, the image qualities may be assessed with respect to the suitability of the images for facial comparison. Factors that affect the suitability of an image of a person for facial comparison include: whether that person was stationary when the image was captured, whether the person was looking at the camera (or other image capture device) when the image was captured, whether the person had their eyes open, and whether the person is wearing items that obscure their face, such as glasses. As mentioned above, other factors include the resolution of the image and the illumination of the person’s face.
In one arrangement, the above-mentioned set of training images may be used to assess the quality of the images 100, 200. The use of training images to train the processing system 310 to recognise certain “desirable” features and to distinguish them from other similar “undesirable” features, as discussed above. For this purpose, training images may be used to train the processing system 310 to recognise images where lighting is sub-optimal, for example. Thus, the processing system 310 may determine which of two images to be compared is the lower quality image by determining which of those images has the most “desirable” features.
As an alternative or additional preliminary step, the processing system 310 may compare the image quality of the two images to a threshold quality and may, for example, request an alternative image if the image quality of one of the images is below the threshold quality. It is particularly useful to compare the quality of the second image 200 to a threshold quality, because a better second image of the user 210 may be captured by, for example, instructing the user 210 of the device 300 to find better lighting conditions.
In addition or as an alternative, in the event that the first image 100 is determined not to be an image of the user 210 represented in the second image 200, the device 300 may be configured to capture a further image of the user 210 and to compare this image to the first image 100 as described above. Again, the user 210 may be given directions as to how to improve the quality of the second image 200. Thus, if the first image 100 was actually an image of the user 210, but was determined not to be an image of the user 210 due to the poor image quality of the second image 200, then the likelihood of the comparison result being correct for the further image of the user 210 can be increased by capturing a further second image, of suitably improved image quality.
As mentioned above, before the user 210 is authenticated as the user associated with the identity document 110, the processing system 310 may carry out steps to verify that the image 100 is an image of a valid identity document. In one exemplary embodiment, the identity document 110 may comprise a chip which stores data relating to the identity of the user associated with the identity document 110, and this data may be used to verify that the image 100 is an image of a valid identity document. The data may comprise, in particular, a digital image of the user associated with the identity document 110 and/or other data for the user, such as the name, address and/or date of birth of the user associated with the identity document 110. Typically, this data will be encrypted within the chip.
In one arrangement, the device 300 may be configured to retrieve the data from the chip and to pass this data to the processing system 310. The processing system may then use this data to validate the identity document 110. In effect, therefore, the processing system is configured to derive data for use in validating the identity document from the chip of the identity document, via the device 300. Where the data is encrypted, the data may be decrypted by the processing system 310 before it is used to validate the identity document.
As a particular example, where the data stored in the chip of the identity document 110 comprises a digital image of the user associated with the identity document 110, the processing system 310 may be configured to compare the digital image from the chip to the first image 100. By this method, the processing system 310 is able to determine whether the picture 120 on the identity document 110 has been tampered with (e g. replaced with a picture of a different user). If the first image 100 and the image derived from the chip are determined to represent the same user, then the processing system may determine that the identity document 110 in the first image 100 is valid.
Alternatively, or additionally, the digital image derived from the chip of the identity document 110 may be compared to the second image 200 (i.e. the image 200 of the user 210 of the device 300). This comparison may be performed in place of the comparison between the first and second images 100, 200 described above, or in addition to the comparison between the first and second images 100, 200. When such a comparison is performed in addition to the comparison between the first and second images 100,200, this can improve the reliability of the user authentication method. In a specific arrangement, the comparison result for the second image 200 and the first image 100 may be combined with the comparison result for the second image 200 and the image derived from the chip. The combined result may be used to determine whether the user 210 of the device 300 is likely to be the user associated with the identity document 110.
In one arrangement, the data stored in the chip of the identity document 110 may be retrieved using near field communication (NFC). In such an arrangement, the device 300 may comprise an NFC reader component which is configured to retrieve the data stored in the chip when in close proximity to the chip. Alternatively, the device 300 may be communicatively connected to a separate NFC reader via, for example, a USB port.
In one specific embodiment the identity document 110 may be an electronic Machine Readable Travel Document (eMRtd), or a similar identity document 110 which complies with the ICAO (International Civil Aviation Authority) eMRtd standards. Such identity documents comprise a chip, which can be used, inter alia, to verify the validity of the identity document 110. There are a number of methods by which the validity of such an identity document 110 can be verified using the chip, as will be detailed below. However, first, an eMRtd, or a similar identity document 110 which complies with the ICAO eMRtd standards will be described in more detail.
The chip of an eMRtd stores first data in a “Logical Data Structure”. The first data may include for example data corresponding to data visible on the surface of the identity document 110. As a specific example, the first data may comprise data corresponding to data that is encoded in optical character recognition (OCR) format in a machine readable zone (MRZ) of the identity document 110.
The chip also stores a “Document Security Object”, which is for use in verifying the validity of the identity document. The Document Security Object comprises a hash of the first data. It may also comprise a public key of the identity document 110, as will be described in more detail below.
The Document Security Object is signed by the issuing authority; that is to say, the Document Security Object is encrypted with a private key of the issuing authority. The issuing authority may be, for example, a government.
In order to verify the validity of such an identity document 110, the device 300 may be configured to read the first data and the Document Security Object from the chip of the identity document 110. The data may be read e.g. via a chip reader, such as a near field communication reader, that is integral with, or connected to the device 300. This data may then be sent to the processing system 310. Upon receipt, the processing system 310 may be configured to identify the authority who issued the identity document 110 and obtain their public key.
The issuing authority can be identified from data derived from the identity document 110. For example, the issuing authority may be identified by data encoded in a Machine Readable Zone of the identity document 110. In this case, the processing system 310 may be configured to analyse the first image 100 and extract the data identifying the issuing authority using Optical Character Recognition techniques, for example.
Having identified the issuing authority, the public key may then be obtained, for example, from a Public Key Directory maintained by a trusted third party.
Alternatively, the public key may be stored on the chip, and may have been read by the device 300 and sent to the processing system 310, together with the first data and the Document Security Object.
Alternatively, the processing system 310 may have been pre-configured with the public key for the issuing authority.
Irrespective of how the public key is retrieved, the processing system 310 may be configured to verify the validity of the identity document 110 by first decrypting the Document Security Obj ect using the public key of the issuing authority. The processing system 310 can thereby verify that the Document Security Object is a valid Document Security Object.
Once decrypted, the processing system 310 may be configured to compare the decrypted Document Security Object to a hash of the first data. If there is correspondence, the processing system 310 can verify that the first data has not been tampered with, and that the identity document 110 is valid.
In addition to the above, the data stored in the chip (i.e. the first data, the Document Security Object, and any other data stored thereon) may be encoded. In one specific embodiment, the data may have been encoded using a key derived from data that is visible on the surface of the identity document. Such visible data could include, for example, data encoded in an OCR format in a MRZ of the identity document 110.
Thus, in order to read the first data and the Document Security Object from the chip of the identity document 110, the device 300 may first be required to derive the visible data from the surface of the identity document. This data could be derived directly from the surface of the identity document 110, or from the first image of the identity document 100, e.g. using OCR techniques.
If the processing system 310 is successfully able to decode the data stored on the chip using the data visible on the surface of the identity document 110, it can be determined that the chip of the identity document 110 has not been replaced, and/or that the visible data on the surface of the identity document 110 has not been altered.
The chip may further comprise a secure element that contains a private key for the identity document 110. In this case the device may send a challenge to the chip, which causes the chip to respond with a response that is signed with the private key of the identity document 110.
Upon receipt of the signed response, the processing system 310 may be configured to verify, using the public key of the identity document 110 that the response has been signed by the private key of the identity document 110. This provides assurance that the data stored on the chip of the identity document 110 has not been duplicated from another chip.
As will be appreciated, where the processing system 310 is a component of the device 300, the validity of the identity document will be verified by the device 300 itself. Where the processing system 310 is remote from the device 300, the verification will be carried out remotely, and the device 300 is configured to send the data derived from the identity document 110 which is required by the processing system 310 to verify the validity of the identity document 110 to the processing system 310.
Alternatively or additionally to the above-described validity checks, which make use of data stored on a chip of the identity document 110 and/or data visible on the surface of the identity document 110, validity checks may be carried out through use of data that is stored in a storage device remote from the identity document 110. As an example, said stored data may comprise an image of the user associated with the identity document 110, and this image may be retrieved from the remote storage device, and compared to one or both of the first and second images 100, 200 whereby to verify whether the identity document 110 is valid and to improve the reliability of the user authentication result. Such a remote storage device could be, for example, a storage device held by a government body, which stores validated images of citizens.
In one specific example, the image stored by the remote storage device may be retrieved through use of data derived from the identity document 110 which uniquely identifies the user associated with the identity document 110. In other words, the image may be retrieved through use of a unique user identifier derived from the identity document. Such a unique identifier could include, for example, a unique user identification code, such as a passport number or a national insurance number and could be derived from the surface of the identity document 110 and/or a chip of the identity document 110, as described above.
In the present example, the image stored by the remote storage device may be retrieved by first sending the derived unique user identifier to the remote storage device whereby to identify the user associated with the identity document 110 to the remote storage device. The remote storage device may then use the unique user identifier to retrieve the image of the user of the identity document 110 and may send the retrieved image to the device 300 and/or the processing system 310.
According to another aspect of the present invention, in one embodiment, the processing system 310 has access to a storage device 600, as shown in Figure 6. Once it has been determined that the first image 100 of the identity document 110 and the second image 200 of the user 210 of the device 300 represent the same user, the second image 200 of the user 210 may be stored as a validated image of the user associated with the identity document 110 in the storage device 600 as shown in Fig. 6.
As discussed above, typically, the second image 200 captured by the device 300 will be of a higher quality than the first image 100 of the identity document 110. In one arrangement, if a user of the device 300 later wishes to authenticate himself on the device 300 as the previously authenticated user 210 associated with the identity document 110, the processing system 310 may capture a subsequent image 200* of the user of the device 300 and may compare the subsequent image 200* with the validated second image 200 to determine whether they are images of the same user. The images may be compared according to the method described above, or alternatively, a conventional facial matching algorithm may be used to compare the images.
In the event that it is determined that the two images 200, 200* represent the same user, the processing system 310 can authenticate the user of the device 300 as the previously authenticated user 210 associated with the identity document 110.
In the present embodiment, therefore, once the user 210 has been authenticated once using an image 100 of an identity document 110, the user 210 need not provide any further images of identity documents 100 in order to authenticate himself in subsequent authentication events. Instead, the user 210 can authenticate himself using the stored validated image 200.
Furthermore, by storing the second image 200, in preference to, for example, the first image 100, the reliability of subsequent authentication events can be improved. This is because the second image 200 will typically be of higher quality than the first image 100 and thus subsequent authentication events are carried out by comparing two relatively high-quality images 200, 200* to one another, rather than comparing a very low quality image (the first image 100) to a higher quality image 200*. In effect, therefore, it could be said that the second image 200 is designated as the higher quality image when it is stored. The validated second image 200 may be used for all subsequent authentication events for the user 210.
Alternatively, in one arrangement, if it is determined that a subsequently captured image 200* of a user of the device 300 represents the previously authenticated user 210 represented in the validated second image 200, the processing system 310 may also store the subsequently captured image 200* as a validated image of the previously authenticated user 210 in the storage device 600. Two exemplary subsequently captured images 200**, 200***, which have been previously validated using the second image 200 as being images of the user associated with the identity document 110, are shown schematically as being stored in the storage device 600 in Fig. 6.
The processing system 310 may, in one arrangement, compare the qualities of the validated second image 200 and the subsequently captured image 200* and may designate one as the higher quality image. Thereafter, in a further subsequent authentication event, the processing system 310 may select the designated higher-quality image from the storage device 600 and use that image in the further subsequent authentication event, thereby further improving the reliability of the comparison result in the further subsequent authentication event. In one arrangement, the processing system 310 may assign an image quality to each stored validated image, and each time the processing system 300 validates a user of the device 300, it may select the highest quality validated image from the storage device 600 to authenticate the user.
The stored validated images 200, 200**, 200*** may be encoded with a oneway encoding algorithm before they are stored. In other words, the images 200, 200**, 200*** may be stored as numerical representations, from which the original images cannot be derived. When a subsequently captured image 200* of a user of the device 300 is compared to a stored encoded image 200, 200**, 200*** in the storage device 600, the subsequently captured image 200* is therefore similarly encoded before it is compared to the stored encoded image. As discussed above, the computational demand on the processing system 310 is lower when a comparison is performed between numerical representations of images (e.g. encoded images), rather than between the original images themselves, and thus by encoding images before they are compared, the comparison can be carried out faster.
The processing system 310 may, in one arrangement, generate or otherwise derive a unique user identifier 610 for the user 210 associated with the identity document 110, and may store this identifier 610 together with the second image 200 and any other stored validated images 200**, 200*** of the user 210. The processing system 310 may use this identifier 610 to retrieve a validated image of the user 210 from the storage device 600 in subsequent authentication events for the user 210.
In one particular example, the unique user identifier 610 for the user 210 may be a hash value derived from details relating to the user 210. The details may, for example comprise the first and last name of the user 210, and the date of birth of the user 210. These details may have been derived by the processing system 310 from the identity document 110 (using optical recognition, for example, or other suitable techniques).
Thereafter, in order to identify the user 210 to the processing system 310 in a subsequent authentication event for the user 210, the processing system 310 need only be provided with details relating to the user 210 that is being authenticated, from which it can then derive the unique user identifier 610. The processing system 310 may alternatively or additionally store certain user details in association with, but separately from, the unique user identifier.
The processing system 310 may also, in one example, send the unique user identifier 610 for the user 210 to a server remote from the processing system 310 whereby to indicate to the server that the user 210 of the device 300 has been authenticated as a user associated with the unique user identifier 610. This is useful, for example, where the user of the device 300 is requesting access to a service provided by the remote server via the device 300, and the remote server needs to verify the identity of the user 210 of the device 300 before it provides the service.
In one arrangement, the processing system 310 may store details relating to the identity of the user 210 associated with the identity document 110 together with the validated image 200 of the user 210 and/or the user identifier 610. These details may, in one example, have been derived from the image 100 of the identity document 110.
For example, where the identity document contains details 130 printed or otherwise presented on a surface of the identity document 110 in text form, these details may be extracted using optical character recognition and stored.
Additionally or alternatively, the details may have been derived from data stored in a chip of the identity document 110. More specifically, as mentioned above, an identity document 110 may comprise a chip which stores data that identifies the user associated with the identity document 110 (e.g. the name, address and/or a digital image of the user). The device 300 may be configured to retrieve the data from the chip (using NFC, for example), and pass this data to the processing system 310 to be stored. In other words, the processing system 310 may store data which has been derived from a chip of the identity document 110 via the device 300.
Additionally or alternatively, some or all of the stored details may have been retrieved from a remote storage device using data derived from the identity document. More specifically, the processing system 310 may, in one arrangement, be configured to derive data from the identity document 110 which uniquely identifies the user associated with the identity document 110. In other words, the processing system 310 may be configured to derive a unique user identifier from the identity document 110. The processing system 310 may then send the unique user identifier to the remote storage device, and the remote storage device may use the unique user identifier to retrieve details relating to the user associated with the identity document 110, and to send the retrieved details to the processing system 310.
Additionally or alternatively, the stored details may have been provided by the user 210 of the device 300 when the user 210 was initially authenticated with the first image 100 of the identity document 110.
In addition, or as an alternative, to storing the data derived from the identity document locally at the processing system 310, the processing system 310 may arrange for the details relating to the identity of the user 210 to be stored in a storage device 600 remote from the processing system 310, together with the validated image 200 of the user 210 and/or the identifier for the user 210. The remote storage device 600 could be a storage device of a service provider with which the user is trying to authenticate himself, for example.
In any event, in a subsequent authentication event, when a user of the device 300 is authenticated as the previously authenticated user 210 associated with the identity document 110, these details can be retrieved from the storage device 600. The details may, in one example, be sent to a server remote from the processing system 310 whereby to identify the authenticated user to the server.
As mentioned above with reference to Fig. 3, embodiments may be used to authenticate users on a plurality of devices. When a captured image 200* of a user of a given device is determined to represent a previously authenticated user 210 (either by comparison of the captured image 200* with an image 100 of an identity document 110 or by comparison of the captured image 200* with a stored image 200, 200**, 200***, which has been previously validated by the processing system 310 as being an image of the previously authenticated user 210), the processing system 310 may store a unique device identifier for that device, together with the captured image 200*. This unique device identifier could be used in several ways as will become apparent in the following description.
The unique device identifier may be used to identify suspicious user behaviour. As an example, if a user of a device tries to authenticate himself as a given previously authenticated user, but the given previously authenticated user has only ever authenticated himself on a different device, then the processing system 310 may be able to determine, from the unique device identifiers for the devices, that the authentication is a suspicious authentication.
Further, when a user of a device wishes to authenticate himself to a server remote from the processing system 310 via the device, the unique user identifier can be sent to a server whereby to identify to the server on which device the user has been authenticated.
According to a further aspect of the present invention, before an image 200 of the user 210 of the device 300 that has been captured by the device 300 is compared to an image of a previously authenticated user (i.e. either an image of an identity document 110 associated with the user, or an image that has been previously validated by the processing system 310 as an image of the user), a check may be made to verify that the second image 200 is an image of an actual person (a “live” user) rather than e.g. a static photograph of the person.
Such a check may comprise the steps of capturing a series of images of the user of the device 300, and comparing successive images to look for differences between successive images that indicate that the images are images of a live user. Once two successive images have been taken that are sufficiently different to indicate that the images are images of a live user, the processing system 310 may use one of those images as the second image 200 in a comparison process as described above.
Carrying out such a check would prevent a user of a device 300 from authenticating himself as a different user by holding a photograph of the different user in front of the image capture component 320.
In one arrangement, before performing a comparison between two successively captured images to look for differences between those images, the images may be analysed to determine portions of the image that represent a human face, and portions of the image that represent background (sets of training images may be used for such an analysis, as described above). In this arrangement, at least one section of one of the images that is determined to include both facial features and background features may be compared to a corresponding section of the other image to look for movement of the face with respect to the background. Such a comparison may be done on a pixel-bypixel basis.
Alternatively or additionally, at least one section of one of the images that is determined to include facial features only is compared to a corresponding section of the other image. Such a comparison may look for differences between the images indicative of facial movement, such as blinking.
Pairs of subsequently captured images may be compared either until a pair of subsequently captured images is identified which are sufficiently different as to indicate the images are images of a live user, or until a predetermined number of pairs of subsequently captured images have been compared. Alternatively, pairs of subsequently captured images may be compared until a predetermined time has elapsed.
As mentioned above, with reference to Figure 3 in particular, in one arrangement, at least part of the processing system 310 may be remote from the device 300. Figure 7 shows schematically an exemplary remote processing system 310 in such an arrangement. The processing system 310 is communicatively connected to a plurality of devices, there being two (300 and 300*) such devices shown in Figure 7.
In one example, a user of a first of the two devices 300 initiates a user authentication event on the first device 300 whereby to cause the first device 300 to capture an image of the user of the first device 300. The first device 300 may also capture an image 100 of an identity document 110 associated with a user 210, as discussed above. In this arrangement, the first device 300 then sends the two captured images 100, 200 to the processing system 310, and upon receipt, the processing system 310 determines whether the two images 100, 200 are images of the same user. The processing system 310 may carry out the steps as shown in Fig. 4 to determine whether the images represent the same user.
The first device 300 may optionally also retrieve data from a chip of the identity document 110 and may send this retrieved data to the processing system 310.
The authentication event may be associated with an authentication event identifier. The identifier may be generated by the processing system 310 or the first device 300, but in any event, the authentication event identifier is shared between the two components 300, 310 whereby to identify the authentication event to the two components 300, 310.
Once the processing system 310 has determined whether the images represent the same user, the processing system 310 may send an indication to the first device 300, so as to confirm the result of the authentication event, together with the authentication event identifier, whereby to indicate to the first device 300 whether the user of the first device 300 is the user 210 represented in the identity document 110 for that authentication event.
In the arrangement where the first device 300 sends data retrieved from a chip of the identity document 110 to the processing system 310, before confirming the result of the authentication event to the first device 300, the processing system 310 may use the data retrieved from the chip to perform further checks. In particular, where the data retrieved from the chip comprises an image of the user associated with the identity document 110, the processing system may compare this image to one or both of the first and second images 100, 200 as described above. This is useful both in verifying the validity of the identity document 110, and also in increasing the reliability of the authentication result.
In an alternative arrangement, where the processing system 310 has previously authenticated the user 210, the processing system 310 may already have one or more validated images 200**, 200*** of the user 210 stored in a storage device 600. In this case, therefore, the first device 300 may not send an image 100 of an identity document 110 associated with the user 210 to the processing system 310, but may instead send details identifying the user to the processing system 210 which can be used by the processing system 310 to identify the user 210 and retrieve a validated image of the user 210 from the storage device 600.
As discussed above, in one arrangement, the processing system 310 may store validated images 200**, 200*** of the user 210 together with a user identifier 610 for the user 210. In this arrangement, the details sent from the first device 300 to the processing system 310 may comprise the user identifier 610 for the user 210, or alternatively, the details may comprise details from which the user identifier 610 can be derived. This latter case is applicable, for example, where the user identifier 610 is a hash value as discussed above with reference to Fig. 6.
Once an validated image 200**, 200*** of the user 210 has been retrieved from the storage device 600, the processing system 310 compares the image 200 of the user of the first device 300, which was received from the first device 300, to a previously validated image 200**, 200*** of the user 210 whereby to verify whether the user of the device 300 is the previously authenticated user 210.
Again, the authentication event may be associated with an authentication event identifier, and the processing system 310 may indicate the authentication result, together with the authentication event identifier, to the first device 300.
As will be appreciated, users typically have more than one device, each of which has the means for capturing images. Accordingly, the image 100 of the identity document 110, may be captured by the second device 300*, while the first device 300 is used to take an image of the “live” user. This may be useful if, for example, the second device 300* can capture images that are of a higher quality than the images captured by the first device 300. In this arrangement the authentication event identifier described above may be provided to both devices 300, 300* so that the processing system 310 can identify that images received from the two different devices relate to the same authentication event.
Upon receiving the two images 100, 200, the processing system may be configured to verify that the two images 100, 200, are associated with the same authentication event identifier before comparing them whereby to determine whether they represent the same user, in the manner described above.
As previously mentioned, a given validated image 200 of a previously authenticated user 210 may be stored in conjunction with details relating to the device that is used to capture the image on which the previously authenticated user 210 validates himself. Thus, where a previously authenticated user 210 has a plurality of devices 300, 300*, and authenticates himself via the plurality of devices 300,300*, a plurality of validated images 200**, 200*** of the user 210 may be stored in a remote storage device 600.
In one arrangement, in a subsequent authentication event for the previously authenticated user 210, the processing system 310 may select a previously validated image 200**, 200*** of the previously authenticated user 210 from the storage device 600 at least in dependence on the unique device identifier of the device on which the previously authenticated user 210 wishes to authenticate himself (i.e. the “authenticating” device). As an example, the processing system 310 may select a previously validated image 200**, 200*** of the user 210 that was captured by the authenticating device to validate the user of the authenticating device. This may improve the reliability of the facial matching results, because the two images to be compared are likely to be similar, as they were captured by the same device. The processing system 310 may also determine which of the stored previously validated images 200**, 200*** to use when validating the user in dependence upon the designated image qualities of the images, as discussed above. For example, the processing system 310 may use a previously validated image 200**, 200*** that was captured by a device different from the authenticating device if it is of significantly higher quality than a validated image that was captured by the authenticating device.
The above embodiments are to be understood as illustrative examples of the invention. Further embodiments of the invention are envisaged. For example, in relation to the aspect of the invention where validated images are stored in a storage device 600, the processing system 310 may be configured to assess the image qualities of each validated image and may store an association between those images and their determined image qualities. In a subsequent authentication event, the processing system 310 may select the highest quality image from the storage device 600 and compare this to an image of the user of a device whereby to authenticate that user. Alternatively, the processing system 310 may only store a captured image if it is of higher quality than the validated image of a previously authenticated user with which it was compared. If the captured image is of higher quality, the processing system 310 may replace the previously validated image with the captured image, such that only one validated image of a given user is stored at any one time.
It is to be understood that any feature described in relation to any one embodiment may be used alone, or in combination with other features described, and may also be used in combination with one or more features of any other of the embodiments, or any combination of any other of the embodiments. Furthermore, equivalents and modifications not described above may also be employed without departing from the scope of the invention, which is defined in the accompanying claims.
Although at least some aspects of the embodiments described herein with reference to the drawings comprise computer processes performed in processing systems or processors, the invention also extends to computer programs, particularly computer programs on or in a carrier, adapted for putting the invention into practice. The program may be in the form of non-transitory source code, object code, a code intermediate source and object code such as in partially compiled form, or in any other non-transitory form suitable for use in the implementation of processes according to the invention. The carrier may be any entity or device capable of carrying the program. For example, the carrier may comprise a storage medium, such as a solid-state drive (SSD) or other semiconductor-based RAM; a ROM, for example a CD ROM or a semiconductor ROM; a magnetic recording medium, for example a floppy disk or hard disk; optical memory devices in general; etc.
It will be understood that the processing system referred to herein may in practice be provided by a single chip or integrated circuit or plural chips or integrated circuits, optionally provided as a chipset, an application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), digital signal processor (DSP), etc. The chip or chips may comprise circuitry (as well as possibly firmware) for embodying at least one or more of a data processor or processors, a digital signal processor or processors, baseband circuitry and radio frequency circuitry, which are configurable so as to operate in accordance with the exemplary embodiments. In this regard, the exemplary embodiments may be implemented at least in part by computer software stored in (non-transitory) memory and executable by the processor, or by hardware, or by a combination of tangibly stored software and hardware (and tangibly stored firmware).

Claims (19)

1. A method of determining whether a user of a device corresponds to a previously authenticated user, the previously authenticated user having been previously authenticated via an identity document comprising an integrated circuit component storing data representative of a digital image of the previously authenticated user, the method comprising: causing a camera connected to or integral with the device to capture a first image, the first image being an image of the identity document and including first data encoded in an optical character recognition format in a Machine Readable Zone of the identity document; causing a reader connected to or integral with the device to retrieve second data from the integrated circuit component; arranging for the first data and/or second data to be compared with third data retrieved from a storage device located remote from the device, whereby to determine whether the first data and/or second data matches the third data; causing a camera connected to or integral with the device to capture a second image, the second image being an image of a user of the device; arranging for the second image to be compared with the digital image retrieved from the integrated circuit component whereby to determine whether they represent the same entity; and in the event that it is determined that the second image and the digital image represent the same entity and the first data and/or second data matches the third data, authenticating the user of the device as the previously authenticated user.
2. The method of claims 1, wherein the storage device is held by a government body.
3. The method of claim 1 or 2, wherein the third data is retrieved from the storage device using a unique user identifier derived from the identity document.
4. The method of any preceding claim, comprising: retrieving a Document Security Object from the integrated circuit component; identifying an issuing authority using data encoded in the Machine Readable Zone; obtaining a public key of the issuing authority; and using the public key of the issuing authority to decrypt the Document Security Object; and wherein the authenticating the user of the device as the previously authenticated user is further dependent upon the decryption of the Document Security Object.
5. The method of claim 4, wherein the public key of the issuing authority is obtained from a Public Key Directory maintained by a trusted third party.
6. The method of any of claims 1 to 3, comprising: retrieving a Document Security Object from the integrated circuit component; retrieving a public key of the issuing authority from integrated circuit component; using the public key of the issuing authority to decrypt the Document Security Object; and wherein the authenticating the user of the device as the previously authenticated user is further dependent upon the decryption of the Document Security Object.
7. The method of any of claims 4 to 6, further comprising comparing the decrypted Document Security Object to a hash of the second data; and determining that the second data has not been tampered with when the decrypted Document Security Object corresponds to the hash of the second data.
8. The method of any of claims 4 to 7, wherein the second data and the Document Security Object are encoded, the method further comprising: deriving a key from the first data encoded in the Machine Readable Zone; using the key to decode the second data and the Document Security Object; and in the event that the key successfully decodes the second data and the Document Security Object, determining that the integrated circuit component has not been replaced and/or that the first data encoded in the Machine Readable Zone has not been altered.
9. The method of any preceding claim, wherein the integrated circuit component comprises a secure element that contains a private key for the identity document, the method further comprising: sending a challenge to the integrated circuit component; receiving a response to the challenge signed with the private key from the integrated circuit component; and verifying that the response has been signed with the private key using a public key of the identity document.
10. A processing system for use in determining whether a user of a device corresponds to a previously authenticated user, the previously authenticated user having been previously authenticated via an identity document comprising an integrated circuit component storing data representative of a digital image of the previously authenticated user, the processing system being configured to: cause a camera connected to or integral with the device to capture a first image, the first image being an image of the identity document and including first data encoded in an optical character recognition format in a Machine Readable Zone of the identity document; cause a reader connected to or integral with the device to retrieve second data from the integrated circuit component; arrange for the first data and/or second data to be compared with third data retrieved from a storage device located remote from the device. cause a camera connected to or integral with the device to capture a second image, the second image being an image of a user of the device; arrange for the second image to be compared with the digital image retrieved from the integrated circuit component whereby to determine whether they represent the same entity; and in the event that it is determined that the second image and the digital image represent the same entity and the first and/or second data matches the third data, authenticating the user of the device as the previously authenticated user.
11. The processing system of claim 10, wherein the storage device is held by a government body.
12. The processing system of claim 10 or 11, wherein the third data is retrieved from the storage device using a unique user identifier derived from the identity document.
13. The processing system of any of claims 10 tol2, wherein the processing system is configured to: retrieve a Document Security Object from the integrated circuit component; identify an issuing authority using data encoded in the Machine Readable Zone; obtain a public key of the issuing authority; use the public key of the issuing authority to decrypt the Document Security Object; and wherein the authenticating the user of the device as the previously authenticated user is further dependent upon the decryption of the Document Security Object.
14. The processing system of claim 13, wherein the public key of the issuing authority is obtained from a Public Key Directory maintained by a trusted third party.
15. The processing system of any of claims 10 to 12, wherein the processing system is configured to: retrieve a Document Security Object from the integrated circuit component; retrieve a public key of the issuing authority from integrated circuit component; use the public key of the issuing authority to decrypt the Document Security Object; and wherein the authenticating the user of the device as the previously authenticated user is further dependent upon the decryption of the Document Security Object.
16. The processing system of any of claims 13-15, wherein the processing system is configured to: compare the decrypted Document Security Object to a hash of the second data; and determine that the second data has not tampered with when the decrypted Document Security Object corresponds to the hash of the second data.
17. The processing system of any of claims 13-15, wherein the second data and the Document Security Object are encoded, and the processing system is configured to: derive a key from the first data encoded in the Machine Readable Zone; use the key to decode the second data and the Document Security Object; and in the event that the key successfully decodes the second data and the Document Security Object, determining that the integrated circuit component has not been replaced and/or that the first data encoded in the Machine Readable Zone has not been altered.
18. The processing system of any claims 10-17, wherein the integrated circuit component comprises a secure element that contains a private key for the identity document, and the processing system is configured to: send a challenge to the integrated circuit component; receive a response to the challenge signed with the private key from the integrated circuit component; and verify that the response has been signed with the private key using a public key of the identity document.
19. A computer program for use in determining whether a user of a device corresponds to a previously authenticated user, the previously authenticated user having been previously authenticated via an identity document comprising an integrated circuit component storing data representative of a digital image of the previously authenticated user, the computer program comprising instructions such that when the computer program is executed on a processing system, the processing system is configured to carry out a method according to any of claims 1 to 9.
GB1711216.0A 2013-03-28 2014-03-28 Method, system and computer program for comparing images Active GB2548774B (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
GB1305814.4A GB2500823B (en) 2013-03-28 2013-03-28 Method, system and computer program for comparing images
US13/953,619 US8724856B1 (en) 2013-03-28 2013-07-29 Method, system and computer program for comparing images
GBGB1319344.6A GB201319344D0 (en) 2013-03-28 2013-11-01 Method, system and computer program for comparing images
GB1602863.1A GB2539302B (en) 2013-03-28 2014-03-28 Method, system and computer program for comparing images

Publications (3)

Publication Number Publication Date
GB201711216D0 GB201711216D0 (en) 2017-08-23
GB2548774A true GB2548774A (en) 2017-09-27
GB2548774B GB2548774B (en) 2018-02-14

Family

ID=50389368

Family Applications (1)

Application Number Title Priority Date Filing Date
GB1711216.0A Active GB2548774B (en) 2013-03-28 2014-03-28 Method, system and computer program for comparing images

Country Status (1)

Country Link
GB (1) GB2548774B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2576521A (en) * 2018-08-21 2020-02-26 Shufti Pro Ltd Systems and methods for remotely verifying user identities
EP3772014A1 (en) * 2019-07-29 2021-02-03 TripEye Limited Identity document validation method, system and computer program

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070260886A1 (en) * 2006-05-02 2007-11-08 Labcal Technologies Inc. Biometric authentication device having machine-readable-zone (MRZ) reading functionality and method for implementing same
CN102456130A (en) * 2010-11-01 2012-05-16 厦门爱登特科技有限公司 Method and system for verifying user identity document by face

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070260886A1 (en) * 2006-05-02 2007-11-08 Labcal Technologies Inc. Biometric authentication device having machine-readable-zone (MRZ) reading functionality and method for implementing same
CN102456130A (en) * 2010-11-01 2012-05-16 厦门爱登特科技有限公司 Method and system for verifying user identity document by face

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2576521A (en) * 2018-08-21 2020-02-26 Shufti Pro Ltd Systems and methods for remotely verifying user identities
EP3772014A1 (en) * 2019-07-29 2021-02-03 TripEye Limited Identity document validation method, system and computer program

Also Published As

Publication number Publication date
GB2548774B (en) 2018-02-14
GB201711216D0 (en) 2017-08-23

Similar Documents

Publication Publication Date Title
US11120250B2 (en) Method, system and computer program for comparing images
US9396383B2 (en) System, method and computer program for verifying a signatory of a document
US10691929B2 (en) Method and apparatus for verifying certificates and identities
US11349666B2 (en) Electronically signing and distributing identification data as a service that provides proof of identity, integrity, validity and origin of data for non-repudiation and ID validation methods
CN108804884B (en) Identity authentication method, identity authentication device and computer storage medium
RU2589344C2 (en) Method, apparatus and system of authentication based on biological characteristics
US10403076B2 (en) Method for securing and verifying a document
US11431704B2 (en) Method of authentication, server and electronic identity device
WO2019047897A1 (en) Facial unlocking and information registration method and apparatus, device, and medium
US9411946B2 (en) Fingerprint password
CN106710032B (en) Entrance guard opening method and device
US11507690B2 (en) Method of enrolling data to control an identity, and identity-control method
US20240028698A1 (en) System and method for perfecting and accelerating biometric identification via evolutionary biometrics via continual registration
GB2548774A (en) Method, system and computer program for comparing images
GB2546714A (en) Method, system and computer program for comparing images
GB2539302A (en) Method, system and computer program for comparing images
US20240046709A1 (en) System and method for liveness verification
CN109299945B (en) Identity verification method and device based on biological recognition algorithm
CN112597466A (en) User authentication method and system