Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    229

    [JAVA] settare Dictionary per unzippare dati cryptati

    Ciao a tutti,
    ho cryptato un file zippato tramita la classe javax.crypto. Dopo averlo decryptato provo a fare l'unzip tramite la classe Inflater, ma restituisce questo errore:
    "javax.servlet.ServletException: need dictionary"

    La classe che ho creato per unzippare dati non cryptati funziona e funziona anche la classe che decrypta, non so perchè però se crypto il messaggio zippato non riesco più a dezipparlo dopo averlo decryptato.

    Per settare il dictionary uso la classe consigliata getAdler e poi faccio setDictionary ma non funziona..

    Vi posto un pezzo di codice


    ByteArrayOutputStream bs = new ByteArrayOutputStream();
    Inflater decomp = new Inflater();
    byte[] buffer = new byte[1024];
    try {
    decomp .setInput(binMsg);

    while (!decomp .finished()) {

    if(decomp .needsDictionary()){
    int adler = decomp .getAdler();
    decomp .setDictionary(buffer,0,adler);
    }

    int count = decomp .inflate(buffer);

    bs .write(buffer, 0, count);
    }

    } catch (Exception e) {
    System.out.println("Exception:" + e.toString());
    }
    Ho cercato documentazione in giro ma non ho trovato granchè

    Grazie.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    229
    Mi rispondo da solo anche se non ho trovato la soluzione.
    Sembrerebbe dalla documentazione che sia necessario impostare una quantità predeterminata di byte da passare al dictionary e ciò può essere fatto sfruttando il ritorno dll metodo getAdler.
    La cosa che non mi è chiara è come faccio ad impostare un dictionary in byte sfruttando il ritorno di tipo intero dal metodo getAdler.
    Non riesco a capire quale sia il legame tra un Adler32 e un Dictionary in byte....
    Se qualcuno sa dirmi dove trovare documentazione o darmi qualche dritta gli sarei grato.
    Sulla documentazione ufficiale non sono riuscito a trovare info utili.
    Grazie.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.