[發明專利]具有掩蔽功能的編譯器設備在審
| 申請號: | 201980057790.8 | 申請日: | 2019-07-05 |
| 公開(公告)號: | CN112639774A | 公開(公告)日: | 2021-04-09 |
| 發明(設計)人: | W·C·馬龍;A·佩斯特林;O·加西亞莫爾瓊 | 申請(專利權)人: | 皇家飛利浦有限公司 |
| 主分類號: | G06F21/14 | 分類號: | G06F21/14 |
| 代理公司: | 永新專利商標代理有限公司 72002 | 代理人: | 劉兆君 |
| 地址: | 荷蘭艾*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 具有 掩蔽 功能 編譯器 設備 | ||
1.一種被布置用于混淆計算機程序的編譯器設備(400),所述編譯器設備包括:
通信接口(431),其被布置為接收計算機程序表示;
處理器,其被配置為:
對所述計算機程序表示執行存活變量分析,所述存活變量分析獲得與在所述計算機程序表示中分配的變量集合(442)相關聯的存活性區域(444)、指示變量被寫入的位置的定義信息,以及指示變量被讀取的位置的使用信息,
從所述變量集合中選擇第一變量和第二變量,其中,根據與所述第二變量相關聯的所述定義信息,未在與所述第一變量相關聯的所述存活性區域中定義所述第二變量,
利用編碼代碼在由與所述第一變量相關聯的所述定義信息和所述使用信息所定義的位置處修改所述計算機程序表示,所述編碼代碼被配置為使用至少所述第二變量作為編碼參數來對所述第一變量進行編碼。
2.根據權利要求1所述的編譯器設備,其中,所述計算機程序表示包括控制流圖(CFG)、所述存活性區域、包括所述控制流圖中的節點的定義信息和使用信息。
3.根據前述權利要求中的任一項所述的編譯器設備,其中,所述處理器被配置為:
從所述變量集合中隨機選擇第一變量,或者
從所述變量集合中依次選擇第一變量。
4.根據前述權利要求中的任一項所述的編譯器設備,其中,所述處理器被配置為:
根據所述計算機程序表示中的編譯器指令來選擇第一變量,
確定是否存在第二變量,并且如果不存在所述第二變量,則生成警告信號。
5.根據前述權利要求中的任一項所述的編譯器設備,其中,所述處理器被配置為確定針對給定的第一變量的多個第二變量,并且
從所確定的第二變量中隨機選擇第二變量,或者
選擇其使用更接近所述第一變量的所述存活性區域的第二變量。
6.根據前述權利要求中的任一項所述的編譯器設備,其中,所述編碼代碼被配置為:
利用所述第二變量來掩蔽所述第一變量,或者
將編碼表應用于所述第一變量,所述表接收所述第二變量作為輸入而充當密鑰。
7.根據前述權利要求中的任一項所述的編譯器設備,其中,所述編碼代碼被配置為在余數系統中對所述第一變量進行編碼,其中,所述余數系統的模數是至少部分地根據所述第二變量導出的。
8.根據前述權利要求中的任一項所述的編譯器設備,其中,修改所述計算機程序表示包括:利用編碼操作來替換對已編碼的第一變量的操作。
9.根據權利要求8所述的編譯器設備,其中,所述編碼操作不修改所述第二變量。
10.根據前述權利要求中的任一項所述的編譯器設備,其中,所述處理器被配置為編譯經修改的計算機程序。
11.根據前述權利要求中的任一項所述的編譯器設備,其中,所述處理器被配置為執行以下各項中的一項或多項:解析、中間代碼生成、代碼優化、分配、目標代碼生成。
12.一種被布置用于混淆計算機程序的編譯器方法(500),所述編譯器方法包括:
接收(510)計算機程序表示;
對所述計算機程序表示執行(520)存活變量分析,所述存活變量分析獲得與在所述計算機程序表示中分配的變量集合(442)相關聯的存活性區域(444)、指示變量被寫入的位置的定義信息,以及指示變量被讀取的位置的使用信息;
從所述變量集合中選擇(530)第一變量和第二變量,其中,根據與所述第二變量相關聯的所述定義信息,未在與所述第一變量相關聯的所述存活性區域中定義所述第二變量;
利用編碼代碼在由與所述第一變量相關聯的所述定義信息和所述使用信息所定義的位置處修改(540)所述計算機程序表示,所述編碼代碼被配置為使用至少所述第二變量作為編碼參數來對所述第一變量進行編碼。
13.一種計算機可讀介質(1000),其包括表示指令的瞬態或非瞬態數據(1020),所述指令使處理器系統執行根據權利要求12所述的方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于皇家飛利浦有限公司,未經皇家飛利浦有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201980057790.8/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:使用與多個發動機相關聯的一個或多個參數控制多個發動機
- 下一篇:膜和包裝容器





