“三權分立”模型之約束模型
基於Trias CEO阮安邦博士提出的雲平臺可信安全治理的三權分立模型的科研積累,Trias採用了三權分立的模型理念,在完全去中心化與完全中心化的治理結構之間,利用三權的相互協作與制約,很大程度上解決區塊鏈和智慧合約現有的權利監管不足的問題,實現了權力的動態平衡,從而最終實現資訊世界的公平與公正。
在 “三權分立”模型的概述中,我們對三權分立模型做了概述。角色模型定義了實現SoP的三個角色;協作模型指定三個角色如何協作實現雲服務認證;約束模型執行三個角色間的約束條件以及同一角色執行方之間的約束條件。這裡主要介紹約束模型,約束模型的設計是為了防止TER和SPD獲得過多的權力,從而平衡權力。
CSE作為雲服務執行機構,執行符合客戶要求的雲服務,負責提供服務清單,宣告每個雲服務的軟體組成;
TER作為信任證據報告機構,負責檢查CSE執行的雲服務行為,提供執行情況摘要,其中記錄了為服務目標應用程式而載入的雲服務的身份資訊;
SPD作為軟體屬性定義器,負責定義雲服務每個軟體元件屬性,提供屬性定義列表,對每個服務的元件進行認證。
圖1 互檢約束模型
圖1描述的互檢約束模型是TER和SPD相互進行約束。
圖2 多方約束模型
圖2描述的多方約束模型表示CSE可以為每個角色僱傭多個執行方,CSE可以有多個SPD來定義其軟體元件屬性,也可以僱傭多個TER來負責檢查它的服務執行情況。
考慮兩種威脅:故障和同謀。
故障
故障指單個角色惡意行為或者意外故障。由於TER、SPD都有可能出現錯誤或不可信,那麼它們的故障就有可能使得CSE的行為被誤讀。此外,由於TER、SPD安裝軟體都代表了CSE的基礎設施,他們的錯誤行為可能會進一步引發內部攻擊。因此,SoP引入了互檢和多方約束兩種約束模型。
圖1互檢模型是TER和SPD對對方的約束。首先,SPD定義了檢查器的屬性,以便CSE能夠驗證檢查器的行為;其次,CSE負責驗證檢查器的真實執行情況,並且在每次執行認證時會返回檢查器的度量值,使得CSE和使用者都能夠知道檢查器是否正確執行。但是,惡意TER仍然可以通過改變它提供的執行情況摘要來為故障檢查器返回錯誤的度量值。不可信的SPD還可能偽造錯誤的屬性定義列表,為惡意檢查器分配良好的屬性。我們通過引入多方約束模型來解決這一問題。
圖2多方約束模型為每個角色僱傭多個執行方。因此,CSE可以有多個SPD來定義其軟體元件的屬性,也可以有多個TER來檢查它執行的雲服務。這樣就引入了同一角色中各方之間的競爭和約束,一個檢查器的測量值將由另一個檢查器進行檢驗,檢查器的屬性也將由多個SPD定義。此外,假設大多數執行方提供的都是可信服務,對比同一角色的各個執行方的結果將有助於識別不可信的執行方。
通過兩個相互約束的角色SPD、TER及每個角色多個相互競爭的執行方,相互約束、檢查,這樣的互檢和多方約束打破了可信第三方獨佔話語權且其行為不透明的現狀。
同謀
同謀指雙方惡意合作逃避SOP查驗的情況。TER和SPD同謀會使得CSE對滿足服務等級協議SLA的行為做出誤判;SPD和CSE同謀會使CSE的行為在被TER記錄了其真實執行情況的狀態下仍被解釋為滿足服務等級協議SLA。
在SoP中,使用者為了他們的應用不再僅僅選擇雲服務提供商,而是選擇CSE-TER-SPD的組合,以此來降低同謀的可能性,任何被認為不可信的執行方都將導致整個組合被丟棄。同時,多方約束使得使用者可以通過多個TER或者SPD來驗證CSE的可信度,因此,CSE需要僱傭更可信的TER和SPD,同時,也需要選擇各個不同的TER和SPD來豐富CSE-TER-SPD的組合,以此來吸引更多的使用者。