There is no excuse to attack someone based on their religious or moral beliefs, nor any reason to attack someone based on their sexuality, race, heritage, etc.
The people who do these hate crimes are worse than ignorant. They have something wrong with them.
Someone's personal life... Someone just minding their own business and going about their day... Walking down the street to work... Could not POSSIBLY infringe on the rights of anyone else.
The people who are hostile and attacking people so horribly are the ones violating basic, universal rights that we all have as humans, to just live our lives in peace.
Self-defense is another matter entirely. That is another right we all have. But there is no grey area when it comes to assault. People who claim that a gay person is infringing on their rights has a zero brain cell count. Yeah, that's harsh, but we all know that it's true.
Rape is never about sex ever. It's about power and control, and a lot of times is also about humiliation of the victim. Trust me on that. And anyone who even THINKS of sexually assaulting someone is a sick, worthless waste of flesh.