Diseño e
implementación eficiente del emparejamiento etaT en dispositivos
móviles y arquitecturas multinúcleo
Luis Martínez Ramos
|
Texto completo de la Tesis
Resumen
Los emparejamientos bilineales se han
utilizado recientemente para la construcción de esquemas
criptográficos con nuevas y novedosas propiedades. Desde su
introducción en una aplicación criptográfica
constructiva en el año 2000 por Joux, un número creciente
de protocolos basados en los emparejamientos de Weil y Tate ha
aparecido en la literatura, el ejemplo más significativo es el
esquema de Criptografía Basada en la Identidad propuesto por
Boneh y Franklin. Sin embargo, el cálculo de emparejamientos es
computacionalmente muy costoso para ser utilizado en cualquier
criptosistema basado en emparejamientos, por esta razón,
numerosas aportaciones han aparecido, donde varias mejoras son
propuestas para el cálculo de emparejamientos. Barreto et al.
propusieron una variante del emparejamiento de Tate llamada nT que
hasta hoy es considerado el emparejamiento más eficiente. En
esta tesis, presentamos una implementación eficiente en software
para el cálculo del emparejamiento nT sobre campos finitos
binarios y ternarios. La implementación presentada en este
trabajo logra una eficiencia competitiva con las implementaciones
reportadas en la literatura abierta. Nosotros realizamos esta
implementación sobre dos arquitecturas diferentes, la primera de
ellas es un dispositivo móvil con recursos limitados, la segunda
es una arquitectura multinúcleo que nos permite calcular el
emparejamiento nT en paralelo. También se presenta una
aplicación criptográfica basada en emparejamientos que
hace uso de otras primitivas, como el cifrador por bloques AES, la
función picadillo SHA-256 y funciones picadillo llamadas
map-to-points.
Abstract
Bilinear pairings have been recently
used to construct cryptographic schemes with new and novel properties.
Since its introduction in a constructive cryptographic application in
2000 by Joux, an increasing number of protocols based on Weil or Tate
pairings have appeared in the literature, the most significant example
is the Identity Based Encryption scheme proposed by Boneh and Franklin.
However, the computing pairings is computationally very expensive to be
used in any pairing-based cryptosystem, for this reason, many
contributions have appeared, where several improvements are proposed to
compute pairings. Barreto et al. proposed a variant of the Tate pairing
called nT which until today is considered the most efficient pairing.
In this thesis, we present an efficient software implementation to
compute the nT pairing over binary and ternary finite fields. The
implementation presented in this work achieves a competitive
performance with implementations reported in the open literature. We
made the implementation on two different architectures, the first one
of them it is a mobile device with limited resources, the second one is
a multicore architecture that allows us to compute the nT pairing in
parallel. Also one presents a cryptographic application based on
pairings which it uses of others cryptographic primitives as the AES
block cipher, SHA-256 and map-to-points hash functions.