unity3d-重新編譯mono加密dll。安卓應用總是讓人頭疼,遊戲遭到破解與反編譯是研發的人最不願意看到的。自己的辛苦勞動成果被人隨意竊取與利用,對這些咬牙切齒的痛恨。所以我們需要加強自身的反破解技術力量。不過這世上沒有破解不了的東西,道高一尺魔高一丈,我們做的只是讓破解更加困難而已。讓那些破解的人付出點代價才能得到他們想要的,如果他們覺得代價太高,看不清前面的道路,他們就有可能放棄,然後我們的目的達到了。
遊戲本身加密方式有很多,對apk加殼,防止apk二次打包等。對這些android的加密與破解技術看過比較好的文章參考:《android安全及病毒分析》 ,其中《android apk加殼技術方案》最為經典。而本篇文章我們主要來說說針對unity3d的加密。
閒扯就到這裡,我們開始說正事:
unity3d所有客戶端的**都會以dll檔案形式存下來,當遊戲應用被開啟時c#vm(也就是mono的虛擬機器)會去載入所有dll,從而開始執行真正的程式畫面了。而破解的很大一部分都是通過解壓apk後拿到主邏輯dll,對dll進行反編譯,然後修改後重新編譯,再放入apk重新簽名打包。所以我們需要針對dll進行加密,以防止他們反編譯dll。
加密乙個dll檔案非常容易,無論你用什麼演算法都行,但是在哪解密呢?答案是libmono.so。libmono.so是mono的核心程式,它承載了載入解析dll和虛擬機器執行的功能。所以說libmono.so是關鍵,我們需要修改mono核心程式並重新編譯它。
下面將開始mono的編譯過程,別看步驟寫得簡單明瞭,其實我花了起碼乙個多星期的思考,嘗試,失敗,再思考,再嘗試,再失敗…..總結其中原因一�
重新編譯mono加密dll/
Unity防破解 重新編譯mono
unity4.x版本匯出android包時,只能選擇mono,無法使用il2cpp,這就造成了我們的程式集很容易被修改 很多朋友在發布專案時覺得即使 暴露出去也沒什麼關係,只有專案火了才有必要等,然而一旦遊戲被破解,很容易對遊戲生態造成無法想象的災難,這裡寫兩篇博文記錄一下最近加密dll的過程。1....
反編譯unity3d發布apk
鄭重宣告 本教程僅用於學習使用,從事任何商業用途非法行為與作者無關,請知曉!本文目的 通過教會大家如何破解別人遊戲的同時,也希望各位開發者能加強自身遊戲的防破解能力!unity資源在 assets bin data 其中managed下放的是dll,遊戲原始碼被編譯成assembly csharp....
反編譯Unity3D手機遊戲
舊部落格轉移 2015年11月17日 10 08 現在大部分u3d手遊都沒有進行加密處理,要反編譯其實很簡單 apk是安卓的安裝包,安卓是基於linux的,linux的安裝包一般都是zip,所以我猜apk有可能其實就是zip之類的壓縮格式,把字尾名改成zip後用壓縮工具開啟 一般用c 做unity指...