Skip to main content

Advertisement

Log in

A discriminant binarization transform using genetic algorithm and error-correcting output code for face template protection

  • Original Article
  • Published:
International Journal of Machine Learning and Cybernetics Aims and scope Submit manuscript

Abstract

In a biometric cryptosystem, biometric templates are encrypted before being stored in the database. This approach often requires a binarization phase to transform the original real-valued templates into their binary versions. Most of the existing binarization schemes do not take into consideration the need to discriminate binary templates; which in turn degrade the system recognition accuracy. This paper proposes a new binarization transform for face template protection using Error-Correcting Output Code (ECOC) and genetic algorithm (GA) which offsets this drawback. The proposed binarization transform novelty lies in the fact that the specific crossover, mutation and extension operators are defined by considering the theoretical properties of the ECOC framework in order to find an optimized coding matrix. The specification of these operations reduce the search space and speed up the convergence rate of GA. In addition, the proposed method is immune from being trapped in local minima. The quality of our method is evaluated using three well-known face databases: CMU PIE, Extended Yale B and FEI. The results demonstrate that the proposed binarization transform can result in a higher recognition accuracy without sacrificing the security of the protocol compared to alternative methods, such as binary discriminant analysis (BDA), discriminability-preserving (DP), chaos biohashing, and Discriminant-Genetic.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15

Similar content being viewed by others

Notes

  1. The correctness proof is provided in “Appendix”.

  2. The correctness proof is provided in “Appendix”.

  3. The correctness proof is provided in “Appendix”.

