A racist term used by Black people, trying to belittle a white person. It is the equivalent of a white man calling a Black man "nigger", except saying nigger will get you in more trouble. If a black man calls you a cracker they will most likely get away with it, but if you call a black man nigger, then you will get the shit kicked out of you, and most likely be brought to court.
It is an incredibly stupid double standard, that should not be dismissed so easily. It is still racism.
White man: "why is it okay for a black man to say cracker, but if I called him nigger I would be sued for hate crimes?"
Man is then sued for using the word nigger in above sentance.