• Nenhum resultado encontrado

Sistemas criptográficos baseados em identidades pessoais

N/A
N/A
Protected

Academic year: 2021

Share "Sistemas criptográficos baseados em identidades pessoais"

Copied!
52
0
0

Texto

(1)

Sistemas criptográficos

Sistemas criptográficos

baseados em identidades

baseados em identidades

pessoais

pessoais

Waldyr Dias Benits Jr.

benits@ime.usp.br

Routo Terada, prof. Dr.

rt@ime.usp.br

(2)
(3)

Sumário

Sumário

1. Principais problemas encontrados em criptografia simétrica e assimétrica

2. Conceitos fundamentais de criptografia com curvas elípticas e emparelhamentos

3. Sistemas criptográficos baseados em identidades 4. Variações esquemas assinaturas

5. PKG não-confiável

6. Aplicações e hierarquia

(4)
(5)

Objetivos

Objetivos

Este

trabalho

tem

como

objetivos

principais:

Estudar

os

sistemas

criptográficos

baseados em identidade

e os conceitos

fundamentais de

criptografia com curvas

elípticas e emparelhamentos.

(6)

Objetivos

Objetivos

(secundários)

(secundários)

Elaborar um documento de referência;

Estudar detalhadamente um esquema de

assinatura & criptografia em um único

passo (signcryption);

Implementar de forma didática um protótipo

de um sistema baseado em identidades.

Além disso, veremos:

principais aplicações práticas;

variações em esquemas de assinaturas;

(7)

Contribuições

Contribuições

1.

Elaboração

de documento

em língua

portuguesa;

2.

Análise sobre a escolha do elemento

“aleatório” nos esquemas de B-F e ML e N-R;

3.

Variação no esquema B-F;

4.

Comparação IBE X PKI;

5.

Implementação didática;

(8)

Sumário

Sumário

1. Principais problemas encontrados em criptografia simétrica e assimétrica

2. Conceitos fundamentais de criptografia com curvas elípticas e emparelhamentos

3. Sistemas criptográficos baseados em identidade 4. Variações esquemas assinaturas

5. PKG não-confiável

6. Aplicações e hierarquia

(9)

Principais

Principais

dificuldades

dificuldades

Tempo decorrido entre o comprometimento de uma chave e sua revogação

Necessidade de uma infra-estrutura para armazenar as chaves públicas

Como garantir que o detentor da chave pública é realmente quem diz ser ?

Assimétrica

Quantas chaves são necessárias para uma comunicação segura entre n pessoas ?

Como distribuir e armazenar as chaves secretas de forma segura ?

Simétrica

(10)

Sumário

Sumário

1. Principais problemas encontrados em criptografia simétrica e assimétrica

2. Conceitos fundamentais de criptografia com curvas elípticas e emparelhamentos

3. Sistemas criptográficos baseados em identidade 4. Variações esquemas assinaturas

5. PKG não-confiável

6. Aplicações e hierarquia

(11)

Curva elíptica sobre

Curva elíptica sobre

F

F

q

q

Seja Fq o conjunto de inteiros mod q, onde q é um número primo.

Uma curva elíptica E sobre Fq é definida pela seguinte equação:

Onde a, b ∈ Fq e 4a³ + 27b² 0 (mod q)

O conjunto E(Fq) consiste dos pontos (x,y), x ∈ Fq, y ∈ Fq, que satisfazem a equação, juntamente com o ponto no infinito O.

(12)

Algumas definições

Algumas definições

importantes

importantes

Ordem de um ponto

: é o menor inteiro

positivo t tal que t.P = O;

Ordem de uma curva

: é o número de

pontos (x,y) – além do ponto

O no

infinito - que satisfazem à equação da

curva;

Grau de imersão de uma curva

: é o

(13)

Sobre o

Sobre o

emparelhamento

emparelhamento

Sejam G

1

e G

2

grupos de ordem prima q.

Um

emparelhamento

é um mapeamento entre

estes grupos, tal que:

ê:

G

1

X G

1

G

2

Para que possa ser usado em sistemas baseados

em identidades, deve satisfazer às propriedades:

1. Ser

bilinear

;

2. Ser

não degenerado

;

3. Ser

computável

.

e(aP, bQ) = e(P,Q)ab

(14)
(15)

Representação

Representação

Ponto

P

E(F

q

):

par de inteiros

(x,y)

mod q

.

Ponto

Q

E(F

qk

):

par de polinômios

(x(u), y(u)), onde

cada polinômio tem

grau menor do que k e

coeficientes em

F

q

.

Operações algébricas em

F

qk:

são efetuadas módulo

um polinômio irredutível

m(u)

de grau k, sendo os

(16)

Exemplo de cálculo de

Exemplo de cálculo de

emparelhamento

emparelhamento

Seja E: y² = x³ + 6x + 8 a curva elíptica

definida sobre F

17

Sejam P

E(

F

q

)

e Q

E(

F

qk

) pontos L.I.

14² (mod 17) = 9³ + 6.9 + 8 (mod 17) 9 = 9

Q = (13u

4

+ 4u² + 1, 13u

5

+ 6u³ + 5u)

e

t

(P,Q) = 8u

5

+ 15u

4

+ 6u³ + 9u² + 16u + 5

(17)

Sumário

Sumário

1. Principais problemas encontrados em criptografia

simétrica e assimétrica

2. Conceitos fundamentais de criptografia com curvas

elípticas e emparelhamentos

3. Sistemas criptográficos baseados em identidades

a) Criptografia (Boneh e Franklin)

b) Assinatura (Hess)

c) Criptassinatura (Nalla e Reddy)

4. Variações esquemas assinaturas

5. PKG não-confiável

6. Aplicações e hierarquia

7. Implementação didática de um protótipo

(18)

Notações utilizadas

Notações utilizadas

G

1

,

G

2

: grupos de ordem prima q, onde o problema

do logaritmo discreto (PLD) é supostamente difícil e

para os quais existe um mapeamento bilinear

computável

e :

G

1

X G

1

G

2;

Na prática:

G

1

: grupo de pontos de uma curva elíptica

E(F

q

)

G

2

: subgrupo de um grupo multiplicativo de um

corpo finito

E(F

qk

)

(19)

Prob

Prob

l

l

emas

emas

Diffie-

Diffie-Hellman

Hellman

Computacional (CDHP)

Computacional (CDHP)

Dados (

P

,

aP

,

bP

)

G

1

, calcular

abP

Bilinear

Bilinear

(BDHP)

(BDHP)

Dados (

P

,

aP

,

bP

,

cP

)

G

1

calcular

e(P,P)

abc

Se CDHP é fácil, então BDHP é fácil: - Calcule abP;

- Calcule e(abP, cP) = e(P,P)abc

Porém, para determinados grupos:

(20)

Funções de

Funções de

hash

hash

H

1

: {0,1}

*

G

1

;

H

2

: {0,1}

*

F

q

;

H

3

: G

2

{0,1}

*

;

H

4

: {0,1}

*

G

(21)

Chaves utilizadas

Chaves utilizadas

Par de chaves pública/particular padrão (

R

,

s

):

Par de chaves baseadas em identidade (

Q

ID

,

S

ID

):

R = sP

S

ID

= sQ

ID

Q

ID

= H

1

(ID)

(22)

Criptografia baseada em

Criptografia baseada em

identidade

identidade

(IBE)

(IBE)

Criptografia (B & F)

Alice seleciona

r

aleatório em F

q

e calcula:

(

P

G

2

)

O texto criptografado é

(U,V)

(23)

Criptografia baseada em

Criptografia baseada em

identidade

identidade

(IBE)

(IBE)

Demonstração

et(Sbeto, U) = et(Sbeto, rP), pois U = rP

= et(sQBeto, rP), pois Sbeto= sQBeto =

