首页 > 解决方案 > pip 出现“包不匹配哈希”错误

问题描述

我正在尝试使用 pip 安装软件包。在这种情况下,对于 OpenCV。但是,我无法安装任何东西。我正在使用 python 3.5.3 en pip 18.0(使用 get-pip.py 安装)。

无论我尝试什么,命令“pip install package-name”都会生成以下错误:

这些包与需求文件中的哈希不匹配。如果您已更新软件包版本,请更新哈希值。否则,请仔细检查包装内容;可能有人篡改了它们。opencv-contrib-python-headless from https://www.piwheels.org/simple/opencv-contrib-python-headless/opencv_contrib_python_headless-3.4.3.18-cp35-cp35m-linux_armv6l.whl#sha256=ff894c0cc7c98b05b7b260a1dc462e7ad0a4220b042072fc0134a2b7a92bc4a5 : Expected sha256 ff894c0cc7c98b05b7b260a1dc462e7ad0a4220b042072fc0134a2b7a92bc4a5 Got 4119d8c56d19ef044c1faca317dd10f2bb3b50cbee77426a22feca9b641c5637

我尝试过的事情:

标签: pythonopencvpip

解决方案


这是https://pywheels.org/维护者需要解决的问题。

https://www.piwheels.org/simple/opencv-contrib-python-headless/ 包含指向URL 中嵌入opencv_contrib_python_headless-3.4.3.18-cp35-cp35m-linux_armv6l.whl的 SHA256 的链接。ff894c0cc7c98b05b7b260a1dc462e7ad0a4220b042072fc0134a2b7a92bc4a5

但是,下载文件时,它的实际SHA256 是4119d8c56d19ef044c1faca317dd10f2bb3b50cbee77426a22feca9b641c5637(我自己得到了这个,所以它不是攻击者在您的网络连接中间胡闹,只是为了替换恶意包)。

如果攻击者将恶意软件注入软件包但未更新校验和,这可能意味着恶意篡改已经发生(可能是直接破坏了 PyWheels 基础设施的人)。安全的做法是联系网站所有者并要求他们调查问题。


推荐阅读