Cracking is the correct concept for deconstructing/sabotaging in the cyberspace/Internet, e. g. by circumventing the security of a website and posting your own (critical) stuff on their site or spreading viruses in the Internet. Hacking, on the other hand, is about using and reconstructing the computer or other machines/systems in a new and (by the “owners” and “inventors”) unintended way. Hacking is about reclaiming the system, manipulating it and using it, not destroying it. Both terms define people who can break into computer systems and rewrite programs, but hackers do not use their knowledge offensively or illegally.
Crackers use their skills for illegal use: distributing pirated materials, stealing money and identities, etc. The ethical question about unlocking seems to have been answered – by governments, at least – as to say that it is the corporations’ hands that need slapping, and not the consumers. If I had to define what a “hacker” was, I’d say it’s someone who possesses a rare technical discipline to alter the function of another work, and the ethical discipline to do it without lying, cheating, or stealing.
So the real ethical challenge to a hacker is identifying the difference between corporate greed and theft of services. Hackers are the great equalizer of a capitalist society, and when conducted ethically, hacking can be of great benefit to both the consumer and the manufacturer. They have the power to balance out corporate greed and further improve on otherwise great products. If the ethical situations concerning computer hacking could be resolved, these hackers ideas could be potentially useful and could help to further advance our technological standing in society.