Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Java - cifratura con più chiavi
Forum - Java - cifratura con più chiavi

Avatar
Oneshot (Normal User)
Newbie


Messaggi: 6
Iscritto: 23/09/2009

Segnala al moderatore
Postato alle 15:50
Mercoledì, 23/09/2009
Ciao,

vorrei realizzare un programma che prende una risorsa, che può essere un file audio o video, e ne effettui la cifratura usando più chiavi in ottica poi di farne uno streaming. In pratica vorrei cifrare le varie parti del contenuto con chiavi diversi. Secondo voi è fattibile la cosa?

grazie e complimenti per il sito!!!!

PM Quote
Avatar
eddiewrc (Member)
Expert


Messaggi: 560
Iscritto: 30/04/2006

Segnala al moderatore
Postato alle 19:07
Sabato, 26/09/2009
secondo me ti devi spiegare un po' meglio. cmq non mi sembra niente di infattibile, se ho capito bene!

PM Quote
Avatar
netarrow (Admin)
Guru^2


Messaggi: 2502
Iscritto: 12/05/2004

Segnala al moderatore
Postato alle 20:36
Sabato, 26/09/2009
fattibile è fattibile.
ma fai prima a usare un semplice SSL e via, senza complicarti la vita e cifrare con chiavi diverse per ogni porzione di file.

Anche dovresti far scambiare a client e server più chiavi e diventa scocciante doversi gestire con qualche chiave decifrare quale porzione.

se con SSL cifri tutto il flusso dati della socket e usi una chiave decentemente grande tipo 1024/2048 bit stai certo che chi eventualmente si mette in mezzo alla connessione per sniffare i dati non capisce nulla.

poi java supporta SSL nella core standard, crei un SSLSocket e senza pensarci tu sarà tutto cifrato.

PM Quote
Avatar
Oneshot (Normal User)
Newbie


Messaggi: 6
Iscritto: 23/09/2009

Segnala al moderatore
Postato alle 11:35
Domenica, 27/09/2009
Ciao,

sto incontrando già problemi nel cifrare un file mp3 con una sola chiave. In pratica quando cerco di aprire il file decifrato non riesco a riprodurlo.
Vi posto qui il codice che ho utilizzato
PS: siccome sto facendo delle prove in questo codice c'è sia il cifratore sil il decifratore, li attivavo/disattivavo commentando/decommentando il codice
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;

import javax.crypto.*;
import java.security.*;

public class Sperimental {
    
    public static void main (String args[]) throws Exception
    {
        
        File file= new File("/home/prova.mp3");
        String path=file.getPath();
        System.out.println("File da cifrare:"+ path);
        
        KeyGenerator generator= KeyGenerator.getInstance("DES");
        generator.init(new SecureRandom());
        SecretKey key= generator.generateKey();
        Cipher cipher = Cipher.getInstance("DES/ECB/PKCS5Padding");

        
        // Modalità cifratore
        //FileInputStream in =new FileInputStream(file);
        //FileOutputStream fileout= new FileOutputStream("/home/cifrato.mp3");
        //cipher.init(Cipher.ENCRYPT_MODE, key);
        //Modalità decifratore
        FileInputStream in= new FileInputStream("/home/cifrato.mp3");
        FileOutputStream fileout= new FileOutputStream("/home/decifrato.mp3");
        cipher.init(Cipher.DECRYPT_MODE,key);
        
        
        CipherOutputStream out= new CipherOutputStream(fileout,cipher);
        
        byte [] buffer= new byte[8192];
        int length;
        
        while((length=in.read(buffer))!=-1)
        {
        
            System.out.println("Il valore di length(espresso in bytes) :"+ length);
            out.write(buffer, 0, length);    
            
        }
        
        in.close();
        out.close();
    }
}

PM Quote