throbber
Biometric Encryption™
`Colin Soutar, Danny Roberge‡, Alex Stoianov, Rene Gilroy, and B.V.K. Vijaya Kumar†
`Bioscrypt Inc. (formerly Mytec Technologies Inc.),
`5450 Explorer Drive, Suite 500
`Mississauga, ONT
`L4W 5M1
`www.bioscrypt.com
`
`‡currently with Forensic Technologies Inc.
`†Department of Electrical and Computer Engineering, Carnegie Mellon University
`
`The content of this article appears as chapter 22 in ICSA Guide to Cryptography, edited by Randall K.
`Nichols, McGraw-Hill (1999)
`
`Introduction
`1
`1.1 Biometrics
`A biometric is defined as a unique, measurable, biological characteristic or trait for automatically
`recognizing or verifying the identity of a human being. Statistically analyzing these biological
`characteristics has become known as the science of biometrics. These days, biometric technologies are
`typically used to analyze human characteristics for security purposes. Five of the most common physical
`biometric patterns analyzed for security purposes are the fingerprint, hand, eye, face, and voice.
`
`The use of biometric characteristics as a means of identification is not a new concept. By 1926, law
`enforcement officials in several U.S. cities had begun submitting fingerprint cards to the FBI in an effort to
`create a database of fingerprints from known criminals. Human experts in the law enforcement field were
`subsequently able to manually match fingerprint samples collected at a crime scene against the prints in this
`criminal database. Years of research in developing accurate and distinctive fingerprint classification
`schemes made these manual matching processes feasible by drastically reducing the required database search
`space. Various fingerprint classification schemes are discussed in Lee and Gaensslen. In the early 1960’s
`the FBI invested a large amount of time and effort into the development of automated fingerprint
`Apple 1026
`Apple v. USR
`IPR2018-00810
`
`1
`
`

`

`identification systems. This automation of biometric identification for law enforcement purposes coincided
`with the development of automated systems for non-forensic applications, such as high-security access
`control. Fingerprint identification systems have been deployed in access control systems since the late
`1960’s. During the 1970’s a biometric product based on measuring the geometry of the hand was
`introduced in a number of access control applications. Interest in biometric identification eventually moved
`from measuring characteristics of the hand to include characteristics of the eye. In the mid-1980’s the first
`system that analyzed the unique patterns of the retina was introduced while, concurrently, work was being
`performed to analyze iris patterns.
`
`In the 1990’s, research continues on developing identification systems based on a wide variety of biometric
`patterns, such as the traditional biometrics mentioned above (i.e. fingerprint, hand geometry, iris, and retina),
`along with the development of voice, signature, palm print, and face recognition systems. A few new,
`innovative approaches are also being examined for biometric analysis, such as ear shape, DNA, keystroke
`(typing rhythm), and body odor.
`
`Biometric identification consists of two stages: enrollment and verification. During the enrollment stage, a
`sample of the designated biometric is acquired. Some unique characteristics or features of this sample are
`then extracted to form a biometric template for subsequent comparison purposes. During the verification
`stage, an updated biometric sample is acquired. As in enrollment, features of this biometric sample are
`extracted. These features are then compared with the previously generated biometric template.
`
`It is convenient to distinguish between the two main objectives of biometric systems: identification and
`authentication. Biometric identification is the process of matching an individual to one of a large set of
`system users, whereas biometric authentication simply verifies that the individual is who he or she claims to
`be. Law enforcement applications typically require the process of biometric identification. For example, a
`typical law enforcement application would seek to determine the identity of an individual who has left a
`latent fingerprint at the scene of a crime. The law enforcement official would enter the collected fingerprint
`and match its template against all the stored templates in the criminal record fingerprint database. This
`process may also be termed a one-to-many search. Alternatively, in the process of biometric authentication
`the user submits an identity claim to the system. Thus, only one biometric template is retrieved from the
`database of users and compared with the verification sample. Authentication is typically used in
`circumstances where access is being controlled, whether physical access to a room or building, or access to
`
`2
`
`

`

`an electronic system such as the logon to a computer system. Biometric authentication thus processes a one-
`to-one match rather than a one-to-many search. For both the identification and the authentication systems, a
`threshold will generally be used to determine the match between templates. The setting of this threshold
`determines the discrimination sensitivity of the system.
`
`Many systems have been developed for implementing biometric identification and authentication. Even for
`a single biometric, such as the fingerprint, there are many different methods used to create the biometric
`template. For example, law enforcement has traditionally used a method of extracting and comparing
`minutiae points from the fingerprint. Minutiae points are locations where a fingerprint ridge ends or splits in
`two. Other fingerprint characteristics are sweat pore location, ridge density, and distance between ridges.
`In other systems, the entire fingerprint image may be processed to implement a pattern recognition process,
`such as correlation.
`
`1.2 Merger of biometrics with cryptography
`With the proliferation of information exchange across the Internet, and the storage of sensitive data on open
`networks, cryptography is becoming an increasingly important feature of computer security. Many
`cryptographic algorithms are available for securing information, and several have been discussed previously
`in this book. In general, data will be secured using a symmetric cipher system, while public-key systems
`will be used for digital signatures and for secure key exchange between users. However, regardless of
`whether a user deploys a symmetric or a public-key system, the security is dependent on the secrecy of the
`secret or private key, respectively. Because of the large size of a cryptographically-strong key, it would
`clearly not be feasible to require the user to remember and enter the key each time it is required. Instead, the
`user is typically required to choose an easily remembered passcode that is used to encrypt the cryptographic
`key. This encrypted key can then be stored on a computer’s hard drive. To retrieve the cryptographic key,
`the user is prompted to enter the passcode, which will then be used to decrypt the key.
`
`There are two main problems with the method of passcode security. First, the security of the cryptographic
`key, and hence the cipher system, is now only as good as the passcode. Due to practical problems of
`remembering various passcodes, some users tend to choose simple words, phrases, or easily remembered
`personal data, while others resort to writing the passcode down on an accessible document to avoid data loss.
`Obviously these methods pose potential security risks. The second problem concerns the lack of direct
`connection between the passcode and the user. Because a passcode is not tied to a user, the system running
`
`3
`
`

`

`the cryptographic algorithm is unable to differentiate between the legitimate user and an attacker who
`fraudulently acquires the passcode of a legitimate user.
`
`As an alternative to passcode protection, biometric authentication offers a new mechanism for key security
`by using a biometric to secure the cryptographic key. Instead of entering a passcode to access the
`cryptographic key, the use of this key is guarded by biometric authentication. When a user wishes to access
`a secured key, he or she will be prompted to allow for the capture of a biometric sample. If this verification
`sample matches the enrollment template, then the key is released and can be used to encrypt or decrypt the
`desired data. Thus, biometric authentication can replace the use of passcodes to secure a key. This offers
`both convenience, as the user no longer has to remember a passcode, and secure identity confirmation, since
`only the valid user can release the key.
`
`There are various methods that can be deployed to secure a key with a biometric. One method involves
`remote template matching and key storage. The biometric image is captured and the corresponding template
`is sent to a secure location for template comparison. If the user is verified, then the key is released from the
`secure location. This provides a convenient mechanism for the user, as they no longer need to remember a
`passcode. This method would work well in a physical access application where the templates and keys may
`be stored in a secure location physically separated from the image capture device. In this scenario, the
`communication line must also be secured to avoid eavesdropper attacks. However, for personal computer
`use, the keys would likely be stored in the clear on a user’s hard drive, which is not secure.
`
`A second method involves hiding the cryptographic key within the enrollment template itself via a trusted
`(secret) bit-replacement algorithm. Upon successful authentication by the user, this trusted algorithm would
`simply extract the key bits from the appropriate locations and release the key into the system.
`Unfortunately, this implies that the cryptographic key will be retrieved from the same location in a template
`each time a different user is authenticated by the system. Thus, if an attacker could determine the bit
`locations that specify the key, then the attacker could reconstruct the embedded key from any of the other
`users’ templates. If an attacker had access to the enrollment program then he could determine the locations
`of the key by, for example, enrolling several people in the system using identical keys for each enrollment.
`The attacker then needs only to locate those bit locations with common information across the templates.
`
`4
`
`

`

`A third method is to use data derived directly from a biometric image. Bodo proposed such a method in a
`German patent. This patent proposed that data derived from the biometric (in essence, the biometric
`template) are used directly as a cryptographic key. However, there are two main problems with this method.
`First, as a result of changes in the biometric image due to environmental and physiological factors, the
`biometric template is generally not consistent enough to use as a cryptographic key. Secondly, if the
`cryptographic key is ever compromised, then the use of that particular biometric is irrevocably lost. In a
`system where periodic updating of the cryptographic key is required, this is catastrophic.
`
`An innovative technique for securing a key using a biometric has been developed by Mytec Technologies
`Inc., based in Toronto Canada. The solution developed by Mytec does not use an independent, two-stage
`process to first authenticate the user and then release the key. Instead, the key is linked with the biometric at
`a more fundamental level during enrollment, and is later retrieved using the biometric during verification.
`Furthermore, the key is completely independent of the biometric data, which means that, firstly, the use of
`the biometric is not forfeited if the key is ever compromised, and secondly, the key can be easily modified or
`updated at a later date. The process developed by Mytec Technologies is called Biometric Encryption™.
`During enrollment, the Biometric Encryption process combines the biometric image with a digital key to
`create a secure block of data, known as a Bioscrypt™. The digital key can be used as a cryptographic key.
`The Bioscrypt is secure in that neither the fingerprint nor the key can be independently obtained from it.
`During verification, the Biometric Encryption algorithm retrieves the cryptographic key by combining the
`biometric image with the Bioscrypt. Thus, Biometric Encryption does not simply provide a yes/no response
`in user authentication to facilitate release of a key, but instead retrieves a key that can only be recreated by
`combining the biometric image with the Bioscrypt.
`
`Note that Biometric Encryption refers to a process of secure key management. Biometric Encryption does
`not directly provide a mechanism for the encryption/decryption of data, but rather provides a replacement to
`typical passcode key-protection protocols. Specifically, Biometric Encryption provides a secure method for
`key management to complement existing cipher systems.
`
`Although the process of Biometric Encryption can be applied to any biometric image, the initial
`implementation was achieved using fingerprint images. The majority of this chapter therefore deals only
`with fingerprint images. The application of the Biometric Encryption algorithm to other biometrics is
`briefly discussed in the section entitled Biometric Encryption using other biometric templates.
`
`5
`
`

`

`2 Biometric Encryption Algorithm
`2.1
`Image Processing
`In contrast to feature-based biometric systems, the Biometric Encryption algorithm processes the entire
`fingerprint image. The mechanism of correlation is used as the basis for the algorithm. A general overview
`of correlation, as it relates to Biometric Encryption, is given in the following section. More detailed
`discussions of correlation and its applications are given in the references by Goodman, Steward and
`VanderLugt.
`
`2.2 Correlation
`A two-dimensional input image array is denoted by f(x) and its corresponding Fourier transform (FT) mate
`by F(u). Here x denotes the space domain and u denotes the spatial frequency domain. The capitalization
`of F denotes an array in the Fourier transform domain. Note that although the arrays defined here are two-
`dimensional, only a single parameter, i.e. x, is used as the array variable to simplify description of the
`process. A filter function, H(u), is derived from an image, f0(x), where the subscript 0 denotes an image
`obtained during an enrollment session. The correlation function, c(x), between a subsequent version of the
`
`f
`
`1
`
`∞ ∞
`
`input, f1(x), obtained during verification and f0(x) is formally defined as
`
`c
`
`( )
`x
`
`=
`
`−
`denotes the complex conjugate. In a practical correlation system, the system output is computed as the
`{
`}u
`( )
`( )
`( )
`−
`∗
`1
`=
`inverse Fourier transform (FT-1) of the product of F1(u) and F0*(u), i.e.
`, where
`FT
`x
`u
`c
`F
`F
`0
`1
`F0*(u) is typically represented by the filter function, H(u), that is derived from f0(x). For correlation-based
`biometric systems, the biometric template used for identification/authentication is the filter function, H(u).
`
`( )
`v
`
`f
`
`∗
`0
`
`(
`
`x
`
`+
`
`)
`dvv
`
`, where *
`
`Normally in the correlation process the filter function H(u) is designed to produce a distinctive correlation
`peak (which approximates a delta function) at the output of the system. Such a correlation peak can easily
`be identified in a correlator system, and its position can be used to track an object of interest, see Hahn and
`Bauchert. Furthermore, a scalar value can be derived from the correlation plane (Kumar and Hassebrook),
`and used as a measure of the similarity between f1(x) and f0(x). The process of correlation provides an
`effective mechanism for determining the similarity of objects, and has been successfully used for fingerprint
`authentication (Stoianov et al). In the next section, it will be demonstrated that the process of correlation
`can also be used as the basis for the Biometric Encryption algorithm.
`
`6
`
`

`

`System requirements
`2.3
`The objective of the Biometric Encryption algorithm is to provide a mechanism for the linking and
`subsequent retrieval of a digital key using a biometric such as a fingerprint. This digital key can then be
`used as a cryptographic key. The important system requirements that apply to a key retrieval system using a
`fingerprint are distortion tolerance, discrimination and security.
`
`• Distortion tolerance is the ability of the system to accommodate the day-to-day distortions of the
`fingerprint image. These distortions are due to behavioral changes (positioning, rotation, and
`deformation), as well as environmental (ambient temperature and humidity) and physiological (moisture
`content) conditions. A key retrieval system must be able to consistently produce the correct key for the
`different expected versions of a legitimate user’s fingerprint.
`
`• Discrimination is the ability of a system to distinguish between all of the system users’ fingerprints. An
`attacker should produce an incorrect key when the attacker’s fingerprint is combined with a legitimate
`user’s filter.
`
`• Security of the system means that neither the digital key, nor the legitimate user’s fingerprint, can be
`independently extracted from any stored information.
`
`To satisfy these three constraints simultaneously, the process of correlation was used as a mechanism for
`linking and retrieving the digital key. As discussed above, correlation is normally used to provide a single
`scalar value which indicates the degree of similarity between one input image, f1(x), and another, f0(x), that is
`represented by the filter function, H(u). The process of Biometric Encryption, on the other hand, needs to
`extract more information than a simple yes/no response from the system. In fact, Biometric Encryption is
`designed typically to output 128 bits of information to be used as a cryptographic key. Thus, it is not
`immediately evident how the process of correlation can be applied to this procedure. However, it is known
`that the process of correlation can be used to design filter functions that are tolerant to distortions in the input
`images; see Kumar, or Roberge et al. This distortion tolerance property of the correlation filter is critical to
`the implementation of Biometric Encryption. Instead of designing a filter function, H(u), which produces a
`simple output pattern, c(x), which approximates a delta function, the process of Biometric Encryption
`
`7
`
`

`

`produces a more sophisticated output pattern. This output pattern is linked during enrollment with a
`particular digital key, and subsequently regenerated during verification to retrieve the same digital key.
`
`2.4 Design of the filter function
`The filter function will be optimized for the following two requirements: that it consistently produces the
`same output pattern for a legitimate user, and that it is tolerant to distortions present in the input images. To
`provide a degree of distortion tolerance, the filter function is calculated during an enrollment session using a
`set of T training images, where T ≥ 1. Denote the T images of the fingerprint by {f0
`T(x)},
`1(x), f0
`2(x), …, f0
`where the subscript 0 denotes a training image. The filter function that will be constructed using these
`images is denoted by H(u). Note that we may refer to complex-valued functions such as H(u) independently
`( )uHie φ
`by their magnitude and phase components, denoted by |H(u)| and
`, respectively. The output pattern
`t(x) is given by
`t(x) is given by c0
`t(x) and the Fourier transform of c0
`produced in response to f0
`( )
`( )
`( )u
`≡
`⋅
`t(u) is the Fourier transform of the training image, f0
`t(x). The desired output
`, where F0
`u
`u
`pattern from the system is denoted by r(x). Note that the filter will be defined for an arbitrary form of r(x),
`rather than a delta function, as is normally the case in correlator systems (Mahalanobis et al). The output
`pattern c(x) will be used both to link with the digital key during enrollment, and to retrieve the digital key
`during verification.
`
`H
`
`t0
`
`F
`
`t0
`
`C
`
`t(x) ≈ r(x), i.e. the output pattern should be as close as possible to the desired
`≤≤
`For
`, we require that c0
`Tt1
`t(x), in the training set. An error term, Esimilarity, can be defined, such
`output function r(x), for each image, f0
`that:
`
`Eq. 22-1
`
`t
`
`( )
`x
`
`−
`
`( )
`x
`
`r
`
`c
`
`0
`
`2
`
`dx
`
`T
`
`T1
`
`E
`
`similarity
`
`=
`
`For
`
`ts,
`
`∈
`
`{
`1,
`
`}
`,T,
`
`
`
`
`
` tand
`
`≠
`
`s
`
`Eq. 22-2
`
`(cid:2)(cid:3)(cid:4)
`
`If
`then
`
`f
`
`0
`t
`0
`
`c
`
`0
`s
`
`f
`
`0
`
`(cid:304)
`
`input
`
`=
`1t
`Esimilarity is thus defined as a measure of the similarity of the output correlation patterns such that Esimilarity=0
`implies that the output correlation patterns are identical for all of the training set images. Thus, we seek to
`minimize Esimilarity. Also, we wish to minimize the error due to distortion in the input images, i.e.:
`( )
`( )
`( )
`t
`s
`st,

`=
`+
`x
`x
`x
`input
`( )
`( )
`( )
`st,

`=
`+
`x
`x
`x
`c
`output
`( )xst,
`
`Assuming that the distortion terms,
`
`the error term due to either the additive distortion or to changes in
`
`0f
`
` is given by:
`
`8
`
`, are uncorrelated, then it can be shown that the variance of
`( )xt
`
`

`

`E
`
`noise
`
`=
`
`( )
`u
`
`2
`
`( )
`duu
`
`P
`
`H
`
`Eq. 22-3
`
`where
`
`Eq. 22-4
`
`{FT
`

`input
`
`2
`
`st,
`
`( )
`}x
`
`− =
`
`1T
`
`T
`
`( )
`u
`
`P
`
`=
`
`2
`−
`T(T
`
`1)
`
`+=
`1ts
`1t
`i.e. P(u) represents the power spectrum of the change between the fingerprints in the training set. In general
`P(u) is readily approximated by a function which characterizes the type of object for which the filter is
`designed. For fingerprint images, each element of P(u) can be uniformly set to a value of 1; see Soutar et al,
`Biometric Encryption™ using image processing.
`
`Thus, the term Esimilarity characterizes the similarity of system output in response to each of the training set
`images, and the term Enoise characterizes the effect of image-to-image variation. Esimilarity determines how
`selective (or discriminating) the filter function is, and Enoise determines how tolerant it is to the expected
`distortions in the fingerprint images.
`
`We wish to derive a filter that minimizes the total error, Etotal.
`2
`
`+
`
`α−
`
`α=
`
`≤α≤
`
`E
`E
`1
`E
`0
`,
`1
`Eq. 22-5
`total
`noise
`similarity
`By allowing α to vary between 0 and 1, we can optimize the performance of the filter to produce a
`compromise between discrimination capability and distortion tolerance, following the optimal trade-off
`procedure developed by Réfrégier. Substituting the filter constraints defined above into equation 22-5 and
`minimizing Etotal with respect to H(u), yields the following expression for H(u); see Soutar et al, Biometric
`Encryption™ using image processing:
`
`Eq. 22-6
`
`Eq. 22-7
`
`9
`
`( )
`u
`
`R
`
`(cid:8)(cid:8) (cid:9)
`
`( )
`u
`
`F
`
`t
`
`0*
`
`T
`
`=
`1t
`
`T1
`(cid:11)(cid:11) (cid:12)
`
`2
`( ) (cid:2)
`u
`
`(cid:3)(cid:4)
`
`t
`
`F
`0
`
`T
`
`=
`1t
`
`T1
`
`( )
`u
`
`P
`
`+
`
`α−
`
`2
`
`1
`
`(cid:2)(cid:6)(cid:7)
`
`( )
`u
`
`H
`
`=
`
`α−
`
`2
`
`1
`

`(cid:2)(cid:5)
`where * denotes complex conjugate. It is convenient to define the following terms:
`T
`
`t
`
`( )
`u
`
`F
`0
`
`=
`1t
`
`T1
`
`( )
`u
`
`=
`
`A
`0
`
`

`

`Eq. 22-8
`
`2
`
`t
`
`( )
`u
`
`F
`0
`
`T
`
`=
`1t
`
`T1
`
`( )
`u
`
`=
`
`D
`0
`
`Thus,
`
`Eq. 22-9
`
`( )
`u
`
`H
`
`=
`
`( )
`0*
`(u)
`u
`R
`A
`( )
`2
`α−
`+

`1
`(u)
`u
`P
`D
`0
`where the constant scalar (1-α2)1/2 has been ignored. Note that the phase component of H(u) is determined
`by A0(u) and R(u), as both P(u) and D0(u) are real positive functions. P(u) and D0(u) are both normalized
`according to their respective mean values. The term R(u) is the Fourier transform of r(x), and all other
`terms are related to the training set of fingerprint images. Although equation 22-9 defines a filter, H(u), that
`is optimized for any function R(u), the form of R(u) should be chosen to obtain maximum security of H(u).
`This concept will be further developed in the next section. Note that the term α in H(u) provides a trade-off
`between the discrimination capability and distortion tolerance of the filter. For α=0, the filter will produce
`t(x) that is very close to r(x) for each corresponding member of the training set, however, it will be
`output c0
`very sensitive to distortions presented in non-training images, i.e. the filter is very discriminating, but
`distortion intolerant. Conversely, for α=1, the system will be extremely tolerant to distortions in the input,
`but may struggle to discriminate between different users of the system. α can therefore be used to produce a
`tighter or more forgiving system, depending on the system requirements. For the normalized versions of
`P(u) and D0(u), the optimal value of α for fingerprint images was determined to be approximately 0.3
`(Soutar et al, Biometric Encryption™ using image processing).
`
`Security of the filter function
`2.5
`Equation 22-9 defines a filter function that provides a trade-off between discrimination capability and
`distortion tolerance. However, the third requirement of the system is that the filter function stored as part of
`the Bioscrypt must be immune to attack, i.e. neither the biometric image, f(x), nor the output function, r(x),
`should be independently recoverable from the Bioscrypt. Normally, in a correlation system, the filter
`function, H(u) as defined above, would be stored as the Bioscrypt. However, to maximize security, it is
`appropriate that a modified version of H(u) is stored. This modified H(u) is termed the stored filter function,
`Hstored(u). Specifically, the security of Hstored(u) is found to be maximized if only the phase component,
`( )u
`e Hiφ
`
`, of H(u) is stored and R(u) is a random, uniformly-distributed phase function. Hstored(u) thus
`( )u0
`Aiφ−
`
`comprises the product of
`
`e
`
` and a random phase-only function. It will be seen in the section entitled
`
`10
`
`

`

`( )u0
`Aiφ−
`, with a random, uniformly
`e
`Secure filter design, that the product of an arbitrary phase function,
`distributed phase function, R(u), has perfect secrecy, see Stinson for a definition of perfect secrecy.
`( )u0
`Aiφ−
`
`Therefore neither
`
`e
`
` nor R(u) can be retrieved from Hstored(u).
`
`Thus, storing only the phase of H(u) satisfies the security requirement for Biometric Encryption. However,
`it is obvious from equation 22-9 that the optimized filter function, H(u), contains magnitude as well as phase
`information. The ideal form for the stored filter function for security thus differs from the ideal form of the
`filter function that was optimized for discrimination and distortion tolerance. To simply ignore the
`magnitude information disregards the optimization procedure.
`
`A solution to this problem is that the magnitude information that is required for the optimal filter function,
`H(u), is not part of the stored filter function, Hstored(u), but is instead regenerated during each verification
`procedure. To accomplish this, the concept of a transitory filter is introduced.
`
`2.6 Transitory filter
`In this section, the mechanism for calculating an optimal H(u), for consistency, and storing a modified
`version, Hstored(u), for security, is described.
`
`R
`
`0*
`(u)
`A
`( )
`α−
`1
`(u)
`u
`P
`D
`0
`H(u) was optimized to produce a consistent c0(x) (and as close to r(x) as is possible) when a member of the
`t(x) at
`t(x) is presented to the system. Consider the output function, c0
`t(x), produced with f0
`training image f0
`the input:
`
`Eq. 22-11
`
`11
`
`Consider generating an array, R(u), whose elements have unity magnitude. Thus, R(u) is a phase-only
`function whose phase values, j, are random and uniformly distributed such that 0 ≤ j < π2 , i.e.:
`( )
`( )


`u
`i
`)1,0[
`2
`Ui
`=
`=
`Eq. 22-10
`u
`R
`e
`e
`where U[0, 1) represents an array of elements in which each element, m, is randomly and uniformly
`( )u
`e Riφ
`distributed such that 0 ≤ m < 1. In the discussion that follows
` is used to represent the random
`T(x)}, H(u)
`1(x), f0
`2(x), …, f0
`phase-only function defined above. Thus, using the set of training images, {f0
`can be calculated using equation 22-9, i.e.:
`( )
`u
`
`H
`
`=
`

`
`( )u
`

`Rie
`
`+
`
`2
`
`

`

`Eq. 22-12
`
`t(x) at the input (i.e.
`
`(cid:3)(cid:4)
`
`( )(cid:2)
`u
`

`i
`
`R
`
`e
`
`( )
`u
`+
`

`
`φ−
`i
`
`A
`0
`
`( )
`u
`
`α−
`
`2
`
`A
`e
`0
`( )
`u
`1
`(u)
`P
`D
`0
`t(x), produced with a non-training image, f1
`
`t
`
`F
`0
`
`(cid:2)(cid:6)(cid:7)
`
`t
`
`( )
`x
`
`=
`
`1-
`
`FT
`
`c
`
`0
`
`(cid:2)(cid:5)
`Similarly, consider the output function, c1
`during verification):
`
`( )
`u
`
`φ−
`i
`
`( )
`u
`
`A
`0
`
`α−
`
`2
`
`(u)
`
`D
`(cid:2)(cid:5)
`0
`t(x), will be used to
`where the subscript 1 represents an image used in verification. The output pattern, c1
`t(x) as possible,
`t(x) is as close to c0
`retrieve the digital key during verification. Clearly, it is desired that c1
`t(x) → c0
`t(x) if the testing image, f1
`t(x), is identical to the training
`for the legitimate user. Of course, c1
`t(x). It is known, however, that effects due to behavioral, environmental and physiological changes
`image, f0
`t(x). On the other hand, for either enrollment or
`t(x) will not be identical to f0
`will determine that f1
`verification, it is found in Roberge et al that as the number of fingerprints, T, in the set increases, the average
`of the FT’s of the images, A0(u), converges to a fixed function (at approximately T = 6). Thus, because the
`set of enrollment images are captured in the same way as the subsequent verification images, at T = 6, A1(u)
`≅ A0(u) and D1(u) ≅ D0(u). Therefore, in equations 22-12 and 22-13, we use A0(u) to represent F0
`t(u), and
`t(u), i.e. we use the average of the fingerprint transforms to represent the individual
`A1(u) to represent F1
`fingerprints. To ensure that we never have to store any magnitude information in the stored filter function
`(recall that for optimal security, we wish to store only phase terms), we also approximate |A0(u)| by |A1(u)|
`and D0(u) by D1(u) in equation 22-13. These approximations can be substituted into equations 22-12 and
`22-13 to yield:
`
`Eq. 22-13
`
`(cid:3)(cid:4)
`
`( ) (cid:2)
`u
`

`
`i
`
`R
`
`e
`
`e
`1
`
`( )
`u
`+
`
`A
`0
`( )
`u
`

