this post was submitted on 07 Sep 2026
317 points (99.4% liked)

Piracy: ꜱᴀɪʟ ᴛʜᴇ ʜɪɢʜ ꜱᴇᴀꜱ

70621 readers
502 users here now

⚓ Dedicated to the discussion of digital piracy, including ethical problems and legal advancements.

Rules • Full Version

1. Posts must be related to the discussion of digital piracy

2. Don't request invites, trade, sell, or self-promote

3. Don't request or link to specific pirated titles, including DMs

4. Don't submit low-quality posts, be entitled, or harass others



Loot, Pillage, & Plunder

We heartily recommend visiting the free port of freemediaheckyeah (aka FMHY) while you sail the high seas, for all the freshest links the ocean has to offer.

📜 c/Piracy Wiki (Community Edition):

🏴‍☠️ Other communities

FUCK ADOBE!

Torrenting/P2P:

Gaming:


💰 Please help cover server costs.

Ko-Fi Liberapay
Ko-fi Liberapay

founded 3 years ago
MODERATORS
 

Fortunately I have enough of the rar parts to extract the data I want but damn.

you are viewing a single comment's thread
view the rest of the comments
[–] Fitzsimmons@lemmy.blahaj.zone 4 points 3 weeks ago (1 children)

It looks like bittorent version 2 hashes with sha-256 at a 16kb resolution.

pieces root

For non-empty files this is the the root hash of a merkle tree with a branching factor of 2, constructed from 16KiB blocks of the file. The last block may be shorter than 16KiB. The remaining leaf hashes beyond the end of the file required to construct upper layers of the merkle tree are set to zero. As of meta version 2 SHA2-256 is used as digest function for the merkle tree. The hash is stored in its binary form, not as human-readable string.

Seems like that should be easily parallelizable and can fit into thread memory on a modern GPU.

It would just depend on how many 16kb blocks are remaining in that 0.1%

[–] BeefAndPoultry@lemmus.org 5 points 3 weeks ago* (last edited 3 weeks ago)

Well the hashes are always much smaller than the actual data, otherwise downloading the hashes would take just as long as downloading the data lol.

So 16KB blocks means 131072 bits per block, subtract the 256 bit hash size and that means 2^130816 hash collisions

That's a lot lol, you'll never find which one is the correct one. Even if you instantly had a list of all values that match the desired hash, you'd have to check them all and somehow determine which one was correct.