References

  1. Adler A (2004) Images can be regenerated from quantized biometric match score data. In: Proceedings Canadian conference on electrical and computer engineering, Ontario, Canada, pp 469–472

  2. Galbally J, McCool C, Fierrez J, Marcel S, Ortega-Garcia J (2010) On the vulnerability of face verification systems to hill-climbing attacks. Pattern Recognit 43(3):1027–1038

    Article  Google Scholar 

  3. Hill C (2001) Risk of Masquerade arising from the storage of biometrics. B.S. Thesis, Australian National University, Canberra

  4. Adler A (2005) Vulnerabilities in biometric encryption systems. In: Proceedings of IEEE International conference on audio- and video-based biometric person authentication, vol 3546. Springer, Berlin, Heidelberg, pp 1100–1109

  5. Jain AK, Nandakumar K, Nagar A (2008) Biometric template security. EURASIP J  Adv  Signal Process 2008:1–17

  6. Nagar A (2012) Biometric template security. PhD Dissertation, University of Michigan

  7. Dworkin MJ, Barker EB, Nechvatal JR, Foti J, Bassham LE, Roback E, Dray JF Jr (2001) Advanced encryption standard. Federal Inf. Process. Stds. (NIST FIPS). US Department of Commerce, Washington DC

    Google Scholar 

  8. Patel VM, Ratha NK, Chellappa R (2015) Cancelable biometrics: a review. IEEE Signal Process Mag 32(5):54–65

    Article  Google Scholar 

  9. Rathgeb C, Uhl A (2011) A survey on biometric cryptosystems and cancelable biometrics. EURASIP J Inf Secur 2011:3. doi:https://doi.org/10.1186/1687-417X-2011-3

  10. Nazari S, Moin MS, Rashidykanan H (2014) Cancelable face using chaos permutation. In: 7th International symposium on telecommunications (IST), Tehran, Iran, pp 7–10

  11. Teoh A, Yip W, Toh K (2010) Cancellable biometrics and user dependent multi-state discretization in biohash. Pattern Anal Appl 13(3):301–307

    Article  MathSciNet  Google Scholar 

  12. Munaga VNKP, Santhosh Kumar C (2014) Fingerprint template protection using multiline neighboring relation. Expert Syst Appl 41(14):6114–6122

    Article  Google Scholar 

  13. Wang S, Hu J (2016) A blind system identification approach to cancelable fingerprint templates. Pattern Recognit 54:14–22

    Article  Google Scholar 

  14. Zhe J, Meng-Hui L, Andrew B, Jin T, Bok-Min G (2014) A non-invertible randomized graph-based Hamming embedding for generating cancelable fingerprint template. Pattern Recognit Lett 42:137–147

    Article  Google Scholar 

  15. Harkeerat K, Pritee K (2015) Gaussian random projection based non-invertible cancelable biometric templates. Procedia Comput Sci 54:661–670

    Article  Google Scholar 

  16. Savvides M, Kumar BVK, Khosla PK (2004) Cancelable biometric filters for face recognition. In: Proceedings of international conference on pattern recognition, vol 3, pp 922–925

  17. Feng YC, Yuen PC, Jain AK (2010) A hybrid approach for generating secure and discriminating face template. IEEE Trans Inf Forensics Secur 5(1):103–117

    Article  Google Scholar 

  18. Feng YC, Yuen PC (2012) Binary discriminant analysis for generating binary face template. IEEE Trans Inf Forensics Secur 7(2):613–624

    Article  Google Scholar 

  19. Hamouda E, Ouda O, Yuan X, Hamza T (2016) Optimizing discriminability of globally binarized face templates. Arab J Sci Eng 41(8):2837–2846

  20. Juels A, Wattenberg M (1999) A fuzzy commitment scheme. In: Proceedings of the 6th ACM conference on computer and communications security (CCS’99), New York, pp 28–36

  21. Li P, Yang X, Qiao H, Cao K, Liu E, Tian J (2012) An effective biometric cryptosystem combining fingerprints with error correction codes. Expert Syst Appl 39(7):6562–6574

    Article  Google Scholar 

  22. Van Der Veen M, Kevenaar T, Schrijen G, Akkermans TH, Zuo F (2006) Face biometrics with renewable templates. In: Proceedings of SPIE, security, steganography, and watermarking of multimedia contents, San Jose, vol 6072, pp 205–216

  23. Nandakumar K, Jain AK, Pankanti S (2007a) Fingerprint-based fuzzy vault: implementation and performance. IEEE Trans Inf Forensics and Secur 2(4):744–757

    Article  Google Scholar 

  24. Nandakumar K, Nagar A, Jain AK (2007b) Hardening fingerprint fuzzy vault using password. In: By SW, Lee, Li SZ (eds) Advances in biometrics. Lecture notes in computer science. vol 4642. Springer, pp 927–937

  25. Sutcu Y, Li Q, Memon N (2007) Protecting biometric templates with sketch: theory and practice. IEEE Trans Inf Forensics Secur 2(3):503–511

    Article  Google Scholar 

  26. Álvarez Mariñ R, Hernández Álvarez F, Hernández Encinas L (2012) A crypto-biometric scheme based on iris-templates with fuzzy extractors. Inf Sci 195:91–102

    Article  Google Scholar 

  27. Dodis Y, Ostrovsky R, Reyzin L, Smith A (2004) Fuzzy extractors: how to generate strong keys from biometrics and other noisy data. Lecture Note Comput Sci 3027:523–540

    Article  MathSciNet  Google Scholar 

  28. Hall J (2003) Notes on coding theory. Michigan State University, East Lansing

    Google Scholar 

  29. Berlekamp ER (1968) Algebraic coding theory. McGraw Hill, New York

    MATH  Google Scholar 

  30. Dietterich TG, Bakiri G (1995) Solving multiclass learning problems via error-correcting output codes. J Artif Intell Res 2:236–286

    MATH  Google Scholar 

  31. Rifkin R, Klautau A (2004) In defense of one-vs.-all classification. J Mach Learn Res 5:101–141

    MathSciNet  MATH  Google Scholar 

  32. Allwein EL, Schapire RE, Singer Y (2002) Reducing multiclass to binary: a unifying approach for margin classifiers. J Mach Learn Res 1:113–141

    MathSciNet  MATH  Google Scholar 

  33. Escalera S, Pujol O, Radeva P (2010) Error-correcting output codes library. J Mach Learn Res 11:661–664

    MATH  Google Scholar 

  34. Escalera S, Pujol O, Radeva P (2008) On the decoding process in ternary error-correcting output codes. IEEE Trans Pattern Anal Mach Intell 32(1):120–134

    Article  Google Scholar 

  35. Escalera S, Pujol O, Radeva P (2009) Separability of ternary codes for sparse designs of error-correcting output codes. Pattern Recognit Lett 30(3):285–297

    Article  Google Scholar 

  36. Goldberg DE (2006) Genetic algorithms. Pearson Education, New Delhi

    Google Scholar 

  37. Chen C, Veldhuis R, Kevenaar T, Akkermans A (2009) Biometric quantization through detection rate optimized bit allocation. EURASIP J Adv Signal Process 1:784–834

  38. Kevenaar TAM, Schrijen GJ, Veen M, Akkermans AHM (2005) Face recognition with renewable and privacy preserving binary templates. In: Proceedings of IEEE workshop on automatic identification advanced technologies, Buffalo, NY, USA, pp 21–26

  39. Lim M, Teoh A, Toh K (2011) An analysis on equal width quantization and linearly separable sub-code encoding-based discretization and its performance resemblances. EURASIP J Adv Signal Process 82

  40. Chang EC, Roy S (2007) Robust extraction of secret bits from minutiae. In: Lee SW, Li SZ (eds) Advances in biometrics, ICB 2007. Lecture notes in computer science, vol 4642. Springer, Berlin, Heidelberg, pp 750–759

  41. Pandey RK, Zhou Y, Kota BU, Govindaraju V (2016) Deep secure encoding for face template protection. In: IEEE conference on computer vision and pattern recognition workshops (CVPRW), Las Vegas, NV, USA, pp 9–15

  42. Shinde SS, Khedkar AP (2014) A novel scheme for generating secure face templates using binary discriminant analysis. Signal Image Process 5(1):41–53

    Google Scholar 

  43. Nazari S, Moin MS, Rashidykanan H (2016) A face template protection approach using chaos and GRP permutation. Secur Commun Netw 9(18):4957–4972

    Article  Google Scholar 

  44. Sim T, Baker S, Bsat M (2003) The CMU pose, illumination, and expression database. IEEE Trans Pattern Anal Mach Intell 25(12):1615–1618

    Article  Google Scholar 

  45. Lee K, Ho J, Kriegman D (2005) Acquiring linear subspaces for face recognition under variable lighting. IEEE Trans Pattern Anal Mach Intell 27(5):684–698

    Article  Google Scholar 

  46. Thomaz CE, Giraldi GA (2010) A new ranking method for principal components analysis and its application to face image analysis. Image Vision Comput 28(6):902–913. http://fei.edu.br/~cet/facedatabase.html

  47. Turk M, Pentland A (1991) Eigenfaces for recognition. J Cognit Neuro Sci 3(1):71–86

    Article  Google Scholar 

  48. Belhumeur PN, Hespanha JP, Kriegman DJ (1997) Eigenfaces vs. Fisherfaces: recognition using class specific linear projection. IEEE Trans Pattern Anal Mach Intell (Pami) 19(7):711–720

    Article  Google Scholar 

  49. Kelkboom EJC, Breebaart J, Kevenaar TAM, Buhan I, Veldhuis RNJ (2011) Preventing the decodability attack based cross-matching in a fuzzy commitment scheme. IEEE Trans Inf Forensics Secur 6(1):107–121

    Article  Google Scholar 

  50. Rathgeb C, Uhl A (2012) Statistical attack against fuzzy commitment scheme. IET Biom 1(2):94–104

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mohammad-Shahram Moin.

Appendices

Appendix

In the following, we use induction to prove the correctness of specific crossover (Algorithms 1 and 2), specific mutation (Algorithm 3), and specific extension (Algorithm 4) algorithms.

Specific crossover algorithm

To prove the correctness of specific crossover, we should prove the correctness of the main function of this algorithm, i.e. ECOC converter. This function prevents the creation of invalid off- springs.


Input: \(Cros{s_{{N_c} \times n}}\) = binary matrix, \({N_c}\) = The number of classes, n = The number of columns.


Output: penalty, \(ECOC\_Cross\) = Transformed binary matrix.


Hypothesis: \({\text{For}}\;i\,=\,k\left( {1\, \leq \,k \leq {N_c}} \right)\), H(k): when the control reaches in line \({A_1}\) for kth time: \(penalty{\text{ }}\left( k \right)\, \geq \,penalty{\text{ }}(k - 1)\, \geq \,0\)


Prove the above hypothesis by induction:

  • \({\text{H}}\left( 1 \right){\text{ is}}\;{\text{true}} \to penalty\,=\,0,{\text{ and}}\;ECOC\_Cross\,=\,Cross\)

  • \({\text{Let H}}\left( k \right){\text{ be true}} \to penalty\left( k \right)\, \geq \,penalty{\text{ }}(k - 1)\, \geq \,0\)

  • We will prove that H (k + 1) is also True

