I have created a data science model pipeline in Python which ingests some data (user transactions) and then runs some models to generate a report. The models that I have created are proprietary and so far I have only been working on a sample of the client's data.

The client is a financial institution and due to regulations, must keep all data on their "premises". Similarly, I want to keep my code proprietary.

What is the most common method to satisfy both of these requirements in terms of privacy (of my codebase) and security (of the client's data)? What would be the most cost efficient and easiest to implement?

  • set up a server to which only you have access
    – schroeder
    Commented Dec 14, 2023 at 8:08
  • This is typically done not technically, but legally. Technically you could offload (part) of your algorithm to a device you control. For example by employing cryptography…. But we are well outside the common methods by this stage.
    – LvB
    Commented Dec 14, 2023 at 8:27
  • License + contract... enforcing the license/contract = lawyer. You could also obfuscate your code, though you should check any imported packages for licenses to see if you can do that... some may require you to open source your code. Commented Dec 14, 2023 at 18:56

1 Answer 1


What would be the most cost efficient and easiest to implement?

A non-disclosure agreement.

  • I don't think an NDA is the right legal protection here because it would allow the customer to use it themselves. I think we're looking at copyright and licensing agreements.
    – schroeder
    Commented Dec 14, 2023 at 22:52

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .