246 research outputs found
What\u27s in Your Integer? Factoring using the Quadratic Sieve and Elliptic Curve Method
Historically, cryptography has been used to send secret messages. The sender converts the message into something incomprehensible that only the intended recipient can convert back into its original text. Today, cryptography is not only used to send private information, but it also used to digitally sign documents. A digital signature is used as verification when someone sends a message; it ensures that the message actually came from the sender and not an impersonator
Hard Mathematical Problems in Cryptography and Coding Theory
In this thesis, we are concerned with certain interesting computationally hard problems and the complexities of their associated algorithms. All of these problems share a common feature in that they all arise from, or have applications to, cryptography, or the theory of error correcting codes. Each chapter in the thesis is based on a stand-alone paper which attacks a particular hard problem. The problems and the techniques employed in attacking them are described in detail. The first problem concerns integer factorization: given a positive integer . the problem is to find the unique prime factors of . This problem, which was historically of only academic interest to number theorists, has in recent decades assumed a central importance in public-key cryptography. We propose a method for factorizing a given integer using a graph-theoretic algorithm employing Binary Decision Diagrams (BDD). The second problem that we consider is related to the classification of certain naturally arising classes of error correcting codes, called self-dual additive codes over the finite field of four elements, . We address the problem of classifying self-dual additive codes, determining their weight enumerators, and computing their minimum distance. There is a natural relation between self-dual additive codes over and graphs via isotropic systems. Utilizing the properties of the corresponding graphs, and again employing Binary Decision Diagrams (BDD) to compute the weight enumerators, we can obtain a theoretical speed up of the previously developed algorithm for the classification of these codes. The third problem that we investigate deals with one of the central issues in cryptography, which has historical origins in the theory of geometry of numbers, namely the shortest vector problem in lattices. One method which is used both in theory and practice to solve the shortest vector problem is by enumeration algorithms. Lattice enumeration is an exhaustive search whose goal is to find the shortest vector given a lattice basis as input. In our work, we focus on speeding up the lattice enumeration algorithm, and we propose two new ideas to this end. The shortest vector in a lattice can be written as . where are integer coefficients and are the lattice basis vectors. We propose an enumeration algorithm, called hybrid enumeration, which is a greedy approach for computing a short interval of possible integer values for the coefficients of a shortest lattice vector. Second, we provide an algorithm for estimating the signs or of the coefficients of a shortest vector . Both of these algorithms results in a reduction in the number of nodes in the search tree. Finally, the fourth problem that we deal with arises in the arithmetic of the class groups of imaginary quadratic fields. We follow the results of Soleng and Gillibert pertaining to the class numbers of some sequence of imaginary quadratic fields arising in the arithmetic of elliptic and hyperelliptic curves and compute a bound on the effective estimates for the orders of class groups of a family of imaginary quadratic number fields. That is, suppose is a sequence of positive numbers tending to infinity. Given any positive real number . an effective estimate is to find the smallest positive integer depending on such that for all . In other words, given a constant . we find a value such that the order of the ideal class in the ring (provided by the homomorphism in Soleng's paper) is greater than for any . In summary, in this thesis we attack some hard problems in computer science arising from arithmetic, geometry of numbers, and coding theory, which have applications in the mathematical foundations of cryptography and error correcting codes
Public keys quality
Dissertação de mestrado em Matemática e ComputaçãoThe RSA cryptosystem, invented by Ron Rivest, Adi Shamir and Len Adleman ([Rivest et al.,
1978]) is the most commonly used cryptosystem for providing privacy and ensuring authenticity
of digital data. RSA is usually used in contexts where security of digital data is priority. RSA
is used worldwide by web servers and browsers to secure web traffic, to ensure privacy and
authenticity of e-mail, to secure remote login sessions and to provide secure electronic creditcard
payment systems.
Given its importance in the protection of digital data, vulnerabilities of RSA have been
analysed by many researchers. The researches made so far led to a number of fascinating
attacks. Although the attacks helped to improve the security of this cryptosystem, showing that
securely implementing RSA is a nontrivial task, none of them was devastating.
This master thesis discusses the RSA cryptosystem and some of its vulnerabilities as well
as the description of some attacks, both recent and old, together with the description of the
underlying mathematical tools they use. Although many types of attacks exist, in this master
thesis only a few examples were analysed. The ultimate attack, based in the batch-GCD
algorithm, was implemented and tested in the RSA keys produced by a certificated Hardware
Security Modules Luna SA and the results were commented.
The random and pseudorandom numbers are fundamental to many cryptographic applications,
including the RSA cryptosystems. In fact, the produced keys must be generated in a
specific random way. The National Institute of Standards and Technology, responsible entity for
specifying safety standards, provides a package named "A Statistical Test Suit for Random and
Pseudorandom Number Generators for Cryptography Applications" which was used in this work
to test the randomness of the Luna SA generated numbers. All the statistical tests were tested
in different bit sizes number and the results commented.
The main purpose of this thesis is to study the previous subjects and create an applications
capable to test the Luna SA generated numbers randomness, a well as evaluate the security of
the RSA.
This work was developed in partnership with University of Minho and Multicert.O RSA, criado por Ron Rivest, Adi Shamir e Len Adleman ([Rivest et al., 1978]) é o
sistema criptográfico mais utilizado para providenciar segurança e assegurar a autenticação de
dados utilizados no mundo digital. O RSA é usualmente usado em contextos onde a segurança
é a grande prioridade. Hoje em dia, este sistema criptográfico é utilizado mundialmente por
servidores web e por browsers, por forma a assegurar um tráfego seguro através da Internet. É o
sistema criptográfico mais utilizado na autenticação de e-mails, nos inÃcios de sessões remotos,
na utilização de pagamentos através de cartões multibanco, garantindo segurança na utilização
destes serviços.
Dada a importância que este sistema assume na proteção da informação digital, as suas
vulnerabilidades têm sido alvo de várias investigações. Estas investigações resultaram em vários
ataques ao RSA. Embora nenhum destes ataques seja efetivamente eficaz, todos contribuÃram
para um aumento da segurança do RSA, uma vez que as implementações de referência deste
algoritmo passaram a precaver-se contra os ataques descobertos.
Esta tese de mestrado aborda o sistema criptográfico RSA, discutindo algumas das suas
vulnerabilidades, assim como alguns ataques efetuados a este sistema, estudando todos os
métodos matemáticos por estes usados. Embora existam diversos ataques, apenas alguns serão
abordados nesta tese de mestrado. O último ataque, baseado no algoritmo batch-GCD foi
implementado e foram feitos testes em chaves RSA produzidas por um Hardware Security Module
Luna SA certificado e os resultados obtidos foram discutidos.
Os números aleatórios e pseudoaleatórios são fundamentais a todas as aplicações criptográficas,
incluindo, portanto, o sistema criptográfico RSA. De facto, as chaves produzidas deverão
ser geradas com alguma aleatoriedade intrÃnseca ao sistema. O Instituto Nacional de Standards
e Tecnologia, entidade responsável pela especificação dos standards de segurança, disponibiliza
um pacote de testes estatÃsticos, denominado por "A Statistical Test Suit for Random and
Pseudorandom Number Generators for Cryptography Applications". Estes testes estatÃsticos
foram aplicados a números gerados pelo Luna SA e os resultados foram, também, comentados.
O objetivo desta tese de mestrado é desenvolver capacidade de compreensão sobre os assuntos
descritos anteriormente e criar uma aplicação capaz de testar a aleatoriedade dos números
gerados pelo Luna SA, assim como avaliar a segurança do sistema criptográfico RSA.
Este foi um trabalho desenvolvido em parceria com a Universidade do Minho e com a Multicert
Quantum Analogue Computing
We briefly review what a quantum computer is, what it promises to do for us,
and why it is so hard to build one. Among the first applications anticipated to
bear fruit is quantum simulation of quantum systems. While most quantum
computation is an extension of classical digital computation, quantum
simulation differs fundamentally in how the data is encoded in the quantum
computer. To perform a quantum simulation, the Hilbert space of the system to
be simulated is mapped directly onto the Hilbert space of the (logical) qubits
in the quantum computer. This type of direct correspondence is how data is
encoded in a classical analogue computer. There is no binary encoding, and
increasing precision becomes exponentially costly: an extra bit of precision
doubles the size of the computer. This has important consequences for both the
precision and error correction requirements of quantum simulation, and
significant open questions remain about its practicality. It also means that
the quantum version of analogue computers, continuous variable quantum
computers (CVQC) becomes an equally efficient architecture for quantum
simulation. Lessons from past use of classical analogue computers can help us
to build better quantum simulators in future.Comment: 10 pages, to appear in the Visions 2010 issue of Phil. Trans. Roy.
Soc.
- …