Siemka, tworze system ściągania i udostępniania plików. Jednym z zadań servera jest wymiana list udostępnianych plików między hostami wraz z ich sumami kontrolnymi MD5. No właśnie, wraz z ich sumami kontrolnymi MD5. Poczytałem na interencie że jest to algorytm kryptograficzny i znalazłem zastosowanie dla ciągu znaków za pomocą klasy MessageDigest
Moje pytania są następujące:
-W jaki sposób wyliczyć MD5 dla kontkretnych plików(File).
-W jaki sposób weryfikować je.
-Do czego nam to potrzebne:)
0
0
servera
serwera
W jaki sposób wyliczyć MD5 dla kontkretnych plików(File).
W przypadku ogólnym: wrzuć zawartość pliku do zmiennejString
i policz MD5 tego ciągu znaków.
Być może Java udostępnia jakieś metody pomocnicze, które potrafią robić to same.
W jaki sposób weryfikować je.
Porównujesz odpowiadające sobie znaki jednej i drugiej sumy (tj.hashA[0] == hashB[0] && hashA[1] == hashB[1] && ... && hashA[n] == hashB[n]
, czyli generalniehashA.equals(hashB)
).
Do czego nam to potrzebne:)
Udostępniając drugiemu serwerowi samą sumę kontrolą każdego pliku nie musisz mu wysyłać całego pliku, aby sprawdzić czy ma on u siebie aktualną wersję. Wysyłasz jedynie sumy kontrolne, on sobie je porównuje ze swoimi i dzięki temu wie, które pliki musi pobrać.