2014-09-23 106 views
0

試圖理解使用AES解密文件的應用程序中的以下代碼片段。我不是一個Java程序員。如果我知道變量字節a []的值,是否可以解密文件?AES文件解密

 static byte a[] = { ..... }; 

     SecretKeySpec key; 

     if (key == null) 
     { 
      ByteArrayOutputStream bos = new ByteArrayOutputStream(); 
      bos.write(a); 
      bos.write(abyte1); 
      key = new SecretKeySpec(bos.toByteArray(), "AES"); 
      bos.close(); 
     } 
     Cipher cipher = Cipher.getInstance("AES"); 
     cipher.init(2, key); 
     CipherInputStream cipherinputstream = new CipherInputStream(inputstream, cipher); 

回答

0

似乎a持有除最後一個字節,這似乎在abyte1隱藏祕密密鑰。所以如果你知道所有的一個,只剩下255個可能的鍵值,你可以輕鬆地 trivially蠻力。

+1

@JohnE:不客氣。就像一般說明一樣,沒有必要在Stackoverflow上發佈「謝謝」。簡單地說,如果你發現一個有用的答案(或者對於這個問題的一個問題),就可以開始行動。 – 2014-09-24 08:41:24