隨著外接式媒體在消費性產品中的應用激增,資料儲存的安全性也就變得更加重要。新產品必須具備保密防護功能,防止機密資訊遭到竊取。
生物辨識(biometric)保密功能即為一項經濟實惠的解決方案,它不會為使用者在操作和使用上帶來困擾,例如不需要特別的密碼或額外的登錄步驟。生物辨識保密功能包括指紋感測、視網膜與虹膜掃瞄、簽名筆跡分析以及掌紋辨識等。以指紋感測為例,使用者只需簡單的手指印模就可以完成使用者認證,取得可攜式儲存裝置中的資料。
本文將針對USB高容量儲存(mass storage)裝置上的指紋保密功能,簡單說明設計程序的各個步驟。
身份辨識與保密關鍵
身份辨識的方法眾多,從密碼的使用、辨識裝置(dongle)到生物辨識都有。今天大家會發現做甚麼事情都需要密碼,而為了記住密碼,往往又將密碼記在某個地方,以保密的角度而言,這種作法無疑是違背了保密的原意。保密辨識裝置的製造成本偏高,而且容易產生辨識誤差的情況。然而,生物辨識應用則不用密碼,僅需要較便宜的簡單硬體,且指紋這種特徵是永遠不會遺失的。
有許多方法可以防止未經認證使用者對資料之存取以保護資料的安全,這些方法包括加密(encryption)、磁碟管理(drive manipulation)或其他方式。加密可分為軟體與硬體兩種方式。硬體加密會增加成本,也會讓產品的尺寸變大;而軟體加密則會在使用容量大的磁碟時速度變得較慢。磁碟管理的作法是鎖定磁碟中的硬體來防止未經認證之使用者對資料進行存取。現在新式的硬碟具備的ATA Security即為其中一種鎖定的機制,這種設計中有一組32位元的密碼傳送到磁碟電路中,讓磁碟進入「安全」模式。當系統開機後,磁碟就會處於鎖定狀態,一直到輸入正確密碼後,鎖定狀態才會被解除。由於只有磁碟內的微處理器知道密碼,因此該磁碟機如果裝在未受保護的系統則無法被讀取。
感測器類型
感測器的類型會因不同的資料和USB傳輸方式不同而有所差異。有些感測器解決方案需要在個人電腦上進行影像處理,而有些解決方案則運用協同處理器(co-processor)來處理影像資料。不同的感測器也會採用不同的USB介面將資料回傳至電腦中;這些介面包括印表機群組、大量儲存裝置群組以及人機介面裝置群組。這三個介面各有優缺點,但它們共同的好處是僅需Windows本身的驅動程式即可,不必另外安裝。
就硬體而言,其介面從SPI到並列式匯流排(Parallel bus)等許多種類,而介面的種類和速度則與影像處理的方法有關。內建協同處理器的感測器僅需每秒數百Kb的速度,若是運用PC來處理影像的感測器則需高達每秒6.5Mb的傳輸速率。這裡提到的感測器可支援SPI或是並列式匯流排等不同的介面。
系統需求
外接式儲存裝置一般會包含2.5吋或更小的硬碟、磁碟機外殼、電源供應器、以及一組USB對ATA的轉接器。這種組合的解決方案可以作高度模組化的設計,因此要外加一個指紋感測器並非難事。這項設計所用的USB對ATA轉接器就是Cypress EZ-USB FX2-LP。在下一節中將詳細介紹Authentec AEES2510外接裝置,這是一組滑動式的指紋感測器,可外接於既有的USB高容量儲存裝置上。AES2510並不具備協同處理器,因此它與USB控制器之間的介面需支援每秒6.5MB的資料傳輸速率,讓手指在按壓感測器時所產生的資料能用同樣速率傳送。由於FX2-LP支援與UDMA-100相同的傳送速率,因此感測資料傳輸不是問題。此外,由於影像處理是由PC完成,因此很多時候USB控制器需要在ATA與指紋感測器介面之間來回地作快速的切換。這項功能可藉由修改FX2-LP的介面就能夠達成。(圖一)為USB對ATA轉接器與附加的指紋感測器之區塊圖。
《圖一 USB對ATA轉接器與附加的指紋感測器之區塊圖》 |
|
裝置實作
針對這個設計,感測器介面上會加上一組運用Cypress EZ-USB FX2-LP的標準USB對ATA轉接器參考設計。而FX2-LP包含一個USB 2.0序列式介面引擎(Serial Interface Engine;SIE)、一個增強型8051微處理器、以及一組通用型介面(General Purpose Interface;GPIF)。其中GPIF是一個狀態控制器(state-machine)架構的介面,其資料傳輸速率可高達每秒96 MB。GPIF可支援ATA、NAND、Utopia、EPP以及Compact Flash等各種介面。由於GPIF是一個以RAM為基礎的狀態控制器,因此多重控制波形之組合都能進行裡外複製作業,讓GPIF可透過韌體的控制成為可重組式(reconfigurable)的介面。由於GPIF直接與FX2-LP的USB FIFOs相連接,因此不需要透過韌體在感測器資料流上作任何資料處理作業。
在這個設計中,GPIF波形會包含PIO讀取與寫入及ATA介面所用的UDMA 讀取與寫入。本設計中也會加入讀取與寫入指紋感測器所用的波形。控制硬碟的韌體則來自於CY4611高容量儲存參考設計。至於指紋感測器所用的韌體則是參照感測器製造商所提供的程式碼。
AES2510可選擇SPI或並列式匯流排的介面。由於現有的硬體已經採用並列式介面,因此選擇支援並列式介面的AES2510。I/O的需求包括一組8位元的資料匯流排,加上六個控制— RD、WR、CS、A0、INT以及PWR_CTRL。如果小心設定晶片指定的感測器與ATA匯流排的輸入時,就可以共用ATA匯流排中較低的位元組作為資料傳輸之用途。另外,還可以利用FX2-LP的Port C作為控制與狀態方面的用途。
感測器與應用軟體之間的通訊是透過SCSI Pass Thru介面達成,這是一個Windows高容量儲存驅動程式(Windows Mass Storage Driver)的延伸軟體。藉由SCSI Pass Thru,感測器就可以使用一般高容量儲存裝置所用的USB介面,因此裝置不需要額外的驅動程式。
當感測器接收到Pass Thru的指令時,感測器程式庫(sensor library)中的韌體就會進行指令作業。韌體首先會覆寫GPIF波形記憶體,用感測器波形取代ATA波形。接著韌體就會依照Pass Thru的指令動作,執行對感測器的讀取與寫入作業。當Pass Thru指令週期完成時,ATA波形則又會被複製回GPIF記憶體中。
使用者介面
典型具備保密功能的磁碟會包含三個分割區,其中一個有生物辨識應用軟體。這個分割區通常會模擬成CD-ROM,其原因有二:
- ●在Windows環境中,CD-ROM比磁碟機有更好的自動執行(AutoRun)反應;
- ●CD-ROM具備防寫入保護,因此生物辨識應用軟體不會被意外刪除。
另外兩個分割區中的一個是用作非保密性的儲存區。使用者可以任意存取裡面的資料。最後一個分割區中的資料則會受到保護。若一開始沒有透過指紋確認其擁有權,就無法存取其中的資料。
當磁碟機啟動時,生物辨識應用程式就會從模擬成CD-ROM的分割區中自動執行。該應用程式接著會處理經由Pass Thru介面傳入的指紋影像資料,進行使用者登錄與確認的動作。其中確認的動作是根據使用者按壓指紋印與原指紋影像紀錄的比對。一旦使用者身份經確認後,保密的磁區就會被「解鎖」,使用者就可以取得其中的資料。若該磁碟的USB連線中斷或電源中斷時,該使用者就無法繼續從這個保護磁區中存取資料。
結語
本文描述了USB高容量儲存裝置上附加的生物辨識保密防護設計。Cypress EZ-USB FX2-LP的彈性化特質與可設定式的介面連接埠,讓這個設計的建置作業更加容易。也由於FX2-LP的高度彈性,因此要新增生物辨識功能也變得極其簡單。再加上一些專利設計的韌體,就能夠實現完整的磁碟機資料安全保護。
(作者為Cypress Semiconductor柏士半導體消費性產品與運算部門應用工程師)