[發明專利]一種第三方軟件可信構建方法有效
| 申請號: | 201410584891.X | 申請日: | 2014-10-27 |
| 公開(公告)號: | CN104318163B | 公開(公告)日: | 2017-06-16 |
| 發明(設計)人: | 詹靜;蔡磊;梁毅 | 申請(專利權)人: | 北京工業大學 |
| 主分類號: | G06F21/57 | 分類號: | G06F21/57 |
| 代理公司: | 北京思海天達知識產權代理有限公司11203 | 代理人: | 沈波 |
| 地址: | 100124 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 第三 軟件 可信 構建 方法 | ||
1.一種第三方軟件可信構建方法,其特征在于包括以下步驟:
步驟1,生成基于可擴展訪問控制標記語言XACML的可信軟件策略說明,即可信軟件策略語法和語義;
步驟2,生成可信軟件策略:根據步驟1輸出的可信軟件策略說明生成基準策略;軟件開發商根據基準策略生成參數擴展策略和自定義策略;用戶根據基準策略,參考軟件開發商的參數擴展策略和自定義策略,生成用戶擴展和自定義的可信軟件策略庫;
步驟3,自動構建可信軟件:根據步驟2輸出的用戶可信軟件策略庫及程序源代碼,自動生成切點和通知監控代碼以及防篡改監控日志記錄代碼,構建可執行的可信軟件;
步驟2所述的可信軟件策略庫的生成方法,包括以下步驟:
步驟2.1,基準策略生成:根據步驟1中的可信軟件策略語義描述,將可信軟件策略語義描述中所列出的通用策略相應內容,寫入XACML的對應標簽中,生成基準策略;
步驟2.2,自定義參數擴展策略生成:用戶根據步驟1輸出的可信軟件策略說明,按照自身需要,參考軟件開發商提供的參數擴展策略,對基準策略中相應策略的部分字段的內容進行編輯,修改或增加內容為<Rule>標簽下信息,生成自定義參數擴展策略;
步驟2.3,自定義策略生成:用戶根據步驟1輸出的可信軟件策略說明,根據自身特殊需要,參考軟件開發商提供的自定義策略,編寫自定義策略:填寫可信軟件策略中的主體、資源、動作、效果的屬性值;此外用戶可以通過設置環境內容在匹配過程中添加對環境信息的匹配內容,通過設置條件內容定義或引用函數對主體、資源、動作、環境的屬性值進行約束;生成自定義策略;
對于開源軟件,所述可信軟件可以運行在用戶本地,由用戶控制生成;對于商用軟件,所述可信軟件生成工作由軟件開發商完成,最終將可信軟件發布給用戶;
步驟3所述可信軟件的自動化構建包括以下步驟:
步驟3.1,生成切點和通知監控代碼;
步驟3.1.1,生成切點代碼;
切點代碼是面向切面編程AOP代碼的組成部分,用于指定特定的連接點,連接點包括方法調用、方法執行、對象實例化、構造子執行、字段引用以及異常處理;生成切點代碼的方法如下:
讀取可信軟件策略,獲取策略的目標中的動作Action屬性值;
根據所述動作對應的API調用,確定切點代碼中需要監控的API;
使用args()方法暴露監控點API調用時用于監控所需的參數信息;
根據上述信息構造切點代碼;
步驟3.1.2,生成通知監控代碼;
添加上述切點的Around通知函數代碼,按下面流程生成通知控制代碼:
讀取用戶提交的進行可信構建的程序名稱,即行為主體信息;
讀取切點函數的參數,所述參數已通過args()方法賦值,即為資源信息;
遍歷可信軟件策略中的規則,使用獲取到的主體信息和資源信息與規則中目標的主體、資源字段屬性值進行匹配,獲取相匹配的規則中effect的屬性值,若effect的屬性值為permit,則調用proceed()函數允許此切點處函數的執行,并將策略執行標識設為允許;若effect的屬性值為deny,則拒絕切點函數的執行,并將策略執行標識設為拒絕;若未找到匹配的規則,調用proceed()執行切點處原代碼,將策略執行標識設為未找到匹配規則;
步驟3.2,生成防篡改監控日志記錄代碼;
步驟3.2.1,獲取步驟3.1.2通知監控代碼中監控到的行為主體軟件名信息、行為作用的資源信息和策略執行標識中記錄的相應行為執行的操作信息,獲取步驟3.1.1中具體行為信息,通過系統調用System.getProperty獲取行為主體用戶名信息,生成一條完整的日志信息,寫入日志文件;
步驟3.2.2,計算此條行為信息的摘要值,并擴展到PCR寄存器中;
當用戶需要對日志文件的可信性進行驗證時,使用日志可信性分析工具對日志文件進行檢測,工具執行流程如下:
通過系統調用獲得當前使用系統的用戶名,要求用戶輸入需要驗證行為的軟件名;
讀取行為日志中的一條日志信息,若日志的主體字段和上一步獲取到的信息相同,將行為信息顯示給用戶,計算信息摘要值并擴展到PCR中;若不同,則直接計算信息摘要值并擴展到PCR中;
比對日志生成時PCR中的值與事后計算值是否相同;若數值相同,則證明日志信息完整可信;若數值不同,則證明日志內容不可信;
步驟3.3,生成可信軟件;
使用exec函數調用ajc命令,將步驟3.1、步驟3.2生成的AOP代碼織入到原程序代碼中,生成帶有監控和記錄功能的可信軟件。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京工業大學,未經北京工業大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410584891.X/1.html,轉載請聲明來源鉆瓜專利網。





