You all know there are people out there that use reverse engineering techniques to do bad things; this ranges from being able to use paid software for free (cracker) to finding vulnerabilities that allow them to do what they want when they want without permission (hacker). Of course, there is also a good side to it; we can use this to protect software against such people, use it to learn from things.
But where does one know if he is allowed? How does one ensure he conforms to laws and licenses?
Software and services do not always list this in their license or come with a NDA, I don't know if the law explicitly states anything about this; so, this would leave one to often be clueless ...
- whether he is allowed to reverse engineer.
- whether he may use his findings, for which goals.
- under which conditions he may or may not publish his results.
What to do when it is not stated? Does one have to explicitly ask it, or is their some rule on this?
It is wise to just ask; though a canonical answer would benefit the majority and spare out asking.