Análise do impacto da certificação
digital no desenvolvimento de
aplicações
Aluno:
Fillipe Oliveira Lima
Orientador: Domingos Sávio Alcântara Machado
Agenda
1.
2.
3.
4.
5.
6.
Introdução
Criptografia
Infra-estrutura de chaves públicas
Certificação digital
Análise do impacto da certificação
digital no desenvolvimento de
aplicações
Conclusão
1 Introdução

Milhares de transações são
realizadas todos os dias na
internet.
 A internet ainda possui muitas
falhas de segurança
 Muitos serviços ainda não são
disponibilizados, devido às
vulnerabilidades
1 Introdução
O
que é certificação digital ?
É
uma tecnologia que provê
mecanismos de segurança, capazes
de garantir autenticidade,
confidencialidade e integridade às
informações eletrônicas.
(Fonte: Instituto Nacional de Tecnologia da Informação)
2 Criptografia
2.1
2.2
2.3
2.4
Conceitos de criptografia
Criptografia simétrica
Criptografia assimétrica
Criptografia híbrida
2.1 Conceitos de criptografia

O que é criptografia ?
 Encriptar e descriptar


Códigos
Cifras

Criptoanálise
 Algoritmos criptográficos

DES, IDEA, RSA, SHA1, MD5, AES, RC5 e RC6.
2.1 Conceitos de criptografia

Criptografia com chave
2.2 Criptografia simétrica

Mesma chave para cifrar e decrifrar
2.3 Criptografia assimétrica
 Chaves
decifrar
relacionadas para cifrar e
2.4 Criptografia híbrida

Criptografia dos dados e distribuição
da chave
2.4 Criptografia híbrida

Recebimento da chave e
descriptografia dos dados
3 Infra-estrutura de chaves públicas
3.1 Conceitos de infra-estrutura de
chaves públicas
3.2 Serviços oferecidos pela infraestrutura de chaves públicas
3.1 Conceitos de infra-estrutura de
chaves públicas
Ambiente com padrões de segurança
definidos
 Serviços baseados na criptografia
assimétrica
 Existe a mais de 20 anos
 ICP-Brasil

3.2 Serviços oferecidos pela infraestrutura de chaves públicas

Integridade


Autenticidade


Identificação de usuários / máquinas
Privacidade


Assegura que as informações não foram alteradas
Informações legíveis para pessoas autorizadas
Disponibilidade

Informações disponíveis no momento desejado
3.2 Serviços oferecidos pela infraestrutura de chaves públicas

Assinatura digital - Geração
3.2 Serviços oferecidos pela infraestrutura de chaves públicas

Assinatura digital - Validação
4 Certificação digital
4.1 Conceitos de certificação digital
4.2 Autoridade Certificadora (AC)
4.3 Autoridade Registradora (AR)
4.1 Conceitos de certificação digital
A chave pública não pode ser
distribuída sem algo que garanta sua
integridade
 Uma entidade confiável deve garantir
essa integridade

4.2 Autoridade Certificadora





Emissão dos certificados
Revogação dos certificados
Distribuição dos certificados
Gerenciamento dos certificados
Fiscalização das AC e das AR
4.3 Autoridade Registradora

Registrar o usuário
 Redução de custo
 Intermédio entre o usuário e a AC
 Verificação da solicitação
5 Análise do impacto da certificação digital
no desenvolvimento de aplicações
5.1 Certificação digital em aplicações
comerciais
5.2 Estudo de caso
5.3 Análise dos resultados
5.1 Certificação digital em
aplicações comerciais

Utilizando a assinatura digital
5.1 Certificação digital em
aplicações comerciais

Assinatura digital nos ambientes:

Desktop


Pode ser mais fácil
WEB
Mais complexo
 Soluções:



Utilizar extensões disponíveis nos browsers
Utilizar Applet Java
5.2 Estudo de caso

Desenvolvimento de uma pequena
parte de sistema de controle
acadêmico
Autenticação de usuário
 Cadastro / consulta de notas e faltas dos
alunos

5.2 Estudo de caso

Incorporação da certificação digital

Login da aplicação
Recursos do servidor de aplicação
 Via programação


Cadastro de notas e faltas dos alunos
Applet Java
 Aplicação J2EE
 Nova tabela para armazenar o XML

5.2 Estudo de caso

Arquitetura da aplicação

Assinatura / validação dos dados
5.2 Estudo de caso

Arquitetura da aplicação

Autenticação de usuários
5.2 Estudo de caso

Ambiente de teste
Certificado do tipo A3 (e-CPF)
 Oracle 10G
 PL/SQL Developer 5.1
 J2EE (JDK 1.5)
 Jboss 4.0.4 (Tomcat 5.5)
 JBuilder 2006 (Versão 12)

5.2 Estudo de caso

Estratégia de implementação

Módulo de Autenticação
Instalação do certificado de servidor
 Criação do repositório de certificados confiáveis
 Configuração do Jboss


Módulo de assinatura digital
Assinatura do Applet Java
 Duas configurações no html

5.2 Estudo de caso
Demonstração
5.3 Análise dos resultados

O impacto e o esforço da
incorporação do código em ambiente
WEB
Impacto maior no cliente
 Esforço maior no servidor

5.3 Análise dos resultados

Impacto e esforço: Aplicação x Base
de dados
Impacto muito pequeno na base de dados
 Esforço mínimo na base de dados

5.3 Análise dos resultados

Impacto no desempenho

Geração da assinatura digital:


Validação da assinatura digital


Não compromete o desempenho
Autenticação


Pode levar alguns segundos
Rápida, exceto quando baixa a lista de
certificados revogados
Base de dados

Não compromete o desempenho
5.3 Análise dos resultados

Impactos gerais
Dificuldade na escolha das bibliotecas
 Bom nível de conhecimento sobre ICP
 Bugs das bibliotecas
 Incompatibilidade entre os browsers
 Dificuldade na configuração dos servidores
WEB
 Preocupação em manter o legado
funcionando

6 Conclusão
A certificação digital em aplicações
comerciais está sendo ampliada
 Muitas empresas despertam para o
potencial da certificação digital
 Custo um pouco elevado
 Espera-se os mesmos resultados para
um ambiente de produção

6 Conclusão

Esse trabalho foi o primeiro passo para o
início do projeto de certificação digital na UNIT
 Auxiliar outras empresas no desenvolvimento
de aplicações com certificação digital
 Trabalhos futuros



Aplicações Desktop
Outros servidores WEB (IIS e WebLogic)
Outras plataformas de desenvolvimento WEB
(.NET Framework)
Principais referências bibliográficas

ADAMS, Carlisle. LLOYD, Steve. Understanding Public-Key
Infrastructure. Concepts, Standards, and Deployment
Considerations. Indianapolis: New Riders Publishing, 1999.

SILVA, Lino Sarlo da. Public Key Infrastructure – PKI. São
Paulo: Novatec, 2004.

VOLPI, Marlon Marcelo. Assinatura digital: Aspectos
Técnicos, Práticos e Legais. Rio de Janeiro: Axcel Books,
2001.

MORENO, Edward David. Criptografia em Software e
Hardware. São Paulo: Novatec, 2005.

TERADA, Routo. Segurança de dados, criptografia em redes
de computador. São Paulo: Edgard Blucher Ltda, 2000.
Principais referências bibliográficas

Sun Microsystems – Java Cryptography Architecture .
Disponível em:
<http://java.sun.com/j2se/1.4.2/docs/guide/security/CryptoSpec.ht
ml>. Acesso em 02 de novembro de 2006

CERTISIGN Certificador Digital S.A, Treinamento CERTISIGN –
Desenvolvimento para JAVA. São Paulo: 2006.

Apache Software Foundation – SSL Configuration HOW-TO.
Disponível em: < http://tomcat.apache.org/tomcat-5.5-doc/sslhowto.html>. Acesso em 29 de outubro de 2006.

PINHEIRO, Andréa. Correio brasiliense - Informática –
Abocanhe o Leão . Disponível em: <
http://www.iti.br/twiki/bin/view/Main/MidiaClip2006fev28A>.
Acesso em 03 de dezembro de 2006.
Dúvidas
?
Agradecimentos
À universidade Tiradentes
 À platéia presente
 Aos membros da banca e demais
professores

Download

Análise do impacto da certificação digital no desenvolvimento de