指紋感測器和假指紋攻防技術 | 硬創公開課
雷鋒網按:我們在很早之前就有指紋傳感和採集的需求,但直到20世紀59年代電腦發明後才實現了指紋識別的可能性。到70年代,美國FBI開啟了一個專案,從而開啟了用指紋識別來進行一些身份認證的工作。從此,業界對指紋的傳感和如何攻破指紋系統的研究延續到現在。
指紋識別遭遇的攻擊手段層出不窮,假指紋就是其中之一。
為了防禦假指紋帶來的安全風險,去年有國內廠商專門推出了活體指紋識別技術,這種技術號稱可以通過指紋、手指皮膚顏色以及心率信號等生物特徵來驗證使用者的真實身份,以避免假指紋的攻擊。然而雷鋒網瞭解到,市面上所謂內置“活體指紋識別”技術的終端遭假指紋破解的事件也屢見不鮮,這一技術似乎也不可靠。
指紋的採集技術和感測器原理是指紋識別系統最基礎的部分,所以,要認清指紋識別的安全問題必然繞不過這兩部分。那麼活體指紋識別遭破解背後究竟有什麼秘密呢?
為此,雷鋒網邀請了邁瑞微電子創始人李揚淵為大家分享《指紋感測器原理和假指紋攻防技術》。
嘉賓介紹
李揚淵,蘇州邁瑞微電子創始人;指紋識別領域唯一貫通演算法、感測器、IC設計的從業者;密碼晶片領域最早的開發者之一;基於李揚淵所發明的“C-Q-T”電路,僅成立3周年的蘇州邁瑞微電子已成為中國大陸電容式指紋感測器出貨量第二名的供應商。
以下內容整理自本期公開課:
我們在很早之前就有指紋傳感和採集的需求,但直到20世紀50年代電腦發明後才實現了指紋識別的可能性。到70年代,美國FBI開啟了一個專案,從而開啟了用指紋識別來進行一些身份認證的工作。從此,業界對指紋的傳感和如何攻破指紋系統的研究延續到現在。
“活體指紋識別”靠譜嗎?
去年2月的MWC上,國內某公司號稱發佈了全球首個活體指紋檢測技術,2017年該公司得到了CES全球創新金獎,在這期間有三個著名的廠商應用了其活體指紋識別,並對外宣稱可以避免假指紋的攻擊。
MWC2016: XX科技發佈全球首個活體指紋檢測技術,2016.02
黑科技 XX天機X XXX支援活體指紋識別 ,2016.10
XX“真”旗艦 除了8890晶片還有活體指紋 ,2016.12
XX科技榮獲2017年CES全球創新金獎 活體指紋檢測識別方案引領生物識別科技創新 ,2017.01
XX M2017活體指紋體驗 假指紋無處遁形 ,2017.01
然而,前不久有網友曝出一段
視頻
,視頻演示了假指紋是否能破解活體指紋識別的測試,結果如下:
1.未註冊的裸手制和理論結果一樣不能解鎖;
2.使用隱形指紋膜可以解鎖;
3.傳統指紋膜和理論結果一樣不能解鎖。
總結來說,活體檢測的可靠性隨技術方法的提升而提高,現在被破解的是最低級的早已被淘汰的技術。
假指紋“黑產”
指紋識別最早應用在公安、海關等領域,所以假指紋的研究起初是一種間諜級別的行為。用矽膠等材料制作假指紋來欺騙感測器是從指紋識別的應用開始就存在的一種方式。
假指紋黑產一直是指紋識別技術的副產品, “隱形指紋膜”不是新技術,只是因為以前沒有需求才沒有作為產品推出。而在中國,嚴格來講還沒有形成黑產業,一般只用作欺騙考勤機。
活體指紋是什麼?
活體指紋識別是一個很寬泛的名詞,他本身不是一個很嚴格的技術定義。去年,我在雷鋒網發佈了一篇文章
《iPhone SE發佈了,並沒有“活體指紋識別什麼事”》
,這篇文章裡面引用了中國智慧財產權局的定義,定義的內容包括哪些東西可以歸納到活體檢測的門類,具體有以下幾點:
第一類是生理特徵信號,例如體溫、皮膚表面的電阻特性、排汗過程、表情的變化、眼部動作、瞳孔大小變化等;
第二類是光譜學資訊,該項技術主要針對列印圖像形成的規律的紙質紋理特性,利用頻譜特徵進行檢測;
第三類是通過人機互動的形式,通過檢測預期的運動來對生物特徵的活體特性進行驗證;
第四類是多模態的生物特徵識別,在認證系統中採用兩種以上的生物特徵識別技術方式,提高偽造樣本的難度。
這是一套檢測規則,如果做了其中一種就可以叫活體。但需要注意的是,活體並不代表最新的先進技術,它可能是已經不具備安全性的過時技術。
破解的原理
上文提到的活體指紋被破解的例子中,其手機用的技術其實就是蘋果擁有卻沒有應用的專利技術(專利US 8180120 B2的技術):
電容採集指紋成像;
紅外光反射率檢測(先發射,再檢測它的反射光,反射光的強度在一定範圍內的時候就認為其反射率和預期的差不多)。
但是,該方案智慧防禦傳統黑色材料的假指紋,並不能防住半透明材料的假指紋,這種假指紋具備以下兩個特性:
導電性,電容成像的可能性;
半透明,可以讓紅外光透過假指紋由真手指反射,所以能欺騙檢測系統。
指紋感測器
指紋是空間的特徵,它並不是具體的物理量,所以指紋的採集是一種很開放的技術領域。
感測器可以分為物理感測器、化學感測器、生物感測器,指紋感測器是第一種,除了磁感測器外,光、電、力、聲、熱這五類物理感測器都可以採集指紋。
光學
1.基於全反射的效應,這是最經典的一種:
當光源在全反射角以上,就是光源側著照進去時,光線會側著反射出去,在反射光的角度用鏡頭拍攝,就能拍到很亮的背景,如果指紋在棱鏡表面光源照亮的區域接觸,那麼指紋凸出的部分(脊線)和棱鏡接觸,凹下的部分(穀線)不會接觸,接觸部分因為全反射效應會有一個受抑制的情形(光線從脊線接觸的地方透射出去了),反射光的對應區域會變弱, 這時候會收到一個脊線暗、穀線亮的圖像;
當光源在全反射角一下(上圖不能實現這種情況,需要把棱鏡的直角削平,也就是變成梯形),光線從正下方射入,這時候光線大不會從棱鏡上透射出去,但是手指與棱鏡接觸的區域,光線會發生所有角度的散射,這時候就會出現脊線部分為亮,穀線為暗,這也可以形成指紋圖像。
這個例子解釋的是指紋感測器的物理效應是調製效應,一組物理量在空間上有分佈,而指紋只是通過某種方法影響了這種分佈,用感測器採集這個物理量的空間分佈來獲得指紋的圖像,這是所有指紋感測器所遵循的原理,具體差異只是選擇的物理量不同。
2.基於指內漫射光效應
這是由NEC公司原創的技術,它的原理如下:
當我們用手電筒對著手掌照射,整個手掌會亮起來,這是光線在手的肌肉皮膚傳播,這種傳播包含散射、折射,如果從指紋的方向射出來,會產生亮暗的差別,我們就可以從中提取出來;
與指靜脈採集使用同樣的原理不同的波長;
3.近距離面光源照射指紋,谷線陰影成像
最近iPhone 8要上光學指紋識別的消息被炒得沸沸揚揚,這實際上只是在炒冷飯。這種技術的原理甚至是工藝,早在1997年就發明了,之所以現在還能拿出來炒,是因為這個專利過期了。
這種方法的原理就是,當有一個面型的光源離手指比較近的時候,脊線就會擋住穀線。如果遠距離的光線照進去,必須要有角度,某些角度看得見,某些角度看不見;但是近距離對於手指的任意一個點都相當於從差異很大的方向光線彙聚過來進行照明,所以有充分的條件使得脊線把穀線擋住。
但是這種圖像很弱,對於指紋淺的人來說,就很難識別。
4.空氣排斥成像
在玻璃板上放置啞光柔性薄膜,指紋壓迫薄膜時把脊線下方空氣排出,在另一面形成不同的反射率。可以說,在所有光學指紋識別感測器裡面,這種圖像是最清晰的,不過目前只有臺灣一家公司在做小批量的生產。
電學
1.直接電容式
這是最早的電學感測器,是在1980年由西門子提出,也就是把指紋看做電極,對面放上一整片電極,凸起的地方距離小電容大,而凹下的地方電容更小,測出這部分電容就能得到指紋的分佈。不過,在使用中,這種方法不耐用。
按照FBI的標準,指紋的圖元密度是50微米一個圖元,作為電容,那麼電極之間的距離要遠小於50微米,以5微米為例,隨便一根牙籤就能戳壞。所以早期的電容感測器很容易損壞,要提高指紋到電極之間的距離,就需要有中間介質進行保護,也就是後面的電場式。
2.電場式
這種方法在1997年首次提出,傳感電極距離指紋距離遠大於傳感點擊尺寸時,就不能堪稱電容,而必須以電場密度差(指紋的凸起和凹陷)為測量目標,因為電極是平的,所這個密度差體現的就是指紋的圖像,蘋果收購的AuthenTec就是採用的是這種原理。
3.生物射頻、微波
這兩種都是無關原理的命名。
力學
力學一般有兩種原理,但都不結實,為什麼這麼說呢?
要傳遞細微力的差異,必然不結實,但反過來,如果要在厚厚的鋼板上按壓,力就沒辦法傳遞。目前解決了這個矛盾的只有蘋果,這也是為什麼蘋果能推出3D Touch的原因。
1.壓阻效應
通過壓力改變電阻大小;
2.壓容效應
通過壓力改變電容大小。
聲學
也就是採用壓電互換效應:
壓電換能器件又稱為超聲波換能器,把壓力和電壓進行互換;
超聲波感測器的命名是因為其使用了超聲波換能器,但並不像常見的超聲波感測器那樣向空氣中發射超聲波再接收回波;
流傳的各種超聲波指紋感測器的超能力,都基於對其定義的誤解,有點類似生物射頻、微波這樣的假技術名詞。
但是超聲波指紋識別感測器並不是傳統意義上的超聲波感測器,它是一個固體類的振動阻抗感測器。例如小米5S的指紋識別感測器,它會自己發生振動,手貼在指紋識別的區域就會產生阻抗,會減弱振動,接觸的地方(脊線)振動減弱會大一些,這寫振動的變化會影響到下面的感測器,然後轉換為電信號最後形成圖像。
熱學
採用熱傳導效應:
熱學感測器最早退出了市場,因為當熱傳導達到平衡,指紋感測器就失去能力;所以熱學指紋感測器曾經以滑動式存在過,卻一直難以實現按壓式。
這也在一定程度上證明了一點,試圖超越數學、物理來實現一項技術的能力,完全是緣木求魚。
總結來說,聲學和熱學一樣因為物理上的缺陷而被淘汰,力學也因為上述原因不可用,電學是主流,光學是很複雜,取決於是否適合產品。
假指紋攻擊原理
假指紋的定義
系統層面,假指紋攻擊有三個等級:
rank1,已知指紋實體複製的假指紋;
rank2,根據指紋特徵還原出的假指紋;
rank3,不基於具體指紋特徵製作的“萬能指紋”。
需要注意的是,在傳感段不關心演算法怎麼判斷,而是感測器怎麼判斷是否是生物體的指紋。
感測器防假一般與判定是否生物體等價:
基於生物指紋不重複的假定;
“活體”不是一種可傳感的物理量;
上文提到,指紋感測器都是物理感測器,而任何物倆量都可以被仿冒,區別只是成本高低。
低級假指紋
平面列印指紋圖案可欺騙光學感測器:
列印設備非常普及,不可管控;
東亞地區有按指印的文化習俗,通過指印來獲取電子化指紋資料只需要一台掃描器;
把日常留在物體表面的指紋進行顯影和拍照,是公安部門應用了近百年的技術,相當普及;
類似的,由於定制美瞳作為一種商業活動的存在,從照片中摳圖並基於之定制美瞳來攻擊虹膜識別系統,也是一種低成本攻擊。
中級假指紋
立體指紋可欺騙電、力、聲、熱感測器,難度比低級假指紋要高:
立體指紋可以由3D列印、鐳射雕刻獲得,這樣的設備相對稀缺,操作技能要求高;
立體指紋還可由生物指紋經2次倒膜獲得,這相當於要求指紋主人“攻擊”自己;
當感測器類型不同,假指紋所用的材料需要有所差別,電學感測器需要(弱)導電材料,力學聲學使用一般材料,熱學則要求人體體溫。
高級假指紋
在化學特性或細微結構特性上非常接近真指紋的假指紋:
由於歷史上在指紋識別領域並未普及應用過化學傳感方法,所以如果開發出化學型指紋感測器,一段時間內還沒有對應的造假方法;
細微結構,如汗腺、皮脂腺、皮膚層次等接近真指紋,需要非常高的製造技術。
如何防禦假指紋
安全價值
安全技術成本不是安全技術價值的度量標準,破解成本才是:
防守方必須防禦所有可能的攻擊,這形成了安全技術的成本;
攻擊方只要尋找到一個突破口,所有破解方法中成本最低者決定了攻擊成本,攻擊成本低安全環境就差;
使攻擊者因為成本太高而放棄攻擊是安全技術唯一價值;
多傳感技術
各種生理特徵都需要轉換為具體物理量,導致從物理破解角度,這些檢測辦法都沒什麼用:
參考中級假指紋,立體指紋通吃各種傳感技術,即使5類傳感技術全部用上也增加不了安全性;
如把電和光結合的例子,被某寶破解的結局說明,結合弱安全和中安全,結果還是中安全,沒有任何提高;
傳統指紋膜成本0.05rmb,隱形指紋膜0.016rmb,所以起不到阻止攻擊的作用。
另外,有個原則是安全性和安全成本的比例要在10以上。
紅外多光譜技術
通過紅外反射譜掃描可以判定真假手指:
紅外光譜可以用於分析物質,符合人體光譜的可判定為真手指;
這種技術雖然靠譜,但是成本高(一套5000元左右),只能在海關一類場合應用。
紅外斷層掃描技術
紅外斷層掃描(OCT)通過紅外干涉鐳射對皮下結構進行um級斷層成像,這是一種更高級的做法:
能獲取3D皮膚組織結構,包括汗孔、汗腺、微細血管,神經末梢;
成本極高(光傳感部分就是6萬美元,整套系統30萬美元以上),速度極慢。
這種技術的安全性和安全成本的比例在100以上。
保護好指紋資訊
平面假指紋到立體假指紋之間的技術鴻溝才是主要防禦假指紋的壁壘:
不要自造立體指紋,更絕不可以交給協力廠商使用,以免被複製;
手機丟失要迅速鎖定,你的手機可能自帶指紋印,但輾轉到技術高手手中並製造出立體假指紋來尚需時間。
總結
我們沒必要在假指紋攻破指紋識別系統這件事上太過擔憂,關鍵是自己不要參與制作假指紋的製造,保護好自己的指紋。
精彩問答
Q:看到有些活體指紋識別方案是把多個感測器集成在一起,對此您怎麼看?這是目前業界普遍的做法?
A:把難度不同的集成到一起,難度等於原本最大那個。全球充分研究40多年的攻防,不止針對指紋,而是針對各類物理感測器。要提高防禦能力必須用先進技術,不可能靠幾毛錢打到好效果。
實際上當有人提出用光學來加強電感測器的放假能力時,我就已經很雷了。公認的強技術居然可以靠公認的弱技術來提高,這得多業餘啊。業界的普遍看法是,不必操心,守住3d立體指紋的製作難度即可,千萬別自己製作複製指紋送人!
Q:剛聽您講的內容,現在好像沒有很好的防禦假指紋攻擊的辦法啊,現在上游廠商研究的方向是什麼?
A:多光譜,oct都是目前能確實防得住的技術,但成本等限制了應用場合。從日常生活應用來看,要注意幾點:
1、堅決淘汰光學指紋感測器,畢竟靠列印指紋圖案就能欺騙的東西
2、攻防相長,要持續提高防禦技術,這分幾個角度
2.1、把驗證做得更複雜,但導致不方便
2.2結合更豐富的安全手段,切實提高攻擊者的成本和風險
3、絕對安全是假像,相對安全才是唯一可量化的
生物識別其實是不太靠譜的安全方式,但考慮到經典資訊安全領域只能做到設備到設備,沒有認證人的辦法,也就聊勝於無了。
Q:那活體指紋識別方案對設備安全到底有沒有意義?
A:活體指紋識別是一個大類,在海關用多光譜來驗活就有意義,但用一些沒有效果的做法套上活體的名詞,就涉嫌欺詐。指紋識別到目前為止其實還是一個模式識別技術,還沒有正式進入資訊安全技術的範疇,還有不少需要研究的。
我舉個最簡單的例子,安全性的量化,目前就做不到,目前業界有一些企業,把指紋感測器越做越小。我就想,你們乾脆縮小成一個點,當開關用好了,消費者畢竟還指望這玩意有點聊勝於無的安全性,總不能啥也沒有吧。
Q:指紋識別做到顯示幕上還有什麼難點?現在做到了什麼水準?
A:這有三個思路:
第一,on,就是做在tp裡
第二,in,做在screen裡
第三,under,做在screen下面
先說第一類,tp層,做指紋的話密度會很高,會導致光學差異,其次,穿透整塊2.5D玻璃超出了物理極限,所以整個設計要重來。如果單說做個透明指紋面板,倒不是什麼難度,難在各方面都達到工業量產。
再說第二類,技術上實現用光學方案問題不大,問題在於,screen損失近一半的亮度和解析度,價格還大大提高,你願意買單嗎?而且這種光學方案的圖像很弱,功耗又高,也就是說指紋喚醒等功能就別指望了。
第三類,under,這個最有欺騙性,但說句不好聽的,就憑3D touch都做不到量產的水準,under screen真的可行麼?結合工業可行性,還是刻意忽視,就是領先工業設計者和技術騙子的區別,一線之隔,遠隔天邊
under一重介質,良率就一塌糊塗了,還要連續穿透那麼多層那麼厚。