2012-06-14 19 views
6

metni keser. IV 16bayt uzunluğundadır.AES şifreleme hiçbir dolgu</p> <p>'<strong>AES/CFB/NoPadding</strong>' ile CFB modunda AES kullanarak verileri bir dosyadan okuyup şifrelemek çalışıyorum CFB modunda

Varsayılan olarak AES, 16 baytlık bloklarla çalıştığından, CBC veya başka bir mod ancak CFB kullanıyor olsaydım bir dolgu düzeni kullanmayı düşünürdüm. CFB esas olarak düz metin için dolgu gerektirmez.

Yani, dosyam 16 bayttan daha az veri içeriyorsa, hiçbir şey şifrelenmez. 16 bayttan büyükse, yalnızca ilk 16 bayt şifrelenir.

Bu, açıkça, blok boyutunun tekmelendiğini ve bir alt akış veya bayt taşması olduğunu gösterir. W.r.t. blok boyutu, daha sonra bu veri/baytlar atılır.

Anlamadığım şey CFB'yi kullanırken veriyi doldurmama gerek yok .. doğru! Öyleyse neden AES'in 16byte varsayılan blok boyutu harekete geçiyor ve veri kesiliyor?

+1

Şifreleme için kullandığınız kodu yükleyin. – Robert

cevap

4

Bu mod için geri yüklemek istediğiniz bit sayısını belirtmediniz ve bu nedenle varsayılan 128 biti alıyorsunuz. Bu, aşağıdaki bağımsız değişken için kullanmanız gereken 8 bit gibi geliyor, getInstance():

İlgili konular