長久以來無線市場的發展,一直存在著安全的疑慮。不論是企業或個人,無不千方百計希望透過各種防護措施,提高安全功能...
長久以來無線市場的發展,一直存在著安全的疑慮。不論是企業或個人,無不千方百計希望透過各種防護措施,提高安全功能。然而無線產業朝向更開放系統的趨勢,讓這個問題更加嚴重,因為這意謂著安全弱點將會增加。
直到最近,採用晶片內建或硬體層級為基礎的安全功能逐漸受到重視。因為它們會保護行動裝置,使其成為值得信賴的終端裝置。
產業觀察家正發出警訊,他們認為無線市場若要繼續成長,就必須將強大的安全功能往下,延伸到行動無線裝置的晶片層級。舉例來說,來自Giga和Gartner的報告就做了如下的斷言:
無線產業朝向更開放系統的趨勢讓此問題更嚴重。直到最近,行動電話或智慧手機之類的行動裝置,實際上都是封閉系統,手機製造商在工廠載入這些裝置的韌體,使用者除了儲存某些電話號碼外,幾乎沒有機會使用行動裝置的這些資源。現在,許多新型智慧手機、無線PDA和其它這類行動裝置,正成為新應用及服務的開放平台,例如下載Java軟體、串流視訊和圖片之類的多媒體內容、電子郵件訊息、遊戲軟體、和絃鈴聲和其它程式,它們把許多新的優點帶給行動通訊。
這種新出現的開放性對於服務供應商和行動裝置製造商產生極大鼓舞,因為它會帶動新的收費服務和行動裝置銷售。然而提高開放性也意味著安全弱點將會增加,新應用會為安全防護帶來新漏洞,例如連接網際網路的微瀏覽器 (microbrowser)、地區性應用所需的全球定位系統、即時簡訊和多媒體簡訊以及其它應用。另外,GSM/GPRS、藍芽和802.11無線區域網路等多種無線技術的整合也為駭客、病毒、身份竊賊和內容盜拷者帶來新的入侵途徑,進而讓裝置層級的安全問題變得更複雜。
安全產業的多數努力都集中於個人電腦和網路伺服器的軟體解決方案。不幸的是,為了在個人電腦或伺服器上執行而發展的安全軟體,都不易移植到使用電池的行動裝置,例如行動電話或無線PDA。個人電腦和伺服器在工作時幾乎沒有任何電力供應上的限制,行動裝置卻只能從小型電池取得有限的電源供應。另外,就算是最強大的行動裝置,也很難趕上最普通的桌上型電腦所提供的運算能力和儲存資源。
此外,就算是最簡單的個人電腦安全軟體,也會把行動裝置的運算和通訊資源運用到極致,這是因為安全軟體出於實際需要,必須執行非常龐大的計算量。加密演算法和其它安全程式是以隱晦難懂的數學為基礎,它們需要大量的處理能力和眾多的處理器時脈週期來執行,處理器的時脈週期數目則會直接影響功耗。對於個人電腦和伺服器,這並不是太大的問題,但在行動裝置上執行數個複雜的安全常式卻很快會對電池壽命造成負擔,或造成系統資源被這些安全常式獨佔,這會影響系統正在執行的其它重要即時作業,例如語音通訊,使得安全功能成為許多使用者討厭的東西。
因此製造商發現若想有效確保行動裝置的安全,所需的絕不只是把更多的安全軟體載入系統。事實上,額外的安全軟體或能提供更完善的保護,卻必須以自我挫敗做為代價。包含大量程式的安全軟體會將系統待命時間和操作時間減少至令人無法接受的程度,損及使用者對於行動裝置的感受。另外,安全功能還可能對行動裝置的反應性造成過度負擔,應用的處理能力也必然受到影響,甚至達到使用者無法忍受的程度,使他們決定關掉這些原本是設計來保護他們的安全程式。
當然,許多安全廠商已經精簡他們的系統,使其得以用於行動平台。但實際上,多數可行的行動裝置安全解決方案仍必須在硬體和軟體安全功能之間取得平衡互補。
直到最近,電腦和通訊系統內的多數安全系統只會在較高階的兩層提供保護功能:作業系統和應用層 (參考圖1)。高階作業系統和相關的中間軟體已透過軟體驗證、加密軟體程式庫以及驗證和通訊協定支援等功能來提供安全防護;至於在應用層,軟體廠商也發展了許多安全應用,例如加密技術、防毒保護、虛擬專用網路(VPN)用戶保護以及各種生物辨識應用,例如指紋感測器和臉孔辨識。
儘管作業系統和應用層已經提供豐富的安全功能,行動裝置仍需另一層的安全功能,才能獲得有效而高效率的安全保護。這個第三層是晶片內建或硬體層的安全功能,它會彌補上面各層的不足,使它們得以發揮作用,確保行動系統的所有安全功能都達到速度、低功耗和強大保護能力的目標。
在晶片層級,某些基礎性的安全功能可以嵌入至硬體,這不但為裝置、它的內容和它的作業提供更好的保護,使用者的滿意度和操作感受也會變得更好。事實上,它們可以將困難的安全演算法加速至一定程度,使得這些演算法在背景透明執行,使用者則能於此同時享受多媒體娛樂之類的其它應用。
將某些基本的安全演算法嵌入硬體,對於系統主機處理器的時脈需求就能減至最少,這能讓處理器釋出運算資源,用來執行其它應用,同時大幅減少功耗。此外,行動裝置也會更安全,因為嵌入硬體的安全功能,可以消除軟體安全功能無法適當防護的一個弱點。硬體與軟體合作保護行動裝置的系統資源、作業和儲存資料,同時提供完美而安全的使用者體驗,這是純軟體方式所無法做到的。
從行動系統的最底層開始-開機和快閃記憶體,作業系統的軟體完整性就是在其中進行維護-晶片內建或硬體為基礎的安全功能會往上延伸,遍及系統的所有更高階層,保護行動裝置的全部重要功能(圖2)。下列是部份的晶片內建安全功能,它們會保護行動裝置,使其成為「值得信任」的終端裝置。
快閃記憶體內容的安全載入需要許多機制,例如每當用到快閃記憶體載入程式時,都必須執行的載入程式完整性(integrity)檢查以及晶片內建的PKI 驗證功能,它們為裝置製造商和服務供應商的重要軟體提供保護,防止程式受到篡改破壞,因為只有製造商、服務供應商或取得授權的第三者,才能將「合法」程式載入快閃記憶體,或是改變產品在製造時就已儲存於其中的程式碼。
此外,行動裝置啟動時會執行許多內建的安全檢查功能,它們會確認裝置及它的軟體和資源未曾受到破壞或任何篡改。開機過程的開機載入程式完整性檢查和晶片內建PKI驗證功能可以確保系統啟動時,只會使用製造商或服務供應商所提供和認證的「合法」程式碼。往上到應用層,安全開機程序會限制只有「經過認可」的驅動程式才能提供給行動裝置的應用軟體使用,避免惡意驅動程式對系統造成影響。
一個安全的執行環境確保只有「受信任的」程式碼能在行動裝置上執行;同樣的,晶片內建的公共金鑰驗證程序會成為安全功能的基礎,在執行程式之前先行驗證這些程式碼的真實性。儲存於系統處理器之外的程式碼在執行前,則必須先解碼和驗證其真實性。安全的執行期間操作還包括其它層面,例如開機程式儲存區 (特別是通訊協定堆疊之類的重要軟體) 的寫入保護,共享記憶體的保護也很重要。製造商把行動裝置交給客戶前,也應先關掉系統的所有除錯程序,這能堵住安全執行環境的另一個潛在漏洞,防止駭客利用行動裝置的除錯功能竊取系統所儲存的機密或個人資料。
因此安全執行環境可以保護所儲存的重要資料,例如證件、密碼金鑰和信用卡資訊;它還能為各種應用提供防護,例如利用晶片內建的數位簽章和驗證功能來保護電子郵件,強固可靠的數位權利管理(DRM)技術可以防止互動遊戲或創作內被盜取,受保護的VPN以及SSL(Secure Sockets Layer)通訊則能避免軟體更新或其它企業機密資料在無線傳輸過程中被攔截竊取。
利用以硬體為基礎的加密引擎和安全功能加速器,就有可能在接近於無線區域網路的資料速率下進行即時加密和解密作業,這對於企業、SOHO和無線上網據點中數目日益增加的無線網路使用者很重要,無線網路環境的工作速度將不會因為安全解決方案而變慢,使用者仍能享受無線網路提供的最大資料速率。
亂數產生器是所有加密引擎的核心,它會產生秘密金鑰(session key),確保系統作業和通訊的各個層面都能獲得安全保護。利用硬體來實作亂數產生器,而不是以軟體為基礎的準亂數產生器,就能將真正的隨機數字提供給行動裝置,這種隨機性是可靠安全功能的先決條件;除此之外,硬體亂數產生器的執行速度比軟體為基礎的準亂數產生器還快,功耗則比它們更低。
包含DES、Triple DES、SHA-1以及MD-5在內,以業界標準為基礎的安全功能加速器可以內建至晶片層級硬體,加快安全功能的處理速度;事實上,相較於目前以軟體為基礎的方法,執行公開金鑰用戶身份認證和簽章工作的DSP最多可將處理速度提高2.5倍。
把高產出的對稱和雜湊(hashing)加速器內建至晶片,許多工作的執行速度就能加快,系統功耗則會降低,例如行動商務應用的瀏覽器資料異動SSL處理、檔案加密以及VPN應用的受保護傳輸通道(protected tunneling)。
把硬體為基礎且內建於晶片的各種安全功能組合在一起,例如安全的開機程式載入/快閃記憶體儲存、安全的程式執行和加密功能的加速(圖3),能為行動裝置創造出一個受保護的環境,進而為使用者、服務供應商和裝置製造商帶來信任感。這種「值得信任的終端裝置」可為加值且能創造營收的服務及應用提供安全基礎。毫無疑問的,未來還會出現許多新應用,它們需要由一個由應用軟體、作業系統以及晶片內建的裝置層級安全功能所組成的多層次方法來提供完整的安全防護。