manual de utilização da ferramenta keytool iui

Propaganda
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ
MANUAL DE UTILIZAÇÃO DA FERRAMENTA KEYTOOL IUI
Agosto – 2006
Sumário de Informações do Documento
Tipo do Documento: Manual
Título do Documento: MANUAL DE UTILIZAÇÃO DA FERRAMENTA KEYTOOL IUI
Estado do Documento: EB (Elaboração)
Responsáveis: Emerson Sachio Saito
Palavras-Chaves: Keytool, IUI, Certificação, Digital, JKS, PKCS12
Resumo: Manual de uso da ferramenta JAVA Keytool IUI.
Número de páginas: 21
Software utilizados: OpenOffice Writer
Versão
Data
Mudanças
1.0
09/08/2006
Criação – revisado por Elisabeth Hoffmann em 09/09/2007
SUMÁRIO
1 FERRAMENTA KEYTOOL IUI.........................................................................................................................4
1.2 OBJETIVO.................................................................................................................................................................4
1.3 INSTALAÇÃO..............................................................................................................................................................4
1.3.1 Configuração do Proxy. ........................................................................................................................5
1.4 INICIANDO A INTERFACE VISUAL..................................................................................................................................7
1.5 UTILIZAÇÃO DOS RECURSOS CONFORME O PADRÃO DEFINIDO PELO PINHÃO....................................................................8
1.5.1 Criação do Chaveiro(Keystore) JKS......................................................................................................8
1.5.2 Importação das chaves do Certificado..................................................................................................9
1.5.3 Exportação do Certificado de um par de chaves.................................................................................12
1.5.3 Importação de Certificado Válido.......................................................................................................13
1.5.4 Exportação de Certificado Válido.......................................................................................................18
1.5.5 Criação de par de chaves com algoritmo RSA....................................................................................19
1.5.6 Criação de par de chaves com algoritmo DSA....................................................................................22
1.5.7 Exportação de CSR para um par de chaves com algoritmo RSA........................................................22
1.5.8 Importação de CSR para um par de chaves com algoritmo RSA........................................................22
2 CONSIDERAÇÕES FINAIS..............................................................................................................................23
4
1 FERRAMENTA KEYTOOL IUI
1.2 Objetivo
No projeto TABELIÃO está prevista a padronização do uso de certificados digitais em aplicações WEB no contexto de servidor, assim como em todos os outros níveis.
No documento GIC_CertificadosDigitaisAplicacoesWEB estão as orientações e padronização para a certificação de aplicações no servidor JBOSS e neste documento existe um item que trata da certificação de várias aplicações no mesmo servidor. Para resolver o problema de compartilhamento de servidor por diversas aplicações foi necessário incorporar o uso de Keystores (chaveiros) no formato JKS. Ao trabalharmos com este tipo de arquivo a ferramenta da JDK padrão da SUN que é a keytool não atende todos os requisitos, pois não consegue importar a chave privada de um certificado. Com o objetivo de suprir esta deficiência foi encontrada uma ferramenta chamada KEYTOOL IUI PLUS que é construída em JAVA/SWING e utiliza a biblioteca Bouncy Castle para trabalhar com certificados digitais.
Esta ferramenta também fornece facilidades para a manipulação dos certificados para outros fins como por exemplo, a criação de certificados de testes para uso pessoal.
Neste documento não será detalhado nenhum conceito sobre certificação digital, pois este assunto é considerado pré­requisito para uso deste manual e a Plataforma de Desenvolvimento PINHÃO fornece o material e curso para aquisição deste conhecimento.
1.3 Instalação
A Instalação da ferramenta é feita através do Java Web Start (http://java.sun.com/products/javawebstart/) que significa, de modo simplificado, uma tecnologia para aplicações Java em Desktop e permite executar remotamente uma aplicação on­line e também a execução off­line.
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
5
A ferramenta KeyTool IUI Plus e mantida no site: http://yellowcat1.free.fr/index_ktl.html.
Para fazer a instalação, o pré­requisito é ter instalado na máquina o SDK JAVA que faz parte do pacote de desenvolvimento da plataforma PINHÃO e para quem utiliza proxy configurar conforme o item 1.3.1.
Com isto basta executar o comando abaixo:
javaws http://ragingcat.developpez.com/jws/ktl/on_ktlp_main.jnlp
Isto fará com que a ferramenta seja baixada do site mantenedor, instalada na máquina e em seguida a aplicação já será executada.
1.3.1 Configuração do Proxy.
Para configurar o proxy no Java Web Start é preciso abrir a interface executando o comando: javaws
Ir até o menu Edit/Preferences que abrirá a seguinte tela:
Clicar na opção Network Settings... que abrirá a tela seguinte:
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
6
Nesta tela deve­se escolher entre as opções: –
Use browser settings ­> Está opção é válida quando já existe a configuração no navegador web padrão, o que é o mais comum para quem já utilizar proxy para acesso a Internet.
–
Use proxy server ­> neste caso informar Address e Port conforme as configurações do proxy local (veja estas informações com o seu administrador de ambiente).
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
7
1.4 Iniciando a Interface Visual
Para iniciar o uso da ferramenta, desde que já esteja instalada, caso contrário veja o item 1.3, utiliza­se o comando javaws na linha de comando do console que irá lançar uma interface JAVA/SWING conforme a figura abaixo:
Em seguida escolher o item Keytool IUI Plus.
As opções de uso são: –
Launch Online: que utilizará o fonte armazenado no Site WEB, precisa de conexão Internet ativa.
–
L aunch Offline: irá utilizar os arquivos baixados em cache localmente.
A opção Launch Offline é a mais recomendada, pois além atender os requisitos necessários não gerará tráfego na rede e também não dependerá da fonte estar on­line.
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
8
1.5 Utilização dos recursos conforme o padrão definido pelo PINHÃO.
1.5.1 Criação do Chaveiro(Keystore) JKS.
O primeiro passo definido para uso de um Chaveiro(Keystore) para o servidor JBOSS é a criação do arquivo vazio, caso o servidor onde o certificado deverá ser instalado já possua um ou mais certificados, o chaveiro já existirá e neste caso, é necessária apenas a importação das chaves de acordo com o item 1.5.2 deste documento.
Para criação do chaveiro (keystore) vazio o processo é o seguinte: Executar a interface Gráfica conforme o item 1.4 e selecionar a aba: Create Empty Keystore (ou pelo menu: View/Select tab/Create Empty Keystore).
Conforme mostrado na tela abaixo apresentada:
Escolher o formato JKS na coluna da direita.
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
9
Clicar no primeiro ícone após *keystore file: e indique o diretório onde será criado o chaveiro(keystore) e um nome para arquivo.
Em seguida clicar no primeiro ícone após *keystore password e informar a senha para o chaveiro(keystore), guarde bem está senha pois ela será utilizada para configurar o JBOSS, depois clicar no botão localizado na parte inferior da tela que estará habilitado (normalmente ficará na cor azul) quando todas as informações estiverem preenchidas. Aguardar a tela de confirmação:
1.5.2 Importação das chaves do Certificado.
Após a aquisição do certificado junto a uma Autoridade de Registro Credenciada a ICP­BRASIL, o arquivo contendo as chaves (Publica e Privada) para a aplicação deverá ser importado para o chaveiro(keystore) do servidor onde está armazenada a aplicação, o que ocorre realmente é a extração do par de chaves para o chaveiro, e o formato do arquivo deverá ser um entre estes: JKS,JCEKS,PKCS12,BKS ou UBER que são os formatos suportados pela ferramenta. Fazemos isto da seguinte forma:
–
Selecionar a aba “Import Keypair” (ou pelo menu: View/Select tab/Import Keypair) conforme a figura abaixo:
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
10
No quadro Source, escolher o formato JKS e clicar no primeiro ícone após *keystore file para informar o diretório e o arquivo chaveiro(keystore) para onde as chaves serão importadas. Clicar no primeiro ícone após *keystore password para informar a senha do chaveiro(keystore).
No quadro Target, escolher o formato conforme o arquivo das chaves (no exemplo foi o PKCS12 que é o mais utilizado), depois clicar no primeiro ícone após *keystore file para informar o diretório e o arquivo com as chaves (este é o arquivo fornecido pela Autoridade de Registro). Clicar no primeiro ícone após *keystore password para informar a senha do certificado.
Finalizados os passos anteriores, clicar no botão na parte inferior da tela que estará habilitado (normalmente ficará na cor azul) quando todas as informações estiverem PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
11
preenchidas.
Aguardar até que a seguinte tela apareça:
Nesta tela deverá ser selecionada a chave que deverá ser importada.
Podem haver casos em que hajam mais de uma chave (alias), especialmente quando houver necessidade de Assinatura e Sigilo na mesma aplicação e as chaves vierem em um único arquivo.
Depois será apresentada a tela abaixo que é a do chaveiro (keystore) que será utilizado:
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
12
Nesta tela, quando já houverem chaves no chaveiro elas serão apresentadas. O passo seguinte é informar o novo alias ou nome que identificará a nova entrada, e uma senha para esta entrada (esta nova senha só será necessária caso seja necessário exportar a chave, ou ainda, repetir este mesmo processo para um outro chaveiro).
Aguardar a tela de confirmação:
1.5.3 Exportação do Certificado de um par de chaves.
Esta função serve para exportação dos certificados, mais especificamente a chave pública, que são normalmente utilizados para serem armazenados pelos Navegadores (Browsers) ou Ferramentas de leitura de e­Mail.
Na ferramenta, selecionar a aba “Export certificate from keypair” (ou pelo menu: View/Select tab/Export certificate from keypair).
No quadro Source, poderemos selecionar o tipo do chaverio(keystore) que são: JKS, JCEKS, PKCS12, BKS e UBER que iremos utilizar para fazer a exportação. No nosso exemplo utilizaremos o formato do chaveiro que criamos no item 1.5.1
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
13
Indicar ainda, o diretório e o nome do arquivo do certificado que será utilizado para exportação e a senha.
No quadro Target, indicar o diretório, nome do arquivo para onde será exportado o certificado e um dos formatos (DER, PKCS#7 e PEM) disponíveis. O formato DER (arquivo .cer) é o mais utilizado.
Finalizados os passos anteriores, clicar no botão localizado na parte inferior da tela que estará habilitado (normalmente ficará na cor azul) quando todas as informações estiverem preenchidas. Aguarde as telas de confirmação.
1.5.3 Importação de Certificado Válido.
A ferramenta implementa o conceito de importação de Certificado Verdadeiro ou válido, que é a importação para uma cadeia de certificados com validação de confiança para dentro de um chaveiro, e nestes casos, não será preciso importá­los para o chaveiro padrão do PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
14
JAVA como visto no documento GIC_CertificadosDigitaisAplicacoesWEB, a diferença é que, neste caso as cadeias ficam restritas ao chaveiro e caso haja mais de um serviço JAVA que utilize certificado digital eles não compartilharão este recurso.
1.5.3.1 Certificado Auto­Assinado.
O único certificado auto­assinado válido para importação em um chaveiro, por padrão, é o da RAIZ da ICP­BRASIL e este por definição, deverá ser o primeiro a ser importado caso não esteja no chaveiro padrão do JAVA.
1.5.3.2 Importando Certificado.
Caso o certificado RAIZ da ICP­BRASIL já esteja no chaveiro padrão do JAVA ele não precisará ser importado, mas caso não esteja, este deverá ser o primeiro conforme a hierarquia definida pelo padrão ICP­BRASIL.
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
15
Para executar a tarefa selecione a aba “Import trusted certificate” a seguinte tela deverá aparecer:
No quadro Source, clicar no primeiro ícone à frente de *Trusted certificate file: e informar o diretório e nome do arquivo que contém o certificado válido. Caso não esteja importando o certificado RAIZ da ICP­BRASIL e desejar utilizar o certificado padrão do JAVA, marque a opção Check system's CA cert. store.
No quadro Target, clicar no primeiro ícone à frente de *keystore file: informar o diretório, o nome do arquivo chaveiro onde será importado o certificado e o formato (de acordo com os suportados pela ferramenta: JKS, JCEKS, PKCS12, BKS, UBER). Clicar no primeiro ícone à frente de *keystore password: e informar a senha do chaveiro.
Finalizados os passos anteriores, clicar no botão localizado na parte inferior da tela que estará habilitado (normalmente ficará na cor azul) quando todas as informações estiverem preenchidas.
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
16
Aguardar até a apresentação da tela abaixo:
Entre com um nome (alias) para o certificado que está sendo importado.
Caso seja o RAIZ e tela abaixo será apresentada:
Em seguida será mostrado certificado e as telas de confirmação:
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
17
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
18
No caso da importação de cadeias de certificado na hierarquia abaixo da RAIZ da ICP­
BRASIL, algumas das telas não serão apresentadas mas o processo é o mesmo para cada arquivo.
1.5.4 Exportação de Certificado Válido.
Este é o caminho inverso do anterior.
Para executar a tarefa selecione a aba “Export trusted certificate” . A seguinte tela deverá aparecer:
No quadro Source, clicar no primeiro ícone à frente de *keystore file: informar o diretório, o nome do arquivo chaveiro onde será importado o certificado e o formato (de acordo com os suportados pela ferramenta: JKS, JCEKS, PKCS12, BKS, UBER). Clicar no primeiro ícone à frente de *keystore password: e informar a senha do chaveiro.
No quadro Target, clicar no primeiro ícone à frente de *Certificate file: informar um PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
19
nome para o arquivo que será criado e o padrão desejado (DER é o mais utilizado).
Finalizados os passos anteriores, clicar no botão localizado na parte inferior da tela que estará habilitado (normalmente ficará na cor azul) quando todas as informações estiverem preenchidas.
Aguardar a tela de confirmação.
1.5.5 Criação de par de chaves com algoritmo RSA.
Esta funcionalidade da ferramenta permite a criação de pares de chaves com uso do algoritmo RSA. É muito interessante para criação de chaves para testes e disseminação, pois como está fora do padrão estabelecido pela ICP­BRASIL não terá nenhuma eficácia probatória, a vantagem é que o RSA é um dos algoritmos utilizados pela ICP­BRASIL.
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
20
Para executar a tarefa selecione a aba “Create RSA Keypair” , a seguinte tela deverá aparecer:
No quadro Source, clicar no primeiro ícone à frente de *keystore file: informar o diretório e um nome para o arquivo (keystore) onde o par de chaves será criado, também é preciso informar o tipo do arquivo. Depois clicar no primeiro ícone à frente de *keystore password e informar a senha. Veja o item 1.5.1 para criação do chaveiro caso seja necessário.
No quadro Target – New Entry – Private Key será necessário selecionar as opções desejadas.
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
21
Na figura abaixo, veja a continuação da tela anterior:
No quadro Target – New Entry – X.500 Distinguished Name será necessário informar os dados obrigatórios * clicando no ícone à frente de cada item.
Finalizados os passos anteriores, clicar no botão localizado na parte inferior da tela que estará habilitado (normalmente ficará na cor azul) quando todas as informações estiverem preenchidas.
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
22
A tela abaixo será apresentada:
Informe um nome(Enter new alias) para a chave que será criada e também a senha(Enter new password) que deverá ser confirmada(Confirm new password).
Aguarde a execução e as telas de confirmação.
1.5.6 Criação de par de chaves com algoritmo DSA.
Esta funcionalidade é exatamente igual à do algoritmo RSA (veja item anterior).
1.5.7 Exportação de CSR para um par de chaves com algoritmo RSA.
Esta funcionalidade é utilizada para a criação de uma CSR (Certificate Signing Request), que é uma requisição para a assinatura do par de chaves criado com o algoritmo RSA. Isto equivale a um pedido de validação da chave para uma AC (Autoridade Certificadora) mas, este tipo de procedimento está fora do padrão ICP­BRASIL e não será abordado.
1.5.8 Importação de CSR para um par de chaves com algoritmo RSA.
É a funcionalidade para validação do item anterior e pelo mesmo motivo não será abordado.
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
23
2 CONSIDERAÇÕES FINAIS
Muitas das facilidades e funções apresentadas não estarão sob a garantia da ICP­
BRASIL, pois a manipulação de certificados será exclusiva das Autoridades Certificadoras, mas além de algumas das funções serem úteis mesmo no contexto, essa ferramenta poderá ser utilizada como facilitadora no processo de internalização e testes.
PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ - CELEPAR
Download