
In this code, I use PackageManger that may be misunderstood to collect list of installed apps.
ANDROID NDK FORK APK
If you live in China, you should take care of checking apk signature. If you got a crash, you can look into FigureOutJNICrash.md to find where code crash at. How do other languages work together with encryption and decryption? I recommend using docker : /nickdiego/docker-ollvm. Maybe you think configurating Obfuscator-LLVM is really difficult. In another way, you can build it on docker. This is my NDK configuration obfuscator tutorial: Obfuscator-LLVM-4.0-BUILD-NDK. To confuse native code, you need to modify the externalNativeBuild in the aesjni/adle and configure the Obfuscator-LLVM under the NDK. If you dont know how SSL works, I recommend a blog from Cloudflare: what-is-asymmetric-encryption If you know how SSL works, you may think that asymmetric entription transfering the key is safest in the world. The key that shouldn't be constant shuold be termporary and generated. In addition, what I have to tell you:īecause you need to do signature verification, I can't provide jcenter dependencies, pls forgive me!Įven though these code is very safe, I still against storing key in code. If the size bother you, you can disable obfscator-lvvm. Size of confused SO file may be three times the size of original SO file.

Please copy the keystore hashcode and package name into check_signature.h. Modify hash of your keystore and pkg-name in check_signature.h.Īs you obtaining the hash, you should use this medthod: getSignature(), Keytool -genkey -alias client1 -keypass 123456 -keyalg RSA -keysize 1024 -validity 365 -storetype PKCS12 -keystore. Generate keystore file(You shoul jump this step in case you already have keysotre.) # my generate record: As you integrating it into the project, please modify class names and method names, don't expose the name of encryption algorithm, modify the C function of key storage from my code.ĭ.1. Maybe you will encounter build errors from that.Ĭ. Run test_in_exexutaing.sh, and look at logcat.
ANDROID NDK FORK HOW TO
How to integrate it into my project? click to expand.
ANDROID NDK FORK ANDROID

Get the key from a complex function, to hide the key, current function is a simple solution. This method has been deprecated due to discard reason issues5

Key exists in the symbol table, and hides the character table. Use signature verification to avoid being packaged again (It is prevents that hacker call your jni method directly.) It is high-performance for ARM architecture. I have to mention that TLS1.3 use CHACHA20 on mobile device too. If still need it, you can check out tag: v2.2. I have no longer supported AES algorithms. 中文 Reach high security with libsodium in Android
