EJBCA

Nota

O EJBCA requer, pelo menos, o NetHSM v3 e o nethsm-pkcs11 v2.

EJBCA is a PKI Certificate Authority software available in both Community (CE) and Enterprise Edition (EE).

EJBCA Community

O EJBCA Community Edition é um software de autoridade de certificação PKI de fonte aberta.

To be able to use NetHSM with EJBCA CE you need to setup the NetHSM PKCS#11 module first.

Em seguida, configure o EJBCA para utilizar o módulo NetHSM PKCS#11, adicionando uma entrada no ficheiro /etc/ejbca/conf/web.properties:

cryptotoken.p11.lib.418.name=NetHSM
cryptotoken.p11.lib.418.file=/usr/lib/nitrokey/libnethsm_pkcs11.so
cryptotoken.p11.lib.418.canGenerateKey=true

Nota

O 418 no nome é um índice que deve ser único para cada módulo PKCS#11 no ficheiro de configuração.

Depois de reiniciar o EJBCA, pode adicionar um novo Crypto Token na GUI de administração do EJBCA https://mycahostname/ejbca/adminweb/cryptotoken/cryptotokens.xhtml. O tipo de Crypto Token é PKCS#11 Crypto Token e o nome do Crypto Token é NetHSM.

Docker Example

We provide an example setup using docker for testing. If you want to experiment with it you can use git to clone the nethsm-pkcs11 repository and then follow the steps described in the file container/ejbca/README.md.

EJBCA Enterprise

O EJBCA Enterprise Edition oferece funcionalidades avançadas e suporte empresarial.

A configuração do EJBCA EE é diferente da Community Edition. Em vez de configurar o módulo PKCS#11 diretamente no EJBCA, a Enterprise Edition utiliza um contentor sidecar abordagem. Este contentor sidecar fornece a ligação p11ng (PKCS#11 Next Generation) ao NetHSM, permitindo uma integração perfeita sem modificar o contentor principal do EJBCA.

Para obter informações pormenorizadas sobre a configuração dos módulos de segurança de hardware (HSM) com o EJBCA EE, consulte a documentação oficial do EJBCA HSM.

Docker Setup

Fornecemos uma configuração completa em contentor para a integração do EJBCA EE com o NetHSM. A configuração inclui:

  • EJBCA EE container

  • Contentor lateral NetHSM PKCS#11 (p11ng)

  • Contentor NetHSM para testes

Pode encontrar a imagem e a configuração do contentor no diretório container/ejbca-ee/ do repositório nethsm-pkcs11.

O diretório inclui um arquivo docker-compose.yml completo que traz todos os componentes necessários, incluindo uma instância do NetHSM para fins de teste. Isso fornece um ambiente pronto para uso para experimentar a integração do EJBCA EE e do NetHSM.

Nota

Dockerfile e docker-compose.yml contêm referências aos repositórios oficiais, certifique-se de executar docker login antes de utilizá-los.

Atualmente, uma limitação é o facto de não haver forma de selecionar o Padding Scheme para um determinado Crypto Token. Por conseguinte, o RSA utilizará sempre o preenchimento PKCS#1 (e não o PSS).