Carregar apresentação
A apresentação está carregando. Por favor, espere
1
S E M I N Á R I O UNIVERSIDADE DE SÃO PAULO
INSTITUTO DE MATEMÁTICA E ESTATÍSTICA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO S E M I N Á R I O Mar/2003
2
Criptossistemas baseados em identidades pessoais (Apresentado por Waldyr Dias Benits Junior e Mehran Misaghi) Mar/2003
3
SUMÁRIO Criptografia simétrica X assimétrica
Principais tipos de ataques Criptossistemas baseados em identidade (Identity-based Cryptosystems) Vantagens e Desvantagens principais Mar/2003
4
MOTIVAÇÃO Galileu Galilei
“Existem homens de bom senso que, por serem incapazes de decifrar as coisas que são ‘grego’ para eles, convencem-se de que a lógica e a filosofia estão acima deles. Pois bem, gostaria que vissem que, assim como a natureza os dotou de olhos com os quais podem enxergar as obras dela, também lhes concedeu cérebros para penetrar e compreendê-las.” Mar/2003 Galileu Galilei
5
Proposta Apresentar Sistemas de Criptografia e Assinatura baseados em identidade, mostrando suas principais aplicações, vantagens e desvantagens, de modo a permitir uma futura implementação destes sistemas, a fim de contribuir para uma infra-estrutura de chaves públicas mais flexível e menos vulnerável. Mar/2003
6
I N T R O D U Ç Ã O Mar/2003
7
Criptografia Simétrica
Canal Seguro Chave Secreta Texto Texto Texto Aberto Cifrado Aberto Algoritmo de Algoritmo de Decifragem Cifragem (Inverso da cifragem) ( ex : DES) Mar/2003
8
Características Importantes
Impossibilidade de se obter a chave privada, dados a chave pública e o algoritmo Alguns Algoritmos Permitem que as duas chaves possam ser usadas para cifrar e decifrar Mar/2003
9
Esquema de Criptografia Assimétrica
Anel de Chaves Públicas de Alice João Pedro Beto José Chave Privada de Beto Texto Cifrado Texto Aberto Texto Aberto Algoritmo de Cifragem (ex: RSA) Algoritmo de Decifragem Mar/2003
10
Problemas a serem gerenciados
Criptografia Simétrica Como distribuir e armazenar as chaves secretas de forma segura ? Quantas chaves são necessárias para uma comunicação segura entre n pessoas ? Criptografia Assimétrica Como garantir que o detentor da chave pública é realmente quem diz ser ? Necessidade de ter uma infra-estrutura para armazenar as chaves públicas Mar/2003
11
Nº de chaves necessárias
nº de participantes Criptografia Simétrica n(n-1)/2 Criptografia Assimétrica 2n 2 1 4 4 6 8 8 28 16 16 120 32 Mar/2003
12
CRIPTOSSISTEMAS BASEADOS EM IDENTIDADE
Mar/2003
13
Histórico Em 1984, Adi Shamir [10] propôs um novo esquema criptográfico que permitiria a qualquer par de usuários se comunicar seguramente e verificar assinaturas sem troca de chaves públicas ou privadas, sem manter um diretório de chaves e sem usar os serviços de uma terceira parte durante a comunicação. Mar/2003
14
Histórico O esquema proposto se baseava nos criptossistemas de chave pública, sendo que, em vez de gerar um par aleatório de chaves pública e privada e publicar uma destas chaves, o usuário usa como chave pública alguma informação que o identifique de forma única (por ex. CPF, endereço ) de modo que ele não possa negar mais tarde esta informação. Mar/2003
15
Histórico A chave privada correspondente é então gerada por um centro gerador de chaves (PKG) e transmitida para o usuário de forma segura. Neste tipo de esquema, não existe a necessidade de autenticar a chave pública de um usuário, já que esta é a própria identificação do usuário (ou uma função Hash da identificação, como veremos adiante). Mar/2003
16
Notações utilizadas G1, G2: grupos de ordem prima q, onde o problema do logaritmo discreto (PLD) é assumidamente difícil e para os quais existe um mapeamento bilinear computável t : G1 X G1 G2,, onde t representa o Tate pairing Se escrevermos G1 em notação aditva e G2 em notação multiplicativa, podemos, na prática, considerar : G1 : grupo de pontos de uma curva elíptica G2 : subgrupo de um grupo multiplicativo de um campo finito Mar/2003
17
Funções de Hash Serão utilizadas as seguintes funções de Hash no decorrer desta exposição: H1 : {0,1}* G1; H2 : {0,1}* Fq ; H3 : G2 {0,1}*. Mar/2003
18
Chaves utilizadas (Standard)
Par de chaves pública/privada padrão (R,s): Sejam R G1, s Fq e P um ponto fixo pertencente a G1 e de conhecimento público. Temos que: R = sP Mar/2003
19
Chaves utilizadas (ID-Based)
Par de chaves baseadas em identidade (QID,SID): Onde QID e SID G1 e existe uma Autoridade de Confiança (Trust Authority – TA) com um par de chaves padrão (RTA, s) de modo que valem as seguintes relações: e Onde ID é o string identificador (por exemplo: SID = sQID QID = H1 (ID) Mar/2003 Hash
20
Short Signatures [2] Assinatura Calcula: Verificação
Seja s chave privada padrão de Beto. Uma mensagem m pode ser assinada por Beto da seguinte forma: Assinatura Calcula: V = sH1(m) Verificação a assinatura V é válida se a seguinte equação for verdadeira: t(P,V) = t(R, H1(m)) Mar/2003 Dem.
21
Criptografia baseada em identidade (IBE)
Sejam : (QBeto, SBeto): par de chaves pública/ privada baseadas em identidade; RTA: chave pública padrão de uma autoridade de confiança; e m: mensagem a ser transmitida de Alice para Beto OBS. O esquema apresentado a seguir [1] é ID-OWE. Para um esquema ID-CCA é necessária a aplicação da Transformação de Fujisaki-Okamoto [6] Mar/2003
22
Criptografia baseada em identidade (IBE)
Alice calcula: r : elemento aleatório de Fq O texto cifrado é (U,V) U = rP V = m H3(t (RTA, rQBeto)) Decriptografia Beto calcula: m = V H3(t(U, SBeto)) Hash Dem. Mar/2003
23
Assinaturas baseadas em identidade [5]
Beto calcula Em seguida, calcula E, finalmente: A assinatura de m é (U,h) r = t(P,P)k onde k é um elemento aleatório de Fq h = H2(m || r) U = hSBeto + kP Mar/2003 Hash
24
Assinaturas baseadas em 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 r = t(U,P). t(QBeto, -RTA)h h = H2(m || r) Mar/2003 Dem.
25
Sigilo e Autenticidade
Assim como na criptografia assimétrica padrão, podemos garantir o sigilo e a autenticidade de uma mensagem em um esquema baseado em identidade se associarmos assinatura com criptografia. Desta forma, se Alice quiser enviar uma mensagem sigilosa para Beto de forma que somente ele conseguirá decifrar, e onde Beto terá a certeza de que a mensagem foi enviada por Alice, faz da seguinte forma: Mar/2003
26
Sigilo e Autenticidade
Assina m (Short signature) Alice m V = sH1(m) Beto Criptografa m (IBE) (U,W) m Beto, recebendo (U,W), decriptografa e recupera m; em seguida, usa m para verificar a assinatura e autenticar Alice. Mar/2003
27
Vantagens e Desvantagens sistema ID-based
Não é necessário um diretório de chaves públicas; Alice pode enviar mensagens cifradas para Beto mesmo se ele ainda não obteve seu par de chaves do Gerador de Chaves Privadas (PKG); Não é necessário Alice obter o certificado da chave pública de Beto; Mar/2003
28
Vantagens e Desvantagens sistema ID-based
O PKG tem conhecimento da chave privada de Beto - (key escrow); Dificuldade de implementação do Tate pairing (Curvas Elípticas). Mar/2003
29
Múltiplos PKG A desvantagem de o PKG conhecer a chave privada de seus clientes pode ser resolvida utilizando-se múltiplos PKG, da seguinte forma: Cada TA gera sua própria chave privada (padrão) si independente das demais e publica RTAi = siP. A chave pública mestre das TA será RTA = i RTAi Um usuário Beto obtém sua chave privada ID-based de cada TA : S(i) Beto = siQBeto e calcula sua chave privada SBeto = i S(i) Beto OBS. Este somatório é possível já que SBetoe RTA são pontos de uma curva elíptica Mar/2003
30
C O N C L U S Ã O Mar/2003
31
Seminários futuros Aplicações de criptossistemas ID-based
Estrutura PKI e sua vulnerabilidade Signcryption scheme Hierarquia de sistemas ID-based Criptografia em Curvas Elípticas Mar/2003
32
P E R G U N T A S Mar/2003 FIM
33
A P Ê N D I C E S Mar/2003
34
Problema do logaritmo discreto (PLD)
Dados a, p e x, é “fácil” calcular y = ax mod p; Porém, dados a, p e y, é “difícil” calcular x. Em Curvas Elípticas (PLD-CE) Dados s e P, é “fácil” calcular R = sP Porém, dados R e P, é “difícil” calcular s. Mar/2003
35
Soma de pontos de uma C.E. (método algébrico)
Sejam P=(x1,y1) e Q=(x2,y2) dois pontos sobre a curva elíptica E; se x2=x1 e y2= - y1, então P+Q = O, senão: x3 = 2 - x1 - x2 y3 = (x1 - x3) - y1 P+Q=(x3,y3), onde: Finalmente, defina P+O = O+P = P , P E. Mar/2003
36
Soma de pontos de uma C.E. (método gráfico, com nos reais)
Ex. Gráfico de y2 = x3 - 7x + 5: P Q -R R=P+Q Mar/2003
37
Bilinearidade Se uma função tem a propriedade de ser bilinear, podemos mover livremente expoentes e multiplicadores, ou seja: t (aP, bQ)c = t (bP, cQ)a = t (bP, aQ)c = t (cP, aQ)b = t (cP, bQ)a = t (abP, Q)c = t (abP, cQ) = t (P, abQ)c = t (cP, abQ) = ... = t (abcP, Q) = t (P, abcQ) = t (P, Q)abc Mar/2003
38
Criptanálise – Tipos de Ataques [11]
Ataque por só texto ilegível – O criptanalista Carlos tenta adquirir conhecimento útil à quebra, analisando apenas um ou mais ilegíveis y. Se este tipo de ataque for computacionalmente viável, o algoritmo em questão é considerado totalmente inseguro e inútil; Ataque por texto legível conhecido – O criptanalista Carlos possui e analisa pares (x,y) de legível e ilegível correspondentes. Neste e nos tipos de ataque a seguir, o criptanalista tem acesso ao algoritmo (sem conhecer a chave K) e não é necessariamente um mal-intencionado ou intruso: pode ser um especialista que objetiva descobrir se o algoritmo é vulnerável a este tipo de ataque, sendo que o algoritmo fora projetado por outra pessoa, eventualmente; Mar/2003
39
Criptanálise – Tipos de Ataques
Ataque por texto legível escolhido – Além do suposto no tipo anterior, o criptanalista Carlos pode escolher os legíveis x e obter os y correspondentes. Ele vai escolher um x que apresente alguma característica estrutural que aumente o seu conhecimento do algoritmo e da chave em uso. Com o conhecimento adquirido, ele pode deduzir o legível correspondente a um ilegível novo; Ataque adaptativo por texto legível escolhido – Além do suposto no tipo anterior, a escolha de um novo x pelo criptanalista Carlos pode depender dos ilegíveis y’ analisados anteriormente. Desta forma, a escolha de um novo x é condicionada ao conhecimento já adquirido pela análise dos y’ anteriores; Mar/2003
40
Criptanálise – Tipos de Ataques
Ataque por texto ilegível escolhido – o criptanalista Carlos escolhe inicialmente o ilegível y e então obtém o legível x correspondente. Supõe-se que Carlos tenha acesso apenas ao algoritmo de decriptografia (sem ter acesso à chave) e o seu objetivo é, mais tarde, sem ter mais acesso à decriptografia, ser capaz de deduzir x correspondente a um y novo; Ataque adaptativo por texto ilegível escolhido – Além do suposto no tipo anterior, a escolha de um novo y pelo criptanalista Carlos pode depender dos ilegíveis y’ analisados anteriormente. Desta forma, a escolha de um novo y é condicionada ao conhecimento já adquirido pela análise dos y’ anteriores. Mar/2003
41
ID-OWE X ID-CCA Dizemos que um esquema é ID-OWE (One Way Encyption) se um adversário não pode recuperar um texto claro aleatório na sua totalidade se tiver acesso apenas à criptografia deste texto. Dizemos que um esquema é ID-CCA (Chosen Ciphertext Adaptive) se um adversário não consegue recuperar um texto claro, dado que pode obter de um oráculo público a decriptografia de textos de sua escolha (exceto, obviamente, o texto que pretende decriptografar). Este nível é o mais seguro comparado com o ID-OWE. Mar/2003
42
Short Signatures Dem. t(P,V) = t(P, sH1(m)), pois V = sH1(m)
= t(P, H1(m))s, por bilinearidade = t(sP, H1(m)), por bilinearidade = t(R, H1(m)), pois R = sP Logo, se V = sH1(m), então t(P,V) = t(R, H1(m)). (c.q.d.) Mar/2003
43
Criptografia baseada em identidade (IBE)
Dem. V H3(t(U, SBeto)) = V H3(t(rP, SBeto), pois U = rP = V H3(t(rP, sQBeto ), pois Sbeto= sQBeto = V H3(t(P, QBeto)rs, por bilinearidade = V H3(t(sP, rQBeto), por bilinearidade = V H3(t(RTA, rQBeto), pois RTA= sP = m, pois V = m H3(t(RTA, rQBeto) Logo, V H3(t(U, SBeto)) = m (c.q.d.) Mar/2003
44
Assinaturas baseadas em identidade
Dem. t(U,P). t(QBeto, -RTA)h = t(hSBeto + kP,P). t(QBeto, -RTA)h = t(hSBeto + kP,P). t(QBeto, -sP)h = t(hSBeto + kP,P). t(QBeto, -P)sh = t(hSBeto + kP,P). t(sQBeto, P)-h = t(hSBeto + kP,P). t(Sbeto, P)-h = t(hSBeto + kP,P). t(-hSbeto, P) = t(hSBeto – hSbeto + kP, P) = t(kP, P) = t(P,P)k = r ( c.q.d.) Mar/2003
45
t(C2, Rime) = t(rQime, Rime) = t(Qime, rRime) = t(Qime, C3) c.q.d.
Verificação Dem. t(C2, Rime) = t(rQime, Rime) = t(Qime, rRime) = t(Qime, C3) c.q.d. t(P, C1) = t(P, rs2Qime) = t(s2P, rQime) = t(Rusp, C2) c.q.d. Mar/2003
46
Referências D. Boneh and M.Franklin. Identity Based Encryption from the Weil Pairing D. Boneth, B. Lynn and H. Shacham. Short Signature from the Weil Pairing J.C. Cha and J.H. Cheon. An Identity-based Signature from gap Diffie-Hellman.2002. C. Cocks. An Identity Based Encryption Scheme Based on Quadratic Residues C. Ellison and B. Frantz. SPKI Certificate Theory E. Fujisaki and T. Okamoto. Secure Integration of Asymmetric and Symmetric Encryption Schemes F. Hess. Efficient Identity Based Signature Schemes Based on Pairings J. Horowitz and B. Lynn. Hierarchical Identity-Based Encryption K. Paterson. ID-Based Signatures from Pairings on Elliptic Curves A. Shamir. Identity Based Cryptosystems and Signature Schemes R. Terada. Segurança de Dados – Criptografia em Redes de Computador W.Stallings Cryptography and Network Security, 3rd ed. 2002 Mar/2003
47
F I M Mar/2003
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.