I am asked to provide a demo of my work to a 3rd party.
This would require creating an easy to deploy demo system – possibly packaged as a virtual machine image running within VirtualBox.
The VirtualBox would act as a server for a browser based application, and internally there is a websocket based demo that interacts via websockets with the browser based application a well.
I am wondering how to best secure the provided Prolog demo, so that internal code can’t be accessed – even if access to the virtual box or the virtual hard drive is achieved.
I want to protect the code files included in the file system, as well as the running system, so it can’t be accessed by a top level only through a predefined API.
As well as any other kind of projection – necessary you can suggest …
Can this be achieved?
I noticed the discussion on obfuscation but this option seems limited.
Perhaps, the way to go is to create a wrapper C/C++ program that includes in an embedded way a private key – and in a way that is hard to extract (perhaps encoded in some way) which decrypts program files after they are read and then internally loaded into a prolog process.
Does this make sense – can the internally loaded prolog program then be a websocket client as well …