GitHub原始文件 - Etag算法

时间:2012-06-05 20:06:53

标签: github checksum etag

是否有人知道访问原始内容时GitHub ETag是如何生成的?

据我所知,这不是MD5,SHA1或任何常见的SHA变体;

示例http标头:

HTTP/1.1 200 OK
Server: nginx/1.0.13
Date: Tue, 05 Jun 2012 19:46:08 GMT
Content-Type: text/html; charset=utf-8
Connection: keep-alive
Status: 200 OK
ETag: "aa1da178ae0a43e23ce49a6b8f474738"

ETag长度为32个字符,表示MD5,但这与下载文件的MD5校验和不匹配(使用curl下载)。

我知道ETag应该被视为不透明的标识符。仍然,好奇。

1 个答案:

答案 0 :(得分:0)

我的猜测是他们正在使用股票nginx etag模块。

https://github.com/mikewest/nginx-static-etags/blob/master/ngx_http_static_etags_module.c