Main Page

Explain xkcd: It's 'cause you're dumb.
Jump to: navigation, search

Welcome to the explain xkcd wiki!
We have an explanation for all 2958 xkcd comics, and only 21 (1%) are incomplete. Help us finish them!

Latest comic

Go to this comic explanation

Anadromous fish are more vulnerable in rivers, since the lack of salt means you can quickly crack passwords using rainbow trout tables.
Title text: Anadromous fish are more vulnerable in rivers, since the lack of salt means you can quickly crack passwords using rainbow trout tables.


Ambox notice.png This explanation may be incomplete or incorrect: Created by a BOT EXECUTING REMOTE COD - Please change this comment when editing this page. Do NOT delete this tag too soon.

Remote code execution is a type of software exploit that takes advantage of a bug to allow a remote user of a computer application to make it run code that it was not intended to execute. For example, a webserver with such a bug might allow a user of a web page to make it run a program that deletes system files or displays private information.

The joke arising from this comic is that if you remove the "e" from "code", you get "remote cod execution". This refers to killing ("executing") codfish remotely, using an exploit in a network application that allows one to view the hatchery.

The title text contains a pun on rainbow tables, referring to rainbow trout, one type of which (steelhead) is anadromous (migrating up rivers to spawn -- salmon are another well known example). Rainbow tables are used when trying to crack hashed passwords; it's a file with a carefully pre-computed selection of passwords and their corresponding hash values, which can be used to more efficiently recover password that are retrieved hashed. To prevent rainbow tables from being usable in this way, most modern password systems use "salt", an extra random string that gets appended to the password before hashing so the same password will potentially have many different hashes, and it becomes infeasible to recover it even with the acceleration offered by rainbow tables. An additional pun is that rivers contain fresh water, so there's no salt (the chemical kind) and the fish are therefore more vulnerable.

The comic dialogue itself starts the whole chain of puns off by using the phrase "shooting fish in a barrel", which is figuratively used to mean that the task is extremely easy, but here becomes clear that he is literally executing fish, without needing to be there in person. Also, Black Hat has previously talked about shooting "lonely, angsty fish in a barrel."

fish is also the name of a UNIX shell. Shells are popular targets for computer hackers as they are capable of being used to run arbitrary commands if sufficient access is gained through them.


[Black Hat is sitting at a computer desk, with Cueball standing behind him.]
Black Hat: Shooting fish in a barrel.
Computer: Blam!
[Caption below the panel:]
A new fish hatchery exploit allows remote cod execution.

Is this out of date? Clicking here will fix that.

New here?

Last 7 days (Top 10)

Lots of people contribute to make this wiki a success. Many of the recent contributors, listed above, have just joined. You can do it too! Create your account here.

You can read a brief introduction about this wiki at explain xkcd. Feel free to sign up for an account and contribute to the wiki! We need explanations for comics, characters, themes and everything in between. If it is referenced in an xkcd web comic, it should be here.

  • There are incomplete explanations listed here. Feel free to help out by expanding them!


Don't be a jerk!

There are a lot of comics that don't have set-in-stone explanations; feel free to put multiple interpretations in the wiki page for each comic.

If you want to talk about a specific comic, use its discussion page.

Please only submit material directly related to (and helping everyone better understand) xkcd... and of course only submit material that can legally be posted (and freely edited). Off-topic or other inappropriate content is subject to removal or modification at admin discretion, and users who repeatedly post such content will be blocked.

If you need assistance from an admin, post a message to the Admin requests board.