Comment puis-je calculer la valeur de hachage d'un fichier torrent en utilisant Java? Puis-je le calculer en utilisant bencode?Comment calculer la valeur de hachage d'un torrent en utilisant Java
Répondre
Les fichiers Torrent sont hachés à l'aide de SHA-1. Vous pouvez utiliser MessageDigest
pour obtenir une instance SHA-1. Vous devez lire jusqu'à ce que 4:info
soit atteint, puis rassembler les octets pour le résumé jusqu'à la longueur restante moins un.
File file = new File("/file.torrent");
MessageDigest sha1 = MessageDigest.getInstance("SHA-1");
InputStream input = null;
try {
input = new FileInputStream(file);
StringBuilder builder = new StringBuilder();
while (!builder.toString().endsWith("4:info")) {
builder.append((char) input.read()); // It's ASCII anyway.
}
ByteArrayOutputStream output = new ByteArrayOutputStream();
for (int data; (data = input.read()) > -1; output.write(data));
sha1.update(output.toByteArray(), 0, output.size() - 1);
} finally {
if (input != null) try { input.close(); } catch (IOException ignore) {}
}
byte[] hash = sha1.digest(); // Here's your hash. Do your thing with it.
Cela devrait avoir tout ce dont vous avez besoin, à partir d'une ressource plus officielle
En complément de la spécification officielle liée par Nicholas, je recommanderais aussi l'inofficial wiki de spécifications trouvé à: https://wiki.theory.org/BitTorrentSpecification – Encombe
Puis-je calculer en utilisant bencode?
Non. Pour l'encodage de métadonnées bittorrent, pas de fichiers réels.
puis-je extraire les méta-données du fichier torrent en utilisant bencode ??? – Ramesh
Je n'en ai aucune idée. Mais c'est une question complètement différente de celle que vous avez posée ici. Pourquoi ne pas vous concentrer sur celui-ci d'abord ... et fournir plus d'informations comme demandé ci-dessus. –
- 1. Comment faire pour calculer le hachage d'informations Torrent dans VB6
- 2. Torrent Parser en Java
- 3. Comment calculer l'URL de scrape pour un torrent
- 4. Trouvez d'une table de hachage en utilisant la valeur
- 5. Comment créer des fichiers torrent en utilisant javascript
- 6. Obtenir la valeur de hachage en utilisant bash
- 7. Hachage entier à une valeur de chaîne
- 8. Comment réduire la valeur de la valeur de hachage?
- 9. Télécharger la forme du torrent torcache.com en utilisant php.?
- 10. Comment définir la valeur d'une clé de hachage en Perl?
- 11. Calculer la valeur de hachage/somme de contrôle dans Informix SQL
- 12. Comment récupérer/calculer l'empreinte d'un certificat X509 en Java?
- 13. Comment calculer la valeur totale des boîtes de saisie en utilisant jquery
- 14. Calculer la période en utilisant C
- 15. Comment puis-je calculer la différence entre deux fois en format 24h en utilisant Java?
- 16. en utilisant la valeur de hachage dans la galerie de photos
- 17. calculer des nombres scientifiques en Java
- 18. Calculer HMAC-SHA256 digérer dans ColdFusion en utilisant Java
- 19. comment ajouter une nouvelle valeur en XML en utilisant java?
- 20. Comment calculer la longueur d'un Path2D en Java?
- 21. Essayer de faire référence à un hachage en utilisant une valeur de chaîne en Ruby
- 22. comment rechercher comme opérateur LIKe en SQL dans la carte de hachage en Java
- 23. Calculer dynamiquement la valeur de fréquence?
- 24. Comment calculer la bande passante en utilisant C#
- 25. Calculer la largeur d'affichage d'une chaîne en Java
- 26. Byte téléchargement via torrent?
- 27. Calculer l'itinéraire en utilisant PHP?
- 28. Comment concevoir une application torrent?
- 29. Java MD5 hachage, comment puis-je faire?
- 30. Comment faire pour convertir les informations torrent hash pour gratter?
i essayé octets de convertir à la valeur de hachage, mais la valeur de hachage est différente pour (int i = 0; i
Ramesh
@Ramesh - le fichier a peut-être été tronqué lorsque vous l'avez enregistré? Avez-vous (peut-être) utilisé un lecteur ou un scanner pour faire cela? De toute façon, vous n'avez pas fourni assez d'informations pour permettre à quelqu'un d'autre de comprendre ce qui se passe réellement. –
@Ramesh: tu as raison, le hachage devrait exister seulement de la clé 'info' du dictionnaire du torrent. Ceci est situé à la fin du fichier torrent, bordé par '4: info' et' e'. J'ai mis à jour la réponse en conséquence. – BalusC