Verificación de integridad de paquetes [duplicado]

0

Recientemente he usado pip para instalar paquetes dentro de una red pública sin pensarlo:

pip install packetname

y me preguntaba si pip realiza algún tipo de verificación mediante hashing o PGP.

    
pregunta Anton Althoff 14.12.2017 - 00:32
fuente

2 respuestas

1

Aparte del aspecto de seguridad basado en SSL, al instalar desde PyPI pip tiene un Mecanismo de verificación basado en MD5 (aunque se puede cambiar el algoritmo de hash), que está diseñado para prevenir / verificar daños en la descarga y no ser realmente un guardia de seguridad:

  

PyPI proporciona un hash MD5 en la parte del fragmento de cada paquete   descargue la URL, como # md5 = 123 ..., que verifica como protección   contra la corrupción de descargas. Otros algoritmos hash que tienen   El soporte garantizado de hashlib también es compatible aquí: sha1, sha224,   sha384, sha256 y sha512. Dado que este hash se origina de forma remota, es   no es un protector útil contra la manipulación y, por lo tanto, no satisface la   --require-hashes exige que cada paquete tenga un hash local.

Pero, pip también puede funcionar en el modo de comprobación de hash (que no está habilitado de forma predeterminada), que le permite validar contra hashes locales para cada uno de los paquetes que instala:

  

Desde la versión 8.0, pip puede verificar los archivos de paquetes descargados con   hashes locales para proteger contra la manipulación remota.

Echa un vistazo a este hilo relevante también:

respondido por el alecxe 14.12.2017 - 03:15
fuente
0

pip usa https como protocolo de transferencia, a menos que eludas conscientemente esto. Esto ya incluye alguna verificación (el paquete proviene de una fuente confiable y se transfiere en forma cifrada y solo se descifra en la computadora de destino).

No estoy seguro de los mecanismos de verificación adicionales integrados en pip; pero probablemente hay.

    
respondido por el jknappen 14.12.2017 - 00:44
fuente

Lea otras preguntas en las etiquetas