The online distribution of software is an appealing feature for companies as costs are dramatically reduced. However rampant piracy is a deterring factor. We consider all software protection tools and compare between them. Our analysis is not only focused on security but we also study other aspects like economics, customer privacy, ease of use, ... We extract a subset of tools that we further study. We implement a Java obfuscator. We also develop a new software watermarking scheme based on spread-spectrum watermarking that we implement in Java. Software only protections are not sufficient to achieve a good security level. A smart card is a good hardware component that can tighten this security. We therefore study the smart card for its added value. We also look at its security and improve one side-channel attack : the timing attack. To preserve the smart card from this threat, we improve a constant-time Montgomery multiplication algorithm. As a result of our analysis, we conclued that software protections are economically viable only if a hardware component is already present in the system.
Hachez, G. (2003). A comparative study of software protection tools suited for E-commerce with contributions to software watermarking and smart cards. https://hdl.handle.net/2078.5/97850