[發明專利]計算機程序保護方法、裝置、電子設備和計算機可讀存儲介質在審
| 申請號: | 201811515675.4 | 申請日: | 2018-12-12 |
| 公開(公告)號: | CN109740313A | 公開(公告)日: | 2019-05-10 |
| 發明(設計)人: | 丁保增;王賽 | 申請(專利權)人: | 北京字節跳動網絡技術有限公司 |
| 主分類號: | G06F21/14 | 分類號: | G06F21/14 |
| 代理公司: | 北京竹辰知識產權代理事務所(普通合伙) 11706 | 代理人: | 陳龍 |
| 地址: | 100041 北京市石景山區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 計算機程序 計算機可讀存儲介質 電子設備 條件分支 目標函數 編譯 軟件產品 不透明 謂詞 指令 | ||
1.一種計算機程序保護方法,其特征在于,包括:
從計算機程序中確定目標函數;
根據第一不透明謂詞為所述目標函數增加條件分支,所述條件分支對應的條件值為假;
在所述條件分支中插入防止反編譯指令。
2.根據權利要求1所述的計算機程序保護方法,在所述根據第一不透明謂詞為所述目標函數增加條件分支之前,還包括:
通過編譯器將所述計算機程序轉化為中間表示形式。
3.根據權利要求1所述的計算機程序保護方法,在所述條件分支中插入防止反編譯指令之前,還包括:
確定所述計算機程序的運行平臺信息;
在所述條件分支中插入防止反編譯指令,包括:
在所述條件分支中插入與所述運行平臺信息對應的防止反編譯指令。
4.根據權利要求1到3中任一項所述的計算機程序保護方法,其特征在于,所述防止反編譯指令包括用于變更所述目標函數的棧指針的指令。
5.根據權利要求4所述的計算機程序保護方法,其特征在于,所述用于變更所述目標函數的棧指針的指令用于使所述目標函數的棧指針增加立即數或減少所述立即數。
6.根據權利要求5所述的計算機程序保護方法,其特征在于,所述立即數是在預設范圍內通過隨機方式確定的。
7.根據權利要求1所述的計算機程序保護方法,其特征在于,所述第一不透明謂詞是從多個不透明謂詞中通過隨機方式確定的。
8.根據權利要求1所述的計算機程序保護方法,其特征在于,所述條件分支包括i f語句,所述i f語句的判定條件包括所述第一不透明謂詞,所述第一不透明謂詞的值為假。
9.根據權利要求1所述的計算機程序保護方法,其特征在于,所述條件分支包括e l se語句,所述e l se語句對應的i f語句的判定條件包括所述第一不透明謂詞,所述第一不透明謂詞的值為真。
10.一種計算機程序保護裝置,其特征在于,包括:
確定模塊,用于從計算機程序中確定目標函數;
增加模塊,用于根據第一不透明謂詞為所述目標函數增加條件分支,所述條件分支對應的條件值為假;
插入模塊,用于在所述條件分支中插入防止反編譯指令。
11.一種電子設備,包括:
存儲器,用于存儲計算機可讀指令;以及
處理器,用于運行所述計算機可讀指令,使得所述處理器運行時實現根據權利要求1-9中任意一項所述的計算機程序保護方法。
12.一種非暫態計算機可讀存儲介質,用于存儲計算機可讀指令,當所述計算機可讀指令由計算機執行時,使得所述計算機執行權利要求1-9中任意一項所述的計算機程序保護方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京字節跳動網絡技術有限公司,未經北京字節跳動網絡技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.17sss.com.cn/pat/books/201811515675.4/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種應用控制方法及終端設備
- 下一篇:一種SWF混淆加密的方法





