Speculative execution resilient cryptography
| Main Author: | |
|---|---|
| Publication Date: | 2023 |
| Format: | Master thesis |
| Language: | eng |
| Source: | Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| Download full: | https://hdl.handle.net/1822/92656 |
Summary: | Dissertação de mestrado em Informatics Engineering |
| id |
RCAP_19a0e79e85f558db2672e1da5dc7b5e3 |
|---|---|
| oai_identifier_str |
oai:repositorium.sdum.uminho.pt:1822/92656 |
| network_acronym_str |
RCAP |
| network_name_str |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| repository_id_str |
https://opendoar.ac.uk/repository/7160 |
| spelling |
Speculative execution resilient cryptographySpectre attacksSpeculative executionAtaques spectreJasminType systemBladeHash Blake2boo7Execução especulativaEngenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e InformáticaDissertação de mestrado em Informatics EngineeringSpectre attacks pose a significant threat to modern computer systems, exploiting speculative execution to leak sensitive information from a program. Since speculative execution is present in modern CPU it is of high priority to protect programs against these spectre attacks without reducing performance. This study presents a comprehensive comparison of mitigation strategies employed by different tools to counteract the effects of spectre attacks. However, this paper focuses its analyses on the type system from the Jasmin framework and on the Blade tool. The type system uses three main primitives that work together to protect vulnerable variables from leaking. On the other hand, the Blade tool allows for an automatic mitigation strategy that implements a Min-Cut algorithm to a graph representing the different outputs of a program in order to find the minimal cut points that stop speculative execution from leaking vulnerable variables. Aside from these strategies, this study also presents in detail the oo7 tool that identifies spectre vulnerable patterns which are used to easily identify if a program is vulnerable to spectre attacks. Through an in-depth analysis of their techniques, performance implications, and applicability, this research evaluates the suitability of both strategies to protect cryptography functions against spectre attacks by protecting the Blake2b hash function. In the end, this comparative analysis between these two mitigation strategies determines in which scenario or purpose which technique should be used.Os ataques spectre representam uma ameaça significativa para os todos os computadores modernos, já que exploram a execução especulativa para obter informações sensíveis de um programa. Uma vez que a execução especulativa está presente em todos os CPUs modernos, é de alta prioridade proteger programas contra estes ataques sem reduzir a performance de um programa. Este estudo apresenta uma comparação compreensível das estratégias de mitigação realizadas por diferentes ferramentas para combater os efeitos dos ataques spectre. No entanto, este artigo concentra a sua análise no type system da framework Jasmin e na ferramenta Blade. O type system utiliza três primitivas principais que trabalham juntas para proteger variáveis vulneráveis de ser lidas por entidades externas. Por outro lado, a ferramenta Blade fornece uma estratégia automática de mitigação que implementa o algoritmo Min-Cut num gráfico que representa os diferentes outputs de um programa, a fim de encontrar os cortes mínimos que impeçam a execução especulativa de ler variáveis vulneráveis. Além destas estratégias, este estudo também apresenta em detalhe a ferramenta oo7, que identifica padrões vulneráveis a ataques spectre que são usados para identificar facilmente se um programa é vulnerável a ataques spectre. Através de uma análise aprofundada das técnicas, implicações de performance e aplicabilidade, esta pesquisa avalia o quão adequadas são as estratégias em proteger funções de criptografia, através da proteção da função de hash, Blake2b. No final, esta análise comparativa irá determina em qual cenário ou propósito cada estratégia de mitigação deve ser usada.Almeida, José BacelarUniversidade do MinhoCarneiro, Ana Luísa Lira Tomé2023-12-052023-12-05T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://hdl.handle.net/1822/92656eng203609506info:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2024-08-03T01:27:25Zoai:repositorium.sdum.uminho.pt:1822/92656Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-28T18:46:45.177942Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse |
| dc.title.none.fl_str_mv |
Speculative execution resilient cryptography |
| title |
Speculative execution resilient cryptography |
| spellingShingle |
Speculative execution resilient cryptography Carneiro, Ana Luísa Lira Tomé Spectre attacks Speculative execution Ataques spectre Jasmin Type system Blade Hash Blake2b oo7 Execução especulativa Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática |
| title_short |
Speculative execution resilient cryptography |
| title_full |
Speculative execution resilient cryptography |
| title_fullStr |
Speculative execution resilient cryptography |
| title_full_unstemmed |
Speculative execution resilient cryptography |
| title_sort |
Speculative execution resilient cryptography |
| author |
Carneiro, Ana Luísa Lira Tomé |
| author_facet |
Carneiro, Ana Luísa Lira Tomé |
| author_role |
author |
| dc.contributor.none.fl_str_mv |
Almeida, José Bacelar Universidade do Minho |
| dc.contributor.author.fl_str_mv |
Carneiro, Ana Luísa Lira Tomé |
| dc.subject.por.fl_str_mv |
Spectre attacks Speculative execution Ataques spectre Jasmin Type system Blade Hash Blake2b oo7 Execução especulativa Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática |
| topic |
Spectre attacks Speculative execution Ataques spectre Jasmin Type system Blade Hash Blake2b oo7 Execução especulativa Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática |
| description |
Dissertação de mestrado em Informatics Engineering |
| publishDate |
2023 |
| dc.date.none.fl_str_mv |
2023-12-05 2023-12-05T00:00:00Z |
| dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
| format |
masterThesis |
| status_str |
publishedVersion |
| dc.identifier.uri.fl_str_mv |
https://hdl.handle.net/1822/92656 |
| url |
https://hdl.handle.net/1822/92656 |
| dc.language.iso.fl_str_mv |
eng |
| language |
eng |
| dc.relation.none.fl_str_mv |
203609506 |
| dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf |
| dc.source.none.fl_str_mv |
reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia instacron:RCAAP |
| instname_str |
FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia |
| instacron_str |
RCAAP |
| institution |
RCAAP |
| reponame_str |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| collection |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| repository.name.fl_str_mv |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia |
| repository.mail.fl_str_mv |
info@rcaap.pt |
| _version_ |
1833597658119274496 |