Proof

In iteration i = k + 1, the control reaches in line \({A_1}\); in this case, the penalty value is equal to penalty in previous iteration i.e. penalty(k + 1) = penalty(k).

  • Case 1: If 1 ≤ i\({N_c}\), the algorithm sets \({u_c}\)= {1,…,n} and checks rows equality using steps 1.1 and 1.2 \(\left( {\forall~~ i\,+\,1\, \leq \,j \leq {N_c}} \right).\)

    1. 1.1

      When ECOC_Cross(i,:) = ECOC_Cross(j,:) and length( \({u_c}\) ) > 0

      Remove the rows equality using \({u_c}\), and update ECOC_Cross

    2. 1.2

      When ECOC_Cross(i,:) = ECOC_Cross(j,:) and length(u) = = 0

      penalty (k + 1)  =  penalty(k + 1) + 1

  • Case 2: If \(i>{N_c}\), the control reaches in line \({A_2}\) to check columns equality using step 1.1. \(\left( {\forall ~~ 1\, \leq \,m \leq n,\;m+1 \leq l \leq n} \right).\)

    1. 1.1

      When ECOC_Cross (:,m)  =  ECOC_Cross (:,l)

      penalty (k + 1)  =  penalty(k + 1) + 1

    2. 2.

      Also, by induction hypothesis \(\to\) penalty(k) ≥ 0


From the steps (1) and (2), we get: penalty (k + 1)  ≥  penalty (k) ≥ 0.


Termination: The algorithm terminates when \(i>{N_c}\) and m > n.

Specific mutation algorithm


Input: \({I^s}=\left\langle {P_{{{N_c} \times n}}^{s},{C^s},~fitnes{s^s}} \right\rangle\): Individual, n_mut: mutation control value


Output: Mutated: mutated offspring


Hypothesis: For 1 ≤  k ≤  n_mut, H(k): when the control reaches in line \({B_1}\) for kth time:

  • \(u\left( k \right)~ \geq ~u\left( {k - 1} \right) \geq ~0\), \(P_{{{N_c} \times n}}^{s}(k)\) is ECOC, and \(d_{{HD}}^{k}\left( {{C_i},{C_j}} \right) \geq d_{{HD}}^{{k - 1}}\left( {{C_i},{C_j}} \right)\).


Prove the above hypothesis by induction:

  • H(1) is true \(\to\) \({P^s}\) (1) is ECOC matrix since no mutation happened; u(1) = 0, and \(({C_i}\), \({C_j})\) are the most confused classes

  • Let H(k) be true \(~ \to\)\(u\left( k \right)~ \geq ~u\left( {k - 1} \right) \geq ~0\), \({P^s}(k)\) is ECOC, and \(d_{{HD}}^{k}\left( {{C_i},{C_j}} \right) \geq d_{{HD}}^{{k - 1}}\left( {{C_i},{C_j}} \right)\)

  • We will prove that H (k + 1) is also True.

Proof

  1. 1.

    In iteration k + 1,the control reaches in line \({B_1}\):

    1. 1.1.

      If \(P_{{i,w}}^{s}(k+1)\)= = \(P_{{j,w}}^{s}(k+1)\) and u < n_mut (\(\forall {\text{ }}\)1 ≤ i, j\({N_c}\)).


Case 1: when 1 ≤  w ≤  n, the \({(k+1){th}}\) mutation in the code-word of \({C_i}\) will happen based on its confusion with the code-word of \({C_j}\); and also the value of u is incremented by 1, if the ECOC validity of \({P^s}\) (k + 1) is not compromised. Thus, the hamming distance between \({C_i}\) and \({C_j}\), and the number of mutations will be \(d_{{HD}}^{{k+1}}\left( {{C_i},{C_j}} \right) \geq d_{{HD}}^{k}\left( {{C_i},{C_j}} \right)\) and u(k + 1) \(\geq\) u(k), respectively.


