Conceitos iniciais

Aqui você terá uma visão geral do que é o Timestamp e de suas funcionalidades. Vamos conhecer um pouco mais?

O que é o Timestamp?

Timestamp(Carimbo do Tempo) é uma marca temporal emitida por uma parte confiável, a Autoridade Certificadora do Tempo - ACT, que serve como evidência de que uma informação digital existia numa determinada data e hora no passado. Uma assinatura digital atribui ao documento eletrônico a autenticidade, a integridade e o não-repúdio, contudo não é suficiente para garantir comprovação da tempestividade e temporalidade do documento digital. Acrescidos do Timestamp os documentos carimbados passam a ter a confiabilidade temporal necessária para conferir legalidade em situações onde o prazo da emissão do documento tem de ser considerado.

TSP – Time-Stamp Protocol (Protocolo de Carimbo do Tempo) - Composição do Protocolo

Um serviço de registro de data e hora suporta afirmações de prova de que um dado existia antes de um determinado tempo. TSA pode ser operado como um Trusted Service de Terceiros (TTP), embora outros modelos operacionais possam ser apropriado, por exemplo, uma organização pode exigir um TSA para fins de carimbo de tempo, obtendo como retorno um TSR(Timestamp Response).

Os serviços de não repúdio [ISONR] exigem a capacidade de estabelecer o existência de dados antes de tempos especificados. Este protocolo pode ser usado como um bloco de construção para apoiar tais serviços. Um exemplo de como provar que uma assinatura digital foi gerada durante a validade período de um certificado de chave pública é dado em um anexo.

TSA

TSA é um TTP que cria tokens de carimbo de data/hora para indicar que um dado existiu em um ponto particular no tempo. Para o restante deste documento, uma "solicitação válida" significará uma que pode ser decodificado corretamente oriundo um assinante TSA compatível.

Motivação

Hoje o serviço é ofertado de Timestamp por meio de vendas consultivas, com a necessidade de um apoio técnico da equipe do Serpro para integração às aplicações dos clientes contratantes. Este projeto tem por objetivo a implementação de uma API padronizada para facilitar a integração nas aplicações dos clientes(internos e externos), minimizando a necessidade de apoio técnico por parte da equipe do Serpro e permitindo uma contratação por autosserviço diretamente na loja Serpro, assim como já ocorre para as APIs da plataforma de inteligência de negócios - PLIN.

Visão geral

Diagrama esquemático

Fluxo de Geração de um Carimbo do Tempo

Ao receber uma requisição de carimbo do tempo (TimeStamp Query – TSQ) ou hash de um documento eletrônico (conforme o endpoint acionado), a API deverá encaminhar o pedido à Carimbadora de Tempo, por meio do protocolo TSP, ao receber o Carimbo do Tempo (Time Stamp Response – TSR), a API deverá encaminhar o conteúdo (hash do documento e a data e hora da emissão do carimbo do tempo ) ao solicitante.

Atores e funcionalidades

Para a comunicação com a Carimbadora de Tempo, a API poderá utilizar

Atores Funcionalidades
Contratante Se cadastrar como utilizador do serviço para bilhetagem(sendo cliente interno ou externo), recebendo como retorno sua APP-KEY e APP-SECRET_KEY
Aplicação cliente Solicitar Carimbo do Tempo à API
WSO2 Intermediar e orquestrar as solicitações feitas ao carimbador de tempo externo
API Autenticar, Autorizar, registrar e repassar solicitações feitas ao carimbador de tempo – TSQA partir de um request TSQ, conforme definido na RFC¹[https://www.ietf.org/rfc/rfc3161.txt]. Ao final da requisição o TSR deve ser armazenado em um repositório público para conferência tempestiva
Carimbadora de Tempo Gerar Carimbo do Tempo – HashA partir de um Hash SHA2, conforme definido na RFC¹[https://www.ietf.org/rfc/rfc3161.txt]