Bytes verschwinden im CipherInputStream

QwertSmeik

Mitglied
Hallo,

Ich möchte einen Datenstrom dechiffrieren und nutze daher den CipherInputStream folgendermaßen:
Java:
    public void decryptFile(String AESKey, File file, File output) throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, IOException {
        System.out.println(AESKey);
        byte[] key = (AESKey).getBytes("UTF-8");
        MessageDigest sha = MessageDigest.getInstance("MD5");
        key = sha.digest(key);
        key = Arrays.copyOf(key, 16); 
        SecretKeySpec secretKeySpec = new SecretKeySpec(key, "AES");
        
        Cipher cipher2 = Cipher.getInstance("AES");
        cipher2.init(Cipher.DECRYPT_MODE, secretKeySpec);
        
        System.out.println("file.length() == "+file.length());

        CipherInputStream is = new CipherInputStream(new FileInputStream(file), cipher2);
        System.out.println(is.available());
        
        FileOutputStream os = new FileOutputStream(output);
        
        copy(is, os);

        is.close();
        os.close();
        
    }
    private void copy(CipherInputStream is, FileOutputStream os) throws IOException {
        System.out.println("avl: "+is.available());
        int i;
        byte[] b = new byte[1024];
        while((i=is.read(b))!=-1) {
            System.out.println("out: "+i);
            os.write(b, 0, i);
        }
    }

Das komische Verhalten ist nun, dass die Dateilänge 16 Bytes ist. Wenn ich die abfrage durch "file.length()" erhalte ich auch 16. Nach der Anweisung:
Java:
        CipherInputStream is = new CipherInputStream(new FileInputStream(file), cipher2);
sind diese 16 Byte plötzlich weg. "is.available()" liefert nun 0.

Wo sind diese Bytes hin? :D

Und was mache ich hier falsch? :)
Danke!
 
Zuletzt bearbeitet von einem Moderator:
Ähnliche Java Themen
  Titel Forum Antworten Datum
C BufferedReader/BufferedWriter schreibt nicht alle Bytes Allgemeine Java-Themen 2
V Input/Output Austausch von Bytes zwischen C# und Java Allgemeine Java-Themen 3
RalleYTN Input/Output Clip als ein Array von Bytes? Allgemeine Java-Themen 2
J Temperatur aus bytes auslesen. Allgemeine Java-Themen 13
L Methoden Methode gibt mir beim verschlüsseln mit RSA 0 bytes aus ? Allgemeine Java-Themen 1
J Bytes aus Socket lesen Allgemeine Java-Themen 9
Q Datentypen Short aus Bytes - Signed -> Unsigned? Allgemeine Java-Themen 9
C Datentypen int in bytes zerlegen und wieder zusammen setzen Allgemeine Java-Themen 13
K Hexadezimale Bytes Allgemeine Java-Themen 6
B bereits gelesene Bytes herausfinden Allgemeine Java-Themen 10
M FIFO Queue: bytes in, float/double/etc out Allgemeine Java-Themen 5
S String zu binary und zurück - Problem mit unsigned/signed bytes Allgemeine Java-Themen 2
TiME-SPLiNTER Von Unix, InputStreams und Null Bytes Allgemeine Java-Themen 2
K AES, Buffer und Bytes Allgemeine Java-Themen 2
S Bytes oder Hex-Werte zu Assembler Code? Allgemeine Java-Themen 6
L bytes nach int (little endian bitshift) Allgemeine Java-Themen 12
J Receive eines Hex-Bytes über COM-Port Allgemeine Java-Themen 4
G Zwei bytes vergleichen Allgemeine Java-Themen 2
M Bytes in Datei schreiben Allgemeine Java-Themen 10
T Spezielle Bytes in Datei schreiben Allgemeine Java-Themen 7
F Einlesen von Bytes Allgemeine Java-Themen 9
reibi Größe Array aus bytes Allgemeine Java-Themen 14
G RXTX verschicken einzelener Bytes Allgemeine Java-Themen 8
G WAV-Samples bearbeiten oder: 2 Bytes -> short -> float Allgemeine Java-Themen 5
T Größe eine Variablen in Bytes? Allgemeine Java-Themen 22
G Mehrere Bytes auf einmal einlesen Allgemeine Java-Themen 4
P int -> 4 bytes Allgemeine Java-Themen 11
R Menge an Bytes eines OutputStreams ermitteln. Allgemeine Java-Themen 6
R Wieviele Bytes gesendet Allgemeine Java-Themen 3
T Bestimmte bytes in einer Datei ersetzen? Allgemeine Java-Themen 4
D 16-Bit int --> 2* 8-Bit Bytes Allgemeine Java-Themen 17
H Objekte verbrauchen immer mindestens 16 Bytes Allgemeine Java-Themen 3
W Array größer als 65536 Bytes Allgemeine Java-Themen 7
A RandomAccessFile - Bytes vom Anfang der Datei löschen Allgemeine Java-Themen 32
C Code of a method longer than 65535 bytes Allgemeine Java-Themen 3
L 8 bytes von bestimmter position weg lesen? Allgemeine Java-Themen 11
D 2 Bytes in ein int convertieren Allgemeine Java-Themen 2
B Umwandeln von Bytes in float Zahl (DataInputStream) Allgemeine Java-Themen 3
G 0 Bytes bei temporäre Datei. Warum? Allgemeine Java-Themen 6
B Dateien verschwinden aus bin Ordner?! Allgemeine Java-Themen 5
K chars verschwinden Allgemeine Java-Themen 7
E Leerzeichen verschwinden beim Einlesen von .txt-Dateien Allgemeine Java-Themen 5
C Graphics verschwinden Allgemeine Java-Themen 8

Ähnliche Java Themen

Neue Themen


Oben