2016-04-14 60 views
-1

'un anahtar gücünü belirleyin Bir uygulamada kullanılan şifrelemeyi ve anahtar gücünü bulmaya çalışıyorum, Erişim sahibi olduğum her şey uygulama hata ayıklama günlüklerine yöneliktir. günlükleri geçiyor ederken ben aşağıdaki öğeleri gözlenen:AES/ECB/PKCS5Padding

  • sağlayıcı = BC
  • algoritma = AES/ECB/PKCS5Padding
ben AES kullanıldığına dair yukarıdaki gözlemlerinden sonuçlandırmak olabilir

ama Anahtar gücü anlayamadım. Burada birkaç RnD'den sonra, aşağıdaki sonuca vardım.

Kullanımda olan AES/ECB/PKCS5PADDING, anahtar uzunluğunun 128 bit olduğu anlamına mı geliyor? Birisi bunun doğru olup olmadığını söyleyebilir mi?

+0

İlk liste öğesi ** provider = BC ** – mjoi

+0

Java ile ne ilgisi var? – Pooya

+0

Java ile ilgisi yok. [Security community] (http://security.stackexchange.com) –

cevap

0

Kullanımda olan AES/ECB/PKCS5PADDING, anahtar uzunluğunun 128 bit olduğu anlamına mı geliyor? Birisi bunun doğru olup olmadığını söyleyebilir mi?

Hayır, size kullanılan anahtarı anlatmaz. AES, 128, 192 ve 256 bit anahtar boyutlarını destekler. Bildiğim Java için tüm JCE sağlayıcıları, girdiğiniz anahtarın boyutuna bağlı olarak uygun algoritmayı (AES-128, AES-192 veya AES-256) kullanır. Eğer bayt dizisinin ne kadar büyük olduğunu anlayamazsanız Cipher'e bir anahtar olarak geçti, o zaman gücü belirlemek için şanslar zayıf.

Makineye erişiminiz açıksa, 256 bit (ve 192 bit?) Için gerekli olan Sınırsız Gücü ilke dosyalarının (Java 7 için example) yüklü olup olmadığını kontrol edebilirsiniz. Yüklü değilse, anahtar büyük olasılıkla 128 bit genişlikte olacaktır.

+0

Merhaba, Artjob, Yanıtlar için teşekkürler. Gerçekten yardımcı oldu. Günlükleri tekrar inceledim ve "Sınırsız güç JCE yüklü" yazan bir satır öğesi bulabilirim. Bundan 256 bit kullanımdan çıkabilir miyim. – mjoi

+0

Hayır, yalnızca AES-256'nın mümkün olduğu sonucuna varabilirsiniz. Bu, koda bağlı olarak AES-256'nın kullanıldığı anlamına gelmez. –

+0

Çok teşekkürler @Artjom. !! – mjoi