`
`P
`
`( )
`u
`
`t
`
`F
`1
`
`(cid:2)(cid:6)(cid:7)
`
`( )
`x
`
`t
`
`c
`1
`
`=
`
`FT
`
`1-
`
`Eq. 22-14
`
`(cid:3)(cid:4)
`
`( ) (cid:2)
`u
`

`
`i
`
`R
`
`e
`
`( )
`u
`
`φ−
`i
`
`A
`0
`
`2
`

`
`( )
`u
`
`A
`0
`
`(cid:2)(cid:6)(cid:7)
`
`( )
`x
`
`=
`
`1-
`
`FT
`
`c
`
`0
`
`Eq. 22-15
`
`Eq. 22-16
`
`Eq. 22-17
`
`( )
`u
`e
`+
`1
`
`A
`0
`( )
`u
`
`P
`
`α−
`
`D
`
`0
`
`(u)
`
`(cid:3)(cid:4)
`
`( ) (cid:2)
`u
`

`
`i
`
`R
`
`e
`
`( )
`u
`
`φ−
`i
`
`A
`0
`
`e
`
`(u)
`}(u)
`
`A
`0
`+
`1
`( )
`u
`
`( )
`u
`
`P
`
`•
`
`H
`
`0
`
`( )
`u
`α−
`
`2
`
`D
`
`0
`
`•
`
`H
`
`stored
`
`( )
`u
`

