SlideShare una empresa de Scribd logo
1 de 36
Descargar para leer sin conexión
Solução de Processos da
ICP Brasil com a Java
Security
Apresentação
Fernando Anselmo
fernandoans@dfjug.org
24 anos de carteira assinada
Empresas como Tecnisys, Politec, CF/OAB, FTI, FIA/USP...
13 Livros e artigos publicados
Instrutor e palestrante
Coordenador do DFJUG
Cargo Atual: Coordenador Técnico
Cenário de uma Empresa Qualquer
Conceitos de Criptografia
Sobre a Java Security
ICP Brasil
Processos de Certificação
Demonstração da Paridade de Chaves
Resultados práticos com Certificados.
Agenda
JCE para Java 2 SDK, v 1.4
Uma empresa qualquer
Personagens envolvidos nesta apresentação
Cenário da Empresa – Necessidades superiores
Texto Cifrado:
Vãpãopo terper quepe mepe enpengupulirpir
“Maparipiopo Lopobopo Zapagapalopo”
Algoritmo:
Língua do “P”
Texto Decifrado:
Vão ter que me engulir
“Mário Lobo Zagalo”
Cenário da Empresa – Criptografia
Querida,
Se eu pudesse a mala ia
...mas como não posso, a mala
fica...
,adireuQ
ai alam a essedup ue eS
alam a ,ossop oãn omoc sam...
...acif
Cenário da Empresa – Escrita de Leonardo
Criptografado
adomocni aicnâlubma ad eneris A
Decriptografado
A sirene da ambulância incomoda
Cenário da Empresa – Teste
Cenário da Empresa – Atendendo às Ordens
Transposição ou permutação
720 possibilidades de combinação
Criptografia
VIAGEM
GIAVEM
Cenário da Empresa – Mensagens Criptografadas
Substituição
Criptografia
VIAGEM
XJBHFN
Substituição
de letras
Criptografia
VIAGEM
20 9 1 7 5 13
Substituição
por números
Cenário da Empresa – Mensagens criptografadas
Cenário da Empresa – Do outro lado da Cidade
Retirado do livro “Advoguês a criptografia em funções jurídicas”
Sequer considerar a possibilidade da fêmea bovina
expirar fortes contrações laringo bucais
Aplicar a contravenção do Dr. João, deficiente físico
de um dos membros superiores
Retirar o equino da perturbação pluviométrica
Desestabilizar, com a extremidade do membro inferior,
o suporte sustentáculo de uma unidade de moradia
temporária
Transferir energia cinética da extremidade do membro
inferior para a região glútea.
Cenário da Empresa – Ajude o Hacker
Cenário da Empresa – O Problema surge
Pneumoultramicroscopicossilicovulcanoconiótico
** Doença rara provocada pela aspiração de cinzas vulcânicas
Dicionário Houaiss - Editora Objetiva 2001
Letra = p Vl.ASCII 112 Valor Binario 1110000
Letra = n Vl.ASCII 110 Valor Binario 1101110
Letra = e Vl.ASCII 101 Valor Binario 1100101
Letra = u Vl.ASCII 117 Valor Binario 1110101
Letra = m Vl.ASCII 109 Valor Binario 1101101
Letra = o Vl.ASCII 111 Valor Binario 1101111
Letra = u Vl.ASCII 117 Valor Binario 1110101
Letra = l Vl.ASCII 108 Valor Binario 1101100
Letra = t Vl.ASCII 116 Valor Binario 1110100
Letra = r Vl.ASCII 114 Valor Binario 1110010
Letra = a Vl.ASCII 97 Valor Binario 1100001
Letra = m Vl.ASCII 109 Valor Binario 1101101
Letra = i Vl.ASCII 105 Valor Binario 1101001
Letra = c Vl.ASCII 99 Valor Binario 1100011
Letra = r Vl.ASCII 114 Valor Binario 1110010
Letra = o Vl.ASCII 111 Valor Binario 1101111
Letra = s Vl.ASCII 115 Valor Binario 1110011
Letra = c Vl.ASCII 99 Valor Binario 1100011
Letra = o Vl.ASCII 111 Valor Binario 1101111
Letra = p Vl.ASCII 112 Valor Binario 1110000
Letra = i Vl.ASCII 105 Valor Binario 1101001
Letra = c Vl.ASCII 99 Valor Binario 1100011
Letra = o Vl.ASCII 111 Valor Binario 1101111
Letra = s Vl.ASCII 115 Valor Binario 1110011
Letra = s Vl.ASCII 115 Valor Binario 1110011
Letra = i Vl.ASCII 105 Valor Binario 1101001
Letra = l Vl.ASCII 108 Valor Binario 1101100
Letra = i Vl.ASCII 105 Valor Binario 1101001
Letra = c Vl.ASCII 99 Valor Binario 1100011
Letra = o Vl.ASCII 111 Valor Binario 1101111
Letra = v Vl.ASCII 118 Valor Binario 1110110
Letra = u Vl.ASCII 117 Valor Binario 1110101
Letra = l Vl.ASCII 108 Valor Binario 1101100
Letra = c Vl.ASCII 99 Valor Binario 1100011
Letra = a Vl.ASCII 97 Valor Binario 1100001
Letra = n Vl.ASCII 110 Valor Binario 1101110
Letra = o Vl.ASCII 111 Valor Binario 1101111
Letra = c Vl.ASCII 99 Valor Binario 1100011
Letra = o Vl.ASCII 111 Valor Binario 1101111
Letra = n Vl.ASCII 110 Valor Binario 1101110
Letra = i Vl.ASCII 105 Valor Binario 1101001
Letra = ó Vl.ASCII 243 Valor Binario 1110011
Letra = t Vl.ASCII 116 Valor Binario 1110100
Letra = i Vl.ASCII 105 Valor Binario 1101001
Letra = c Vl.ASCII 99 Valor Binario 1100011
Letra = o Vl.ASCII 111 Valor Binario 1101111
Cenário da Empresa – O Problema surge
Cenário da Empresa – Nova solução adotada
Compactado
Ce qué café?
Qué.
Po pô pó?
Pó pô!
Pó pô pão?
Pó pô poquim só.
Ca fom cotô.
Opcv!
Nó!
Total = 74 caracteres
Descompactado
Você quer café?
Quero.
Pode por pó?
Pode por.
Pode por o pão?
Pode por um pouquinho só.
Com a fome que eu estou.
Olha para você ver!
Nossa Senhora Aparecida do
Perpétuo Socorro!
Total = 168 caracteres
Compressão = 44%
Cenário da Empresa – Nova solução adotada
Cenário da Empresa – Resolução do Problema
Conjunto de técnicas, procedimentos e
práticas a serem implementados pelas
organizações governamentais e
particulares brasileiras com o objetivo
de estabelecer os fundamentos
técnicos e metodológicos de sistemas
de certificação digital baseados em
chave pública
Treinamento – ICP Brasil
Idealizada na Sun Microsystems
Projeto Green – 1991
Coordenado por James Gosling
Idéia era criar o produto *7
Nome oficial: OAK (“Carvalho”)
Linguagem baseada em C++ com o
modelo OO em Smalltalk e Simula
Lançada no evento SunWorld a versão
1.0 Alpha em 23 maio de 1995
Treinamento – Sobre o Java
Bibliotecas de extensão da Plataforma Java;
Permite criptografia de mensagens;
Geração das chaves;
Geração dos certificados; e
Autenticação de mensagens.
Treinamento – Java Security
ICP – Brasil, é a sigla no Brasil para PKI
Instituído pela medida provisória 2.200, 06/2001
Atividades do Comitê Gestor pelo decreto 3.872
– Estabelecer políticas de certificação
– Estabelecer diretrizes e normas
– Aprovar políticas de certificados.
Treinamento – Sobre a ICP Brasil
Treinamento – Aula sobre Algoritmos de Encriptação
 DSA - Digital Signature Algorithim (cálculos baseados em
logarítmos em campos finitos)
 FIPS - Padrão Federal de Processamento Informação
publicado pelo NIST/USA
 Diffie e Hellman (usado para estabelecer de chaves de
sessão)
 ECDSA e ECDH - DSA calculado usando curvas elípticas
 SHA-1 - Secure Hash Algorithm (FIPS-180-1) semelhante ao
princípio do MDS (RFC 1321)
 AES - Advanced Encryption Standard (NIST/USA).
Treinamento – Algoritmos de Encriptação
 A assinatura digital é o resultado da aplicação à
informação de processos técnicos matemáticos
implementados em sistemas computacionais
 A assinatura digital é uma das formas de se obter a
autenticação digital
 A assinatura digital é uma transformação matemática de
uma mensagem através de um sistema criptográfico
assimétrico e uma função hash
Treinamento – Assinaturas
Emissor
Documento
Chave Particular
Assinatura
Treinamento – Fase 1 (assinar)
Receptor
Documento
Chave Pública
Assinatura
Treinamento – Fase 2 (verificar)
Demonstração
Treinamento – Resultados Visíveis
É possível obter certificados digitais
É possível criar certificados digitais
É possível ser uma unidade certificadora
Treinamento – Certificados Digitais
RA
Internet
UniCERT
Root CA
UniCERT
CA
LojistaUsuário
Diretório
X.509
Treinamento – Segurança na Internet
Treinamento – Recebimento de Mensagens Assinadas
Treinamento – Mensagem Assinada
Treinamento – Validando a Assinatura
Retornando a Empresa – Cenário Final
Certificação Digital não faz sentido
pela simples tecnologia, faz sentido
pelas mudanças positivas que traz ao
fluxo de negócios, pelo combate às
fraudes, pela eliminação de
documentos em papel e pelo suporte
legal que confere à transação
eletrônica.
Decisão Final
Agradeço a Atenção
Pedido dos Fontes:
fernandoans@dfjug.org
Dúvidas e Questionamentos

Más contenido relacionado

Más de Fernando Anselmo

Más de Fernando Anselmo (20)

Instalei o Ubuntu e agora? (18.04)
Instalei o Ubuntu e agora? (18.04)Instalei o Ubuntu e agora? (18.04)
Instalei o Ubuntu e agora? (18.04)
 
Docker postgre
Docker postgreDocker postgre
Docker postgre
 
Culinaria para quem só sabe miojo
Culinaria para quem só sabe miojoCulinaria para quem só sabe miojo
Culinaria para quem só sabe miojo
 
Utilizando Livremente Bancos de Dados em Java
Utilizando Livremente Bancos de Dados em JavaUtilizando Livremente Bancos de Dados em Java
Utilizando Livremente Bancos de Dados em Java
 
Empregabilidade em ti
Empregabilidade em tiEmpregabilidade em ti
Empregabilidade em ti
 
Desenvolvimento Linux
Desenvolvimento LinuxDesenvolvimento Linux
Desenvolvimento Linux
 
Conhecendo o Android
Conhecendo o AndroidConhecendo o Android
Conhecendo o Android
 
Como ganhar com a mobilidade
Como ganhar com a mobilidadeComo ganhar com a mobilidade
Como ganhar com a mobilidade
 
Carreira em TI
Carreira em TICarreira em TI
Carreira em TI
 
Aplicações android
Aplicações androidAplicações android
Aplicações android
 
Acessando BD com android
Acessando BD com androidAcessando BD com android
Acessando BD com android
 
Instalei o ubuntu e agora
Instalei o ubuntu e agoraInstalei o ubuntu e agora
Instalei o ubuntu e agora
 
Curso administracao do tempo
Curso administracao do tempoCurso administracao do tempo
Curso administracao do tempo
 
Folders - Cartazes - World Cup Brazil
Folders - Cartazes - World Cup BrazilFolders - Cartazes - World Cup Brazil
Folders - Cartazes - World Cup Brazil
 
6ª Aula de Gimp
6ª Aula de Gimp6ª Aula de Gimp
6ª Aula de Gimp
 
Medalha de São Bento
Medalha de São BentoMedalha de São Bento
Medalha de São Bento
 
5ª Aula de Gimp
5ª Aula de Gimp5ª Aula de Gimp
5ª Aula de Gimp
 
4ª Aula de Gimp
4ª Aula de Gimp4ª Aula de Gimp
4ª Aula de Gimp
 
Imagem e Frases
Imagem e FrasesImagem e Frases
Imagem e Frases
 
3ª Aula de Gimp
3ª Aula de Gimp3ª Aula de Gimp
3ª Aula de Gimp
 

PKI

  • 1. Solução de Processos da ICP Brasil com a Java Security
  • 2. Apresentação Fernando Anselmo fernandoans@dfjug.org 24 anos de carteira assinada Empresas como Tecnisys, Politec, CF/OAB, FTI, FIA/USP... 13 Livros e artigos publicados Instrutor e palestrante Coordenador do DFJUG Cargo Atual: Coordenador Técnico
  • 3. Cenário de uma Empresa Qualquer Conceitos de Criptografia Sobre a Java Security ICP Brasil Processos de Certificação Demonstração da Paridade de Chaves Resultados práticos com Certificados. Agenda
  • 4. JCE para Java 2 SDK, v 1.4 Uma empresa qualquer Personagens envolvidos nesta apresentação
  • 5. Cenário da Empresa – Necessidades superiores
  • 6. Texto Cifrado: Vãpãopo terper quepe mepe enpengupulirpir “Maparipiopo Lopobopo Zapagapalopo” Algoritmo: Língua do “P” Texto Decifrado: Vão ter que me engulir “Mário Lobo Zagalo” Cenário da Empresa – Criptografia
  • 7. Querida, Se eu pudesse a mala ia ...mas como não posso, a mala fica... ,adireuQ ai alam a essedup ue eS alam a ,ossop oãn omoc sam... ...acif Cenário da Empresa – Escrita de Leonardo
  • 8. Criptografado adomocni aicnâlubma ad eneris A Decriptografado A sirene da ambulância incomoda Cenário da Empresa – Teste
  • 9. Cenário da Empresa – Atendendo às Ordens
  • 10. Transposição ou permutação 720 possibilidades de combinação Criptografia VIAGEM GIAVEM Cenário da Empresa – Mensagens Criptografadas
  • 11. Substituição Criptografia VIAGEM XJBHFN Substituição de letras Criptografia VIAGEM 20 9 1 7 5 13 Substituição por números Cenário da Empresa – Mensagens criptografadas
  • 12. Cenário da Empresa – Do outro lado da Cidade
  • 13. Retirado do livro “Advoguês a criptografia em funções jurídicas” Sequer considerar a possibilidade da fêmea bovina expirar fortes contrações laringo bucais Aplicar a contravenção do Dr. João, deficiente físico de um dos membros superiores Retirar o equino da perturbação pluviométrica Desestabilizar, com a extremidade do membro inferior, o suporte sustentáculo de uma unidade de moradia temporária Transferir energia cinética da extremidade do membro inferior para a região glútea. Cenário da Empresa – Ajude o Hacker
  • 14. Cenário da Empresa – O Problema surge
  • 15. Pneumoultramicroscopicossilicovulcanoconiótico ** Doença rara provocada pela aspiração de cinzas vulcânicas Dicionário Houaiss - Editora Objetiva 2001 Letra = p Vl.ASCII 112 Valor Binario 1110000 Letra = n Vl.ASCII 110 Valor Binario 1101110 Letra = e Vl.ASCII 101 Valor Binario 1100101 Letra = u Vl.ASCII 117 Valor Binario 1110101 Letra = m Vl.ASCII 109 Valor Binario 1101101 Letra = o Vl.ASCII 111 Valor Binario 1101111 Letra = u Vl.ASCII 117 Valor Binario 1110101 Letra = l Vl.ASCII 108 Valor Binario 1101100 Letra = t Vl.ASCII 116 Valor Binario 1110100 Letra = r Vl.ASCII 114 Valor Binario 1110010 Letra = a Vl.ASCII 97 Valor Binario 1100001 Letra = m Vl.ASCII 109 Valor Binario 1101101 Letra = i Vl.ASCII 105 Valor Binario 1101001 Letra = c Vl.ASCII 99 Valor Binario 1100011 Letra = r Vl.ASCII 114 Valor Binario 1110010 Letra = o Vl.ASCII 111 Valor Binario 1101111 Letra = s Vl.ASCII 115 Valor Binario 1110011 Letra = c Vl.ASCII 99 Valor Binario 1100011 Letra = o Vl.ASCII 111 Valor Binario 1101111 Letra = p Vl.ASCII 112 Valor Binario 1110000 Letra = i Vl.ASCII 105 Valor Binario 1101001 Letra = c Vl.ASCII 99 Valor Binario 1100011 Letra = o Vl.ASCII 111 Valor Binario 1101111 Letra = s Vl.ASCII 115 Valor Binario 1110011 Letra = s Vl.ASCII 115 Valor Binario 1110011 Letra = i Vl.ASCII 105 Valor Binario 1101001 Letra = l Vl.ASCII 108 Valor Binario 1101100 Letra = i Vl.ASCII 105 Valor Binario 1101001 Letra = c Vl.ASCII 99 Valor Binario 1100011 Letra = o Vl.ASCII 111 Valor Binario 1101111 Letra = v Vl.ASCII 118 Valor Binario 1110110 Letra = u Vl.ASCII 117 Valor Binario 1110101 Letra = l Vl.ASCII 108 Valor Binario 1101100 Letra = c Vl.ASCII 99 Valor Binario 1100011 Letra = a Vl.ASCII 97 Valor Binario 1100001 Letra = n Vl.ASCII 110 Valor Binario 1101110 Letra = o Vl.ASCII 111 Valor Binario 1101111 Letra = c Vl.ASCII 99 Valor Binario 1100011 Letra = o Vl.ASCII 111 Valor Binario 1101111 Letra = n Vl.ASCII 110 Valor Binario 1101110 Letra = i Vl.ASCII 105 Valor Binario 1101001 Letra = ó Vl.ASCII 243 Valor Binario 1110011 Letra = t Vl.ASCII 116 Valor Binario 1110100 Letra = i Vl.ASCII 105 Valor Binario 1101001 Letra = c Vl.ASCII 99 Valor Binario 1100011 Letra = o Vl.ASCII 111 Valor Binario 1101111 Cenário da Empresa – O Problema surge
  • 16. Cenário da Empresa – Nova solução adotada
  • 17. Compactado Ce qué café? Qué. Po pô pó? Pó pô! Pó pô pão? Pó pô poquim só. Ca fom cotô. Opcv! Nó! Total = 74 caracteres Descompactado Você quer café? Quero. Pode por pó? Pode por. Pode por o pão? Pode por um pouquinho só. Com a fome que eu estou. Olha para você ver! Nossa Senhora Aparecida do Perpétuo Socorro! Total = 168 caracteres Compressão = 44% Cenário da Empresa – Nova solução adotada
  • 18. Cenário da Empresa – Resolução do Problema
  • 19. Conjunto de técnicas, procedimentos e práticas a serem implementados pelas organizações governamentais e particulares brasileiras com o objetivo de estabelecer os fundamentos técnicos e metodológicos de sistemas de certificação digital baseados em chave pública Treinamento – ICP Brasil
  • 20. Idealizada na Sun Microsystems Projeto Green – 1991 Coordenado por James Gosling Idéia era criar o produto *7 Nome oficial: OAK (“Carvalho”) Linguagem baseada em C++ com o modelo OO em Smalltalk e Simula Lançada no evento SunWorld a versão 1.0 Alpha em 23 maio de 1995 Treinamento – Sobre o Java
  • 21. Bibliotecas de extensão da Plataforma Java; Permite criptografia de mensagens; Geração das chaves; Geração dos certificados; e Autenticação de mensagens. Treinamento – Java Security
  • 22. ICP – Brasil, é a sigla no Brasil para PKI Instituído pela medida provisória 2.200, 06/2001 Atividades do Comitê Gestor pelo decreto 3.872 – Estabelecer políticas de certificação – Estabelecer diretrizes e normas – Aprovar políticas de certificados. Treinamento – Sobre a ICP Brasil
  • 23. Treinamento – Aula sobre Algoritmos de Encriptação
  • 24.  DSA - Digital Signature Algorithim (cálculos baseados em logarítmos em campos finitos)  FIPS - Padrão Federal de Processamento Informação publicado pelo NIST/USA  Diffie e Hellman (usado para estabelecer de chaves de sessão)  ECDSA e ECDH - DSA calculado usando curvas elípticas  SHA-1 - Secure Hash Algorithm (FIPS-180-1) semelhante ao princípio do MDS (RFC 1321)  AES - Advanced Encryption Standard (NIST/USA). Treinamento – Algoritmos de Encriptação
  • 25.  A assinatura digital é o resultado da aplicação à informação de processos técnicos matemáticos implementados em sistemas computacionais  A assinatura digital é uma das formas de se obter a autenticação digital  A assinatura digital é uma transformação matemática de uma mensagem através de um sistema criptográfico assimétrico e uma função hash Treinamento – Assinaturas
  • 29. É possível obter certificados digitais É possível criar certificados digitais É possível ser uma unidade certificadora Treinamento – Certificados Digitais
  • 31. Treinamento – Recebimento de Mensagens Assinadas
  • 34. Retornando a Empresa – Cenário Final
  • 35. Certificação Digital não faz sentido pela simples tecnologia, faz sentido pelas mudanças positivas que traz ao fluxo de negócios, pelo combate às fraudes, pela eliminação de documentos em papel e pelo suporte legal que confere à transação eletrônica. Decisão Final
  • 36. Agradeço a Atenção Pedido dos Fontes: fernandoans@dfjug.org Dúvidas e Questionamentos