It's Mr. Out-of-nowhere patch-for-Minecraft again. If someone hasn't posted it yet, here's a self-serve (you don't have to wait for servers to fix it) client-side fix for the "Invalid server key" error.
If you find the fix useful, please reply with a thanks or something to keep the thread available for others to see! Thanks.
A bunch of moderators told me last time that my last thread kept getting reported, so check out the post I linked above (which I posted). That was moderator-approved. Oh, I also make WorldEdit, WorldGuard, CraftBook, and a few other things.
FREQUENTLY ASKED QUESTIONS
I get "java.lang.SecurityException: SHA-256 digest error for abp.class".
Delete the signature files in META-INF/ (the two files besides MANIFEST.MF). They tell Java to verify that the game files aren't modified, which is exactly what we're doing!
I get "Outdated server" instead after installing this patch.
The server you are joining is still running 1.8.1! You can't do anything about that, except to revert back to 1.8.1 (you did save it, right?).
After installing, I still get this error.
If you didn't mess up, it's because my valid key check is still a bit restrictive. I'll have to look into that if Minecraft doesn't get a fix soon (which it may). For the technical people, the current regex is ^\-?[0-9a-fA-F]+$
Open up the minecraft.jar file with a ZIP program, because .jar files are secretly .zip (on Windows, type %APPDATA%\.minecraft\bin in Windows Explorer to find this file, on Linux, it is in ~/.minecraft/bin, on Mac OS X I have no clue)
Copy the downloaded abp.class file into minecraft.jar and replace the existing file.
Go to the META-INF folder and delete everything except for MANIFEST.MF. The files you delete tell Java to make sure that Minecraft's files have not been modified, but that's what we're doing!
If you don't understand these instructions, don't worry! They're pretty bad. (If someone has a link to a good tutorial, please post it.)