Я использую последний s3browser 8.1.5 и заметил, что запрос POST для завершения многочастной загрузки в AWS S3 имеет CONTENT-MD5
в заголовке.
Как вычисляется значение заголовка CONTENT-MD5
?
В приведенном ниже запросе CONTENT-MD5
не соответствует md5 в кодировке base64 тела.
Из tcpdump:
POST /bucketxxxxx/filename?uploadId=OTc2NzgwNTItMzZjNS00MWJlLTk3Y2YtOWNlNDU5MjI0MGFl HTTP/1.1
User-Agent: S3 Browser 8-1-5 https://s3browser.com
Authorization: AWS xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Content-MD5: z8hR0GST3Hm6f518pQ7XUQ==
x-amz-date: Thu, 20 Dec 2018 04:22:54 GMT
Host: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Content-Length: 1173
<CompleteMultipartUpload><Part><PartNumber>1</PartNumber><ETag>"3e27d45b10b2d069a00eb079a62b90ea"</ETag></Part><Part><PartNumber>2</PartNumber><ETag>"eea2223793a13e29bbef110f92b29e40"</ETag></Part><Part><PartNumber>3</PartNumber><ETag>"b9bf9ef5a37f63c72eb108767e64d56f"</ETag></Part><Part><PartNumber>4</PartNumber><ETag>"0667c6da478617af1cf86c3f4f0e86ac"</ETag></Part><Part><PartNumber>5</PartNumber><ETag>"5433c390b9fc98fd90b9c0334f56beba"</ETag></Part><Part><PartNumber>6</PartNumber><ETag>"4539dcbbac5f028637d17180a674881e"</ETag></Part><Part><PartNumber>7</PartNumber><ETag>"b079a02747e444b95bec8d3374e1b6df"</ETag></Part><Part><PartNumber>8</PartNumber><ETag>"9f22ca90596f4ff455e1ab79ba12fdc0"</ETag></Part><Part><PartNumber>9</PartNumber><ETag>"c573cc702aa3f17cea3ca4248e6c20e9"</ETag></Part><Part><PartNumber>10</PartNumber><ETag>"b6d53f23fd0fa4bb5b8e702f0cdc2661"</ETag></Part><Part><PartNumber>11</PartNumber><ETag>"e780dd0053d08366b062deb640d61e4d"</ETag></Part><Part><PartNumber>12</PartNumber><ETag>"a212f6c80c8511c6a26405f909dacc70"</ETag></Part><Part><PartNumber>13</PartNumber><ETag>"5530ed86f6423ad8ab1c0cb2a703e9ef"</ETag></Part></CompleteMultipartUpload>
root@VM# echo -n "<CompleteMultipartUpload><Part><PartNumber>1</PartNumber><ETag>"3e27d45b10b2d069a00eb079a62b90ea"</ETag></Part><Part><PartNumber>2</PartNumber><ETag>"eea2223793a13e29bbef110f92b29e40"</ETag></Part><Part><PartNumber>3</PartNumber><ETag>"b9bf9ef5a37f63c72eb108767e64d56f"</ETag></Part><Part><PartNumber>4</PartNumber><ETag>"0667c6da478617af1cf86c3f4f0e86ac"</ETag></Part><Part><PartNumber>5</PartNumber><ETag>"5433c390b9fc98fd90b9c0334f56beba"</ETag></Part><Part><PartNumber>6</PartNumber><ETag>"4539dcbbac5f028637d17180a674881e"</ETag></Part><Part><PartNumber>7</PartNumber><ETag>"b079a02747e444b95bec8d3374e1b6df"</ETag></Part><Part><PartNumber>8</PartNumber><ETag>"9f22ca90596f4ff455e1ab79ba12fdc0"</ETag></Part><Part><PartNumber>9</PartNumber><ETag>"c573cc702aa3f17cea3ca4248e6c20e9"</ETag></Part><Part><PartNumber>10</PartNumber><ETag>"b6d53f23fd0fa4bb5b8e702f0cdc2661"</ETag></Part><Part><PartNumber>11</PartNumber><ETag>"e780dd0053d08366b062deb640d61e4d"</ETag></Part><Part><PartNumber>12</PartNumber><ETag>"a212f6c80c8511c6a26405f909dacc70"</ETag></Part><Part><PartNumber>13</PartNumber><ETag>"5530ed86f6423ad8ab1c0cb2a703e9ef"</ETag></Part></CompleteMultipartUpload>" | openssl md5 -binary | openssl enc -base64
cLC/vE8pS43jD2ZSgUB5iQ==
Спасибо,
Бхаскар