MD5 из локального файла и MD5 (eTag) из S3 не одно и то же

Я получаю MD5 локального файла, но он отличается от MD5 (eTag) того же "файл в Amazon S3. Я хотел бы выяснить, являются ли последние файлы, которые у меня есть в S3, такими же, как и у меня локально. Если я не могу сравнить MD5, как мне это сделать?

Создание MD5 из локального файла (усеченный код):

MessageDigest md = MessageDigest.getInstance("MD5");
byte[] md5 = Files.getDigest(localFile, md);
String hashtext = DigestUtils.md5Hex(md5);

Получение MD5 (eTag) из S3 (усеченный код):

ObjectListing objectListing = s3.listObjects(new ListObjectsRequest().withBucketName(bucketName));
List<S3ObjectSummary> objectSummaries = objectListing.getObjectSummaries();
for(S3ObjectSummary objectSummary : objectSummaries) {
    String MD5 = objectSummary.getETag();
}

PS: Я использую org.apache.commons.codec.digest.DigestUtils и com.google.common.io.Files библиотеки.

8
задан Gangaraju 7 November 2016 в 08:50
поделиться