Why do I need to delete the META-INF folder when installing mods?

In Minecraft, nearly every tutorial on how to install a MOD tells you to remove the META-INF folder. However none of the ones I found tell you what it is. I don't like the idea of deleting a folder without knowing what it is or what it does.

So what is the META-INF folder, and why should I delete it?


Solution 1:

Because Minecraft is digitally signed. META-INF contains a signature file (.SF) that accounts for all the files within the JAR and their checksums, and Mojang's actual signature (.RSA).

When that signature checks out, you know it wasn't tampered with and comes from the source that signed it (in this case, Mojang). When you do tamper with it by installing mods, the signature becomes invalid and Minecraft won't start at all.

By deleting the META-INF directory, you remove the signature completely. Depending on your security settings, you might get an "unknown publisher" warning, but you'll be able to run it.

More detailed info: JAR File Specification