Adding MD4 and Tiger to multihash?

MD4 is used in ED2k hashes, Tiger is used in TTH hashes. Both are commonly used as identifiers for files in databases. Since ED2k is a hash list and TTH is a merkle tree, they can both be represented using the IPLD format, and the chunks could be addressed via IPFS.

If this would be implemented, it would be very useful since you could “import” foreign hashes to IPFS. You could then rely on some kind of consensus to map these to native IPFS hashes. (256kb chunks, blake2b/sha2)

2 Likes

I am in favour of your idea.

MD5 is also used for ED2k and Kad in eMule and aMule.

Stop reviving old threads especially if it’s just a nonsense “me too” reply.

ed2k/emule last had a stable release in 2010. It’s dead! Move on.

Also, it’s already supported: multicodec/table.csv at master · multiformats/multicodec · GitHub (CTRL+F on md4). Well, on a technical level for multicodec that is. Probably not in IPFS/Kubo itself, don’t know. Test it yourself if you want to know :slight_smile:

Thank you. I will test.


I frankly sense that this is a crucial concern.

One of the reasons is the fact that there are many files that have been shared for over 20 years on eD2k, Gnutella and Kademlia.

The reliance of hash which is not of files but of an identifier (e.g. Torrent of BitTorrent, which BitTorrent relies to share files) is fragile in the long term.

I think that an additional system that shares files by MD5 sum would be advantageous to IPFS.

IPFS would have its current system with its currenthash.

IPFS would also have a per-file sharing mechanism based on MD5 checksum as eD2k and Kademlia.

Once it is implemented, there would be a large flock from eMule to IPFS.

You’re asking for 2 things here:

  • MD4
  • Single file hashes

Can’t find it on the spot but there is a video discussing the blocksize from a couple years ago. The blocksize is what makes a file being chunked up in parts. If your file fits in one block then the hash of the CID is the hash of the file too.

This mechanism has many advantages and many disadvantages. You will discover that if you research.

Spoiler: Have a look at Iroh, they use BLAKE3 which is probably the best of both worlds.

Still, keep on dreaming with your MD4. Make the patches and see if they accept it, otherwise just drop it, not gonna happen.

You’re asking for 2 things here:

  • MD4
  • Single file hashes

I proposed that addresses of MD5 (MD4 os also possible) would be treated as single files, as Kademlia and other protocols do.

Can’t find it on the spot but there is a video discussing the blocksize from a couple years ago. The blocksize is what makes a file being chunked up in parts. If your file fits in one block then the hash of the CID is the hash of the file too.

What is the maximum allowed blocksize?

This might be what I want.

This mechanism has many advantages and many disadvantages. You will discover that if you research.

I am aware of some disadvantages that can be resolved by Metalink.

Google it!

You’ll be disappointed when you see the numbers :slight_smile: