Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/open-obfuscator/dprotect
:electron: dProtect is a Proguard-based obfuscator for Java and Kotlin
https://github.com/open-obfuscator/dprotect
android java kotlin obfuscation proguard
Last synced: 2 days ago
JSON representation
:electron: dProtect is a Proguard-based obfuscator for Java and Kotlin
- Host: GitHub
- URL: https://github.com/open-obfuscator/dprotect
- Owner: open-obfuscator
- License: gpl-2.0
- Created: 2022-10-02T07:56:50.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-06-04T06:46:32.000Z (over 1 year ago)
- Last Synced: 2023-11-07T15:10:32.580Z (about 1 year ago)
- Topics: android, java, kotlin, obfuscation, proguard
- Language: Java
- Homepage: https://obfuscator.re/dprotect
- Size: 6.37 MB
- Stars: 258
- Watchers: 15
- Forks: 35
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
dProtect is an extension of Proguard with enhanced code obfuscation features. While Proguard is known for obfuscating
symbols (package names, class names, ...) and optimizing Java/Kotlin code, dProtect brings code obfuscation
for Java and Kotlin on the top of Proguard:```bash
# Arithmetic Obfuscation
-obfuscate-arithmetic,low class dprotect.examples.**
-obfuscate-arithmetic,high,skipfloat class dprotect.internal.**# Strings Obfuscation
-obfuscate-strings class dprotect.examples.**
-obfuscate-strings class dprotect.internal.CheckPassword {
public static java.lang.String getPassword();
public static java.lang.String getLogin();private static java.lang.String KEY;
}# Control-flow obfuscation
-obfuscate-control-flow class dprotect.internal.api.**# Constants Obfuscation
-obfuscate-constants class dprotect.internal.api.Enum {
*;
}
```dProtect follows the same integration mechanism as Proguard such as it can be instantiated in an Android
Gradle-based project as follows:build.gradle
```gradle
buildscript {
repositories {
mavenCentral()
maven {
url = uri("https://maven.pkg.github.com/open-obfuscator/dProtect")
credentials {
username = "your-username"
password = "the-token"
}
}
}
dependencies {
classpath 're.obfuscator:dprotect-gradle:1.0.0'
}
}
```**You need to generate a Github token to use `maven.pkg.github.com`**. Alternatively,
you can use the `dprotect-gradle-1.0.0.jar` archive of the release's artifacts.app/build.gradle
```gradle
apply plugin: 're.obfuscator.dprotect'
// ...
dProtect {
configurations {
release {
configuration 'dprotect-rules.pro'
}
}
}
```You can also find out more information here: https://obfuscator.re/dprotect
### Contact
You can reach out by email at this address: `[email protected]`
#### Maintainers
- [Romain Thomas](https://www.romainthomas.fr): [@rh0main](https://twitter.com/rh0main) - `[email protected]`
#### Credits
- [Guardsquare](https://www.guardsquare.com/): Proguard's Owner
- [Eric Lafortune](https://www.lafortune.eu/): Proguard's Author
- [James Hamilton](https://jameshamilton.eu/): Proguard's Core dev/maintainer### License
dProtect is released under the same License as Proguard: [GNU General Public License v2.0](https://github.com/Guardsquare/proguard/blob/master/LICENSE)