Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Featured Is reverse engineering ethical?

  1. Feb 27, 2017 #1
    Suppose that there are 2 companies. One of them is yours and other company publishes a product which can affect your situation in marketplace.Is it ethical to buy the product and resolve it by reverse engineering to get an idea to counterattack?

    It's not about producing similar technology but getting an idea to help you to think differently.
     
  2. jcsd
  3. Feb 27, 2017 #2

    phyzguy

    User Avatar
    Science Advisor

    Reverse engineering is done all the time. Large companies have whole departments dedicated to it. Why would you think it is unethical? If I buy a product, I own it and I can do what I want with it. If I buy a car, would you think it is unethical for me to take the engine apart to see how it works? Whether you can legally use any ideas you get to produce competing products depends on the patent and copyright protection that the company selling the product has, but simply dissassembling a product to see how it works is completely legal, and in my opinion, completely ethical.
     
  4. Feb 27, 2017 #3

    phinds

    User Avatar
    Gold Member
    2016 Award

    Why would it NOT be ethical? Should you bury your head in the sand and pretend you have no competition?
     
  5. Feb 27, 2017 #4

    anorlunda

    User Avatar
    Science Advisor
    Gold Member

    Interesting question. Legal is often used as a substitute for ethical.

     
    Last edited by a moderator: May 8, 2017
  6. Feb 27, 2017 #5

    anorlunda

    User Avatar
    Science Advisor
    Gold Member

    If taking it apart includes software, they are trying to tell us that is illegal. I hate that, but I am not a lawyer.
     
  7. Feb 27, 2017 #6

    phinds

    User Avatar
    Gold Member
    2016 Award

    But when you buy a car you don't sign a contract saying that you won't take the engine apart or at least you didn't the last time I bought a new car (and that was long before there was much, if any, software involved).
     
  8. Feb 27, 2017 #7

    anorlunda

    User Avatar
    Science Advisor
    Gold Member

    That's the rub. Almost everything has software today and very different rules apply to software. You can't buy software, you buy a lease with restricted rights. So even if the software does nothing useful, the manufacturer can restrict your ownership rights by including software in the product. It's a scandalous mess IMO.
     
  9. Feb 27, 2017 #8

    phyzguy

    User Avatar
    Science Advisor

    But you signed the contract saying you won't reverse engineer the software. You did this of your own free will. If it bothers you, don't sign the contract or don't use the software
     
  10. Feb 27, 2017 #9

    DaveC426913

    User Avatar
    Gold Member

    Perhaps, but not all stipulations in a contract are legally enforceable - even with a signature.
    The clauses are put it as a deterrent, but it's a judge who ultimately makes the decision about whether a given stipulation is binding.
     
  11. Feb 27, 2017 #10
    But as @anorlunda said, you stuck on the "legal" term. My concern is about ethics, of course you can disassemble the products but is it ethical in terms of personal conscience as an enginneer?
     
  12. Feb 28, 2017 #11

    anorlunda

    User Avatar
    Science Advisor
    Gold Member

    To that question you will get different answers from different people. To me, I say hell yes; there is nothing bad about reverse engineering.

    From the ASME code of ethics
    Only point 5 seems relevant. The question is: do manufacturers of products have the right to keep secret details of their products that can be determined by close inspection? I say, no they don't.

    There is the concept of trade secret, but that only binds the employees and contractors of the secret holder. Anyone else who learns the secret is not violating anything. So if you learned proprietary info via a confidence, then you are ethically bound to protect it. If you learned it by reverse engineering, you have no ethical burden. If you learned it by reading an article in the newspaper, you have no ethical burden.

    But I stress, that everything I just said does not apply to software. You can only buy a license for software (I said lease before, that's the wrong word). The license is binding legally and ethically even if you didn't sign anything. The license restricts what you can do. If it says no reverse engineering, then you're stuck with that. So if the product includes a software component, you can reverse engineer only the non-software portion.

    In the USA we have the Computer Fraud and Abuse Act, CFAA. which makes it a felony to reverse engineer software in loosely defined circumstances. It is a pernicious law because the ordinary person can not legally tell in advance what is and is not legal. For example, my Facebook account does not use my real name. That violates Facebooks terms of service. It should be my privilege to do that, but in at least one case a woman was convicted of a CFAA felony for doing the same thing.
     
    Last edited by a moderator: May 8, 2017
  13. Feb 28, 2017 #12
    I think if it's about the how-to (which knowledge is the goal of reverse engineering) then yes, they can keep it secret.
    'Intellectual property rights' in case of a car covers only the patents used to produce the car, not the car itself. As it should be with an industrial product. You can disassemble and reverse engineer it as much as you want, only reproduction will violate the relevant patents.

    As you say, software is indeed treated differently since it belongs under the 'copyright' kind of rights: every mass-produced instance of it is treated kind of as an art. So only black-box kind of investigation is 'legal' (which is not the same as 'ethical'.)
     
  14. Feb 28, 2017 #13

    Baluncore

    User Avatar
    Science Advisor

    Writing clear specifications and new code would probably produce a better result faster than by studying the legacy code used by the competition.

    Ethical now seems to be synonymous with obeying the law. There are four ways to protect IP.
    1. Hide the critical details well, then don't draw attention to their importance by bragging about features.
    2. Photograph the object and register the design.
    3. Copyright the documentation and the code pattern in memory.
    4. Patent the algorithm or mechanism.

    1, 2 & 3 should be used together.
    4, patents are the most expensive up front and you must publish clearly how you do it. Your lawyer legal costs will probably destroy you financially if your patents are ever noticed.

    This advice was brought to you by E.S. Rever Engineering.
     
  15. Feb 28, 2017 #14

    jack action

    User Avatar
    Science Advisor
    Gold Member

    I'm not sure the law is as strict as you are telling it. It is true only if you do it in a "let's copy the source code" sense, which is basically stealing intellectual property. It doesn't mean you cannot reverse engineer a software to see how it works because you're simply curious. US courts have allowed software reverse engineering in cases where the software is not copied per say, as mentioned in your Wikipedia quote or even here (source):

    rev-eng.png

    In response to the OP, I have a (not so) hypothetical situation:

    Let's say all car companies make cars that are started with a key. One company change its design and begin using a starting button instead. Being an appreciate feature by users, all other car companies, simply looking at the competitor's feature - without disassembling the car - can deduce how to make such a feature and apply this knowledge to their cars.

    In a sense, they reverse engineered the mechanism. It was just easy to guess how it worked just by looking at it and there was no need to go with actual disassembling. Is that unethical? I don't think so.
     
  16. Feb 28, 2017 #15

    anorlunda

    User Avatar
    Science Advisor
    Gold Member

    It is certainly more complex than can be explained in a few sentences (or a few thousand sentences).

    But there are multiple ways they restrict you. Even when copyright law allows reverse engineering as you cite, the end user license agreement EULA can impose a contractual obligation on you to not reverse engineer. Enforceable EULAs have been widely upheld in court. If you don't like the EULA, you can not buy it or perhaps return the product for a refund, but it you keep it and use it you become legally bound by the EULA terms. So contract law can get you even where copyright law or patent law doesn't.

    Note also that the ASME ethics said "Engineers shall respect the proprietary information and intellectual property rights of others," intellectual property is defined as patent, copyright and trademark. But proprietary information can be almost anything else. My point is that intellectual property laws can not be the full story.
     
  17. Feb 28, 2017 #16

    anorlunda

    User Avatar
    Science Advisor
    Gold Member

    I agree that it should not be unethical to reverse engineer even software. But it is sometimes illegal anyhow.

    Ethical and legal, do not mean the same thing in all circumstances. There is nothing to stop Congress from making ethical behavior illegal.

    I and many others think that the government's application of CFAA is overreach and not justified. But they are doing it. Even when copyright allows fair use, and the EULA is not explicit, security researchers have been threatened with prosecution under CFAA for reverse engineering for research purposes. As I said before, CFAA is a pernicious law. It has harmful and nonsense effects. In my opinion it is unconstitutionally vague. But I am not a judge so my opinion doesn't count.
     
  18. Feb 28, 2017 #17

    jack action

    User Avatar
    Science Advisor
    Gold Member

    In a democracy, your opinion should count and I'm glad you can express it freely (at least on this forum). :partytime:
     
  19. Feb 28, 2017 #18

    russ_watters

    User Avatar

    Staff: Mentor

    Engine computers are often encrypted, and I think it is illegal to break encryption.
     
  20. Feb 28, 2017 #19

    russ_watters

    User Avatar

    Staff: Mentor

    In general I would say that illegal is a subset of unethical, but it does get sticky when laws or codes of ethics change.

    I think my issue with proprietary things, including software, is the breadth of the contract protections and whether broad protections are actually legal/enforceable. While I do sympathize with IP concerns, I tend to favor the consumer and I'm annoyed that my car won't let me adjust the drive-by-wire steering feel or transmission shift points.

    Needless to say, I've never owned an Apple product...but I haven't gone as far as Linux.

    Not quite the same, but close, this is also an issue with HVAC controls: depending on the context of the question, different vendors' controls are either compatible with others (if they are trying to get a foot in the door) or not (if they are trying to keep someone else out).
     
  21. Feb 28, 2017 #20

    anorlunda

    User Avatar
    Science Advisor
    Gold Member

    I just remembered a great example of ethical versus legal. Aaron Swartz https://en.wikipedia.org/wiki/Aaron_Swartz

    Many of us think that Aaron acted in a superbly ethical way, even heroic. But the crush of legal grief that landed on his head cost him his life.

    By the way, I read that the EPA really wants to keep consumers out of car computers, because they would invent and distribute patches that circumvent pollution controls to favor performance. Like Volkswagen, they could make them smart enough to switch back for annual inspections.

    EPA is supporting Detroit in trying to make it illegal for us to peek under the covers of the computers in our cars.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted



Similar Discussions: Is reverse engineering ethical?
  1. Reversible engine (Replies: 2)

Loading...