et(Qbeto, P)rs, por bilinearidade

= et(rQBeto, sP), por bilinearidade

(24)

Importância na escolha

Importância na escolha

de

de

Suponha que Alice escolhesse sempre o

r

r

mesmo

r

:

Para duas mensagens distintas, m

1

e m

2

, o valor

de U seria o mesmo e o valor de V seria

diferente, pois depende de m. Vamos chamar

estes valores de V

1

e V

2

.

Note que

H

3

(

e

t

(rQ

Beto

, R

TA

))

também não se altera,

pois depende de r.

(25)

Importância na escolha

Importância na escolha

de

de

Desta forma, teremos:

r

r

V

1

= m

1

x

V

2

= m

2

x

Se um intruso interceptar V

1

e V

2

, ele calcula:

V

= V

1

V

2

= (m

1

x)

(m

2

x)

= m

1

m

2

(26)

Variação B-F

Variação B-F

Note que

e

t

(rQ

Beto,

R

TA

) =

e

t

(S

beto

, U) =

k

Na prática:

Criptografia assimétrica (IBE): canal seguro;

Criptografia simétrica: troca de mensagens.

V = E

k

(m)

k : chave simétrica

entre Alice e Beto

Esquema B-F

protocolo (seguro) negociação

(27)

Variação B-F

Variação B-F

Beto precisa apenas ter certeza de que está falando com Alice:

Com assinatura Hess:

Alice assina k e envia para Beto;

Beto recupera k (usando S

beto ) e verifica se assinatura é válida

(usando Qalice)

Com esquema de assinatura com recuperação de mensagem:

Alice assina U e envia para Beto;

Beto usa Q

alice para verificar assinatura e recuperar U;

Beto, com U, calcula k.

(28)

Assinaturas baseadas em

Assinaturas baseadas em

identidade

identidade

Assinatura (Hess)

(29)

Assinaturas baseadas em

Assinaturas baseadas em

identidade

identidade

Verificação

Se Alice deseja verificar se a assinatura é

realmente de Beto, o faz da seguinte forma:

Calcula

e aceita a assinatura como válida se e

somente se

h = H

2(m || r)

(30)

Criptassinatura de Nalla &

Criptassinatura de Nalla &

Reddy

Reddy

Alice quer enviar uma mensagem m para Beto:

1 – Escolhe “a” aleatório em Fq 2 – Calcula R = aSalice h = H2(R || H3(et (Qbeto,Salice)) || m ) S = ahQalice ka = H3[et (Qbeto, Salice)ah] 3 – Faz C = ka m

(31)

Criptassinatura de Nalla &

Criptassinatura de Nalla &

Reddy

Reddy

Beto, conhecendo R, S, C, Q

alice

, Q

beto

, S

beto

, calcula:

k

b

= H

3

(

e

t

(

S

beto

, S))

m = k

b

C

h = H

2

(R ||

H

3

(

e

t

(S

beto

, Q

alice

))

|| m )

E verifica se

(32)

Sugestões ao artigo

Sugestões ao artigo

de N-R

de N-R

Artigo original

Sugestões

1

1

R’ = (R || H3(et(SA, QB)) || m) e cálculo de ka = H3[et (QB, SA)ah] Trocar et(SA, QB) por et (QB, SA)

2

2

y = et(W, QB) no esquema ML e na verificação y = et(QB, W) Trocar et(W, QB) por et(QB, W)

3

3

et(QB, W) não computado como pré-calculável

Observar que

et(QB, W) = et(QB, zRTA) = et(QB, RTA)z

4

4

Comparação com esquema assinatura Cha & Cheon

