2011-10-22 11 views
7

Android uygulamasında lisans uyguluyor ve ServerManagedPolicy nesnesine iletilen AESObfuscator'a geçirilmesi gereken 20 baytlık bir dizi var. Kod her çalıştırıldığında bu dizi rastgele oluşturulabilir mi, yoksa kodlanmış mı?Android: AESObfuscator'a gönderilen rastgele SALT baytlarının aynı kalması gerekiyor mu?

Şu an rastgele böyle tuz üretme ediyorum:

private static final byte[] SALT; 

static { 
    Random random = new Random(); 
    random.setSeed(System.currentTimeMillis()); 
    byte[] buf = new byte[20]; 
    random.nextBytes(buf); 
    SALT = buf; 
} 

cevap

6

Biraz geç oldu ama evet: tuz aynı tekrar depolanan değerleri şifresini edebilmek için kalmalıdır.

Temelde Tuzlama, sözlük saldırılarını çok daha zor hale getirmek için bir parolayı rastgele kastetmek anlamına gelir. How does a salt protect against a dictionary attack?

bir yıl sonra :) Bu arada Güncellemesi (a Rastgele jeneratör yerine bayt için SecureRandom jeneratör kullanmak - bu iyi (ben detaya olabilir, ama o başka bir yerde de bulabilirsiniz. http://docs.oracle.com/javase/7/docs/api/java/security/SecureRandom.html)

İlgili konular