Jar Signer
Informações Gerais
Este guia de uso integrado com o utilitário jarsigner
do SDK Java foi preparado usando as versões de software e firmware abaixo:
SO Windows 10 (inglês)
SO Linux Debian 11
JDK: 8
Firmware do HSM: 5.0.26.0 (ou superior)
Cliente do HSM: 4.7.30 (ou superior)
Requisitos
Conectividade com o HSM (porta TCP 4433).
Software client do HSM instalado, (consulte o tópico Instalação).
Serviço do HSM iniciado.
Credenciais da partição do HSM onde será criada ou utilizada a chave privada.
Assinatura de código Java usando o HSM
Nos passos de importação a seguir os nomes para chave, certificado e cadeia no HSM devem seguir as regras de nomenclatura definidas no tópico Implementação. Por exemplo key
, key_cert
e key_chain
.
A assinatura com jarsigner
usando o HSM é feita via a API de integração JCA/JCE. Portanto o passo inicial é configurar a API de integração para conexão com o HSM. Para mais detalhes sobre a API JCA/JCE do HSM consulte o tópico JCA/JCE.
Importar ou gerar a chave na partição escolhida.
Importar o certificado e opcionalmente a cadeia PKCS#7 da Autoridade Certificadora (AC) que emitiu o certificado para a partição escolhida.
Gerar o arquivo de configuração da JCA usando o programa java
jcaconfig.jar
. Este programa é instalado junto com o software cliente do HSM. Para mais detalhes sobre o utilitário consulte o tópico Configuração. A localização default dos programas e bibliotecas Java do HSM é conforme abaixo.Windows:
C:\Program Files\Dinamo Networks\HSM Dinamo\sdk\java
Linux:
/opt/dinamo
O nome do arquivo de configuração gerado deve ser
Configuration.ND
.Onde
<HSM_IP>
: endereço IP do HSM<HSM_PARTITION>
: partição do HSM<HSM_PARTITION_PASSWORD>
: senha da partição
Copiar o arquivo de configuração gerado para a mesma pasta onde executará o comando
jarsigner
.Copiar os arquivos
ndjca.jar
etacndjavalib.jar
para a pasta de extensões do Java. Normalmente esta pasta tem o caminho abaixo, onde<VERSION>
é a versão do JDK instalado.Windows:
C:\Program Files\Java\jdk<VERSION>\jre\lib\ext
Linux:
/usr/local/openjdk-<VERSION>/jre/lib/ext/
Execute o comando
jarsigner
com os parâmetros a seguir.Onde
<HSM_PARTITION_PASSWORD>
: senha da partição<JAR_APPLICATION>
: aplicação Java (.jar) que terá o código assinado.key
: é o nome da chave privada que foi gerada ou importada no HSM.
A assinatura de uma ACT (Autoridade de Carimbo de Tempo), com adição de timestamp é opcional (parâmetro
-tsa
).
Verificação
A verificação de um arquivo .jar assinado também é feita com o programa
jarsigner
:
Last updated