Post-quantum cryptography: lattice-based cryptography and analysis of NTRU public-key cryptosystem

Detalhes bibliográficos
Autor(a) principal: Monteiro, Rafael Torrado
Data de Publicação: 2016
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/10451/28303
Resumo: Tese de mestrado em Matemática, apresentada à Universidade de Lisboa, através da Faculdade de Ciências, 2016
id RCAP_4995a108cb8f98877adb066ee6a286ba
oai_identifier_str oai:repositorio.ul.pt:10451/28303
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Post-quantum cryptography: lattice-based cryptography and analysis of NTRU public-key cryptosystemCriptografia pós-quânticaComputação quânticaCriptografia baseada em reticuladosAlgoritmos de redução de reticuladosCriptossistema de chave pública NTRUTeses de mestrado - 2016Domínio/Área Científica::Ciências Naturais::MatemáticasTese de mestrado em Matemática, apresentada à Universidade de Lisboa, através da Faculdade de Ciências, 2016Em 1994, Peter Shor desenvolveu um algoritmo quântico para a fatorização de inteiros e para o problema do logaritmo discreto, fazendo de ambos RSA e ECC (Elliptic Curve Cryptography) facilmente quebráveis por computadores quânticos. Como se acredita que computadores quânticos irão fisicamente existir nos próximos poucos anos, quase toda a informação encriptada deixará de estar segura, e o impacto na vida prática das pessoas será no mínimo devastador. Aspetos como a comunicação entre pessoas, empresas e governos, operações bancárias, comércio eletrónico, passwords, entre muitos outros, estarão comprometidos. A criptografia de chave pública é hoje indispensável para indivíduos ou entidades comunicarem em segurança, logo, a existência de computadores quânticos constitui uma enorme ameaça para a nossa criptografia moderna. Caso computadores quânticos venham realmente a existir, substituir os atuais criptossistemas em uso vai ser algo necessário, uma vez que os criptossistemas resistentes a computadores quânticos em uso estão muito longe de ser suficientemente eficientes para serem postos em prática. É portanto imperativo estudar criptossistemas candidatos a substituir os atuais em termos da sua eficiência, praticidade e segurança contra ambos computadores clássicos e quânticos. Em 2016, o NIST, National Institute of Standards and Technology, instituto do Departamento do Comércio dos EUA, anunciou a sua busca por tais construções criptográficas resistentes a computadores quânticos. Estas devem ser eficientes e suficientemente boas para ser adotadas por um largo número de anos. Este instituto prevê a chegada de computadores quânticos para 2030, o que revela que existe pouco tempo para estudar as eventuais propostas de substituição aos criptossistemas atuais. Além disso, esta substituição demorará certamente o seu tempo, de maneira que se deve começar já a investir na busca de construções criptográficas resistentes a computadores quânticos. Desenvolvido por Jeffrey Hoffstein, Jill Pipher e Joseph Silverman (o mesmo Silverman famoso pelo seu trabalho em curvas elípticas) nos anos 90, apresentado na conferencia internacional de criptologia CRYPTO `96 e publicado em 1998, o criptossistema NTRU é um exemplo de um criptossistema resistente à computação quântica com potencial para vir a substituir os atuais criptossistemas clássicos em uso. Embora seja considerado um criptossistema baseado em reticulados, a sua descrição original não os usa, ainda que seja possível descrevê-lo inteiramente usando-os. Ainda assim, no artigo onde vem apresentado constam ataques baseados em reticulados que aproveitam certos aspetos que lhe são intrínsecos. A teoria por detrás do criptossistema NTRU é bastante simples, dado que se baseia em álgebra polinomial e na redução módulo dois inteiros primos entre si. O criptossistema NTRU é, portanto, muito fácil de ser compreendido, implementado, e de ser posto em prática: ambas as chaves pública e privada são rapidamente computáveis, tendo comprimento O(N), fazendo clara distinção com as chaves de comprimento O(N2) de outros criptossistemas ditos rápidos, tais como os criptossistemas McEliece e GGH, e encriptar e desencriptar com o criptossistema NTRU leva O(N2) operações, o que faz do mesmo consideravelmente mais rápido que o criptossistema RSA e a criptografia baseada em curvas elípticas. Além disto, o criptossistema NTRU é considerado como sendo um criptossistema probabilístico, uma vez que usa um elemento aleatório para encriptar uma mensagem. Desse modo, uma mensagem pode ter múltiplas encriptações possíveis. Desde a publicação do criptossistema NTRU, foram emitidos alguns relatórios técnicos, alguns consistindo em algoritmos que permitiram o criptossistema NTRU ganhar eficiência, outros descrevendo melhoramentos de ataques já existentes e também novos ataques e possíveis soluções para os contornar. A análise de segurança feita até hoje, incluindo por criptógrafos reconhecidos como Don Coppersmith, Johan Hastad, Andrew Odlyzho e Adi Shamir, deu ao criptossistema NTRU um estatuto de legitimidade e contribuiu para futura investigação, dado que o criptossistema NTRU se revelou interessante e promissor. Contudo, a análise realizada até hoje não implicou alterações profundas na estrutura do criptossistema NTRU, embora parâmetros mais largos tenham sido recomendados ao longo do tempo para alcançar os níveis de segurança desejados. Apesar de não ser acompanhado de uma prova de segurança, o criptossistema NTRU tem-se revelado seguro, uma vez que nenhum ataque quer clássico quer quântico com impacto significativo no criptossistema foi encontrado, o que revela que é uma boa alternativa aos criptossistemas clássicos em uso. O nosso estudo do criptossistema NTRU começou por explorar a página da companhia Security Innovation, onde se pode encontrar uma breve introdução à criptografia pós-quântica e um vídeo que explica o porquê da mesma ser estudada. Esta página contém um vasto número de recursos, incluindo tutoriais, surveys, relatórios técnicos, resumos e artigos, assim como uma vasta lista de artigos que escrutinam o criptossistema NTRU. De modo a aprofundar o estudo do criptossistema NTRU, explorámos e investigámos uma grande parte da documentação existente nesta página. Existe, como se pode constatar, uma quantidade tremenda de documentação para analisar, e devido a limitações no tempo optámos por estudar o criptossistema NTRUEncrypt, começando pelas suas raízes. Em 1997, Don Coppersmith e Adi Shamir fizeram a primeira análise de segurança ao criptossistema NTRU, em que descobriram que o método de ataque mais eficaz contra o criptossistema consistia em algoritmos de redução de reticulados com vista a encontrar vetores muito curtos numa classe particular de reticulados. Até à data, este é o método de ataque mais eficaz ao criptossistema NTRU. A segurança do criptossistema NTRU tem como base evidências empíricas, que mostra que encontrar vetores muito curtos num reticulado é um problema difícil, especialmente quando a dimensão do reticulado é muito grande. O estudo dos reticulados, denominado Geometria dos Números por Minkowski, data anteriormente das suas aplicações criptográficas e é uma área que contribuiu para o desenvolvimento de muitas outras, tais como a física, análise, álgebra e geometria. Este é um tópico bastante estudado, principalmente devido às aplicações dos algoritmos de redução de reticulados. Como a segurança do NTRU depende principalmente de ataques baseados em reticulados, criámos um capítulo inteiro dedicado aos reticulados e a algoritmos de redução de reticulados. Um importante avanço nesta área foi o algoritmo LLL (por vezes chamado algoritmo L3) de Lenstra, Lenstra e Lovász em 1982, desenvolvido antes dos reticulados serem considerados relevantes em criptografia. Este algoritmo permite encontrar um vetor moderadamente curto num reticulado em tempo polinomial. Com o passar do tempo, este algoritmo foi melhorado, dando origem ao algoritmo BKZ (Blockwise-Korkine-Zolotarev), que é até hoje na prática o melhor algoritmo de redução de reticulados permitindo encontrar vetores muito curtos em reticulados. Este algoritmo deve-se a Schnorr (1987), no entanto não é executado em tempo polinomial. Portanto, encontrar vetores muito curtos num reticulado de larga dimensão continua a ser um problema em aberto. Em 2011, Yuanmi Chen e Phong Q. Nguyen criaram um algoritmo que permite simular o algoritmo BKZ, denominado BKZ simulation algorithm, podendo prever aproximadamente o output e o tempo de execução do algoritmo BKZ. Este trabalho foi dividido em três partes. A primeira é uma pequena introdução à computação quântica, principalmente aos básicos da mecânica quântica e à Transformada de Fourier, uma vez que alguns leitores poderão não conhecer estes conteúdos. Além disso, algumas noções de computação quântica são mencionadas neste trabalho, pelo que faz todo o sentido incluir uma breve referência às mesmas. A segunda parte trata de reticulados em geral, apresenta os algoritmos de redução de reticulados LLL e BKZ (juntamente com o BKZ simulation algorithm) e também alguns exemplos de criptossistemas de chave pública que se baseiam em reticulados. A terceira parte revela uma análise do criptossistema NTRU, focando-se principalmente em ataques baseados em reticulados, que são os que de longe melhor se aplicam aos reticulados associados ao criptossistema NTRU. Como perspetiva de trabalho futuro, apresenta-se uma ideia de um algoritmo quântico para a redução de reticulados.In 1994, Peter Shor has developed a quantum algorithm for integer factorization and the discrete logarithm problem, known as Shor's algorithm. This was a great finding in the quantum field, given that it makes essentially all currently used cryptographic constructions (such as RSA and ECC) easily breakable by a quantum computer. Since quantum computers are believed to physically exist in the next few years, these encryption schemes will be no longer reliable, making the encrypted data compromised. It is thus of crucial importance to build and analyze new quantum-resistant cryptographic schemes. These new cryptographic constructions should be efficient and secure enough to be used in practice and standardized for a large number of years, replacing the current ones if needed. In the last year, NIST (National Institute of Standards and Technology, from U.S. Department of Commerce) has announced its quest of finding such quantum-resistant cryptographic constructions. The NTRU encryption scheme, developed by Jeffrey Hoffstein, Jill Pipher and Joseph Silverman (the same Silverman famous for his work on elliptic curves) in the 90's, presented in 1996 and published in 1998, is an example of a quantum-resistant proposal. Although it is not supported with a theoretical security proof, the scrutiny done since its presentation until now reveal that NTRU is secure and is a good successor for replacing the current constructions currently in use. It is a fact that there already exist some classical cryptosystems that are quantum-resistant. The McEliece cryptosystem (1978) is an example of such a quantum-resistant construction, but it is not good to be used in practice. The theory behind the NTRU cryptosystem is very simple, therefore easy to understand, and NTRU can be very easily implemented and put in practice: both private and public keys are easy and quickly computable, having O(N) length, making a clear difference between the length O(N2) of other cryptosystems considered as fast, and encrypting and decrypting with NTRU takes O(N2) operations, which makes it considerably faster than RSA and ECC. To date, NTRU remains secure against both classical and quantum computers. The most effective attacks on NTRU are based on lattices, namely using lattice reduction algorithms, which goal is to find very short vectors in a lattice. One can apply the LLL algorithm (1982) of Arjen Lenstra, Hendrik Lenstra and László Lovász, which is recognized as a very important achievement in many areas of mathematics. It runs in polynomial time, but has an exponential approximation factor. This algorithm was improved over time. The most important improvement is due to Schnorr (1987), who introduced the Blockwise-Korkine-Zolotarev algorithm, also known as BKZ algorithm, which is to date the best lattice reduction algorithm to be put in practice. In 2011, Yuanmi Chen and Phong Q. Nguyen improved the BKZ algorithm, revising lattice security estimates, and created the BKZ simulation algorithm, permitting to predict both the output and the running time of the BKZ algorithm without the need of running BKZ, since in high dimension with blocksize ≥ 45 the running time of BKZ is considerably long. There is a lot of investigation in this area, mainly because of its cryptographic applications. This work can be divided in three parts: first, we present a slight and short introduction to quantum computing, namely the basics of quantum mechanics and the Fourier Transform; secondly, we give a sufficient groundwork on lattices, present the LLL and BKZ lattice reduction algorithms, the BKZ simulation algorithm as well, and give some examples of public-key encryption schemes; in third place, we give an analysis of the NTRU cryptosystem, focusing mainly on lattice-based attacks. Finally, as work to do in the future, we present an idea of a quantum algorithm for lattice reduction.Mateus, Paulo Alexandre CarreiraAndré, Carlos Alberto Martins,1961-Repositório da Universidade de LisboaMonteiro, Rafael Torrado2017-07-11T14:51:29Z201620162016-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10451/28303TID:201965151enginfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-11-08T16:19:56Zoai:repositorio.ul.pt:10451/28303Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T21:44:33.085175Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Post-quantum cryptography: lattice-based cryptography and analysis of NTRU public-key cryptosystem
title Post-quantum cryptography: lattice-based cryptography and analysis of NTRU public-key cryptosystem
spellingShingle Post-quantum cryptography: lattice-based cryptography and analysis of NTRU public-key cryptosystem
Monteiro, Rafael Torrado
Criptografia pós-quântica
Computação quântica
Criptografia baseada em reticulados
Algoritmos de redução de reticulados
Criptossistema de chave pública NTRU
Teses de mestrado - 2016
Domínio/Área Científica::Ciências Naturais::Matemáticas
title_short Post-quantum cryptography: lattice-based cryptography and analysis of NTRU public-key cryptosystem
title_full Post-quantum cryptography: lattice-based cryptography and analysis of NTRU public-key cryptosystem
title_fullStr Post-quantum cryptography: lattice-based cryptography and analysis of NTRU public-key cryptosystem
title_full_unstemmed Post-quantum cryptography: lattice-based cryptography and analysis of NTRU public-key cryptosystem
title_sort Post-quantum cryptography: lattice-based cryptography and analysis of NTRU public-key cryptosystem
author Monteiro, Rafael Torrado
author_facet Monteiro, Rafael Torrado
author_role author
dc.contributor.none.fl_str_mv Mateus, Paulo Alexandre Carreira
André, Carlos Alberto Martins,1961-
Repositório da Universidade de Lisboa
dc.contributor.author.fl_str_mv Monteiro, Rafael Torrado
dc.subject.por.fl_str_mv Criptografia pós-quântica
Computação quântica
Criptografia baseada em reticulados
Algoritmos de redução de reticulados
Criptossistema de chave pública NTRU
Teses de mestrado - 2016
Domínio/Área Científica::Ciências Naturais::Matemáticas
topic Criptografia pós-quântica
Computação quântica
Criptografia baseada em reticulados
Algoritmos de redução de reticulados
Criptossistema de chave pública NTRU
Teses de mestrado - 2016
Domínio/Área Científica::Ciências Naturais::Matemáticas
description Tese de mestrado em Matemática, apresentada à Universidade de Lisboa, através da Faculdade de Ciências, 2016
publishDate 2016
dc.date.none.fl_str_mv 2016
2016
2016-01-01T00:00:00Z
2017-07-11T14:51:29Z
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 http://hdl.handle.net/10451/28303
TID:201965151
url http://hdl.handle.net/10451/28303
identifier_str_mv TID:201965151
dc.language.iso.fl_str_mv eng
language eng
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ório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799134366526341120