Next-generation JavaScript Licensing Enforcing Techniques

Abstract

A contínua partilha, visualização e execução de conteúdos digitais de forma ilegal é um problema bem conhecido no panorama internacional. Conteúdos comerciais são partilhados sem qualquer tipo de controlo, e modificados para ultrapassar barreiras, impostas pelos produtores, ao acesso não autorizado, degradando assim a confiança entre os produtores e os seus consumidores. Além da degradação da confiança, é também reduzido o valor, cultural e monetário, que um conteúdo representa no mercado. Para evitar o uso indevido de conteúdo são então implementados mecanismos de aplicação de licenças, que garantem que o Consumidor só possa interagir com o conteúdo nos conformes da licença, associada ao conteúdo no seu processo de distribuição.A linguagem de programação JavaScript é cada vez mais usada para a criação de software para a Web ou Mobile, no entanto, a maioria da investigação para proteger o conteúdo é focada no contexto dos ataques maliciosos, como modificação ou injecção de código. É necessário por isso criar paralelismos com mecanismos de aplicação de licenças, implementados em outras tecnologias, retirar os fundamentos básicos do licenciamento, e aplicar estas informações para esta tecnologia, possibilitando aos produtores protegerem os seus interesses, aumentando também a confiança com os consumidores.Esta dissertação engloba um projeto de criação de uma solução que permita aplicar licenças a conteúdo JavaScript, que deve garantir que um potencial utilizador só possa executar ou partilhar quando assim lho é permitido, envolvendo validação do ambiente de execução, verificação do tempo de utilização, entre outros fatores. É significativo também que a solução unifique a proteção de conteúdo para várias plataformas, móveis ou não móveis, e tenha em consideração o uso de técnicas que reduzam o custo para o Produtor e para o Consumidor. Com efeito, espera-se que esta solução seja inovadora no âmbito tecnológico atual por produzir uma ferramenta que abrange aspetos pouco explorados em JavaScript.The continuous sharing, visualization and execution of digital content in a illegal way it's an well known problem on digital market. Commercial assets are shared without any kind of control, and are modified to break constraints, that are enforced by producers, to the unauthorized access, degrading the confidence between producers and their costumers. In addition to the degradation of confidence, the commercial and cultural value of an asset, in the market, is decreased. To avoid the unauthorized use of content, mechanisms of licensing enforcing are implemented, to assure that a Costumer can only interact with a content if he follows the license, that is associated with the content in his distribution process.JavaScript programming language is becoming more and more used to the development of Web and Mobile software, however, the majority of research in JavaScript security is focused in malicious attacks, as code injection or tampering. For this reason, it's necessary to create parallelisms with license enforcing mechanisms, from other technologies, study the basics of licensing, and apply this knowledge to JavaScript, hence giving to producers the power to protect their assets and increasing the confidence with costumers too.In this project it's intended the creation of a solution that allows licensing enforcing to JavaScript content, assuring that an user can only execute or share if he has the rights too, including execution environment validation and time of use verification. It's also important that the solution unifies the protection to multiple platforms, mobile or non-mobile, and the use of techniques that reduce the cost to producers and costumers is regarded. Therefore, it's expected that the final solution will be cutting-edge in this context by giving a tool that explores new areas on JavaScript

    Similar works