ABSTRACT

Over recent years, remote authentication systems have experienced increased interest from industry, especially for services such as banking and digital commerce. Processes based on images of faces (selfies) may be used extensively since most mobile devices and computers now have cameras. In most situations, authentication is mainly based on comparing the input data of the user (selfie) with information previously registered from the same individual (database). This process requires a pre-step of enrolling all users of the system which would limit its use. Remote authentication systems based on the verification of users against information provided by an official identity document (i.e. ID card, passport, or driver’s license amongst others) have also been explored. Some countries provide a national ID card with all of an individual’s personal information embedded onto a chip. Those cards can be read directly using a Near Field Communication (NFC)-enabled mobile device. The information (face photo) is then matched with the user selfie to validate identity. Unfortunately, such ID cards are not yet widely implemented. In most cases, a simple ID card without a chip is the only information available. In such cases, the key challenge of the authentication system is to ensure that the ID card (face photo) has not been altered. This work explores methods to determine whether an image of an ID card provided remotely by the user is real or has been deliberately manipulated (faked). There are several ways of manipulating ID cards; however, only two were considered in this work: (i) where the face image is manipulated manually (by cutting and sticking a different face onto the document) and (ii) where the face photo is digitally altered. Several algorithms such as Binarized Statistical Image Feature, Uniform Local Binary Pattern, Holistic Edge Detection, and a CNN were used to detect if the ID card had been manipulated. A private database of Chilean ID card images (1,525) taken from 316 individuals was used for all experiments. In order to train the algorithms, a database of ‘fake’ examples (manually and digitally altered) was created. This was a time-consuming task as a large number of images were needed to be created in order to achieve a robust algorithm performance. The best results were achieved by a shallow convolutional neural network that classified ID cards into two classes, fake and real. By applying transfer learning, the algorithm was able to detect fake images (ID cards) using only the initial layers, becoming robust towards low-resolution degradation.