ICP + ID de Moçambique
Infraestrutura de Certificação e Identidade Eletrônica de Moçambique
(Projecto Piloto)
O Instituto Nacional de Tecnologias de Informação e Comunicação (INTIC) em parceria com o Laboratório de Segurança em Computação (LabSEC) traz este projeto piloto de Infraestrutura de Certificação Digital e Identidade Eletrônica com o objetivo não só de promover uma discussão sobre segurança da informação, mas também com o intuito de prover uma demonstração prática dos usos e benefícios de tais tecnologias. Este projeto conta com: (i) uma explicação sobre a cadeia de certificação criada (clique na imagem ICP Moçambique); (ii) uma explicação sobre a arquitetura de sistema utilizada (clique na imagem Arquitetura); (iii) um serviço de identidade eletrônica para uso neste protótipo; (iv) um serviço de emissão de certificados tradicionais; (v) um serviço de assinatura digital de documentos; (vi) vídeos explicando a teoria e o uso deste piloto (no rodapé da página); e (vii) um artigo detalhando essa proposta.
ICP Moçambique
Uma infraestrutura de chaves públicas (ICP) tem como propósito o gerenciamento e a autenticação de comunicações através da Internet. Esta estrutura é baseada na criptografia de chaves públicas, que conta com uma chave privada e uma chave pública, cada uma usada na sua respectiva função de cifragem e decifragem. Certificados digitais são usados nessa infraestrutura para guardar as informações pertinentes a uma entidade e ligá-la com a sua chave pública. Estes certificados são emitidos por Autoridades Certificadoras (ACs) e sua validade pode ser verificada percorrendo a cadeia de certificados até que se chege uma AC de confiança do usuário.
O Laboratório de Segurança em Computação (LabSEC) criou este projeto piloto de uma ICP Moçambique para que os usuários possam experimentar com a assinatura de documentos e com o uso de certificados e par de chaves. Este piloto conta com duas cadeias diferentes, uma tradicional que reflete como certificados são usados normalmente e uma cadeia que faz a emissão de certificados atrelados a apenas um documento, e portanto, chamamos este certificado de assinatura única (CertAU).
A figura ao lado mostra como a cadeia de certificação foi construída. Os certificados das ACs usadas neste piloto podem ser baixados clicando nos nodos das respectivas ACs e a cadeia inteira contendo todos os certificados pode ser baixada através dos links abaixo.
Download cadeia tradicional
Download cadeia CertAU
AC RAIZ MZ V0
AC POLITICAS
MZ V0
AC POLITICAS...
AC TRADICIONAL...
AC CertAU MZ V0
AC CertAU...
OnlineViewer does not support full SVG 1.1
Identidade eletrônica permite que as pessoas se identifiquem na Internet, desta forma tendo acesso a serviços personalizados. Neste protótipo/demo oferecemos aos participantes do Fórum de Governança da Internet em Moçambique 2021 a possibilidade de criarem uma identidade eletrônica em nosso provedor de identidade. Com ela, você terá acesso a dois serviços: (i) emissão de certificados digitais; e (ii) assinatura de documentos eletrônicos.
Nós do Laboratório de Segurança em Computação (LabSEC) da Universidade Federal de Santa Catarina (UFSC) do Brasil, criamos este provedor de identidade eletrônica utilizando Keycloak, uma solução de código aberto e gratuita mantida pela Red Hat. Os dois serviços que disponibilizamos foram construídos em Python 3 e se conectam ao provedor de identidade através dos protocolos OAuth 2.0 e OpenID Connect, que são os padrões de facto utilizados internacionalmente para lidar com identidade eletrônica. O código fonte deste protótipo será disponibilizado gratuitamente para o Instituto Nacional de Tecnologias de Informação e Comunicação (INTIC) de Moçambique.
Clique na imagem abaixo para ser redirecionado para nosso provedor de identidade e criar sua identidade eletrônica. Para criar sua identidade eletrônica, precisará informar seu nome, e-mail e uma senha.
Caso já tenha criado sua identidade eletrônica em nosso provedor de identidade mas não esteja autenticado, deverá fornecer seu e-mail e senha previamente cadastrados. Após se autenticar, você será redirecionado para a página inicial e poderá acessar os dois serviços que disponibilizamos (emissão de certificado e assinatura digital de documentos PDF).
Clique na imagem abaixo para que nosso sistema crie um certificado digital em seu nome e e-mail, com base nas informações cadastradas por você em nosso provedor de identidade. O seu certificado será criado dentro da ICP proposta neste protótipo/demo pela AC Tradicional MZ V0 e será baixado pelo seu navegador no formato PKCS #12. Poderá utilizá-lo em seu computador para o que desejar.
Caso não esteja cadastrado e/ou autenticado, será automaticamente encaminhado para a interface de nosso provedor de identidade para realizar estas tarefas.
Uma das possíveis aplicações dos certificados emitidos por uma ICP é a assinatura digital de documentos. Em nosso protótipo, unimos a assinatura digital de documentos em PDF com a nossa proposta de ICP e identidade eletrônica. Nossa ICP é composta por duas Autoridades Certificadoras (ACs) que estão sempre online emitindo certificados, a AC Tradicional MZ V0 e a AC CertAU MZ V0. Enquanto a primeira é utilizada para emissão de certificados tradicionais para usos quaisqueres e de duração de 5 anos, a segunda emite certificados de duração de 30 anos e deve ser usada para propósitos específicos, como a assinatura digital de documentos.
Clique na figura abaixo para ser redirecionado à página onde poderá fazer o envio de um documento PDF a ser assinado digitalmente. Nosso sistema emitirá um certificado de assinatura única utilizando as informações provenientes da identidade eletrônica do usuário autenticado, assinará o seu documento com este certificado e descartará a chave-privada, o certificado e seu documento após o seu navegador fazer o download do documento assinado. Você pode verificar a assinatura digital com, por exemplo, o Adobe Reader. Entretanto, como nossa ICP é desconhecida em seu dispositivo, o Adobe Reader não confiará na assinatura. Você precisará adicionar nossa AC RAIZ MZ V0 como uma entidade confiável.
Para acessar o link abaixo, você precisará ter criado sua identidade eletrônica e estar autenticado com ela. Caso não esteja cadastrado e/ou autenticado, será automaticamente encaminhado para a interface de nosso provedor de identidade para realizar estas tarefas.
Para implementar este protótipo utilizamos uma arquitetura de microsserviços. Nessa arquitetura o sistema é composto por uma coleção de serviços especializados e autônomos. A divisão de todas as tarefas que o sistema deve desempenhar é feita de tal maneira a permitir que cada serviço implemente uma única funcionalidade, evitando que um mesmo problema seja resolvido em mais de um lugar. A comunicação dos serviços acontece através de um barramento (um meio de comunicação). Essa forma descentralizada de organização de um sistema permite que equipes se dediquem a atacar um único desafio, sem se preocuparem em impactar outras partes do sistema. Outra vantagem é a escalabilidade e alta disponibilidade, pois serviços críticos podem ser facilmente duplicados para atender altas demandas.
A Figura abaixo detalha os serviços que compõem este protótipo. O usuário (você) acessa este portal, que é um serviço em nossa arquitetura. Ao acessar as outras funcionalidades do protótipo, como a criação de uma identidade eletrônica, é redirecionado para o IdMZ, o serviço que é um provedor de identidade. Mais informações sobre este serviço são dadas durante a criação de sua identidade eletrônica. Da mesma forma, a assinatura de documentos eletrônicos utilizando a ICP proposta é implementada em um serviço distinto, também ligado aos outros através do barramento de dados. Por fim, as duas ACs que estão online e emitindo certificados tradicionais e certificados de assinatura única são acessadas pelos serviços portal do piloto e assinatura de documentos, conforme o usuário (você) interage com o portal.