5

Let's say you have an app that prides itself on open source technologies and the full codebase of your app being open source is what attracts users.

How can you guarantee your users that your open sourced code is what's actually being used in production?

3
  • 3
    Why is this proof necessary? For security reasons (to prove that you didn't insert a backdoor)? Or for some other reason?
    – amon
    Commented May 11, 2017 at 18:56
  • Yea that is one reason
    – metersk
    Commented May 12, 2017 at 17:02
  • Possibly a duplicate of Is there any way to assert that a source code correspond to a compiled code? but it's not perfectly clear to me that the intent of "used in production" here is the same as "compiled form"
    – apsillers
    Commented May 13, 2017 at 20:28

1 Answer 1

6

For security sensitive open-source projects, it is desirable to provide reproducible builds. Given the same source code, a reproducible build will always create bit-identical output. That way users can take your source code and check whether the binaries you provided were tampered with, e.g. used a patched source code.

If your software is not executed by users but e.g. on your server as a SaaS offering, no good trust mechanism is possible. One way to handle this is to implement client-side/end-to-end encryption. That way, it is less important whether the server contains a backdoor since the server never sees plaintext data. However, this is not feasible for most applications.

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.