Please use this identifier to cite or link to this item: https://hdl.handle.net/10216/88464
Author(s): Luís Filipe Ferreira Araújo
Title: Solução de criptografia de caixa branca para aplicações JavaScript
Issue Date: 2016-07-11
Abstract: Nowadays, the JavaScript programming language is one of the most used. JavaScript applications are produced and distributed in all over the world. Therefore, this kind of applications has to be protected against thefts which can break the intellectual property and against malicious tampering. In order to protect JavaScript applications, one of the possible ways is to use encryption. However the encryption has a unique point of failure: the encryption key. If this key is compromised, the application will become easily accessible for potential attackers. The white-box cryptography solutions try to protect the encryption key so that an attacker can not have access to that and, thereafter, the application will have a higher security level. In this document is presented the first white-box cryptography solution for JavaScript applications. This solution fits well in it's environment and the access to the source code of the application has the same relevance that the cryptographic key. Besides that, it's a solution that fights the majors threads of the JavaScript programming language. The white-box cryptography solution will have an anti-tampering mechanism. If an attacker modifies the application, it will not working anymore.
Description: Atualmente, a linguagem de programação JavaScript é uma das mais utilizadas. Por todo o mundo são produzidas e distribuídas inúmeras aplicações JavaScript. Assim sendo, estas têm de ser protegidas contra roubos que podem violar a propriedade intelectual da aplicação e contra adulterações maliciosas que podem modificar o seu comportamento. Para proteger estas aplicações, um dos possíveis caminhos é usar encriptação. No entanto, a encriptação, tem um único ponto de falha: a chave criptográfica. Caso esta seja comprometida, a aplicação ficará facilmente acessível para potenciais atacantes. As soluções de criptografia de caixa branca tentam proteger a chave para que um atacante não lhe tenha acesso e, consequentemente, a aplicação tenha um maior nível de segurança. Neste documento é apresentada a primeira solução de criptografia de caixa branca para aplicações JavaScript. Esta solução é totalmente adaptada ao contexto em que se insere, sendo tão importante o acesso ao código fonte da aplicação como à chave criptográfica. Além disso, é uma solução que combate as principais formas de ataque proporcionadas pela própria linguagem. A solução de criptografia de caixa branca será resistente a modificações por parte de um atacante. Caso este modifique, de alguma forma, a aplicação, esta deixará de funcionar.
Subject: Engenharia electrotécnica, electrónica e informática
Electrical engineering, Electronic engineering, Information engineering
Scientific areas: Ciências da engenharia e tecnologias::Engenharia electrotécnica, electrónica e informática
Engineering and technology::Electrical engineering, Electronic engineering, Information engineering
TID identifier: 201311330
URI: https://hdl.handle.net/10216/88464
Document Type: Dissertação
Rights: openAccess
Appears in Collections:FEUP - Dissertação

Files in This Item:
File Description SizeFormat 
151182.pdfSolução de criptografia de caixa branca para aplicações JavaScript2.35 MBAdobe PDFThumbnail
View/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.