Home Features Getting Started Pricing Dictionaries Feedback

ProGuard Obfuscation Dictionaries

Free preset dictionaries for -obfuscationdictionary, -classobfuscationdictionary, and -packageobfuscationdictionary. All characters validated as valid Java identifiers.

Dictionary Category Chars 3-char Combos
Homoglyph
Cross-script visual confusables
Visual 255 16,581,375 Download
Greek
Greek alphabet letters & extended forms
Script 122 1,815,848 Download
Cyrillic
Cyrillic basic & extended letters
Script 296 25,934,336 Download
Latin Extended
Diacritical marks, IPA, Latin Extended
Script 494 120,553,784 Download
Hebrew + Arabic
Hebrew & Arabic with presentation forms
Script 423 75,686,967 Download
East Asian
CJK radicals, Katakana, Hiragana, halfwidth
Script 246 14,886,936 Download
Modifier & Tone
Modifier letters, tone marks, super/subscripts
Visual 244 14,526,784 Download
Indigenous Scripts
Cherokee, Georgian, Armenian, Thai, Lao, etc.
Script 1,146 1,505,060,136 Download
Encoding Chaos
Different display in GBK/Big5/Shift-JIS/EUC-KR
Encoding 575 190,109,375 Download
Minimal Confusable
One best replacement per ASCII letter
Minimal 52 140,608 Download
Ultimate
All scripts merged — maximum character set
Combined 3,056 28,540,399,616 Download

How to Use

Download a dictionary file and place it in your Android project (e.g., next to proguard-rules.pro), then add the directive to your ProGuard configuration:

proguard-rules.pro
# Apply an obfuscation dictionary
-obfuscationdictionary proguard-dic-homoglyph.txt
-classobfuscationdictionary proguard-dic-homoglyph.txt
-packageobfuscationdictionary proguard-dic-homoglyph.txt

# Or use the Encoding Chaos dictionary for cross-encoding confusion
-obfuscationdictionary proguard-dic-encoding-chaos.txt

Or use the ADB Pro plugin's R8 Assistant → Dictionary tab to download and apply dictionaries directly from your IDE.


About These Dictionaries

Each dictionary contains Unicode characters that are valid Java identifier starts (passing Character.isJavaIdentifierStart()). They exploit visual similarities between characters from different writing systems (homoglyphs) or characters that display differently depending on the system encoding.

For example, the Homoglyph dictionary includes Greek and Cyrillic letters that look identical to Latin letters (e.g., Greek alpha α vs Latin a). The Encoding Chaos dictionary uses characters whose UTF-8 bytes decode to completely different characters when interpreted in GBK, Big5, or Shift-JIS.

All 11 dictionaries are open and free to use, even without the ADB Pro plugin.

Recommendations

Automate Dictionary Management

The ADB Pro plugin can download, apply, and manage obfuscation dictionaries directly from your IDE.

Get ADB Pro Learn about R8 Assistant