Quote Originariamente inviata da LeonaKennedy Visualizza il messaggio
Salve ragazzi,come posso generare la funzione di hash di un file immagine su java?
Se per "hash" intendi i noti algoritmi di hash crittografico MD5, SHA-1, SHA-256, ecc.., il framework standard di Java ha già nel package della security la classe java.security.MessageDigest che permette proprio questo. Il runtime Java ha già una serie di algoritmi implementati, MD5 e SHA-1 ci sono di sicuro e da parecchio tempo. Altri algoritmi più avanzati sono stati introdotti solo con le versioni più recenti di JDK/JRE.

Il tipo di file è indifferente. Lo puoi fare per qualunque tipo di file. In sostanza si tratta di aprire il file e leggere tipicamente a blocchi (giusto per efficienza) di tot byte per volta e "buttarli" nel MessageDigest. Alla fine puoi ottenere il digest che è un piccolo array byte[] di lunghezza fissa (es per MD5 hai un array di 16 byte ovvero i 128 bit del MD5).
Se lo vuoi formattare in stringa come esadecimale, base64 o altro, è a carico tuo (il MessageDigest NON lo fa).

Quindi:
- chiarisci quale algoritmo di hash intendi usare
- precisa la versione di JDK/JRE minima che intendi usare (così vediamo se l'algoritmo è già nel framework)
- leggi la documentazione di MessageDigest

Ultimo: per dubbi, chiedi pure.