<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于嵌入式ARM平臺的可信計算軟件棧的設計與實(shí)現

基于嵌入式ARM平臺的可信計算軟件棧的設計與實(shí)現

作者: 時(shí)間:2013-10-15 來(lái)源:網(wǎng)絡(luò ) 收藏
引言

隨著(zhù)計算機應用的不斷發(fā)展,安全威脅問(wèn)題越來(lái)越嚴重,傳統的單純依靠軟件來(lái)抵抗安全威脅往往不能解決問(wèn)題??尚庞嬎愕幕舅枷胧菑男酒?、硬件結構和操作系統等方面制定安全規范保證計算機和網(wǎng)絡(luò )結構的安全??尚庞嬎闫脚_基于可信平臺模塊(TPM),以密碼算法技術(shù)作為基礎、作為核心,通過(guò)信任域的不斷擴展形成安全的平臺。

目前市場(chǎng)上的TPM芯片主要應用在PC終端上,但是隨著(zhù)嵌入式系統的不斷發(fā)展,TPM在嵌入式系統上的應用也越來(lái)越廣,程序員在編寫(xiě)可信計算應用程序的時(shí)候,其切入點(diǎn)應該是TSS,本文就TPM和TSS的概念、TSS在上的移植、調用TSS的API編寫(xiě)應用程序以及如何與TPM進(jìn)行交互做了詳細的介紹,最終實(shí)現了在嵌入式上的可信計算。

TPM芯片結構和TSS體系結構概述

可信計算的核心是TPM,它是一種安全加密芯片,提供了一種基于硬件的方法來(lái)管理用戶(hù)權限、網(wǎng)絡(luò )訪(fǎng)問(wèn)、數據保護等。TPM芯片用來(lái)存儲數字密鑰、認證和密碼,有了TPM不管是虛擬的還是物理的攻擊都將變得更加困難。如圖1所示,TPM芯片主要由以下幾部分組成:I/O組件、非易失性存儲、身份密鑰、程序代碼、隨機數產(chǎn)生器、Sha-1算法引擎、RSA密鑰產(chǎn)生、RSA引擎、Opt-In選擇組件、執行引擎。


圖1 TPM芯片結構

TPM芯片里的資源是有限的,它僅僅對外提供了一些基本的功能接口。為了充分應用TPM的內部功能,需要在TPM外部套接一個(gè)可信TSS,TSS作為可信計算平臺上TPM的支持軟件,其規范定義了一種能夠讓訪(fǎng)問(wèn)TPM變得簡(jiǎn)單和直接的體系結構。本文構建的嵌入式平臺為三星的ARM9TDMI-S3C2410處理器,TPM芯片為Atmel公司的AT97SC3204T。

由圖2可知,TSS的運行模式分為兩種:用戶(hù)模式和內核模式。用戶(hù)模式下,通常根據用戶(hù)的要求來(lái)加載和執行用戶(hù)應用程序和服務(wù),有時(shí)候這些用戶(hù)應用程序和服務(wù)也可以作為啟動(dòng)服務(wù)被載入。在內核模式下,通常運行設備驅動(dòng)和操作系統的核心組件。

圖2 TSS體系結構

TSS由三個(gè)邏輯組件構成:TCG設備驅動(dòng)程序庫(TCG Device Driver Library,TDDL)、TSS核心服務(wù)(TSS Core Services,TCS)、TCG服務(wù)提供者(TCG Service Provider,TSP)。

TDDL提供了一個(gè)與TPM設備驅動(dòng)程序進(jìn)行交互的API的庫,用來(lái)打開(kāi)和關(guān)閉TPM設備驅動(dòng)程序(TPM Device Driver)、發(fā)送和接收數據塊、查詢(xún)設備驅動(dòng)程序的屬性、取消已經(jīng)提交的TPM命令。TCS層主要用來(lái)管理TPM的資源,提供了一個(gè)TPM命令數據塊產(chǎn)生器和一個(gè)全局的密鑰存儲設備。TSP層通過(guò)共享對象或動(dòng)態(tài)鏈接庫直接被應用程序調用。

TSS的工作流程如下:應用程序的命令參數通過(guò)接口TSPl發(fā)送到TSP,TSP通過(guò)處理后傳送給TCS,TCS將接收到的請求轉化為T(mén)PM能夠識別的字節流,通過(guò)TDDL和TDD傳給TPM,然后反向經(jīng)TDDL、TDD、TCS、TSP傳回應用程序。

TSS在A(yíng)RM上的移植

本文所使用的宿主機操作系統為Fedora,交叉編譯工具為arm-linux-gcc。

TSS在A(yíng)RM上的移植分為3部分:交叉編譯OpenSSL、交叉編譯TSS、制作包含TSS的文件系統。在交叉編譯TSS之前,先交叉編譯安裝OpenSSL,因為交叉編譯TSS的時(shí)候需要用到其中的libcrypto庫文件,其流程如圖3所示:

圖3 TSS在A(yíng)RM上的移植過(guò)程


上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>