Safengine Android so加密
公司讓我找一個可以對android,嵌入式和Linux x86平臺的so庫進行加密的工具,我看搞了兩天這個工具,反正也沒用上,就把教程發(fā)出來了
下載地址:http://www.safengine.com/mobile/download.html
?
使用方法:
我使用的ndk版本為r13b,以r13b舉例
.將se-llvm\prebuilt內(nèi)含有的文件覆蓋至NDK安裝目錄toolchains\llvm\prebuilt中,不要直接替換,那樣會出錯
?
1.在JNI項目的Application.mk中增加NDK_TOOLCHAIN_VERSION := clang
2.(其中clang后的數(shù)字為ndk目錄下toolchains文件夾中llvm文件夾所跟數(shù)值,如果文件夾名為llvm-3.6,則需增加NDK_TOOLCHAIN_VERSION := clang36)
?
2.根據(jù)需要在代碼中增加SDK標(biāo)記:
?(我用的是免費版)
????批量標(biāo)記:
?
????????#pragma obfuscate on/off 加密編譯該區(qū)域中的所有函數(shù)(保留以上單獨設(shè)定)
?
?
3.執(zhí)行ndk-build編譯(使用-B重新編譯項目)
如出現(xiàn)cpu編譯目標(biāo)錯誤,則為ndk中沒有對應(yīng)cpu版本的工具鏈,在Application.mk的APP_ABI選項中去掉對應(yīng)cpu版本即可,
可能是因為是免費版的緣故,還是可以看到關(guān)鍵指令,但是看起來還是很費勁的,插花是隨機的,每次編譯后都是不一樣的,接下來公司讓我開發(fā)一個so的殼,如果開發(fā)出來,公司用不上的話,我就發(fā)出來,用上了,我就不發(fā)了,因為我害怕被逆向。
?
轉(zhuǎn)載于:https://www.cnblogs.com/HugoLester/p/6782056.html
總結(jié)
以上是生活随笔為你收集整理的Safengine Android so加密的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: UILabel的行间距,字间距处理
- 下一篇: android sina oauth2.