欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種從二進制文件中提取代碼信息的方法及裝置制造方法

文檔序號:6539198閱讀:208來源:國知局
一種從二進制文件中提取代碼信息的方法及裝置制造方法
【專利摘要】本發(fā)明實施例提供了一種從二進制文件中提取代碼信息的方法和裝置,該方法采取預先定義軟件的配置信息,與軟件其它部分的代碼明確區(qū)分開,并在編譯過程中劃分專用空間用于存儲經可逆算法得到的配置信息,從而從該專用空間讀取該軟件配置信息后,就可以通過逆向的方法還原軟件的配置代碼,這樣便可基于原始的代碼,重新編寫和編譯滿足其它配置需求的軟件,這種提取代碼信息的方法靈活方便,且出錯風險低。
【專利說明】一種從二進制文件中提取代碼信息的方法及裝置
【技術領域】
[0001]本發(fā)明涉及計算機【技術領域】,具體涉及一種從二進制文件中提取代碼信息的方法
及裝置。
【背景技術】
[0002]在計算機軟件領域,當我們需要某個功能的軟件時,通常是由專業(yè)的軟件技術開發(fā)人員先將軟件源代碼編寫好,然后軟件編程人員編寫、維護的軟件源代碼本身不可以直接運行,需要通過編譯器將其編譯為硬件設備可識別的二進制程序才能運行。這個二進制程序通常是由軟件編程語言底層的編譯器通過很復雜的算法來轉換的,這個過程是一個不可逆過程,也就是我們無法直接基于編譯好的二進制軟件逆向還原出其原始的軟件代碼。
[0003]然后,人們經常會遇到需要對軟件進行小幅度修改的情況,但即使非常小的修改,也無法直接修改可運行的二進制軟件程序,通常需要依靠修改其源程序代碼來進行。這種方法存在的缺陷是:有些情況下可能找不到與該二進制軟件精確匹配的軟件源代碼,或者找錯源代碼,因此有出錯風險;并且較難在軟件技術開發(fā)人員相互之間交接程序修改的工作,不方便且工作量較大。因此,現(xiàn)有技術有待改進和提高。

【發(fā)明內容】

[0004]本發(fā)明實施例提供一種從二進制文件中提取代碼信息的方法及裝置,以期從二進制文件中還原出源代碼信息,從而更方便快捷地對源代碼進行修改。
[0005]第一方面,本發(fā)明實施例提供一種從二進制文件中提取代碼信息的方法,所述方法包括:
[0006]從二進制存儲文件的專用空間中讀取第一配置信息;其中,所述專用空間為軟件編譯過程中設置的用于存儲軟件第一配置信息的空間,所述第一配置信息為第二配置信息經可逆算法轉換得到的配置信息,所述第二配置信息為軟件編寫過程中定義的與軟件功能實現(xiàn)相關的代碼;
[0007]根據(jù)逆向算法將讀取的第一配置信息還原為所述第二配置信息。
[0008]其中,所述可逆算法包括:可擴展標記語言格式轉換算法、數(shù)據(jù)庫格式轉換算法、輕量級數(shù)據(jù)交換格式轉換算法。
[0009]進一步的,所述方法還包括:基于還原得到的第二配置信息,進行重新編寫和編譯以滿足新的軟件需求。
[0010]所述第二配置信息包括:軟件功能開關和外部資源。
[0011]第二方面,本發(fā)明實施例還提供一種從二進制文件中提取代碼信息的裝置,包括:
[0012]轉換模塊,用于將第二配置信息經過可逆算法轉換為第一配置信息,其中,所述第二配置信息為軟件編寫過程中定義的與軟件功能實現(xiàn)相關的代碼;
[0013]設置模塊,用于在軟件編譯過程中在二進制存儲文件的存儲空間中設置專用空間,所述專用空間用于存儲所述第一配置信息;
[0014]讀取模塊,用于從所述專用空間中讀取所述第一配置信息;
[0015]還原模塊,用于根據(jù)逆向算法將所述讀取模塊讀取的第一配置信息還原為第二配
置信息。
[0016]本發(fā)明實施例提供的從二進制文件中提取代碼信息的方法,采取預先定義軟件的配置信息,與軟件其它部分的代碼明確區(qū)分開,并在編譯過程中劃分專用空間用于存儲經逆向算法得到的配置信息,從而從該專用空間讀取該軟件配置信息后,就可以通過逆向的方法還原軟件的配置代碼,這樣便可基于原始的代碼,重新編寫和編譯滿足其它配置需求的軟件,這種提取代碼信息的方法靈活方便,且出錯風險低。
【專利附圖】

