100 likes | 197 Views
Assinaturas Cegas. A idéia da assinatura cega é que alguém assine um documento sem nunca ter visto o conteúdo completamente. A → B : k * M ( k = fator de ocultação ) B → A : S KR B ( k * M ) A : M / k A : S KR B ( k * M ) / k. Assinaturas Cegas
E N D
Assinaturas Cegas A idéia da assinatura cega é que alguém assine um documento sem nunca ter visto o conteúdo completamente. A → B : k * M ( k = fator de ocultação ) B → A : SKRB ( k * M ) A : M / k A : SKRB ( k * M ) / k
Assinaturas Cegas (obs: protocolo só é válido sse função de assinatura e multiplicação são comutativas) A : escolhe k ( randômico entre 1 e n ) A : t = mke mod n ( aplica fator de ocultação a m ) A → B : t B : td = (mke)d mod n ( assina o texto ) B →A : td A : s = td / k mod n = md mod n
Redes de Misturadores O propósito do misturador é obter o anonimato, independência de tempo, unicidade de processamento. A : EKUB ( M ) A → C : EKUC ( EKUB ( M ) || IDB ) C → B : EKUB ( M ) B : DKRB ( M )
Votação digital segura Voto computadorizado jamais será utilizado para eleições gerais, a menos que surja um protocolo que garanta a privacidade e previna coação. requisitos: • Somente eleitores autorizados podem votar • Ninguém pode votar mais de uma vez • Ninguém pode provar seu voto • O voto não poder ser duplicado • Votos não podem ser alterados • Todo eleitor pode verificar se seu voto foi computado
Votação digital, protocolo simples E → CV : EKUCV ( voto ) CV : DKRCV ( voto ) CV : Σ votos CV : divulga resultados requisitos atendidos ?
Votação digital, segundo protocolo E : SKRE ( voto ) E → CV : EKUCV ( SKRE ( voto ) ) CV : DKRCV ( SKRE ( voto ) ) CV : VKUE ( voto ) CV : divulga Σ SKRE ( voto )´s requisitos atendidos ?
Votação digital, com assinatura cega • Eleitor gera um conjuntos de mensagens contendo votos válidos possíveis ( ex. se o voto é sim ou não, cada conjunto contém dois votos, um sim e um não). Cada mensagem também contém um número randômico usado como identificador. • Eleitor oculta as mensagens, fator de ocultação próprio, e envia a Central de Votação. • CV verifica se o eleitor já não submeteu seus votos cegos anteriormente. Assina individualmente cada mensagem do conjunto e envia ao eleitor, armazenando a identificação do eleitor. • Eleitor retira o fator de ocultação da mensagem • Eleitor escolhe o voto, cifra com KU da CV e envia a CV. • CV decifra o voto, verifica assinatura, verifica BD duplicidade do número de identificação, gera um número serial, publica resultado, com número serial associado ao voto.
Votação digital, com duas centrais de votação • Eleitor solicita a CV1 um número (randômico) de identificação. • CV1 envia ao eleitor o número de identificação e os mantém em uma lista associado ao eleitor, para evitar duplicidade de solicitação. • CV1 envia a CV2 a lista de números de identificadores. • Eleitor gera um identificador randômico, cria uma mensagem com seu voto + o número de idenitificação recebido da CV1 e envia a CV2. • CV2 valida a identificação, em caso afirmativo retira o identificador da lista, computa o voto para a opção escolhida. • CV2 publica o resultado e a lista de identificadores com seu voto
Dinheiro eletrônico, protocolo #1 • Alice prepara 100 ordens anonimas de R$ 1000,00 cada. • Alice coloca cada ordem e um pedaço de carbono em 100 envelopes e entrega ao banco. • O Banco abre 99 e confirma que todas são ordens de R$ 1000,00. • Banco assina o envelope fechado, devolve a alice e debita R$ 1000,00 de suas conta. • Alice abre o envelope a gasta o dinheiro no comércio. • Comerciante aceita a ordem como legitima devido a assinatura do banco. • Comerciante entrega a ordem ao banco • Banco verifica a assinatura e credita R$ 1000,00 ao comerciante • probabilidade do banco ter sido enganado é 1%
Dinheiro eletrônico, protocolo #1 • identifique os recursos necessários para implementar um protocolo criptográfico para o exemplo, • proponha um protocolo, • aponte as vulnerabilidades,