Safengine Android so加密

公司让我找一个可以对android,嵌入式和Linux x86平台的so库进行加密的工具,我看搞了两天这个工具,反正也没用上,就把教程发出来了

下载地址:http://www.safengine.com/mobile/download.html

 

使用方法:

我使用的ndk版本为r13b,以r13b举例

.se-llvm\prebuilt内含有的文件覆盖NDK安装目录toolchains\llvm\prebuilt,不要直接替换,那样会出错

 

1.JNI项目的Application.mk中增加NDK_TOOLCHAIN_VERSION := clang

2.(其中clang后的数字为ndk目录下toolchains文件夹中llvm文件夹所跟数值,如果文件夹名为llvm-3.6,则需增加NDK_TOOLCHAIN_VERSION := clang36)

 

2.根据需要在代码中增加SDK标记:

 (我用的是免费版)

    批量标记:

 

        #pragma obfuscate on/off 加密编译该区域中的所有函数(保留以上单独设定)

 

 

3.执行ndk-build编译(使用-B重新编译项目)

如出现cpu编译目标错误,则为ndk中没有对应cpu版本的工具链,在Application.mkAPP_ABI选项中去掉对应cpu版本即可,

可能是因为是免费版的缘故,还是可以看到关键指令,但是看起来还是很费劲的,插花是随机的,每次编译后都是不一样的,接下来公司让我开发一个so的壳,如果开发出来,公司用不上的话,我就发出来,用上了,我就不发了,因为我害怕被逆向。

 

posted @ 2017-04-28 16:13  HugoLester  阅读(573)  评论(0编辑  收藏  举报