Presentation is loading. Please wait.

Presentation is loading. Please wait.

2018/9/17 dcTPM: 一個對於動態內文管理的一般性架構 dcTPM: A Generic Architecture for Dynamic Context Management 林孟諭 Dept. of Electrical Engineering National Cheng Kung.

Similar presentations


Presentation on theme: "2018/9/17 dcTPM: 一個對於動態內文管理的一般性架構 dcTPM: A Generic Architecture for Dynamic Context Management 林孟諭 Dept. of Electrical Engineering National Cheng Kung."— Presentation transcript:

1 2018/9/17 dcTPM: 一個對於動態內文管理的一般性架構 dcTPM: A Generic Architecture for Dynamic Context Management 林孟諭 Dept. of Electrical Engineering National Cheng Kung University Tainan, Taiwan, R.O.C

2 大綱 摘要 介紹 一般的動態內文管理概念 初步 一般性架構的主要元件 建立、交換、刪除信任單元 DCTPM 架構規格 細部的dcTPM架構
內文權限協定 dcTPM - 命令 結論

3 摘要 隨著新科技的出現,對於信任平台(Trusted Platform)的需求也不斷的在改變。
如此,現在的信任平台模組(Trusted Platform Modules (TPMs))必須要處理一些在設計上沒有考量到的議題。 信任平台模組的其中一項不足的地方就是沒有能力在行動計算、虛擬化、以及雲端計算來支援多重stakeholder。 本論文提出了一個新穎的架構,稱為動態-內文TPM (dcTPM),可以來滿足每一個在多重stakeholder應用裡面的參與者的需求。

4 介紹 信任計算是一個新興科技,由信任計算團體(Trusted Computing Group (TCG))所發展與提倡,
信任計算在系統上提供了硬體式的安全給使用者加密的秘密。 在這方面它使用了一個加密模組,稱為信任平台模組(Trusted Platform Module (TPM)) 考慮一個行動平台情境,也就是裝置製造商、細胞式服務 提供商、應用服務提供商、還有使用者本身都作為不同的 stakeholder。 在這裡,行動平台的的功能就是去提供每一個應用的當前狀態的 一個可信任的證明給個別的stakeholder。 除了產生一個有信任價值的描述,行動平台還必須保證每一個 stakeholder資料的隔離性。 這個提出的dcTPM架構支援多個相互隔離的單元,稱為信 任單元(Trust Compartments),它可以是實體TPM(硬體)、 模擬的TPM(軟體)、或是兩者的結合。

5 一般的動態內文管理概念 動態內文管理的核心就是平行以及可以平行的提供唯一 stakeholder內文的相互隔離單元的多樣形式。
當一個stakeholder跟內文管理者溝通,這代表它正要存取 與一個獨立TPM相關的資料和資訊,與這個特定內文有關 聯。 一個關於動態內文管理的內文可以是一個記憶體位址,包 含對於執行的TPM功能的基本加密資訊, 舉例來說,在一個多個stakeholder情境中,主要關心的是在平台 上證明每一個stakeholder應用的狀態以及保護stakeholder資料。

6 初步 在這篇論文裡,我們使用內文(context)這名詞來談論提供 TPM相關功能給特定stakeholder的抽象概念。
信任單元(Trust Compartment)這名詞用來給一段特定的內 文的實體實現。 為了實現信任單元,我們使用了部分的重組技術,使得在FPGA上 分配時間讓硬體資源共同來使用。

7 一般性架構的主要元件 (1/2) 一般性架構包含了數個信任單元,
信任單元的存取和管理都是由動態內文管理器所控制,此外也提 供了一個介面通到主機PC。 運行在主機的程式透過認證以及發送命令來存取動態內文 管理者裡的資料,而這些動作都由現成的TPM所完成。 此外,為了遵循規格,信任單元包含了對於TPM命令執行 的加密引擎。 信任單元簡單概述如下。 FPGA IP-Core:這個種類是一種FPGA式的TPM 硬體實現,直接佈 署了加密引擎來當作硬體模組。加密內容的儲存是對應到不易揮 發的記憶體,此記憶體由動態內文管理器所管理。 Processor IP-Core:一個模擬軟體式的信任單元。因此,一個軟核 (softcore)處理器必須要配置,接著執行一或多個信任單元模擬器。 就像FPGA IP-Core一樣,加密內容是儲存到不易揮發的記憶體。 LPC & I2C Wrapper:這個種類提供介面來存取現有的ASIC TPMs。 根據實際的介面,需要選擇適當的組態。

8 一般性架構的主要元件 (2/2) 圖一、一般系統架構

9 建立、交換、刪除信任單元 Stakeholder詢問動態內文管理者來建立一個內文,接著引 導到信任單元單元的配置。
對於FPGA IP-Core和Processor IP-Core,改變信任單元是有 可能的 透過儲存相關的內文資料到不易揮發的儲存器中。 刪除內文基本上取決於信任單元的實現,可分為兩種不同 的方法。 這類型為一個現成的硬體TPM,那使用者可執行TPM_OwnerClear 命令,來移除儲存stakeholder 的TPM儲存stakeholder。 為了刪除由IP-Core、FPGA式或運行TPM模擬器的軟核處理器所實 現的類型,需要通知動態內文管理者要刪除的訊息,來釋放相關 的記憶體。

10 DCTPM 架構規格 對於動態替換信任單元,dcTPM必須根據stakeholder的需 求來支援一般性介面。
在一般電腦系統裡,TPM是附加在低接腳數(LPC)匯流排, 如TCG所做說明。 如此,一個實現dcTPM的Naïve方法可能要直接連接多個硬體TPM 到LPC匯流排上。 但為了簡化BIOS實現和系統的安全啟動,LPC匯流排給TPM的位址 只有0xFED40000。 如此,因為很明顯地位址衝突,不可能直接連接超過一個現成的 TPM到LPC匯流排。

11 細部的dcTPM架構 (1/4) 雛型實現利用FPGA來當作主要元件,可以提供介面給主機、 記憶體、周邊裝置還有個別的TPM。
FPGA具有軟核像是CPU、記憶體控制器、多種的I/O控制器還有LPC 匯流排控制器。 除了軟核,FPGA實現單一主機控制器給LPC匯流排,也就 是硬體TPM所連接的。周邊介面控制器提供主機PC端連結 給dcTPM。 dcTPM架構的核心元件是MicroBlaze軟核處理器,可以運 行uClinux作業系統。 n-TPM驅動用來連接兩個硬體TPM,透過個別的裝置節點 (像是/dev/tpm0 和 /dev/tpm1)

12 細部的dcTPM架構 (2/4) 圖二、細部的dcTPM架構

13 細部的dcTPM架構 (3/4) 對於周邊介面控制器的驅動提供了一個裝置節點式的,從 主機介面到使用者空間程式的連結,稱為dctpmd (dcTPM Daemon)。 Dctpmd會讀取由主機介面收到的資料,像是dcTPM命令, 解包裝它們到本地TPM命令,並將它們送到個別TPM單元。

14 細部的dcTPM架構 (4/4) MicroBlaze CPU運行uClinux作業系統。
為了執行多個軟體TPM單元在uClinux映像上,較大數量的 記憶體是必要的,也就解釋了表一中所見的,DDR2控制 器的高度資源利用。 網路介面用於兩個明顯的目的:一方面是發出命令,另一 方面是提供網路檔案系統。 表一、DCTPM雛型實現的資源利用

15 DCTPM:協定和命令 這項工作的主要焦點在於dcTPM的功能實現,而不是呈現 安全性協議的細節分析。
我們依靠特定可用的協議像是SKAP(Session Key Authorization Protocol) 在使用者處理和傳統TPM中間建立一個安全的區域就像是訊息交 換。 不像是OSAP和OIAP,SKAP根據公眾的金鑰加密來同時避免TPM模 擬和弱權限資料攻擊。

16 內文授權協定 (1/3) dcTPM管理全部可用的信任單元以及將即將進來的命令送 到指定的單元。
在存取特定的信任單元之前,stakeholder應用必須建立一個權限 區域。 信任單元的溝通包裝在一個封包裡,遵循TCG規格。 這種包裝處理實現在可信任的軟體堆疊(trusted software stack (TSS)) 的下一層,來允許stakeholder命令到相關信任單元的傳輸透明化。

17 內文授權協定 (2/3) 在我們的案例中,特定信任單元的選擇以及它的溝通是利 用一個修改過的SKAP協定來完成的,這協定稱dcTPM SKAP, 如圖三所示。 一個stakeholder應用透過傳送一個唯一的dcTPM_AUTH封包通過溝 通頻道,來請求一個專屬的存取給dcTPM的信任單元。 dcTPM_AUTH包含區塊處理comph還有隨機數S,由公用鑰匙 (pk(comph))來加密。 接著,dcTPM傳送dcTPM_SESS封包,包含了用來辨認內文的權限 處理ah,以及ne,像是第一個隨機數。 現在stakeholder應用和dcTPM可以從已知的訊息來獨立計算區域鑰 匙K。 經由計算參數的HMAC、內文處理ad(comph)的權限資料、以及ne可以得到K, 伴隨鑰匙S。

18 內文授權協定 (3/3) 圖三、內文權限協定

19 dcTPM - 命令 為了利用先前所提的協定來實現所提出的架構,新的命令 需要與傳統的TPM做個比較。 表二總結了這些dcTPM命令的需求。

20 結論 在這個貢獻裡面我們提出了一個新穎的架構,稱作dcTPM, 可以滿足多個stakeholder應用的需求,就如同在行動通訊 或是雲端計算。 為了這個目的我們題提出一個系統架構,利用部分重組技 術來支援多種信任單元實現。 所提出來的硬體/軟體架構已經在Virtex-5 LX110 FPGA 平台 上面做一個概念證明的實現來評估功能性的dcTPM概念的 可行性。

21 dcTPM架構 – 整合 (1/2) 雛型實現利用FPGA來當作主要元件,可以提供介面給主機、 記憶體、周邊裝置還有個別的TPM。
FPGA具有軟核像是CPU、記憶體控制器、多種的I/O控制器還有LPC 匯流排控制器。 dcTPM架構的核心元件是MicroBlaze軟核處理器,可以運 行uClinux作業系統。 其中,對於周邊介面控制器的驅動,有一個裝置節點式的,從主 機介面到使用者空間程式的連結,稱為dctpmd (dcTPM Daemon)。 Dctpmd會讀取由主機介面收到的資料,像是dcTPM命令(create, swap, delete…), 解包裝它們到本地TPM命令,並將它們送到個別TPM單元。 除了軟核,FPGA實現單一主機控制器給LPC匯流排,也就是硬體 TPM所連接的。 周邊介面控制器提供主機PC端連結給dcTPM。 n-TPM驅動用來連接兩個硬體TPM,透過個別的裝置節點(像是 /dev/tpm0 和 /dev/tpm1)

22 dcTPM架構 – 整合 (2/2) dcTPM架構 HW TPM1 Daemon HW TPMn SW TPM1 SW TPMn


Download ppt "2018/9/17 dcTPM: 一個對於動態內文管理的一般性架構 dcTPM: A Generic Architecture for Dynamic Context Management 林孟諭 Dept. of Electrical Engineering National Cheng Kung."

Similar presentations


Ads by Google