# 错误：这些包的哈希值与 requirements 文件中的不匹配。如果您更新了包版本，请同时更新哈希值。否则，请仔细检查包内容；可能有人篡改了它们。
  package==1.2.3 from https://files.pythonhosted.org/packages/.../package-1.2.3.tar.gz#sha256=abc123...:
    期望 sha256 abc123...
    实际 sha256 def456...

- **ID:** `pip/requirements-file-hash-mismatch-line`
- **领域:** pip
- **类别:** data_error
- **验证级别:** ai_generated
- **修复率:** 90%

## 根因

下载的包文件的哈希值与 requirements 文件中固定的哈希值不匹配，表明下载损坏、包重新上传后不匹配或存在安全篡改尝试。

## 版本兼容性

| 版本 | 状态 | 引入 | 弃用 |
|------|------|------|------|
| pip 23.2 | active | — | — |
| Python 3.11 | active | — | — |
| hashin 0.17 | active | — | — |

## 解决方案

1. ```
   使用 'pip hash <package>.tar.gz' 重新生成包哈希，并用新哈希更新 requirements 文件。
   ```
2. ```
   从 requirements 文件中移除哈希行，然后使用 'pip freeze > requirements.txt' 重新固定以获取新哈希。
   ```
3. ```
   使用 'hashin' 工具更新所有哈希：'hashin --update-all package==1.2.3'
   ```

## 无效尝试

- **** — Clearing pip cache with 'pip cache purge' does not fix hash mismatch; the downloaded file hash is still wrong. (95% 失败率)
- **** — Using --no-cache-dir forces a fresh download but if the source hash changed, it still mismatches. (90% 失败率)
- **** — Ignoring the error with --no-hash is insecure and may expose to tampered packages. (50% 失败率)
