1 / 14

Carimbo de Tempo ( timestamping )

Carimbo de Tempo ( timestamping ) Necessidade de provar a existência de um documento em determinada data. A → T : M (documento) T → A : t m (carimbo de tempo). Problemas? Privacidade? Base de dados? Erros de transmisão? Confiança no arbitro?.

sauda
Download Presentation

Carimbo de Tempo ( timestamping )

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Carimbo de Tempo ( timestamping ) • Necessidade de provar a existência de um documento em determinada data. A → T : M (documento) T → A : tm (carimbo de tempo) • Problemas? • Privacidade? • Base de dados? • Erros de transmisão? • Confiança no arbitro?

  2. Timestamping com assinatura digital(solução arbitrada melhorada) A → T : Hm , Alice produz e envia um Hash de um documento m para Trent. T : tn,Trent anexa a data e tempo que ele recebeu, junto ao Hash. T → A : SKRT( Hmtm), Trent assina digitalmente o resultado e envia para Alice. • Problemas? Confiança no árbitro Trent. • Produção de carimbo, quando desejado. Alice e Trent podem ainda conspirar para produzir qualquer rótulo de tempo que eles desejem.

  3. LinkingProtocol(ligar rótulos de tempo de Alice com rótulos de tempo previamente gerado por Trent) A → T : Hm, A T → A : SKRT ( n, A,Hm, tn, In-1, Hm-1, tn-1, Ln ) onde:Ln = H (In-1, Hm-1, tn-1, Ln-1 ) E após Trent rotular o próximo tempo (carimbo): T → A : In+1 , Identificação do documento posterior ao originador. • Problemas? • Documento fictício

  4. LinkingProtocol • Hm : valor do hash de m que Alice deseja ver com rótulo de tempo tn. • n : indica um número de sequência do pedido para rotular o tempo, ou seja, é o n-ésimo rótulo de tempo que Trent emitiu. • A : Alice é o originador do pedido de rótulo de tempo. • tn : é o n-ésimo rótulo de tempo • tn-1 : é o rótulo de tempo prévio ao documento m • In-1, Hm-1, tn-1: identificação do documento prévio, Hash do documento prévio, rótulo de tempo do documento prévio. • Ln = H (In-1, Hm-1, tn-1, Ln-1) : Link do n-ésimo pedido referenciando o link do pedido para rotular o documento prévio.

  5. LinkingProtocol • Se alguém questionar o rótulo de tempo do documento de Alice ( In ), ela pode provar que seu rótulo de tempo está entre os rótulos de tempo de um documento prévio ( In-1 ) e o rótulo de tempo de um documento posterior ( In+1 ) ao seu. • Este protocolo torna muito difícil para Alice e Trent conspirarem e produzirem um documento rotulado com um tempo diferente do que o tempo real. • Trent não pode “adiantar a data” de um documento para Alice, visto que ele precisa saber previamente qual rótulo de documento virá antes. • Trent não pode “antecipar uma data” de um documento para Alice, visto que ele precisa embutir o rótulo de tempo de um documento emitido imediatamente após a data pretendida, e esse documento já foi emitido.

  6. Protocolo distribuído • Pessoas morrem. • Rótulos de tempo ficam perdidos. • Muitas coisas podem acontecer entre uma rotulação de tempo de um documento e o desafio para Alice obter uma cópia de rótulos de tempo de documentos passados In-1 .

  7. Protocolo distribuído • Este problema pode ser aliviado por considerar, por exemplo, os prévios rótulos de tempo de k pessoas, gerados aleatoriamente por Alice, e então, Alice enviar para cada uma dessas os identificadores das próximas k pessoas. • Alice terá uma grande chance de descobrir pessoas que ainda tem seus rótulos de tempo.

  8. Protocolo distribuído Usando Hm como entrada, A : V1, V2, V3, ... Vk , Alice gera uma string de Vi onde: Vi =produzidos por geradores pseudo-randômicosseguros. Alice interpreta cada destes valores como a identificação, I, de uma outra pessoa. A → P1 : Hm , V1 A → P2 : Hm , V2 . . . . . ........ ......... A →Pk : Hm , Vk Pi→A : SKRP( Hm, tn) A : armazena

  9. Protocolo distribuído O gerador de números pseudos-aleatórios, seguro criptograficamente, impede Alicede deliberadamente escolher identificadores I´s corruptos como verificadores Vi . Este protocolo funciona porque para Alice falsificar um rótulo de tempo teria que convencer a todas das K pessoas a cooperarem. Como ela escolheu identificadores pessoais aleatoriamente, a chance contra disto é muito alta. Quanto mais corrupta for a sociedade é, maior, o número k deve ser.

  10. Assinaturas em grupoVeja o seguinte problema: Uma companhia tem diversos computadores, cada conectado a uma rede local. Cada departamento da companhia tem sua própria impressora (também conectada à rede) e somente pessoas daquele departamento são permitidas usarem a impressora do seu departamento. Antes de imprimir, portanto, a impressora deve estar certa de que o usuário é do departamento.

  11. Assinaturas em grupo Ao mesmo tempo, a companhia quer privacidade; o nome do usuário não pode ser revelado. Se, contudo, alguém descobre no fim do dia que a impressora foi usada por demasia, o diretor deve ser capaz de descobrir que fez mal uso da impressora, e enviar a ele uma cobrança. A solução deste problema é chamada Assinaturas em grupo.

  12. Assinaturas em grupo (propriedades) • Somente membros do grupo podem assinar. • Quem recebe pode verificar que a assinatura é válida e pertence ao grupo. • Quem recebe não consegue identificar qual membro do grupo assinou. • No caso de disputa, ou após um período estabelecido, a assinatura pode ser “aberta” para revelar a identidade de quem assinou.

  13. Assinaturas em grupo (1)Árbitro gera um conjunto de pares (KU,KR) e entrega a cada membro do grupo uma lista diferente contendo KR´s únicas. Nenhuma dessas chaves privadas, em qualquer lista são idênticas. Total de pares de chaves (KU,KR) = n * m ( n membros, m pares de chaves cada membro ) (2) Árbitro publica a lista de todas as KU´s para o grupo, em ordem aleatória. Ele guarda um registro secreto de quais chaves pertencem a quem.

  14. Assinaturas em grupo (3) Quando um membro deseja (usar a impressora) deve assinar um documento, escolhe uma chave aleatoriamente de sua lista pessoal. (4) Quando alguém deseja verificar a qual grupo pertence a assinatura, busca na lista para a correspondente chave KU e verifica a assinatura. (5) No caso de disputa, o árbitro sabe a quem pertence a KU.

More Related