整合包中的 SHA-512 校验 —— 为什么每次下载都要验哈希
SHA-512 的作用
SHA-512 是一种加密哈希函数。对任意输入文件,它都会输出一个固定长度的 128 位十六进制字符串。相同的文件永远得到相同的哈希值;哪怕只改动一个字节,哈希值也会完全不同。
整合包为什么要用它
清单文件记录了每个模组 JAR 的 SHA-512 值。下载这些 JAR 的工具(包括我们的转换器)会在下载完成后重新计算哈希并比对。数值一致说明文件完整;不一致则说明文件已损坏或被篡改。 .mrpack 清单文件记录了每个模组 JAR 的 SHA-512 值。下载这些 JAR 的工具(包括我们的转换器)会在下载完成后重新计算哈希并比对。数值一致说明文件完整;不一致则说明文件已损坏或被篡改。
哈希不匹配意味着什么
- 模组作者用同一个 URL 重新上传了不同内容的文件(少见,且违反 Modrinth 政策)
- CDN 返回了损坏的响应(网络错误)
- 下载过程被恶意代理劫持
遇到不匹配时转换器会重试,若持续失败则给出警告。
这防的是什么
哈希校验确保进入你 ZIP 的 JAR 文件与整合包作者指定的完全一致 —— 而不是中间人注入的恶意程序。配合 HTTPS 下载,可以提供很强的端到端完整性保障。