Usar esquema Hess (mais eficiente

5

(33)

Sumário

Sumário

1. Principais problemas encontrados em criptografia simétrica e assimétrica

2. Conceitos fundamentais de criptografia com curvas elípticas e emparelhamentos

3. Sistemas criptográficos baseados em identidade 4. Variações esquemas assinaturas

5. PKG não-confiável

6. Aplicações e hierarquia

(34)

Variações em esquemas de

Variações em esquemas de

Assinatura

Assinatura

Assinatura em anel (ring signature)

Garante anonimato do assinante.

Assinatura cega (blind signature)

Garante anonimato do usuário.

Assinante não tem conhecimento do conteúdo

(35)

Sumário

Sumário

1. Principais problemas encontrados em criptografia simétrica e assimétrica

2. Conceitos fundamentais de criptografia com curvas elípticas e emparelhamentos

3. Sistemas criptográficos baseados em identidade 4. Variações esquemas assinaturas

5. PKG não-confiável

6. Aplicações e hierarquia

(36)

Assinatura com PKG não

Assinatura com PKG não

confiável

confiável

Alice escolhe aleatoriamente r em Z*

q

, calcula rP e

envia para o PKG, mantendo r em segredo.

Chave pública de Alice:

Chave particular de Alice:

Q

alice

= H

1

(ID

alice

|| rP)

(37)

Assinatura com PKG não

Assinatura com PKG não

confiável

confiável

Assinatura

Para Alice assinar uma mensagem:

Segredo

r

de Alice

Escolhe aleatoriamente a em Z*

q

e calcula:

U = aQ

alice

V =

r

H

1

(m,U)

h = H

2

(m, U + V)

W = (a + h)S

alice

(38)

Assinatura com PKG não

Assinatura com PKG não

confiável

confiável

Verificação

:

Beto calcula Q

alice

, H

1

(m,U) e h e aceita a assinatura

como válida se:

e

e

t

(W,P) = e

t

(U + hQ

alice

, R

PKG

)

(39)

Sumário

Sumário

1. Principais problemas encontrados em criptografia simétrica e assimétrica

2. Conceitos fundamentais de criptografia com curvas elípticas e emparelhamentos

3. Sistemas criptográficos baseados em identidade 4. Variações esquemas assinaturas

5. PKG não-confiável

6. Aplicações e hierarquia

(40)

Revogação de chaves

Revogação de chaves

públicas

públicas

Chaves públicas com prazo de validade

pré-estabelecido

acrescentar o período de

validade no ID:

Exemplo:

ID = Alice@ime.usp.br || 2003 ou

ID = Alice@ime.usp.br || outubro2003

(41)

Hierarquia

Hierarquia

Ponto de partida.

Porém:

foco em outros assuntos:

(42)

Sumário

Sumário

1. Principais problemas encontrados em criptografia simétrica e assimétrica

2. Conceitos fundamentais de criptografia com curvas elípticas e emparelhamentos

3. Sistemas criptográficos baseados em identidade 4. Variações esquemas assinaturas

5. PKG não-confiável 6. Aplicações

7. Hierarquia

(43)

Implementação

Implementação

Linguagem

ANSI-C

;

Uso de valores didáticos:

(44)

Sumário

Sumário

1. Principais problemas encontrados em criptografia simétrica e assimétrica

2. Conceitos fundamentais de criptografia com curvas elípticas e emparelhamentos

3. Sistemas criptográficos baseados em identidade 4. Variações esquemas assinaturas

5. PKG não-confiável 6. Aplicações

7. Hierarquia

(45)

Vantagens e

Vantagens e

desvantagens

desvantagens

VANTAGENS

 Não necessidade de um diretório de chaves públicas;

 Entidade que possua par de chaves padrão ⇒ papel de

PKG;

 PKG: conhece todas as chaves particulares de seus

usuários;

 Envio de mensagens criptografadas antes da obtenção

da chave particular junto ao PKG;

(46)

Vantagens e

Vantagens e

desvantagens

desvantagens

DESVANTAGENS

PKG: conhece todas as chaves particulares de

seus usuários;

Dificuldade

de

implementação

do

emparelhamento de Tate;

Desempenho: assinatura e criptografia mais

(47)

Trabalhos Futuros

Trabalhos Futuros

1. Modificação da implementação para permitir uso de

parâmetros utilizados na prática;

2. Testes contra os principais ataques conhecidos;

3. Provas formais de segurança;

4. Otimização da implementação;

5. Cálculo da raiz quadrada em Fqk;

6. Geração do ponto em E(Fqk) e do polinômio primo em

Fqk

;

7. Cálculo da ordem da curva de forma eficiente;

8. Comparação do esquema B-F modificado com outros

(48)

Artigos

Artigos

(Benits -

(Benits -

Terada)

Terada)

1.

Sistemas criptográficos baseados em

identidades pessoais

– publicado na

revista

científica

Pesquisa

Naval

(suplemento da Revista Marítima

Brasileira), ISSN 1414-8595, nº 16 –

setembro de 2003, cap. X p. 115 a

127;

(49)

(50)

F I

F I

M

(51)

Referências

Referências

[BAR 99] BARRETO, P. Curvas Elípticas e Criptografia: Conceitos e Algoritmos. Disponível em <http://planeta.terra.com.br/informatica/paulobarreto>. Acesso em: 25 mar. 2003.

[BAR 02] BARRETO, P.; KIM, H.; LYNN, B. Eficient Algorithms for Pairing-Based Cryptosystems. In: Lecture Notes in Computer Science, v.2442, p.354368. Springer-Verlag, 2002. Advances in Cryptology - Crypto'2002.

[BAR 03] BARRETO, P.; LYNN, B.; SCOTT, M. On the selection of Pairing-Friendly Groups. Disponível em <http://eprint.iacr.org/2003/086>. Acesso em: 04 mai. 2003.

(52)

Referências

Referências

[CHA 02] CHA, J. C.; CHEON, J. H. An Identity-based Signature from gap Die-Hellman groups. In: Lecture Notes in Computer Science, v.2567, p.1830. Springer-Verlag, 2002.

[CHE 02] CHEN, L. et al. Certication of Public Keys within an Identity-Based System. In: Lecture Notes in Computer Science, v.2433, p.322333. Springer-Verlag, 2002. 5th International Security Conference - ISC 2002.

[CHE 03] CHEN, X.; ZHANG, F.; KIM, K. A New ID-based Group Signature Scheme from Bilinear Pairings. Disponível em <http://eprint.iacr.org/2003/116>. Acesso em: 06 jun. 2003. Cryptology ePrint Archive, Report 2003/116.

Referências

Documentos relacionados

Como posso saudar a mim mesmo no Eu, pois eu sou (eu próprio) a Ventura Suprema Eterna que não tem distinção de cores tais como o branco, etc, que não se acha preso por causa e

Para o ferro puro foi utilizado uma camada de entrada com 4 neurônios (um para cada classe de dados de entrada – temperatura, tempo, diâmetro inicial de grão e

Prazer é intuitivamente algo bom - a não ser que seja cristão, nesse caso o Padre ou o Pastor substitui o PM e além de impedi-lo de pensar ainda extorque seu desejo sobe a forma

popular pela forma destinar-se-ia mais aos membros do Jockey Club do que aos da Confederação Geral do Trabalho; quanto aos temas, os romances populares satisfazem tão

Considerando que as espécies de Annonaceae apresentam relações mutualísticas entre plantas e polinizadores (Gottsberger, 1977) e que essas relações são importantes para

viria a ser o mais importante brasilianista na área de economia, Werner Baer, publicou um livro sobre a história econômica do Brasil, escrita para alunos norte-americanos, que teve

O uso de subprodutos industriais, como glicerol, soro de leite, bagaço, vem sendo estudados para a obtenção de energia, pois devido a sua elevada produção tornam-se resíduos e devem

BA MG SP SC RS AM PE CE BA - Pilar GO PR A KLABIN NO PARANÁ INAUGURAÇÃO DA PRIMEIRA UNIDADE EM TELÊMACO BORBA - PR 1946 MAIS DE COLABORADORES 10.000 Terminal Portuário PLANTA DE