`( )
`u
`
`(cid:2)(cid:5)
`
`A
`0
`
`(cid:2)(cid:6)(cid:7)
`
`(cid:2)(cid:5)
`
`=
`
`FT
`
`1-
`
`=
`
`FT
`
`−
`1
`
`{
`
`A
`0
`
`(cid:3)(cid:4)
`
`( ) (cid:2)
`u
`

`
`i
`
`R
`
`e
`
`e
`1
`
`( )
`u
`A
`1
`( )
`+
`u
`

`
`P
`
`( )
`u
`
`A
`1
`
`(cid:2)(cid:6)(cid:7)
`
`(cid:2)(cid:5)
`
`( )
`x
`
`c
`1
`
`=
`
`FT
`
`1-
`
`and
`
`12
`
`φ−
`i
`
`( )
`u
`
`A
`0
`
`α−
`
`2
`
`D
`1
`
`(u)
`
`

`

`Eq. 22-18
`
`Eq. 22-19
`
`(cid:3)(cid:4)
`
`( )(cid:2)
`u
`

`
`i
`
`R
`
`e
`
`φ−
`i
`
`A
`0
`
`( )
`u
`
`e
`
`2
`
`( )
`u
`A
`1
`α−
`1
`
`( )
`+
`u
`( )
`u
`
`H
`
`•
`
`H
`
`( )
`u
`

`( )
`u
`
`•
`
`A
`1
`
`(cid:2)(cid:6)(cid:7)
`
`(cid:2)(cid:5)
`
`=
`
`FT
`
`1-
`
`=
`
`FT
`
`−
`
`1
`
`P
`
`(u)
`D
`1
`}(u)
`{
`A
`1
`1
`stored
`Thus, as stated in the previous section, only the product of the phase of the complex conjugate of the training
`( )u0Aie
`( )u
`φ−
`e Riφ
`( )
`u
`
`set images,
`
`, is stored as the stored filter function, i.e.,
`( )u
`

`Ri
`
`0A
`
`, and the phase-only function,
`φ−=
`( )
`i
`Eq. 22-20
`u
`H
`e
`e
`stored
`The magnitude terms of the optimal filter are calculated on-the-fly during either enrollment or verification.
`Therefore, the transitory filter is defined as the product of the stored phase-only term, Hstored(u), and the
`( )u1H
`( )u0H
` and
`, for enrollment and verification, respectively. Thus, only phase
`magnitude terms,
`information is stored (security is obtained) and the magnitude information that is required for the verification
`procedure is derived from the fingerprint images acquired during the verification session (consistency is
`preserved).
`
`In the next section, the security aspects of Hstored(u) will be further examined. In the section entitled
`Enrollment / Verification, it will be demonstrated how the digital key is linked with c0(x) during enrollment,
`and retrieved from c1(x) during verification.
`
`Secure filter design
`2.7
`Previously it was stated that the stored filter function, Hstored(u), is required to be secure against attack in that
`neither the user’s fingerprint, nor r(x), can be independently obtained from it. The concept of the product of
`two phase-only arrays, which is denoted here as the phase-phase product, was used to provide security for
`Hstored(u). In this section the security of the phase-phase product is illustrated by using the analogy of the
`classic cryptographic one-time pad and the concept of perfect secrecy.
`
`The Vernam one-time pad, first described in 1917 by Gilbert Vernam, is a well-known realization of a
`{ }n1,0=
`=
`=
`1n ≥ ,
`, where
`cryptosystem with perfect secrecy. The one-time pad

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket