《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 解決方案 > 如何將Android帶入互聯(lián)網(wǎng)數(shù)字家庭? 終極篇

如何將Android帶入互聯(lián)網(wǎng)數(shù)字家庭? 終極篇

2011-08-09
作者:章立 ARM家庭軟件架構(gòu)師

在第一篇中,,我們分享了數(shù)字家庭軟件平臺的發(fā)展趨勢和特點(diǎn),;
在第二篇中,,我們歸納了將Android移植到電視、機(jī)頂盒平臺需要面對的五大技術(shù)挑戰(zhàn)并重點(diǎn)探討了挑戰(zhàn)1 : 符合電視體驗(yàn)的2D/3D圖形性能和用戶交互模式方面的挑戰(zhàn),。

在第三篇中, 我們探討了更多的挑戰(zhàn),, 包括“適合大屏的豐富多媒體影音體驗(yàn)”,,“如何集成數(shù)字電視相關(guān)功能”, “如何推動應(yīng)用開發(fā)者開發(fā)適合于TV的Android應(yīng)用”,;
在本篇中,,我們將一起來關(guān)注在內(nèi)容保護(hù)/系統(tǒng)安全方面的挑戰(zhàn)以及Android TV和GoogleTV的一些簡單對比。

  • 挑戰(zhàn) 5 : 如何部署內(nèi)容保護(hù):
    • 如何部署CA?
    • 如何部署DRM,?


在第三篇中,,我們已經(jīng)談過對CA模塊的集成;由于CA模塊由各個(gè)CA公司嚴(yán)格控制,,而且CA模塊的系統(tǒng)集成由CA公司主導(dǎo),;因此技術(shù)上沒有太多挑戰(zhàn),;更多的挑戰(zhàn)在于如何將CA相關(guān)的API標(biāo)準(zhǔn)化。 相對與CA,, DRM在Android上走的更遠(yuǎn)一點(diǎn),, Android 3.0增加了DRM相關(guān)的API。 圖一表述了Android3.0是如何實(shí)現(xiàn)DRM API的,。
 

 Android 3.0 實(shí)現(xiàn)DRM

圖一 Android 3.0 實(shí)現(xiàn)DRM



從上圖可以看出,, Android3.0實(shí)現(xiàn)了一套Java Level的DRM API, 同時(shí)也實(shí)現(xiàn)了一個(gè)C/C++ level的DRM Manager,。各個(gè)具體DRM策略的實(shí)現(xiàn)則是以Plug In的方式link到DRM Manager,。 具體的DRM Plug In由各個(gè)系統(tǒng)廠商根據(jù)實(shí)際需要來實(shí)現(xiàn);而應(yīng)用開發(fā)者則可以根據(jù)標(biāo)準(zhǔn)化的DRM API來開發(fā)相關(guān)的應(yīng)用,。

在實(shí)現(xiàn)DRM的過程中,, ARM架構(gòu)級的安全技術(shù)TrustZone可以從硬件架構(gòu)層面加固DRM的安全性。 那么什么是TrustZone呢,? 簡單點(diǎn)講TrustZone是系統(tǒng)架構(gòu)級別的安全技術(shù),, 它將整個(gè)SoC虛擬成“普通世界(Normal World)”和“安全世界(Security World)”兩個(gè)模式。在“安全世界模式”下,,系統(tǒng)可以訪問所有的資源,,包括配置為“安全”和“非安全”的數(shù)據(jù)存儲/內(nèi)存/外設(shè)等;而在普通世界模式下只能訪問配置為“非安全”的資源,。圖二表述了TrustZone的架構(gòu),。
 


圖二 TrustZone技術(shù)


從上圖中,我們可以看到通用的操作系統(tǒng),,比如Android,、Ubuntu、ChromeOS,、Windows,,Symbian等等都運(yùn)行在“普通世界”,而需要安全加密的服務(wù)則運(yùn)行在“安全世界”,, 包括加密用的根密鑰都儲存在“安全世界”,。“普通世界”運(yùn)行的軟件無法訪問“安全世界”的資源,包括被配置為“安全”的數(shù)據(jù)存儲/內(nèi)存/外設(shè)的設(shè)備,。圖三從系統(tǒng)架構(gòu)的角度描述TrustZone是如何工作的,。
 

TrustZone的系統(tǒng)架構(gòu)

圖三 TrustZone的系統(tǒng)架構(gòu)


從圖三,我們可以看出系統(tǒng)中的設(shè)備被分為“普通(Normal)”,, “安全(Secure)”,, “可配置(Switchable)”三類。因此, TrustZone從系統(tǒng)級別阻斷了“普通世界”對“安全”資源的訪問,,從根本上增強(qiáng)了系統(tǒng)的安全性,。一個(gè)很典型的例子是:在我們現(xiàn)在的智能手機(jī)上,通過觸摸屏輸入密碼,,無論運(yùn)用什么加密方式來傳遞這個(gè)密碼,,這些數(shù)據(jù)始終是在手機(jī)操作系統(tǒng)中流動,依舊有被hack的危險(xiǎn),。而如果使用TrustZone技術(shù),,則可將LCD Controller設(shè)置為“可配置”,當(dāng)用戶需要輸入密碼的時(shí)候,,可將LCD Controller設(shè)置為“安全”,, 這樣手機(jī)操作系統(tǒng)就無法訪問該設(shè)備,而所有的數(shù)據(jù)流會直接進(jìn)入“安全世界”,;當(dāng)用戶輸入密碼結(jié)束,,再將LCD Controller切回“普通”,這樣手機(jī)操作系統(tǒng)又可以正常使用它,。
具體到如何將TrustZone技術(shù)應(yīng)用到DRM,, 圖四給出了一個(gè)用TrustZone來加密DRM的流程圖,。


圖四 利用TrustZone加密DRM



到這里,,我們已經(jīng)討論完了將Android帶入互聯(lián)網(wǎng)數(shù)字家庭的五大挑戰(zhàn);下面我們來看看Android TV 和 GoogleTV之間的一些對比,。

事實(shí)上,, ARM的合作伙伴有三個(gè)方式部署以Android為base的智能電視:

第一,直接與Google合作通過license GoogleTV,, 成為GoogleTV的leading partner,;

第二,等待Google開源GoogleTV項(xiàng)目,;

第三,,將已經(jīng)開源的Android版本定制移植到電視平臺(我的這四篇博文都圍繞著這個(gè)選項(xiàng)進(jìn)行)。

那么,, GoogleTV和Android TV有什么區(qū)別呢,?

眾所周知, GoogleTV是以Android為Base,。第一代GoogleTV(也就是所

謂GoogleTV 1.0)是以Android2.1為base,;而第二代GoogleTV(GoogleTV 2.0)則將Android base的版本更新到3.1。根據(jù)Android最新的路線圖,,Google將在Ice Cream Sandwich中形成一個(gè)適用于電話,,平板,電視三類產(chǎn)品的統(tǒng)一的版本,。

GoogleTV 1.0去年已經(jīng)上市,, GoogleTV 1.0的軟件架構(gòu)是以雙系統(tǒng)架構(gòu)為基礎(chǔ):GoogleTV Android系統(tǒng) + DTV系統(tǒng),。 DTV系統(tǒng)由電視系統(tǒng)廠商來開發(fā),一般會選擇重用已有的DTV系統(tǒng),; GoogleTV系統(tǒng)部分則主要關(guān)注WebTV的功能上,,同時(shí)也增加了和DTV系統(tǒng)通訊的控制模塊。

GoogleTV雖然是以Android為基礎(chǔ),,但是Google對此做了大量針對電視應(yīng)用的修改和優(yōu)化,,包括瀏覽器升級為Chrome,提升2D/3D Graphic的性能,,改進(jìn)多媒體框架(支持Dual View),優(yōu)化Flash Plug in,,新的Home Screen 和 UI Layout等等。但是由于雙系統(tǒng)的設(shè)計(jì),,GoogleTV內(nèi)沒有實(shí)際DTV的功能模塊,,只有一些對DTV系統(tǒng)進(jìn)行控制的通訊模塊,包括對外部輸入的控制等等,。因此在GoogleTV演化成單系統(tǒng)之前,, GoogleTV的SDK中很難加入對DTV功能的API的支持。

GoogleTV的發(fā)展趨勢來看,, GoogleTV會向單系統(tǒng)方案進(jìn)化,。實(shí)際上,多家ARM的電視芯片合作伙伴已經(jīng)在和Google合作GoogleTV項(xiàng)目,,相關(guān)的產(chǎn)品會陸續(xù)上市,。另外, Google也有計(jì)劃逐步發(fā)布GoogleTV的開發(fā)工具,,包括GoogleTV SDK和NDK以及相關(guān)的CTS和CDD,。

另外,當(dāng)ARM的合作伙伴選擇自己定制移植Android到電視/機(jī)頂盒平臺時(shí),, 我們一般都建議他們從架構(gòu)層面考慮下面兩點(diǎn):

第一,,如何使得定制化的工作能夠適應(yīng)Android版本的快速變化?

第二,,當(dāng)GoogleTV開源后,,如何能快速的重用在Android TV上的工作?

當(dāng)考慮清楚上述兩個(gè)問題后,,可以減少Android TV開發(fā)過程的風(fēng)險(xiǎn),,

應(yīng)對Android版本的快速變化和GoogleTV的可能性開源!

最后,, 我想和大家分享的是,,今天,不斷涌現(xiàn)的新的互聯(lián)網(wǎng)設(shè)備,如智能手機(jī),,平板已經(jīng)讓人們花在電視前的時(shí)間越來越少,, 如果不重新定義電視,如果電視不走互聯(lián)化,,智能化之路,, 電視將沒有未來!在這個(gè)過程中,, Android的出現(xiàn)可以極大的加速數(shù)字家庭的互聯(lián)智能化的進(jìn)程,,使其迅速與其他智能設(shè)備在家庭中實(shí)現(xiàn)互通融合,實(shí)現(xiàn)真正的智能家庭?。ㄈ辏?nbsp;

章立(Leon Zhang) 是ARM的家庭軟件架構(gòu)師 ,,同時(shí)他也是ARM戰(zhàn)略軟件聯(lián)盟部門的一員. Leon 擁有多年產(chǎn)品開發(fā)和項(xiàng)目管理經(jīng)驗(yàn), 曾經(jīng)參與了數(shù)字錄像機(jī),、機(jī)頂盒,、數(shù)字電視,網(wǎng)絡(luò)電視以及智能電視(如GoogleTV)等產(chǎn)品的開發(fā),。作為家庭軟件架構(gòu)師,,他專注于下一代互聯(lián)網(wǎng)智能電視及數(shù)字家庭的軟件架構(gòu). 而作為戰(zhàn)略軟件聯(lián)盟的成員,他致力于為ARM家庭應(yīng)用市場的合作伙伴建立強(qiáng)大的軟件生態(tài)系統(tǒng),。 Leon 碩士畢業(yè)于同濟(jì)大學(xué),。 他的工作地點(diǎn)在中國上海.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請及時(shí)通過電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。