0
$\begingroup$

So I am developing a python program and encrypting the trained machine learning models which need to be decrypted when loading them on client side. My program will deployed on the client's machine with no internet access and I need to protect my models.

Now I'd like to ask the following

  1. Whether using symmetric key encryption and then hiding the key inside my code is the right way to go about it or there is a better way?
  2. If this is the only way then how to what is the best way to hide the key?

I am already obfuscating the code by compiling cythonized python code so should I just hide the key inside that?

$\endgroup$
  • $\begingroup$ Welcome to Cryptography. You should mention about the risks to get a better answer. Note: obfuscating is not irreversible. $\endgroup$ – kelalaka Feb 26 at 8:55
  • $\begingroup$ @kelalaka Yes it indeed isn't but it is kind of enough in our scenario $\endgroup$ – Talha Javaid Feb 27 at 6:34
0
$\begingroup$

If obfuscation id enough security, and you only want to protect the privacy of your data against meager adversaries and you have no requirements about authentication then your solution seems ok. Also it isn't very crypto related. Though there is a field of cryptographic obfuscation that is not practical to use.

|improve this answer|||||
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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