Calcul crc32

marie_eve153 Messages postés 1 Date d'inscription vendredi 11 juin 2004 Statut Membre Dernière intervention 5 juillet 2005 - 5 juil. 2005 à 15:25
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 - 25 juil. 2005 à 11:10
Bonjour,

je cherche à calculer le crc32 d'une chaine binaire en java.

Si quelqu'un a des sources java car je ne trouve qu'en c++, merci beaucoup.

delphine

9 réponses

cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
6 juil. 2005 à 09:33
Salut,
utilise le package java.util.zip et la classe CRC32 !

http://java.sun.com/j2se/1.4.2/docs/api/java/util/zip/CRC32.html

Ce que je ne comprends pas c'est que même si je connais cette classe, lorsque je tape 'crc32 java' dans google, je tombe directement sur les bons liens ... d'ailleurs l'adressede la javadoc de cette classe est le 1er lien ... faut chercher un peu des fois !

++
0
cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
18 juil. 2005 à 12:12
Juste une question comme çà: est-ce que le CRC32 a un rapport fonctionnel avec MD5, càd que c'est une sorte d'algo qui extrait une empreinte caractéristique à partir d'une donnée ?
0
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
18 juil. 2005 à 14:12
Salut,
c'est un peu ça mais ça ne sert pas du tout à la même chose, par conséquent les algos ne calcul pas exactement dans le même but et ne donne pas un résultat ayant le même sens ...
Pour le controle d'erreur : CRC et pour un hash d'un fichier (données en général) pour vérifier son intégrité : MD5 ou SHA1 (attention ces derniers sont beaucoup polus long à calculé qu'un CRC !)

Voici un article pour le CRC qui te montrera son intérêt : http://www.commentcamarche.net/base/control.php3

++
0
cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
18 juil. 2005 à 16:47
Effectivement, ce n'est pas pareil. CRC sert dans les Zip et Rar, et j'étais surpris du fait que l'Apache Foundation donne des hash MD5 sur leur site pour s'assurer qu'on a bien téléchargé le bon fichier... Petit mélange, quoi !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
18 juil. 2005 à 17:36
Tu verras que énormément de site donne les hash MD5 des fichiers ... et certain le CRC32 ...

Ensuite va savoir si certains savent exactement la différence ...
0
cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
24 juil. 2005 à 21:09
Calculer la clé sur une chaîne, ok facile (dans le principe, en Java, je sais pas) ! Mais sur un fichier complet, comment fait-on ? Le calcul doit être très long.... Y a-t-il un logiciel dédié ?

===========
ViewVite XP : HTML
0
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
24 juil. 2005 à 21:18
Utilise les classes CRC32 et MessageDigest (fais du SHA1, MD5, ...)



++
0
cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
25 juil. 2005 à 10:57
Ok de l'info, mais techniquement, j'ai déjà une unité en Pascal qui fait du MD5. Je peux appliquer la fonction sur une chaîne de caractère qui supporte très bien la palette entière ASCII...

DONC, est-ce qu'il faut charger le fichier entier dans la chaîne et appliquer MD5 pour obtenir la clé ?

Parce qu'il existe des fichiers de 30 Mo qui ont des clés, et je sens que mon String (format type des chaînes de caractères) risque de morfler un max pour une telle taille... Et je ne sais pas s'il existe des méthodes de découpage et de recombination pour limiter de si grands calculs.

===========
ViewVite XP : HTML
0
cs_neodante Messages postés 2835 Date d'inscription lundi 11 août 2003 Statut Modérateur Dernière intervention 16 décembre 2006 11
25 juil. 2005 à 11:10
Salut,
En fait si tu le fait en Java tu lui donnes des tableaux de byte avec une méthode update() dans laquelle tu passeras les bytes que tu lis au fur et à mesure (donc pas de lecture complète du fichier ...) :
http://java.sun.com/j2se/1.4.2/docs/api/java/security/MessageDigest.html

++
0