【附圖說明】
[0017]圖1是本發(fā)明實施例提供的一種從二進制文件中提取代碼信息的方法流程示意圖;
[0018]圖2是本發(fā)明實施例提供的一種從二進制文件中提取代碼信息的裝置結構示意圖。
【具體實施方式】
[0019]本發(fā)明實施例提供一種從二進制文件中提取代碼信息的方法及裝置,以期從二進制文件中還原出源代碼信息,從而更方便快捷地對源代碼進行修改。
[0020]為了使本【技術領域】的人員更好地理解本發(fā)明方案,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分的實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本發(fā)明保護的范圍。
[0021]本發(fā)明實施例提供一種從二進制文件中提取代碼信息的方法,包括:
[0022]從二進制存儲文件的專用空間中讀取第一配置信息;其中,所述專用空間為軟件編譯過程中設置的用于存儲軟件第一配置信息的空間,所述第一配置信息為第二配置信息經可逆算法轉換得到的配置信息,所述第二配置信息為軟件編寫過程中定義的與軟件功能實現(xiàn)相關的代碼;
[0023]根據(jù)逆向算法將讀取的第一配置信息還原為所述第二配置信息。
[0024]其中,所述可逆算法包括:可擴展標記語言格式轉換算法、數(shù)據(jù)庫格式轉換算法、輕量級數(shù)據(jù)交換格式轉換算法。
[0025]進一步的,所述方法還包括:基于還原得到的第二配置信息,進行重新編寫和編譯以滿足新的軟件需求。
[0026]所述第二配置信息可以包括:軟件功能開關和外部資源。
[0027]需要說明的是,所述逆向算法為所述可逆算法經過反推得到的算法。
[0028]由上可見,本發(fā)明實施例提供的從二進制文件中提取代碼信息的方法,采取預先定義軟件的配置信息,與軟件其它部分的代碼明確區(qū)分開,并在編譯過程中劃分專用空間用于存儲經可逆算法得到的配置信息,從而從該專用空間讀取該軟件配置信息后,就可以通過逆向的方法還原軟件的配置代碼,這樣便可基于原始的代碼,重新編寫和編譯滿足其它配置需求的軟件,這種提取代碼信息的方法靈活方便,且出錯風險低。
[0029]本發(fā)明實施例還提供一種從二進制文件中提取代碼信息的方法,參見圖I所示,包括:
[0030]S101、定義軟件關鍵配置信息,稱為第二配置信息;
[0031]在編寫軟件的時候要明確定義出“關鍵配置信息”,通常是一些軟件功能開關或者必要的外部資源定義,編寫軟件時需要將這部分代碼與其它部分的代碼明確區(qū)分開。
[0032]S102、將所述第二配置信息通過一定的可逆算法,轉換為可擴展標記語言(Extensible Markup Language,簡稱為XML)格式、數(shù)據(jù)庫格式、輕量級的數(shù)據(jù)交換格式(JavaScript Object Notation,簡稱為JS0N)或者其它形式的數(shù)據(jù)格式,經格式轉換后的配置信息稱為第一配置信息;
[0033]S103、在軟件的編譯過程中,在二進制存儲文件里為該軟件劃分一個專用的空間,將第一配置信息存儲于這個專用空間中;
[0034]例如,軟件代碼中的關鍵配置信息如下:
[0035]宏配置信息
[0036]
【權利要求】
1.一種從二進制文件中提取代碼信息的方法,其特征在于,所述方法包括: 從二進制存儲文件的專用空間中讀取第一配置信息;其中,所述專用空間為軟件編譯過程中設置的用于存儲軟件第一配置信息的空間,所述第一配置信息為第二配置信息經可逆算法轉換得到的配置信息,所述第二配置信息為軟件編寫過程中定義的與軟件功能實現(xiàn)相關的代碼; 根據(jù)逆向算法將讀取的第一配置信息還原為所述第二配置信息。
2.根據(jù)權利要求1所述的方法,其特征在于,所述可逆算法包括:可擴展標記語言格式轉換算法、數(shù)據(jù)庫格式轉換算法、輕量級數(shù)據(jù)交換格式轉換算法。
3.根據(jù)權利要求1所述的方法,其特征在于,所述方法還包括:基于還原得到的第二配置信息,進行重新編寫和編譯以滿足新的軟件需求。
4.根據(jù)權利要求1所述的方法,其特征在于,所述第二配置信息包括:軟件功能開關和外部資源。
5.一種從二進制文件中提取代碼信息的裝置,其特征在于,包括: 轉換模塊,用于將第二配置信息經過可逆算法轉換為第一配置信息,其中,所述第二配置信息為軟件編寫過程中定義的與軟件功能實現(xiàn)相關的代碼; 設置模塊,用于在軟件編譯過程中在二進制存儲文件的存儲空間中設置專用空間,所述專用空間用于存儲所述第一配置信息; 讀取模塊,用于從所述專用空間中讀取所述第一配置信息; 還原模塊,用于根據(jù)逆向算法將所述讀取模塊讀取的第一配置信息還原為第二配置信肩、O
6.根據(jù)權利要求5所述的裝置,其特征在于,所述可逆算法包括:可擴展標記語言格式轉換算法、數(shù)據(jù)庫格式轉換算法、輕量級數(shù)據(jù)交換格式轉換算法。
【文檔編號】G06F9/44GK103777966SQ201410073860
【公開日】2014年5月7日 申請日期:2014年2月28日 優(yōu)先權日:2014年2月28日
【發(fā)明者】徐錦亮, 肖文鯤, 辛奇俊 申請人:廣州視源電子科技股份有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
桐梓县| 辉南县| 枣庄市| 深泽县| 连州市| 望谟县| 澄江县| 兴海县| 喀什市| 广南县| 青州市| 疏附县| 读书| 云安县| 焦作市| 中卫市| 五河县| 天镇县| 瑞丽市| 宁德市| 资中县| 永顺县| 阿拉尔市| 陕西省| 绥宁县| 汉川市| 来宾市| 监利县| 哈尔滨市| 嵊州市| 汝城县| 纳雍县| 濮阳县| 孝感市| 临邑县| 米林县| 大邑县| 临沭县| 克拉玛依市| 新龙县| 龙岩市|