Leiame.txt original
Este projeto está obsoleto, use xipki/ipkcs11wrapper(preferencial) ou xipki/jpkcs11wrapper.
JRE/JDK 8 (compilação 162+) ou superior
Maven
<dependency> <groupId>org.xipki.iaik</groupId> <artifactId>sunpkcs11-wrapper</artifactId> <version>1.4.10</version> </dependency>
Ou copie o seguinte arquivo jar para o seu classpath:
sunpkcs11-wrapper-1.4.7.jar
Para usar o pkcs11wrapper no JDK 17 ou superior, adicione a seguinte opção java:
--add-exports=jdk.crypto.cryptoki/sun.security.pkcs11.wrapper=ALL-UNNAMED
Configure a biblioteca e o PIN do seu módulo HSM no arquivo example/data/pkcs11.properties
.
mvn test
Para ativar os testes de velocidade use -PspeedTests
Por padrão o teste de velocidade será executado com 2 threads, você pode alterar o valor através da propriedade Java speed.threads
, por exemplo -Dspeed.threads=5
para usar 5 threads.
Por padrão, o teste de velocidade levará 3 segundos, você pode alterar o valor através da propriedade Java speed.duration
, por exemplo -Dspeed.duration=10s
por 10 segundos.
Nenhuma biblioteca externa é necessária
Requer OpenJDK ou Oracle Java Runtime 1.8 ou superior
Suporte PKCS#11 versão 2.40
Suporte EdDSA Ed25519 (geração de assinatura e par de chaves)
Porta de mikma/pkcs11wrapper para este projeto
Para *SecretKey
, use o construtor ValuedSecretKey(long keyType)
em vez disso, por exemplo, use new ValuedSecretKey(PKCS11Constants.CKK_AES)
para AES SecretKey.
Para ECDSAPrivateKey
e ECDSAPublicKey
, use ECPrivateKey
e ECPublicKey
.
iaik.pkcs.pkcs11.objects.Object
foi renomeado para iaik.pkcs.pkcs11.objects.PKCS11Object
.
Token.closeAllSession()
não pode ser suportado, pois não é suportado no JNI subjacente (provedor SunPKCS11 do JDK). Por favor, gerencie sua sessão sozinho. Você pode fechar uma única sessão por Session.closeSession()
.
Ao contrário do wrapper PKCS#11 original, chamamos Module.initialize()
apenas uma vez por .so/.dll nativo. Depois que Module.finalize(Object)
for chamado, o módulo não poderá mais ser inicializado.