Correcto. Como se explica en ese artículo, los torrents utilizan el protocolo BitTorrent para compartir los datos robados de Sony. Cada pieza que se descarga a través de una semilla se vincula con un índice en el archivo, y el hash de esa parte se comprueba y verifica. Sin embargo, no creo que sea este hash al que se refieren en ese artículo. A continuación, describiré el proceso de descarga de un archivo a través de BitTorrent.
.torrent File
El protocolo de BitTorrent dice que el archivo .torrent contiene dos campos de información:
-
announce
: URL del rastreador
-
info
: se asigna a un diccionario de claves
Cada dato en el diccionario se usa para juntar el archivo original. Esto significa que un archivo se divide en partes predeterminadas, y cada pieza es generalmente una potencia de dos. Este diccionario contiene toda la información sobre cada pieza, la longitud y el hash SHA1 de cada pieza para verificar una descarga completa.
Rastreador
Cuando intenta descargar un archivo con BitTorrent, intentará realizar una Solicitud GET del Rastreador. En respuesta, hay mucha información sobre qué compañeros están actualmente disponibles para la descarga. Normalmente, una versión comprimida de la lista de pares se puede utilizar para descargar el archivo. Se realizan conexiones a los compañeros para descargar cada pieza, y una vez que se han recibido todas las piezas, se notifica al cliente Torrent. Cada pieza se considera completa cuando se verifica el hash SHA1 de los datos. Como se indicó anteriormente, este valor de hash se proporciona en el diccionario info
.
Este hash SHA1 es no el hash que se está falsificando. Otra información adicional que se incluye en la respuesta del Rastreador es un campo llamado info_hash
:
info_hash
El hash sha1 de 20 bytes de la forma codificada del valor de información del archivo metainfo. Tenga en cuenta que esta es una subcadena del archivo metainfo.
El hash de información debe ser el hash de la forma codificada como se encuentra en el
Archivo .torrent, independientemente de que no sea válido. Este valor será casi
Ciertamente hay que escapar.
Mantén esto en mente, volveremos a ello.
Compañeros
El protocolo Peer es lo que se está falsificando. Cada par debe establecer qué parte del archivo se descarga por ese par utilizando un índice. Existe un protocolo de enlace para establecer esta conexión, e implica enviar el valor de info_hash
. El cliente que descarga el archivo verifica que coincide con el hash SHA1 del campo bencoded info
del archivo .torrent.
Lo que Sony supuestamente hizo fue publicar archivos falsos con los valores de hash correctos para establecer conexiones con los clientes que intentan descargarlos. Los archivos pueden ser falsos porque el cliente debe descargar la pieza completa para verificar esa parte. Cuando la comprobación falla, se debe reiniciar la descarga de esa pieza.
Como puede ver (y se menciona en ese artículo), esto puede ser un problema para los servidores web. La descarga constante de partes del archivo con, literalmente, sin final puede terminar causando un gran uso de ancho de banda. Esto puede resultar en un DDoS del servidor web.