Case 2: when w > n, the new most confused classes \(\left( {{C_i},{C_j}} \right)\) are found and then the \({(k+1){th}}\) mutation in the code-word of \({C_i}~\) will occur based on its confusion with \({C_j}\); and the value of u is increased, if the ECOC validity of \({P^s}\) (k + 1) is preserved. The outcomes of this step are \(d_{{HD}}^{{k+1}}\left( {{C_i},{C_j}} \right) \geq d_{{HD}}^{k}\left( {{C_i},{C_j}} \right)\) and u(k + 1) \(\geq\) u(k).

  1. 1.2

    when u > n_mut \(\to\) mutated =\({P^s}\) (k + 1)

  2. 2.

    Also, by induction hypothesis \(\to\) u(k) \(\geq\) 0,


From the steps (1) and (2), we get: u(k + 1) \(\geq\) u(k) \(\geq\) 0 \(,~~d_{{HD}}^{{k+1}}\left( {{C_i},{C_j}} \right) \geq d_{{HD}}^{k}\left( {{C_i},{C_j}} \right)\), and \({P^s}\) (k + 1) is ECOC matrix \(\to\) H(k + 1) is true.


Termination: The algorithm terminates when u exceeds n_mut, i.e. u = n_mut + 1.

Specific extension algorithm:


Input: \({I^s}~=\left\langle {P_{{{N_c} \times n}}^{s}~\!,~{C^s}~\!,~fitnes{s^s}} \right\rangle\)


Output: Extended: offspring matrix.


Hypothesis: For b = k (1 ≤ k ≤ \({N_c}\) + 1), H(k): when the control reaches in line \({C_1}\) for kth time:

\({P^s}(k)\) is ECOC matrix.


Prove the above hypothesis by induction

  • H(1) is true \(\to\) \(\left( {{C_i},~{C_j}} \right)\) are the most confused classes, and \({P^s}\) (1) is ECOC matrix.

  • Assume H(k) is true\(\to\) \({P^s}\) (k) satisfies ECOC conditions.

  • We will prove that H (k + 1) is also True.

Proof

  1. 1.

    In iteration b = k + 1, the control reaches in line \({C_1}\):


    Case 1: when b\(~{N_c}\), the \({(k+1){th}}\) code-word in extension matrix \({E_{Nc \times L}}\) is initialized based on its more confusion with \({C_i}\) \({\text{or }}{C_j}\). In this case, \({P^s}~\left( {k+1} \right)\) will satisfy ECOC conditions since it is not altered in the current loop.\(\to {P^s}~\left( {k+1} \right)={P^s}~\left( k \right)\).


    Case 2: when \(b>{N_c},\) the algorithm checks the columns equality in two conditions: (1) the equality of any two columns of \({E_{Nc \times L}}\), and (2) the equality of each column of \({E_{Nc \times L}}\) with ECOC matrix \({P^s}(k).\) To derive a valid ECOC matrix, if the columns are equal, the algorithm changes the code-words of E with the exception of those code-words showing \({C_i}\), \({C_j}\)and the ones representing the confused classes with \({C_i}\) or \({C_j}\). Thus, E is a binary matrix with distinct columns which does not have equal column in \({P^s}\left( k \right).\) Then, \({P^s}\left( {k+1} \right)\) is constructed through joining E to \({P^s}\) (k) as \({P^s}(k+1)\)=\(~{P^s}\) (k) \(\mathop \cup \nolimits^{} E\) to enhance discriminability between the confused classes.\(\to Extended={P^s}~\left( {k+1} \right)\).

  2. 2.

    Also, by induction hypothesis \(\to\) \({P^s}\) (k) is ECOC


From the steps (1) and (2), we get: \({P^s}\left( {k+1} \right)\) is ECOC matrix \(\to\) H(k + 1) is true.


Termination: The algorithm terminates when b > \({N_c}\).

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Nazari, S., Moin, MS. & Kanan, H.R. A discriminant binarization transform using genetic algorithm and error-correcting output code for face template protection. Int. J. Mach. Learn. & Cyber. 10, 433–449 (2019). https://doi.org/10.1007/s13042-017-0723-3

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s13042-017-0723-3

Keywords

Navigation