摘 要:
近年來(lái),,越來(lái)越多的智能終端和信息系統(tǒng)集成了生物識(shí)別技術(shù),,并在金融,、安防等領(lǐng)域中廣泛使用。用戶的生物特征信息一旦泄露,,將嚴(yán)重威脅用戶的切身利益,。依托模糊提取技術(shù)、糾錯(cuò)算法和安全散列算法,,提出了一種指紋生物特征的隱私保護(hù)和認(rèn)證方法,。該方法中,指紋注冊(cè)階段并不保存指紋圖像,、細(xì)節(jié)點(diǎn)特征等原始信息,僅保留由糾錯(cuò)編碼算法和安全散列算法生成的輔助數(shù)據(jù),,從而達(dá)到隱私保護(hù)的目的,。身份認(rèn)證時(shí),通過(guò)輔助數(shù)據(jù)結(jié)合糾錯(cuò)運(yùn)算去除圖像采集誤差并進(jìn)行安全散列運(yùn)算密文比對(duì),,完成用戶身份的識(shí)別,。
00
引 言
近年來(lái),隨著生物特征識(shí)別技術(shù)的廣泛應(yīng)用,,人們?cè)絹?lái)越擔(dān)心自身的生物特征的安全問(wèn)題,。無(wú)論在哪種場(chǎng)合,只要提供了自己的生物特征信息,,這個(gè)生物特征信息就有被復(fù)制和盜用的風(fēng)險(xiǎn),。而且,人的生物特征一般情況下是不會(huì)變化的,,一旦泄露就無(wú)法像口令一樣修改或重新設(shè)置,。當(dāng)同一生物特征信息應(yīng)用于多個(gè)信息系統(tǒng)時(shí),一個(gè)系統(tǒng)中的生物特征信息泄露將影響其他系統(tǒng)的安全,。2020年10月,,中國(guó)信通院、電信終端產(chǎn)業(yè)協(xié)會(huì),、中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)等單位聯(lián)合發(fā)表了《生物識(shí)別隱私保護(hù)研究報(bào)告》,。報(bào)告指出需要完善我國(guó)的生物識(shí)別隱私保護(hù)標(biāo)準(zhǔn)體系,加快重點(diǎn)標(biāo)準(zhǔn)研制,,建立評(píng)估機(jī)制,,提升保護(hù)力度,同時(shí)在技術(shù)層面上需要?jiǎng)?chuàng)新生物識(shí)別隱私保護(hù)技術(shù)手段,,加強(qiáng)基礎(chǔ)理論研究和技術(shù)研發(fā),。
在生物特征識(shí)別技術(shù)廣泛應(yīng)用之前,信息系統(tǒng)的認(rèn)證主要依靠口令的方式進(jìn)行,。在對(duì)口令的安全保護(hù)設(shè)計(jì)中,,口令通常使用安全散列算法,,如安全散列算法1(Secure Hash Algorithm 1,SHA1),,進(jìn)行安全散列運(yùn)算,,并將散列值存儲(chǔ)起來(lái)??诹钫J(rèn)證時(shí),,輸入的口令將再次進(jìn)行安全散列運(yùn)算,并將散列值并與存儲(chǔ)的散列值進(jìn)行比較,,確定用戶身份,。在這個(gè)過(guò)程中,信息系統(tǒng)中并不保存原始的口令,,由于安全散列算法是單向運(yùn)算,,即使存儲(chǔ)的散列值被泄露,攻擊者也無(wú)法得到原始的用戶口令,。
雖然通過(guò)安全散列算法可以很好地保護(hù)口令安全,,但這個(gè)技術(shù)并不適用于生物特征信息。生物特征信息識(shí)別系統(tǒng)一般分為注冊(cè)階段和認(rèn)證階段,,因?yàn)樯锾卣餍畔⑹懿杉瘲l件,、環(huán)境變化等各種因素影響,即使是同一個(gè)生物樣本,,每次采集的生物特征信息都會(huì)有不同,。例如,在進(jìn)行指紋特征采集時(shí),,受手指與傳感器之間的壓力,、接觸范圍、角度不同,,以及灰塵,、油污等影響,都會(huì)造成采集的生物特征信息存在差異,。由于這些差異的存在,,使得同一指紋多次采集的特征信息進(jìn)行安全散列運(yùn)算后的散列值都是不同的,無(wú)法用于確定用戶真實(shí)身份,,因此在設(shè)計(jì)生物特征的隱私保護(hù)方案時(shí),,最根本的難題是如何解決同一生物特征多次采樣產(chǎn)生的差異。
01
生物特征信息的飲食保護(hù)
生物特征信息是按照一定的提取策略,,生成一組特征值的序列,。該序列被稱為生物特征模板。一般情況下,生物特征模板X可以表示成圖片的形式,。對(duì)于任意的兩個(gè)特征模板X和Y,,如果存在一個(gè)子集圖片,且滿足圖片,,則認(rèn)為兩個(gè)生物特征模板是匹配的,,其中圖片和圖片為設(shè)定的閾值。
生物特征信息的隱私保護(hù)需要做到在不影響識(shí)別性能的同時(shí),,無(wú)法還原或偽造出原始的生物特征信息,。近年來(lái)國(guó)內(nèi)外在生物特征信息的隱私保護(hù)方面也提出了許多方法,這些方法主要分為基于變換的生物特征保護(hù)方案和基于輔助數(shù)據(jù)的生物特征保護(hù)方案兩類,。
1.1 基于變換的生物特征保護(hù)方案
基于變換的生物特征保護(hù)方案主要設(shè)計(jì)思想是對(duì)生物特征模板進(jìn)行一種不可逆變換,,如坐標(biāo)扭曲、折疊等,。進(jìn)行匹配時(shí),,待匹配數(shù)據(jù)也進(jìn)行相同的變換后再進(jìn)行匹配。在指紋的變換保護(hù)方面,,Ratha等人提出了基于笛卡爾坐標(biāo)的轉(zhuǎn)換函數(shù),,在這個(gè)轉(zhuǎn)換函數(shù)中,,指紋圖像被分割為若干個(gè)矩形單元,,每個(gè)單元按照一定的規(guī)則重新變換位置。在這種變換中,,指紋圖像被打亂,,原本分散的兩個(gè)或多個(gè)指紋特征點(diǎn)可能被集合到鄰近區(qū)域,編碼成一個(gè)特征點(diǎn),,即使攻擊者知道變換方法,,也無(wú)法確定該特征點(diǎn)原來(lái)屬于哪個(gè)區(qū)域。
基于變換的保護(hù)方案缺點(diǎn)在于設(shè)計(jì)出一個(gè)安全的變換函數(shù)和參數(shù)非常困難,,同時(shí)不太容易從理論上分析出逆向變換的難度,,特別是當(dāng)變換函數(shù)和參數(shù)被泄露的時(shí)候,這種方法很難證明其安全性,。
1.2 基于輔助數(shù)據(jù)的生物特征保護(hù)方案
基于輔助數(shù)據(jù)的生物特征保護(hù)方案主要的設(shè)計(jì)思想是利用生物特征信息生成一些輔助信息,,如糾錯(cuò)編碼、雜湊值,、驗(yàn)證數(shù)據(jù)等,。這些輔助信息不會(huì)透露原始的生物特征信息,但可以在認(rèn)證時(shí)利用其完成身份認(rèn)證,。目前基于輔助數(shù)據(jù)的保護(hù)方案主要有模糊提取,、模糊承諾和模糊金庫(kù)幾種。模糊提取和模糊承諾要求生物特征數(shù)據(jù)必須是有序的,該技術(shù)目前已成功用于虹膜等生物特征識(shí)別,。由于指紋的細(xì)節(jié)點(diǎn)特征是無(wú)序的,,對(duì)指紋的細(xì)節(jié)點(diǎn)特征的保護(hù)大都采用模糊金庫(kù)的方法。模糊金庫(kù)方法在進(jìn)行生物特性信息的隱私保護(hù)時(shí)構(gòu)建一個(gè)多項(xiàng)式
該多項(xiàng)式在2維平面上是一條曲線,,指紋的若干個(gè)細(xì)節(jié)點(diǎn)特征依次作為圖片值帶入多項(xiàng)式中進(jìn)行運(yùn)算得到若干個(gè)圖片值,,每次運(yùn)算的圖片值就形成了平面上的真實(shí)坐標(biāo)點(diǎn)。在真實(shí)坐標(biāo)點(diǎn)之外,,隨機(jī)生成若干個(gè)假坐標(biāo)點(diǎn)就得到了指紋模糊金庫(kù),。實(shí)際應(yīng)用中,假坐標(biāo)點(diǎn)的數(shù)量需要遠(yuǎn)遠(yuǎn)大于真實(shí)坐標(biāo)點(diǎn)的數(shù)量,,使得攻擊者很難找出哪些是真實(shí)坐標(biāo)點(diǎn),。在認(rèn)證時(shí),只有合法指紋才能篩選出真實(shí)點(diǎn)并重構(gòu)出多項(xiàng)式,,完成生物特征認(rèn)證,。理論上,當(dāng)模糊金庫(kù)中存在24個(gè)真實(shí)點(diǎn),,200個(gè)假坐標(biāo)點(diǎn),,n值為8時(shí),其安全強(qiáng)度約為圖片,。
模糊金庫(kù)的缺點(diǎn)在于當(dāng)同一生物特征信息被用于兩個(gè)及以上的模糊金庫(kù)時(shí),,如果模糊金庫(kù)數(shù)據(jù)被攻擊者得到,攻擊者可以通過(guò)交叉匹配能很容易地找出模糊金庫(kù)中的真實(shí)點(diǎn),,破解模糊金庫(kù),。除此之外,模糊金庫(kù)還存在多模板攻擊,、替代攻擊,、密鑰反向攻擊等難以解決的問(wèn)題,在安全性上存在一定的局限性,。
02
指紋生物特征的隱私保護(hù)方法
基于細(xì)節(jié)點(diǎn)特征匹配的指紋識(shí)別是目前指紋身份認(rèn)證的主流技術(shù)方案,。但由于指紋細(xì)節(jié)點(diǎn)的無(wú)序性使得在完成匹配前并不知道注冊(cè)的細(xì)節(jié)點(diǎn)和匹配的細(xì)節(jié)點(diǎn)之間的對(duì)應(yīng)關(guān)系。同時(shí),,兩次采樣時(shí),,受各種因素影響,獲取的細(xì)節(jié)點(diǎn)數(shù)量很有可能是不一樣的,。
為了解決指紋的細(xì)節(jié)點(diǎn)特征無(wú)法直接通過(guò)模糊承諾進(jìn)行保護(hù)的問(wèn)題,,國(guó)內(nèi)外進(jìn)行了許多研究并提出了一些方法,如基于傅里葉變換和濾波變換得到指紋細(xì)節(jié)點(diǎn)信息的幅度譜和相位譜構(gòu)建模糊承諾方案,。
與上述方法不同,,本文從指紋特征細(xì)節(jié)點(diǎn)分布結(jié)構(gòu)出發(fā),設(shè)計(jì)了一種指紋細(xì)節(jié)點(diǎn)特征二值化方法,并結(jié)合糾錯(cuò)算法和安全散列算法,,完成指紋生物特征信息的隱私保護(hù),。
2.1 基于細(xì)節(jié)點(diǎn)分布的指紋特征二值化方法
根據(jù)中華人民共和國(guó)頒布的《居民身份證指紋采集和比對(duì)技術(shù)規(guī)范》,指紋的細(xì)節(jié)點(diǎn)一般由中心點(diǎn)和普通特征點(diǎn)構(gòu)成,。指紋中心點(diǎn)的數(shù)量最多為3個(gè),,特征點(diǎn)數(shù)量最多為120個(gè),其中中心點(diǎn)用圖片坐標(biāo)表示,,特征點(diǎn)用圖片表示,。基于細(xì)節(jié)點(diǎn)分布的指紋特征二值化方法采用劃分指紋區(qū)域結(jié)合特征點(diǎn)角度的方式來(lái)進(jìn)行二值化,。
最開始,,需要在指紋圖像中確立一個(gè)笛卡爾坐標(biāo)系。當(dāng)指紋圖像有一個(gè)中心點(diǎn)時(shí),,坐標(biāo)系以該中心點(diǎn)為原點(diǎn),,原點(diǎn)與最近的特征點(diǎn)連線方向作為圖片軸。當(dāng)指紋圖像中有兩個(gè)中心點(diǎn)時(shí),,坐標(biāo)系以兩個(gè)中心點(diǎn)之間的中點(diǎn)為原點(diǎn),,兩個(gè)中心點(diǎn)之間的連線方向作為圖片軸。當(dāng)指紋圖像中有三個(gè)中心點(diǎn)時(shí),,坐標(biāo)系以3個(gè)中心點(diǎn)的圖片值和圖片值的平均值為原點(diǎn),,距離最近的兩個(gè)中心點(diǎn)之間的連線方向作為圖片軸。由于同源指紋特征多次采樣時(shí)的位置和角度均會(huì)有不同,,指紋細(xì)節(jié)點(diǎn)信息需要根據(jù)笛卡爾坐標(biāo)原點(diǎn)進(jìn)行對(duì)齊,,即將指紋細(xì)節(jié)點(diǎn)進(jìn)行旋轉(zhuǎn)和平移,,將原點(diǎn)位置移動(dòng)到圖片坐標(biāo),,并將圖片軸移動(dòng)到水平方向。細(xì)節(jié)點(diǎn)旋轉(zhuǎn)和平移的公式如下:
式中:圖片是旋轉(zhuǎn)平移前的細(xì)節(jié)點(diǎn)特征值,;圖片是原點(diǎn)坐標(biāo),;圖片是將圖片軸移動(dòng)到水平方向需要旋轉(zhuǎn)的角度;圖片是旋轉(zhuǎn)平移后的細(xì)節(jié)點(diǎn)特征值,。
在笛卡爾坐標(biāo)系建立之后,,需要對(duì)指紋圖像進(jìn)行分割,如圖1所示,。具體實(shí)現(xiàn)方法為,,在笛卡爾坐標(biāo)系中以原點(diǎn)為中心,圖片為間距,,圖片為扇區(qū)角度劃分區(qū)域,。
圖1 指紋特征二值化劃分區(qū)域方法
完成指紋圖像的區(qū)域劃分之后,可以根據(jù)區(qū)域中是否有指紋特征點(diǎn)、以及特征點(diǎn)的角度對(duì)指紋特征進(jìn)行二值化,。二值化時(shí),,每個(gè)區(qū)域與原點(diǎn)之間的角度、距離以及一定圖片角度范圍內(nèi)是否有特征點(diǎn),,可以構(gòu)建一個(gè)3維陣列,,如圖2所示。
圖2 指紋特征二值化矩陣
當(dāng)3維陣列中某個(gè)位置中存在特征點(diǎn)時(shí),,該矩陣被編碼為1,,用黑色表示,否則被編碼為0,,用白色表示,。矩陣中所有位置編碼完成后,再按照一定規(guī)則對(duì)編碼值進(jìn)行排列,,即可完成指紋特征的二值化,。
基于細(xì)節(jié)點(diǎn)分布的指紋特征二值化方法排除了同源指紋多次采樣時(shí)的位置和角度不同造成的偏差,實(shí)現(xiàn)了指紋的對(duì)齊和二值化,。任意兩次二值化的結(jié)果偏差可以用漢明距離來(lái)表示,。工程實(shí)現(xiàn)時(shí),可以對(duì)圖片值,,圖片值以及圖片值進(jìn)行調(diào)整盡量減小同源指紋之間的二值化漢明距離,,增大非同源指紋之間的漢明距離。當(dāng)圖片,,圖片,,圖片時(shí),測(cè)試了40幅指紋圖像兩兩之間的二值化特征值漢明距離如圖3所示,。
圖3 40幅指紋圖像的二值化特征值的漢明距離
圖3中,,橫坐標(biāo)表示漢明距離的大小,縱坐標(biāo)表示出現(xiàn)的次數(shù),。從圖中可以看出,,采用指紋區(qū)域結(jié)合特征點(diǎn)角度的方式二值化后,同源指紋的二值化特征值漢明距離明顯小于非同源指紋的二值化特征值漢明距離,,可以達(dá)到明顯區(qū)分同源指紋和非同源指紋的目的,。
2.2 指紋特征信息的隱私保護(hù)
指紋的二值化特征值反映了指紋的特征點(diǎn)分布情況,必須對(duì)其進(jìn)行保護(hù),。采用密碼算法加密保存指紋數(shù)據(jù)的方法并不能從根本上解決問(wèn)題,。因?yàn)橐坏┟荑€丟失,攻擊者同樣可以通過(guò)解密還原出指紋數(shù)據(jù),。而且,,在每次進(jìn)行生物特征匹配時(shí),,無(wú)論匹配是否成功,都需要對(duì)已加密的指紋數(shù)據(jù)進(jìn)行解密獲取指紋特征的明文,,存在安全風(fēng)險(xiǎn),。采用了基于輔助數(shù)據(jù)的隱私保護(hù)方案完全避免了這一問(wèn)題。
在基于輔助數(shù)據(jù)的隱私保護(hù)方案中,,指紋特征信息注冊(cè)階段,,利用糾錯(cuò)算法生成注冊(cè)指紋二值化特征值的糾錯(cuò)編碼,利用安全散列算法生成注冊(cè)指紋二值化特征值的散列值,。糾錯(cuò)編碼用于糾正同源指紋兩次測(cè)量之間的誤差,,散列值用于認(rèn)證。注冊(cè)完成后,,僅需要保留糾錯(cuò)編碼和散列值,,形成輔助數(shù)據(jù),原始的指紋二值化特征值等其他數(shù)據(jù)均被銷毀,。由于安全散列算法的逆向計(jì)算在數(shù)學(xué)上是不可行的,,攻擊者即使得到了輔助數(shù)據(jù),也無(wú)法恢復(fù)原始指紋二值化特征值,?;谳o助數(shù)據(jù)的隱私保護(hù)方案的注冊(cè)過(guò)程如圖4所示。
圖4 基于輔助數(shù)據(jù)的隱私保護(hù)方案的注冊(cè)過(guò)程
在認(rèn)證階段,,待認(rèn)證的指紋圖像通過(guò)二值化抽取得到二值化特征值,,然后通過(guò)輔助數(shù)據(jù)中的糾錯(cuò)編碼嘗試對(duì)二值化特征值進(jìn)行糾錯(cuò)運(yùn)算。如果糾錯(cuò)運(yùn)算失敗,,則認(rèn)證失敗,。如果糾錯(cuò)成功,則利用安全散列算法計(jì)算糾錯(cuò)后二值化特征值的待認(rèn)證散列值,,并將其與輔助數(shù)據(jù)中的散列值進(jìn)行比較,,只有當(dāng)待認(rèn)證散列值與輔助數(shù)據(jù)中的散列值一致時(shí),才認(rèn)為身份認(rèn)證成功,?;谳o助數(shù)據(jù)的隱私保護(hù)方案的認(rèn)證過(guò)程如圖5所示,。
圖5 基于輔助數(shù)據(jù)的隱私保護(hù)方案的認(rèn)證過(guò)程
03
測(cè)試結(jié)果
本文以指紋樣本庫(kù)FVC2002_DB2B為基礎(chǔ),,測(cè)試了基于細(xì)節(jié)點(diǎn)分布的指紋特征二值化方法的指紋識(shí)別可靠性。測(cè)試時(shí),,先將樣本庫(kù)中的指紋數(shù)據(jù)處理為符合國(guó)家二代居民身份證指紋采集和比對(duì)技術(shù)規(guī)范的指紋數(shù)據(jù)結(jié)構(gòu),,再基于細(xì)節(jié)點(diǎn)分布特征進(jìn)行二值化處理,最后結(jié)合二元線性循環(huán)碼(BCH)和SM3安全散列算法完成指紋數(shù)據(jù)的隱私保護(hù),。
真匹配實(shí)驗(yàn)是將指紋圖像庫(kù)中每個(gè)手指其中任意一幅圖片為模板,,其余同源指紋為樣本進(jìn)行比較,,計(jì)算識(shí)別率;假匹配實(shí)驗(yàn)則是選取任意手指的一幅圖片為模板,,與其余不同手指的所有圖片進(jìn)行比較,,計(jì)算誤識(shí)率。
測(cè)試時(shí),,通過(guò)調(diào)整圖片以及糾錯(cuò)比特位數(shù),,測(cè)試了不同情況下指紋識(shí)別可靠性,如表1所示,。
表1 不同配置情況下的指紋識(shí)別可靠性
在實(shí)際應(yīng)用中,,可以根據(jù)不同的應(yīng)用場(chǎng)景來(lái)選擇不同的參數(shù),以滿足不同的識(shí)別可靠性要求,。
文獻(xiàn)[15]中指紋的識(shí)別率和誤識(shí)率分別是73.32%和0.23%,。文獻(xiàn)[16]中指紋識(shí)別率在86.712%時(shí),誤識(shí)率為0.106%,;識(shí)別率在90.804%時(shí),,誤識(shí)率為1.236%。本文提出方案在識(shí)別可靠性上有所提高,,同時(shí)本方法與基于幅度譜和相位譜構(gòu)建模糊承諾方案相比原理上更加簡(jiǎn)單,,在保證識(shí)別可靠性的前提下,降低了計(jì)算復(fù)雜度,。
綜上所述,,本方案具有以下特點(diǎn):
(1)用于身份識(shí)別的指紋特征信息通過(guò)安全散列算法計(jì)算散列值,,這個(gè)過(guò)程是不可逆的,,所以攻擊者無(wú)法恢復(fù)原始指紋細(xì)節(jié)點(diǎn)信息;
?。?)當(dāng)同一指紋特征用于多個(gè)設(shè)備或軟件中時(shí),,通過(guò)配置不同的安全散列算法密鑰(如硬件ID,口令,,隨機(jī)變量等),,可以生成不同的散列值,當(dāng)同一生物特征信息應(yīng)用于多個(gè)信息系統(tǒng)時(shí),,一個(gè)系統(tǒng)中的生物特征信息泄露不會(huì)影響其他系統(tǒng)的安全,。
04
結(jié) 語(yǔ)
本文提出的指紋生物特征信息隱私保護(hù)和認(rèn)證方法以一種較為簡(jiǎn)便的方式實(shí)現(xiàn)了指紋特征信息的隱私保護(hù),同時(shí)也具備較好的指紋識(shí)別可靠性,。本文提出的方法可以直接利用現(xiàn)有成熟指紋識(shí)別技術(shù)提取的指紋特征,,如符合國(guó)家二代居民身份證指紋采集和比對(duì)技術(shù)規(guī)范的指紋特征,且可以在兼容的情況下,,將該技術(shù)推廣到已有的指紋識(shí)別系統(tǒng)中,。