ATENÇÃO: O blog está de casa e cara nova.
O novo endereço agora é http://www.jjocenio.com.

Se você não for redirecionado automaticamente, por favor, clique link acima.

Geração de chaves em Java

Nesse post quero demonstrar como gerar um par de chaves publica-privada para criptografia.

O idéia de par de chaves é bem simples:
  • Gera-se um par de chaves, uma pública e uma privada;
  • A chave pública é distribuída para quem for de interesse e a chave privada fica com o dono da chave;
  • Antes de enviar uma mensagem, por exemplo, o remetente usa a chave pública para criptografá-la;
  • Uma vez criptografada, a mensagem só poderar ser descriptografada utilizando a chave privada. Como só o destinatário possui essa chave, só ele poderá ler a mensagem.
Junto com a instalação padrão do JDK, vem uma pequena ferramenta chamada keytool, que serve para genrenciamento de chaves e certificados.
keytool -genkeypair -alias jarbaslima -keyalg DSA -keysize 1024 -keystore chave-jarbaslima.keystore -storepass jl123s
  • O primeiro parâmetro (-genkeypair) é o comando;
  • O segundo informa um apelido para o par de chaves;
  • O terceiro é o algoritmo usado na geração;
  • O quarto é o tamanho da chave. Quanto maior, mais seguro e mais lento;
  • O quinto é o nome do arquivo onde será armazenado o par de chaves;
  • O último é a senha que irá proteger o arquivo;
O keytool solicita uma série de informações sobre quem está gerando a chave: nome, empresa, departamento, cidade, estado e país.
Depois de gerada, nós precisamos agora exportar a chave pública (certificado) para que seja distribuído.
keytool -exportcert -alias jarbaslima -keystore chave-jarbaslima.keystore -file jl-chavepublica.cert
O parâmetro -file informa para qual arquivo a chave deve ser exportada.
Para saber mais sobre o keytool, consulte http://java.sun.com/javase/6/docs/technotes/tools/windows/keytool.html

0 comentários:

Postar um comentário