V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
acess
V2EX  ›  问与答

为什么从微软官网下载回来的文件数字签名是无效的?

  •  
  •   acess · 2016-08-08 06:49:51 +08:00 · 3874 次点击
    这是一个创建于 3047 天前的主题,其中的信息可能已经有所发展或是发生改变。
    https://download.microsoft.com/download/E/4/6/E46671CC-30AA-448F-9A65-0A59A073A3B4/SSMS-Setup-CHS.exe

    直接下载回来,文件信息如下:
    大小: 846433792 字节
    MD5: CF6B8046D746AF5FA346D5FF88CA4E76
    SHA1: C410257ACFDEF39B6DA90852956CC8959649D390

    数字签名是无效的。我没点开运行。

    用东京的 VPS 下载回来,数字签名就正常了,文件信息:
    大小: 846433792 字节
    MD5: 60936520DBEB035DF8F403834687E076
    SHA1: 1FED609617E8EA617BC2D38AEAB92A97ACE31C9A

    用 fc 命令对比了一下,结果如下(左边是数字签名无效的,直接下载回来的;右边的是数字签名有效,通过 VPS 中转下载回来的)
    正在比较文件 SSMS-Setup-CHS.exe 和 SSMS-SETUP-CHS (1).EXE
    15029E8C: 7D 7C
    15029E90: C1 41
    15029E93: 1A 1E
    15029EF6: 08 09
    15029EFA: 21 A1
    15029EFD: 9F 9B
    15A7E494: 74 70
    15A7E499: 53 51
    15A7E49B: D4 C4
    15A7E6D8: E9 ED
    15A7E6DD: 90 92
    15A7E6DF: 40 50
    1693C551: 6E 6F
    1693C555: D7 57
    1693C558: 90 94
    1693C6ED: 9D 9C
    1693C6F1: 29 A9
    1693C6F4: 7C 78
    17C0D5FB: 53 73
    17C0D600: 08 18
    17C0D602: C4 44
    17C0D7D1: F9 D9
    17C0D7D6: 50 40
    17C0D7D8: 3F BF
    1DF772B0: 7F 77
    1DF772B5: 82 86
    1DF772B7: 94 B4
    1DF776C4: 83 8B
    1DF776C9: AD A9
    1DF776CB: 3A 1A
    1E1B8AFA: 0A 0E
    1E1B8AFE: 9F 9B
    1E1B8AFF: 1C 1E
    1E1B8B01: 89 99
    1E1B8B03: 8A 88
    1E1B8B05: FE EE
    1E381C8B: EC ED
    1E381C8F: AC 2C
    1E381C92: B7 B3
    1E381E33: B3 B2
    1E381E37: 5D DD
    1E381E3A: 3A 3E
    1F336514: 03 02
    1F336518: FB 7B
    1F33651B: E1 E5
    1F336718: C0 C1
    1F33671C: 1F 9F
    1F33671F: FF FB
    1F6D5BB2: 1C 5C
    1F6D5BB7: 31 11
    1F6D5BBA: 3D 3C
    1F6D5CA2: 77 37
    1F6D5CA7: 5F 7F
    1F6D5CAA: 3E 3F
    1FB542AB: 1A 12
    1FB542B0: 2E 2A
    1FB542B2: 6C 4C
    1FB542D1: 32 3A
    1FB542D6: 71 75
    1FB542D8: 98 B8
    第 1 条附言  ·  2016-08-08 08:16:32 +08:00
    下载都是用 Chrome 的。

    又试了一遍 Cygwin64 里运行:
    wget -O - https://download.microsoft.com/download/E/4/6/E46671CC-30AA-448F-9A65-0A59A073A3B4/SSMS-Setup-CHS.exe | sha1sum

    结果 SHA-1 还是 c410257acfdef39b6da90852956cc8959649d390
    第 2 条附言  ·  2016-08-08 08:35:25 +08:00
    wget 运行时的输出,说不定就是 222.174.239.22 这个 IP 上的文件是有问题的。

    正在解析主机 download.microsoft.com (download.microsoft.com)... 222.174.239.22, 2600:1417:9:39f::e59, 2600:1417:9:391::e59
    正在连接 download.microsoft.com (download.microsoft.com)|222.174.239.22|:443... 已连接。
    已发出 HTTP 请求,正在等待回应... 200 OK
    长度: 846433792 (807M) [application/octet-stream]
    正在保存至: “ STDOUT ”
    10 条回复    2016-08-08 09:28:21 +08:00
    saberlion
        1
    saberlion  
       2016-08-08 07:25:51 +08:00 via Android
    运营商 CDN 问题,缓存投毒
    just4test
        2
    just4test  
       2016-08-08 07:31:11 +08:00 via Android
    HTTPS 没法缓存啊。
    just4test
        3
    just4test  
       2016-08-08 07:31:59 +08:00 via Android
    你再直接下一遍试试,是不是写硬盘的时候出错了
    0TSH60F7J2rVkg8t
        4
    0TSH60F7J2rVkg8t  
       2016-08-08 07:32:07 +08:00 via iPhone
    天啊,链接是 https 的,下载下来被篡改了?怎么做到的?难道 https 也不安全了吗?
    tobyxdd
        5
    tobyxdd  
       2016-08-08 07:38:26 +08:00 via Android
    也可能微软针对不同 ip 返回不同文件??
    acess
        6
    acess  
    OP
       2016-08-08 08:04:31 +08:00
    @just4test 下载了几遍都是这个结果。
    感觉是 CDN 的问题。
    我没点开运行,点开了说不定也是自校验失败吧。
    abelyao
        7
    abelyao  
       2016-08-08 08:10:58 +08:00 via iPhone
    怎么下载的?迅雷?直接另存为?
    line
        8
    line  
       2016-08-08 08:27:28 +08:00
    我下载是正常的, 上海电信
    ksupertu
        9
    ksupertu  
       2016-08-08 08:45:32 +08:00 via Android
    黑暗精灵病毒?
    keyfunc
        10
    keyfunc  
       2016-08-08 09:28:21 +08:00
    如果 cdn 要用 https 的话 cdn 提供商那边也会有你的私钥的吧
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1009 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 18:36 · PVG 02:36 · LAX 10:36 · JFK 13:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.