Embodiment
Fig. 2 is the enforcement example that a kind of biological identification device is described according to the present invention.Please refer to Fig. 2,biological identification device 200 comprisesacquisition unit 210,processing unit 220 and database 230.Processing unit 220 is coupled toacquisition unit 210 and database 230.Acquisition unit 210 is in order to the acquisition biological attribute data.Aforementioned biological attribute data can be the fingerprint characteristic value.In other embodiments, this biological attribute data may be iris feature value, " palm print characteristics value " or " pupil characteristic value " etc.
Processing unit 220 define a plurality of number ranges, and these number ranges has a quantized value separately according to threshold value (threshold).For example, if threshold value is 4, then number range may be (1~8), (9~16), (17~24), (25~32), (33~40) ... etc., and the quantized value of these number ranges can be 4,12,20,28,36 ... etc.Above-mentioned threshold value may be set by the outside, also may be to decide it with definite value within theprocessing unit 220.
If the biological attribute data exported ofacquisition unit 210 falls into one of them number range, thenprocessing unit 220 will be with the quantized value of this number range as " quantization characteristic data " to replace the biological attribute data thatacquisition unit 210 is exported.For example, if the biological attribute data exported ofacquisition unit 210 is 30, because 30 fall into number range (25~32), soprocessing unit 220 will be with the quantized value 28 of number range (25~32) as " quantization characteristic data ".At this moment, the biological attribute data " 30 " exported ofacquisition unit 210 just is quantized/is substituted by quantization characteristic data " 28 ".
Next,processing unit 220 will carry out " one-way function computing " the quantization characteristic data are converted to " encrypted feature data ".Aforementioned one-way function computing can be hash (Hash) functional operation or other encryption function computing.Writing down at least one encrypting registration data in the database 230.Therefore,processing unit 220 processing of can comparing is to have or not any encrypting registration data to be consistent with " encrypted feature data " in the comparison database 230.If be stored in advance in the database 230 a certain registration feature value and " encrypted feature data " the two conform to, thenprocessing unit 220 will be exported the identification result of " by verify ".Otherwise, if aforementioned the two do not conform to, thenprocessing unit 220 will export the identification result of " by verify ".
Above-mentioned for wherein a kind of enforcement example of biological identification device of the present invention.The enforcement example of biological identification method and biological attribute data encryption method thereof below will be described.This area has knows the knowledgeable usually except realizing the present invention with hardware mode, form that can also computer program realizes the present invention and following embodiment, and utilize computer readable memory medium to store this computer program, carry out biological identification method or biological attribute data encryption method in order to computer.
Fig. 3 illustrates a kind of biological identification method flow diagram according to the embodiment of the invention.Need registration in advance/the provide comparison operation of " encrypting registration data " (step S310 holds the back explanation) at this in order to step S330.These encrypting registration data are to use the embodiment of the invention " biological attribute data encryption method " with the prior ciphered data of registration feature data.After being ready for the encrypting registration data, biological identification device or biological identification programming system can allow the user pass through sensing component and/or its driver input biological data (step S321).Step S321 is biological data (as fingerprint, people's face, the iris etc.) input that will compare, generally needs a sensor (sensor) that reads biological data, uses and reads individual's certain (or some) biological attribute data on one's body.
Next can carry out signal pre-treatment (Signal Processing, step S322) at biological data.Step S322 is that the biological data that will read carries out signal processing, for example level and smooth (Gaussian smoothing), the block diagram method of average (Histogram equalization) of Gauss, normalization (Normalization), binaryzation, disconnection (Opening), graph thinning, graph thinning repairing and acquisition characteristic point etc.
After finishing the signal pre-treatment, next just can carry out characteristic value acquisition (Biometric Feature Extraction, step S323), to obtain one or more biological attribute datas to biological data.Biological data has the characteristic point of numerous species, and for example end points of fingerprint characteristic and bifurcation, general fingerprint identification algorithm also all are acquisition end points and the bifurcation features as comparison.Step S323 is exactly the one or more characteristic points that are used for capturing biological data, with as biological attribute data.With the identification of fingerprint is example, and " characteristic value acquisition " algorithm that step S323 carried out can be structure comparison method or onion stratum comparison method etc.In other embodiments, the characteristic value that captured of step S323 may be " iris feature value ", " palm print characteristics value ", " pupil characteristic value " or other various characteristic values.
Next just to carry out " encryption method of biological attribute data " S370,, and become the encrypted feature data so that biological attribute data is encrypted.In the present embodiment, the encryption method S370 of biological attribute data can comprise step S371 and S372 etc.
Step S371 does numerical quantization with the biological attribute data that step S323 handled, and the value of this quantification can cooperate cryptographic technique to use.Step S371 can define a plurality of number ranges according to threshold value, and wherein these number ranges have a quantized value separately.If a certain biological attribute data falls into one of them number range, then with the quantized value of this number range as " quantization characteristic data " to replace " biological attribute data ".Can dynamically set (step S373) in this threshold value, also can cancellation step S373 and with step S371 a certain fixed value decided at the higher level but not officially announced decide it.
Suppose that it is positive and negative t (t is a threshold value) that biological characteristic is compared permissible error range, and sampling value between (0, L) between, then the mode of Liang Huaing is interval with p, and signal value is quantified as 0, p, 2p ... the np equivalence, p=2t wherein,
If a biological characteristic w between (0, L) between and satisfy that (kp-p/2)≤w<(kp+p/2), then this signal value w should be quantified as w
q=kp.For example, if threshold value t is 4, then number range may be (1~8), (9~16), (17~24), (25~32), (33~40) ... etc.; And the quantized value of these number ranges can be 4,12,20,28,36 separately ... etc.If the biological attribute data that provides of step S323 is 30, because 30 fall into number range (25~32), so step S371 will be with the quantized value 28 of number range (25~32) as " quantization characteristic data ".At this moment, the biological attribute data " 30 " that provides of step S323 just is quantized/is substituted by quantization characteristic data " 28 ".Again for example, if the biological attribute data that step S323 provides is 5 data such as (28,37,19,62,54), and t=5 (being p=10), then biological attribute data can be quantified as (30,40,20,60,50) respectively.
Behind completing steps S371, next " quantization characteristic data " are carried out an one-way function computing (step S372), to obtain " encrypted feature data " (step S324).Aforementioned one-way function computing can be hash function computing or other encryption function computing.Be to use the hash function computing to carry out cryptographic operation in the present embodiment.Use hash function the quantization characteristic data confidentiality can be got up, to prevent the biological attribute data leakage or to be stolen.Although, also can't learn original biological attribute data because the assailant obtains being stored in the encrypting registration data of database the inside or the encrypted feature data in delivering path.In other embodiments, step S372 also may together carry out the hash function computing with " quantization characteristic data " and " golden key value ".Above-mentioned " golden key value " can be fixed default value (initial value), random number or other numerical value (real number) etc.
Next comparison " encrypting registration data " and " encrypted feature data " (step S330) is to judge the two whether conform to (step S340).When comparison, present embodiment is " the two is consistent " therefore can improve comparison speed with the two absolutely identical just being considered as.If the two conforms to encrypting registration data and encrypted feature data, then biological identification device/program will be exported the identification result (step S350) of " by checking ".Otherwise the two does not conform to as if encrypting registration data and encrypted feature data, and then biological identification device/program will be exported the identification result (step S360) of " by checking ".
The implementation of above-mentioned registration/provide " encrypting registration data " step is similar to step S321~S324 and S370.Step S310 can comprise substep S311, S312, S313, S380 and S314.Biological identification device or biological identification programming system can allow the user pass through sensing component and/or its driver input biological data (step S311).Step S311 is biological data (as fingerprint, people's face, the iris etc.) input that will compare, generally needs a sensor that reads biological data, uses and reads individual's certain (or some) biological attribute data on one's body.
Next can carry out signal pre-treatment (step S312) at biological data.Step S312 is that the biological data that will read carries out signal processing, and for example Gauss is level and smooth, the block diagram method of average, normalization, binaryzation, disconnection, graph thinning, graph thinning is repaired and acquisition characteristic point etc.After finishing the signal pre-treatment, next just can carry out characteristic value acquisition (step S313), to obtain one or more registration feature data to biological data.With the identification of fingerprint is example, and " characteristic value acquisition " algorithm that step S313 carried out can be structure comparison method or onion stratum comparison method etc.In other embodiments, the characteristic value that captured of step S313 may be " iris feature value ", " palm print characteristics value ", " pupil characteristic value " or other various characteristic values.
Next just to carry out " encryption method of biological attribute data " S380,, and become the encrypting registration data so that the registration feature data are encrypted.In the present embodiment, the encryption method S380 of registration feature data can implement it with reference to step S370, so repeat no more.Behind completing steps S380, biological identification device/program just with the encrypting registration storage in database, utilize in order to step S330.
The foregoing description guarantees all the acceptable values in threshold value because the value of certain biological characteristic all is quantized into a free from error value, not influencing under the safe situation, all can be quantized into same value.These values are except utilizing hash or encryption function protect; can also be by similarly being that stamped signature, golden key produce, the exchange of golden key ... etc. cryptographic technique or other numerical value derive and do further application, to prevent to exist biological attribute data in the storage to leak or to be stolen.And when comparison, absolutely correct value could be compared and pass through, and can improve the comparison speed of machine.
Fig. 4 is according to another embodiment of the present invention explanation biological identification method flow diagram.Part steps embodiment illustrated in fig. 4 can be implemented it with reference to the illustrated content of Fig. 3, so repeat no more.Please refer to Fig. 4, come registration in advance/preparation " encrypting registration data " at this via step S311, S312, S313, S480 and S414, in order to the comparison operation of step S330.Wherein, step S480 uses the embodiment of the invention " biological attribute data encryption method " that " registration feature data " are encrypted and obtains " encrypting registration data " and " adjusted value ".Present embodiment is that encrypting registration data and adjusted value are stored in the database of biological identification device/program (step S414), utilizes in order to step S330 and S470.
After being ready for encrypting registration data and adjusted value, biological identification device or biological identification programming system just can provide the biological identification function.The user imports biological data (step S321) afterwards by sensing component and/or its driver, and step S322 can carry out the signal pre-treatment at biological data.After finishing the signal pre-treatment, step S323 just can carry out the characteristic value acquisition to biological data, to obtain one or more biological attribute datas.Next just to carry out " encryption method of biological attribute data " S470.In the present embodiment, step S470 can extract the adjusted value corresponding to biological attribute data from the database of biological identification device/program, use this adjusted value that the biological attribute data that step S323 is obtained is encrypted then, to obtain encrypted feature data (step S324).
In the present embodiment, above-mentioned steps S470 can comprise substep S471, S472 and S473 etc., and above-mentioned steps S480 can comprise substep S481, S482 and S483 etc.Step S482 does numerical quantization with the registration feature data w that step S313 handled, and the value of this quantification (quantizes log-on data wq) can cooperate cryptographic technique to use.The execution mode of step S482 can be implemented it with reference to the step S371 of Fig. 3, can also come performing step S482 by other any quantification technique.At this, step S482 quantizes required " threshold value t " can dynamically set (step S484), also can cancellation step S484 and with step S482 a certain fixed value decided at the higher level but not officially announced decide it.
Behind completing steps S482, next will " quantize log-on data wq" carry out an one-way function computing (step S483), to obtain " encrypted feature data h (wq) ".Aforementioned one-way function computing can be hash function computing or other encryption function computing.Be to use the hash function computing to carry out cryptographic operation in the present embodiment.In other embodiments, step S483 also may will " quantize log-on data wq" together carry out the hash function computing with " golden key value ", to obtain " encrypted feature data h (wq) ".Above-mentioned " golden key value " can be fixed default value (initial value), random number or other numerical value (real number) etc.Via step S414, encrypted feature data h (wq) can be stored in the database of biological identification device/program, utilize in order to step S330.
In addition, step S481 is the value w that will finely tune in the quantizing processaNote the value of this fine setting (adjusted value wa) discrimination power that quantizes the back reduction can be reduced to discrimination power originally, and can any influence not arranged to safety.In this embodiment, the adjustment calculation method can be wa=wq-w.Behind completing steps S482, just can calculate " quantification log-on data wq" with the difference of " registration feature data w ", to obtain adjusted value wa(step S481).For instance, be that registration feature data w can be quantified as (30,40,20,60,50), then adjusted value w under the situation of (28,37,19,62,54) and p=10 (definition of this p please refer to previous embodiment) at registration feature data waJust equal (30-28,40-37,20-19,60-62,50-54)=(2,3,1 ,-2 ,-4).Via step S414, adjusted value waBe stored in the database of biological identification device/program, utilize in order to step S471.
When the user imported biological attribute data w ', step S471 can obtain the corresponding adjusted value w with biological attribute data w ' from the database of biological identification device/programa, and according to adjusted value waAdjust biological attribute data w '.In this embodiment, step S471 can be w "=w '-waThat is, behind completing steps S323, just can calculate " biological attribute data w ' " and " adjusted value wa" difference, to obtain adjusted biological attribute data w " (step S471).
Step S472 is the biological attribute data w that step S471 was handled " do numerical quantization, the value of this quantification (quantization characteristic data wq') can cooperate cryptographic technique to use.The execution mode of step S472 can be implemented it with reference to the step S371 of Fig. 3, can also come performing step S472 by other any quantification technique.At this, step S472 quantizes required " threshold value t " can dynamically set (step S474), also can cancellation step S474 and with step S472 a certain fixed value decided at the higher level but not officially announced decide it.The two is consistent for " threshold value " of step S472 and " threshold value " of step S482.
For instance, be under the situation of (29,40,18,59,49) and p=10 at biological attribute data w ', if adjusted value waBe (2,3,1 ,-2 ,-4) then adjusted biological attribute data w " be (29-2,40-3,18-1,59+2,49+4)=(27,37,19,61,53).This adjusted biological attribute data w " after quantizing, can be converted into (30,40,20,60,50), this is quantization characteristic data wq'.
Utilize the processing procedure of step S471 and step S472, guarantee all the acceptable values in threshold value,, all can be quantized into same value not influencing under the safe situation.But because in the positive and negative t of error range, the sampling value of hitting it (biological attribute data w ') between (0, the L) value between, probability is about 2t/L; And after quantizing, the sampling value of hitting it (biological attribute data w ') between (0, the L) quantized value between, probability is about 1/n, wherein
The probability of the value before quantizing of hitting it with quantize after the probability of value be the same, so the action of quantification does not influence fail safe.
Behind completing steps S472, next with " quantization characteristic data wq' " carry out an one-way function computing (step S473), to obtain " encrypted feature data h (wq') " (step S324).Aforementioned one-way function computing can be hash function computing or other encryption function computing.Be to use the hash function computing to carry out cryptographic operation in the present embodiment.In other embodiments, step S473 also may be with " quantization characteristic data wq' " together carry out the hash function computing with " golden key value ", to obtain " encrypted feature data h (wq') ".In other words, step S473 " one-way function computing " and step S483 " the one-way function computing " carried out the two be consistent.
By the foregoing description as can be known; do not changing as far as possible under the present biological identification method framework; can on the prior biological identification system, add a subsystem; the function that can reach cryptographic technique is incorporated on the biological identification; strengthen the fail safe of biological identification; there is the biological data of database in protection, and may be used on long-range comparison.Moreover the foregoing description can prevent effectively that the program of malice or assailant from usurping biological attribute data and being the legal user of personation.This field has knows that usually the knowledgeable also can utilize biological characteristic to reach encryption, authentication, identification, stamped signature, hash with reference to above-mentioned explanation, serve as golden key use ... wait cryptographic function (can be used on bank, replace IC-card, replace seal, authenticate dual identification with other).Because the present invention and the foregoing description can be protected biological attribute data by cryptographic means, except the characteristic value that can avoid biological data is captured and usurps, can also realize the characteristics such as confidentiality, integrality, non-repudiation of data.By the decision of " threshold value t ", the discrimination power that is increased to script under the safe situation can not influenced in addition.
Though the present invention discloses as above with preferred embodiment; right its is not in order to limit the present invention; have in the technical field under any and know the knowledgeable usually; without departing from the spirit and scope of the present invention; when can doing a little change and retouching, so protection scope of the present invention is as the criterion when looking accompanying the claim person of defining.