PDF de programación - Implementación de OTP usando el protocolo Diffie Hellman basado en curvas elípticas (ECDH)

Imágen de pdf Implementación de OTP usando el protocolo Diffie Hellman basado en curvas elípticas (ECDH)

Implementación de OTP usando el protocolo Diffie Hellman basado en curvas elípticas (ECDH)gráfica de visualizaciones

Publicado el 26 de Julio del 2018
795 visualizaciones desde el 26 de Julio del 2018
1,5 MB
103 paginas
Creado hace 9a (19/05/2014)
Universidad de Buenos Aires

Facultades de Ciencias Económicas,

Cs. Exactas y Naturales e Ingeniería

Maestría en Seguridad Informática



Tema:

Criptografía



Título:

Implementación de OTP usando el
protocolo Diffie Hellman basado en

curvas elípticas (ECDH)

Autor: Ing. Rodrigo Horacio Zapata Valdez

Tutor: Mg. Ing. Juan Alejandro Devincenzi



Año 2014

Cohorte 2012



Declaración Jurada de origen de los contenidos

“Por medio de la presente, el autor manifiesta conocer y aceptar el Reglamento de
Trabajos Finales vigente y se hace responsable que la totalidad de los contenidos
del presente documento son originales y de su creación exclusiva, o bien
pertenecen a terceros u otras fuentes, que han sido adecuadamente referenciados
y cuya inclusión no infringe la legislación Nacional e Internacional de Propiedad
Intelectual”



Resumen


Desde tiempos inmemoriales la comunicación entre los seres humanos es

una necesidad que fue logrando distintas alternativas de solución a medida del

transcurso de los años y la evolución del conocimiento.



La problemática de que los mensajes emitidos solo fueran comprendidos

por los destinatarios, impulsó la creación y desarrollo de la criptografía. Ciencia que

nació y se fortaleció en el ámbito militar, pero que desde hace unas décadas juega

un papel importante en la vida cotidiana, en especial con el auge de Internet.



A lo largo del trabajo se desarrollarán los conceptos necesarios para poder

construir un sistema semánticamente seguro. Sabiendo que el sistema de cifrado

denominado One Time Pad ofrece la propiedad de secreto perfecto, y que su

implementación es algo compleja en términos prácticos, se construirá un sistema

con ciertas características del OTP que ofrezca la seguridad deseada. Básicamente la

gran diferencia se encuentra en el proceso de generación de claves aleatorias, que

serán reemplazadas por claves pseudoaleatorias obtenidas a través de un proceso

Diffie-Hellman basado en curvas elípticas.



Palabras claves: criptografía, one time pad, Diffie Hellman, curvas elípticas,

seguridad semántica



i

TABLA DE CONTENIDO

1

Presentación de la tematica ................................................................................. 1

1.1

Formulación de la problemática.................................................................... 1

1.2 Objetivos:....................................................................................................... 2

1.2.1

1.2.2

Generales ............................................................................................... 2

Específicos .............................................................................................. 2

1.3

1.4

1.5

Hipótesis ........................................................................................................ 3

Alcance .......................................................................................................... 3

Estructura del trabajo .................................................................................... 3

2

Criptografía .......................................................................................................... 5

2.1

2.2

Criptografía asimétrica .................................................................................. 6

Criptografía simétrica .................................................................................... 6

2.2.1

One-Time Pad o cifrador de Vernam ..................................................... 7

3

Conceptos de Seguridad ....................................................................................... 9

3.1

Definiciones y conceptos de seguridad ......................................................... 9

3.1.1

Seguridad Perfecta ................................................................................ 9

3.1.2

3.1.3

Conceptos asociados a la Seguridad Perfecta ...................................... 10

Seguridad computacional .................................................................... 12

3.2

Conceptos básicos de la seguridad.............................................................. 16

3.2.1

3.2.2

Seguridad semántica ............................................................................ 18

Pseudoaleatoriedad ............................................................................ 19

4

Introducción a la criptografía de curvas elípticas ............................................... 20

4.1

Problema del logaritmo discreto de curvas elípticas (PLDCE) .................... 22

4.1.1

Longitud de la clave ............................................................................. 22

4.2

4.3

4.4

4.5

4.6

Elección del campo finito ............................................................................ 23

Estándares relacionados .............................................................................. 23

Dominio de parámetros ............................................................................. 24

Requerimientos de la curva elíptica ........................................................... 25

Ataques conocidos contra las curvas elípticas ........................................... 27

4.6.1

Representación de los puntos de una curva elíptica .......................... 29

5

Establecimiento de claves compartidas ............................................................. 31

5.1

5.2

5.3



Intercambio de claves Diffie-Hellman ........................................................ 31

Algoritmo de establecimiento de clave Diffie-Hellman .............................. 31

Protocolo Diffie-Hellman de Curva Elíptica ................................................ 32

ii

5.3.1

Validación de claves públicas .............................................................. 33

6 Desarrollo del sistema ........................................................................................ 34

6.1

Introducción ................................................................................................ 34

6.2 One-Time Pad modificado ........................................................................... 34

6.2.1

Funcionamiento del sistema ................................................................ 35

6.3

Análisis de indistinguibilidad del sistema .................................................... 36

6.3.1

6.3.2

6.3.3

6.3.4

Construcción criptográfica con un generador pseudoaleatorio .......... 36

Teorema ............................................................................................... 37

Generación de claves pseudoaleatorias en ECDH ............................... 39

Análisis de indistinguibilidad del OTP modificado ............................... 39

7

El lenguaje Java ................................................................................................... 41

7.1

7.2

Justificación de elección del Lenguaje Java ................................................. 41

Características criptográficas de Java ......................................................... 43

7.2.1

7.2.2

7.2.3

Proveedores Criptográficos .................................................................. 45

Proveedores de terceros ...................................................................... 48

Justificación elección de Proveedor Criptográfico ............................... 54

8

Implementación del sistema............................................................................... 56

8.1

8.2

8.3

Instalación de los archivos de políticas de JCE ............................................ 56

Instalación y configuración del proveedor Criptográfico FlexiProvider ...... 57

Descripción del programa ........................................................................... 58

8.3.1

Pseudoaleatoriedad y generación de claves en Java .......................... 62

9

Conclusiones ....................................................................................................... 66

10

Bibliografía ...................................................................................................... 69

Anexo A: Aritmética Modular .................................................................................... 75

A.1 Estructuras algebraicas ................................................................................... 76

A.1.2 Grupos ....................................................................................................... 76

A.2 Campos Finitos ................................................................................................ 77

A.2.1 Campo primo ...................................................................................... 78

A.2.2 Campos binarios .............................................................................. 79

A.2.3 Subcampo .................................................................................................. 79

Anexo B: Curvas elípticas .......................................................................................... 80

B.1 Estructura de grupo (caso general) ................................................................. 82

B.1.1 Curvas elípticas sobre campos ............................................................. 83

B.1.2 Curvas elípticas sobre el campo ...................................................... 87

B.2 Algunas propiedades básicas .......................................................................... 88



iii

Anexo C: Parámetros recomendados para la curva secp521r1 ................................. 89

Anexo D: Codigos de porgramas de prueba ...........................
  • Links de descarga
http://lwp-l.com/pdf12730

Comentarios de: Implementación de OTP usando el protocolo Diffie Hellman basado en curvas elípticas (ECDH) (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad