element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Community Hub
Community Hub
Member's Forum Do you have a right to privacy of your source code?
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Leaderboard
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Community Hub to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 54 replies
  • Subscribers 533 subscribers
  • Views 4821 views
  • Users 0 members are here
  • privacy
  • programming
  • copyright
  • code
Related

Do you have a right to privacy of your source code?

cstanton
cstanton over 2 years ago

As an individual, if you write a program and share the binary of that, should the expectancy be that you share its source code?

You might not want to share the source code, for example, you can very easily be judged based on that source code, both professionally and personally.

I've known people purposefully not post their code on Git Hub because they know employers will scrutinize and judge it, and in fact others observe how many 'regular commits' you do. Whether or not such judgment is fair is out of scope, but it's certainly something that's in the public eye at that point.

So perhaps you release a compiled binary because you want to help, but you don't want to invite conversations about the code, make it publicly displayed, or maybe there are other reasons.

However, someone comes along, decompiles the binary, reverse engineers it with ida pro, and releases the source code - citing that they have every right to do that, and now everyone can see the code, even though it's against your wishes.

Who was in the wrong? Or was no one in the wrong? Does it go to copyright since there was no license? Or was there an implied license?

There certainly appears to be a strong sense of justice among those online, that insists "it's just code" and "there's a right to transparency".

But there feels like there's something here that may not stand up to this scrutiny and this cavalier attitude of someone's work. Comparatively in the art world, someone creates a piece of art, and recently those components are being re-used in the case of AI (stable diffusion) and there's an uproar, but aren't they just laying the components bare? Maybe the analogy doesn't quite fit, but it certainly feels like for some reason code, by some, is treat differently to other mediums. Even though there are patents, copyrights, licenses, etc.

It could be difficult or even impossible for an individual to do something about this without financial backing, too. Especially compared to companies.

What do you think?

Edit: If you're picking up on spelling errors rather than the topic and context of the post, you're easily distracted. ;)

  • Sign in to reply
  • Cancel

Top Replies

  • Gough Lui
    Gough Lui over 2 years ago +5
    This is a tricky one, but short of having a license agreement which forbids it, I can’t see reverse engineering being a problem. Imagine you go to a burger joint and order a burger to take away. Nobody…
  • dougw
    dougw over 2 years ago +4
    My understanding.... Source code is automatically copyrighted and you have control over how the work is used. If you don't register it with a copyright office, it gets harder to prove ownership, but…
  • beacon_dave
    beacon_dave over 2 years ago +4
    shabaz said: So many scenarios, e.g. people deliberately sitting on firmware with no updates for users, going out of business, etc. One area that I'm currently faced with is with engine management systems…
  • cstanton
    cstanton over 2 years ago in reply to beacon_dave
    beacon_dave said:
    However, what if you bought an original software product for each modified version you sold.

    Unfortunately, I've yet to see an example of such implicit trust, more often it's the case of "because it's possible not to, people will by accident or otherwise, end up not doing so". Compared to a hard limit of "I physically do not have the engine". It's almost a bit 'leopards would never eat my face', people have the freedom and so people exercise that freedom.

    What I suppose we're really saying with buying the original software, is that they're buying the license, but then if they're buying the license, the person purchasing then have to legally agree to whatever terms lurk in it and it may, in turn, say "no modification" and so it nulls any further production, legally.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • cstanton
    cstanton over 2 years ago in reply to beacon_dave
    beacon_dave said:
    The problem will only likely get worse as more modern cars are fitted with the likes of HMI touch panels to control functions.

    We're seeing this with cars with software as a service, aren't we? Kinda. It makes me glad that DEF CON villages exist.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Cancel
  • bradfordmiller
    bradfordmiller over 2 years ago in reply to dougw

    I'm not sure that's the case: copyright covers the expression but not the actual idea (for that you need a patent). So if you've copyrighted some source code and it's transformed in a way that is not just language translation then I don't think it would be covered by copyright. Thus source -> binary -> source would probably generate a new "work" for copyright purposes.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • cstanton
    cstanton over 2 years ago in reply to bradfordmiller
    bradfordmiller said:
    Thus source -> binary -> source would probably generate a new "work" for copyright purposes.

    Is it a new work if it looks exactly the same and does the same function? It's possible to get that from decompiling back to the source.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • beacon_dave
    beacon_dave over 2 years ago in reply to cstanton

    There is a substantial shift to leasing of cars as opposed to owning them outright. I guess this will be more of the case when moving to autonomous vehicles if the company is legally responsible for accidents and wants to ensure they are only maintained by approved dealers. Either that or it will become more of an autonomous taxi based type service.

    However bang goes your classic car, or custom car scene in that case. But it may kick-start a personal transporter / kit car type scene.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Dudley
    Dudley over 2 years ago in reply to beacon_dave

    The photograph is an interesting analogy on this.

    If I post a photograph to the internet somewhere, then even though I don't claim copyright on that photograph or put any legal terms on it, it remains mine. There are a number of cases where the copyright on a photograph can be retroactively applied even though the photographer might not have posted it with lots of legalese around it.

    An argument could easily be made that the same is true for code and code snippets. Just because it wasn't posted with usage allowances doesn't mean it's free to use.

    There was a massive bit of chaos caused a few years back because someone pulled code that previously was free to use. It's an interesting read to anyone interested in the subject. Leftpad. In that particular case, he pulled it and then the hosting site republished it.

    • Cancel
    • Vote Up +3 Vote Down
    • Sign in to reply
    • Cancel
  • beacon_dave
    beacon_dave over 2 years ago in reply to cstanton
    cstanton said:
    Is it a new work if it looks exactly the same and does the same function?

    You and I could both write a 'blinky' sketch that performs the same functionality. We'd each automatically have copyright on our version of the source code. 

    Now decompile each binary and compare the source.

    cstanton said:
    It's possible to get that from decompiling back to the source.

    If you decompile from a binary then you are likely to get a source that includes all the optimisations that the compiler included when compiling. So it will look very different (and often appear to do things in strange ways just because it takes less clock cycles to do it that way).

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • cstanton
    cstanton over 2 years ago in reply to beacon_dave
    beacon_dave said:
    If you decompile from a binary then you are likely to get a source that includes all the optimisations that the compiler included when compiling. So it will look very different (

    I had a recent exact example of this.

    A compiled binary I had shared was reversed, and it produced the exact same source code as was used to create it.

    Character for character. It wasn't an overly complex piece of code.

    It appears this varies depending on the compiler and tools used, and the intention to obfuscate Slight smile

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • cstanton
    cstanton over 2 years ago in reply to baldengineer
    baldengineer said:
    "How many (actually) enforce copyright laws?"

    That is where it will depend on the copyright holder's bank balance.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Cancel
  • beacon_dave
    beacon_dave over 2 years ago in reply to cstanton

    Presumably it was compiled with debug information included ?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
<>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube