--
You received this message because you are subscribed to the Google Groups "singularity" group.
To unsubscribe from this group and stop receiving emails from it, send an email to singularity+unsubscribe@lbl.gov.
To unsubscribe from this group and stop receiving emails from it, send an email to singularity...@lbl.gov.
I’ve been pondering a related issue lately. Suppose I create a container that includes a licensed library, and then I migrate that container to another cluster. Depending on how the license is enforced (e.g., a license manager daemon vs a local “token”), I may now be operating the container in violation of the license.Now suppose I distribute the container - have I now enabled everyone to use that licensed software without paying for it? You have a similar problem with your proposal - what if I distribute the encryption key along with the container?
Related question: suppose the library is actually GPL. Now GPL doesn’t hold sway unless you distribute your software. If you statically link your code against a GPL library and then distribute that binary, we know that makes your code subject to the GPL.However, if I put a GPL library in a container, and then distribute the container - have I now caused my code that links against that library at runtime to become subject to GPL? I am distributing the combination, albeit they are not actually combined until you run the container.
Makes my head hurt...Ralph
On Oct 26, 2016, at 11:21 AM, Gregory M. Kurtzer <gmku...@lbl.gov> wrote:
Hi Stefan,This is an interesting idea! There are a couple of ways to handle it considering that Singularity has a privileged mode of operation... We can look into encrypting the file system contained within the image and locate the key within a file that only has root access, then count on our privileged code to read that in.Technically we can also do this by circumventing POSIX permissions on the image files, and allow containers that can only be read by root to be run by normal users, but then how do we implement this securely and reliably? ... I am open to suggestions. :)Greg
On Mon, Oct 24, 2016 at 2:40 AM, 'Stefan Kombrink' via singularity <singu...@lbl.gov> wrote:
Hi,
I wonder what are the possibilities to offer licensed SW containerized by singularity while still preventing users to copy the container.
Right now we achieve this by allowing certain binaries to be executable but not readable.
If I get it right there is no way to let users run containers they can't read but execute.
Anyways this approach using access rights seems very limited.
I had that idea that containers might be encrypted using a key which can be installed in the system alongside singularity and allow to decrypt the container during loading.
The appropriate key could be loaded prior during the suid_exec part.
Am I overlooking something?
Is there an easier way to achieve what I want?
I'd really love to come up with a viable solution for that problem as it is an obstacle for containerization/virtualization which affects many SW suites we are currently offering...
greets and thanks
Stefan
--
You received this message because you are subscribed to the Google Groups "singularity" group.
To unsubscribe from this group and stop receiving emails from it, send an email to singularity...@lbl.gov.
--Gregory M. KurtzerHPC Systems Architect and Technology DeveloperLawrence Berkeley National Laboratory HPCS
University of California Berkeley Research IT
Singularity Linux Containers (http://singularity.lbl.gov/)Warewulf Cluster Management (http://warewulf.lbl.gov/)
On Oct 26, 2016, at 1:10 PM, Stefan Kombrink <stefan....@googlemail.com> wrote:Yeah, all these licensing issues are really complex .. :D
Am Mittwoch, 26. Oktober 2016 21:00:58 UTC+2 schrieb r...@open-mpi.org:I’ve been pondering a related issue lately. Suppose I create a container that includes a licensed library, and then I migrate that container to another cluster. Depending on how the license is enforced (e.g., a license manager daemon vs a local “token”), I may now be operating the container in violation of the license.Now suppose I distribute the container - have I now enabled everyone to use that licensed software without paying for it? You have a similar problem with your proposal - what if I distribute the encryption key along with the container?
Sure, if you distributed the private key that allows the access to the encrypted container. In my use case, however, I'd prevent this from happening by having it installed on our cluster with root-only access exclusively.
Related question: suppose the library is actually GPL. Now GPL doesn’t hold sway unless you distribute your software. If you statically link your code against a GPL library and then distribute that binary, we know that makes your code subject to the GPL.However, if I put a GPL library in a container, and then distribute the container - have I now caused my code that links against that library at runtime to become subject to GPL? I am distributing the combination, albeit they are not actually combined until you run the container.
Aaah took me long to understand what you actually meant: Technically no. You're just not allowed to execute the container ... hehe
Here's another one: If I containerize licensed software into encrypted containers, can I be sued for distributing it? Or just for distributing the private key?
To unsubscribe from this group and stop receiving emails from it, send an email to singularity+unsubscribe@lbl.gov.
To unsubscribe from this group and stop receiving emails from it, send an email to singularity+unsubscribe@lbl.gov.