2012-04-06 21 views
12

Proguard'daki sözlük dosyasının nasıl yapılandırılması gerektiğine dair basit bir açıklama var mı?Proguard sınıflar, üyeler ve parametreler için özel adlandırma gizleme

-?obfuscationdictionary hakkında okudum, ancak dosyaların kendileriyle ilgili hiçbir şey bulamadım.

Ayrıca, ben daha karmaşık bir şey adlandırma planı değiştirmek istiyorum ve mümkünse sadece a, b vb paramX, paramY ... Ben, rastgele bir karakter dizisi istiyorum.

Ve evet, sadece okunabilirliği daha kolay bir şey (yeniden düzenlenmiş?) Olabilir sadece görsel bir fark olduğunu biliyorum. Yine de, sadece ... oldukça basit

Teşekkür

cevap

21

Sözlük dosya biçimi olduğunu soran: # ile başlayan

  • Hatları
  • ihmal ihmal
  • Boş satırlar satır başına

    1. Bir kelime

    Rastgele dizeler sözlüğü oluşturmak isterseniz, bunları oluşturmak ve bir metin dosyasına dökmek için basit bir programa dikkat edin veya rastgele dizeler oluşturmak için güzel ve basit bir web arayüzüne sahip olan http://www.random.org/strings'u kullanın. Satır başına bir tane çıkarır, böylece çıktısını doğrudan sözlük dosyanız olarak kullanabilirsiniz.

    Burada (eğer her büyüklükteki dizeleri üretebilir) bazı örnek çıktısı var:

     
    HISPj7KHQ7 
    Wja3o2vx62 
    eyd3OXAZgV 
    DxDJysLV5r 
    BsUTWEAMAI 
    R7N8DF4OVS 
    4q7UsoAgP4 
    cWbN6pumKk 
    SJowARcXwM 
    OyIbF7L6XB 
    

    İşte buldum bir örnek:

    https://trac.openxdata.org/browser/trunk/j2me/openxdata-mobile/epihandy-lite/proguard/examples/dictionaries/keywords.txt?rev=1156

     
    # 
    # This obfuscation dictionary contains reserved Java keywords. They can't 
    # be used in Java source files, but they can be used in compiled class files. 
    # Note that this hardly improves the obfuscation. Decent decompilers can 
    # automatically replace reserved keywords, and the effect can fairly simply be 
    # undone by obfuscating again with simpler names. 
    # Usage: 
    #  java -jar proguard.jar ..... -obfuscationdictionary keywords.txt 
    # 
    
    do 
    if 
    for 
    int 
    new 
    try 
    byte 
    case 
    char 
    else 
    goto 
    long 
    this 
    void 
    break 
    catch 
    class 
    const 
    final 
    float 
    short 
    super 
    throw 
    while 
    double 
    import 
    native 
    public 
    return 
    static 
    switch 
    throws 
    boolean 
    default 
    extends 
    finally 
    package 
    private 
    abstract 
    continue 
    strictfp 
    volatile 
    interface 
    protected 
    transient 
    implements 
    instanceof 
    synchronized 
    
  • +0

    Bu yüzden, onu rastgele bir şekilde kullanmanın bir yolu olmadığını düşünüyorum, öyle mi? – davidcesarino

    +2

    Peki, rastgele oluşturulmuş karakter dizeleriyle dolu bir sözlük dosyası oluşturmak için basit bir program yazabilirsiniz. – ulmangt

    +0

    Aslında, http://www.random.org/strings/ sizin için tam olarak bunu yapan bir web formu jeneratörüne sahiptir. Ve sözlük dosyanız için kullanabileceğiniz bir formatta tükürür. – ulmangt

    3

    herhangi bir metin dosyası çalışacaktır. ProGuard, dosyadaki tüm geçerli tanımlayıcıları kullanır. '#' Ile başlayan satırları yoksayar. ProGuard dağılımındaki dizin örnekleri/sözlükleri birkaç örnek içerir (ulmangt tarafından yapıştırılan örnek dahil).