Оригинальный файл Readme.txt
Этот проект устарел, используйте вместо него xipki/ipkcs11wrapper (предпочтительно) или xipki/jpkcs11wrapper.
JRE/JDK 8 (сборка 162+) или выше
Мавен
<dependency> <groupId>org.xipki.iaik</groupId> <artifactId>sunpkcs11-wrapper</artifactId> <version>1.4.10</version> </dependency>
Или скопируйте следующий jar-файл в свой путь к классам:
sunpkcs11-wrapper-1.4.7.jar
Чтобы использовать pkcs11wrapper в JDK 17 или более поздней версии, добавьте следующий параметр Java:
--add-exports=jdk.crypto.cryptoki/sun.security.pkcs11.wrapper=ALL-UNNAMED
Настройте библиотеку и PIN-код вашего модуля HSM в файле example/data/pkcs11.properties
.
mvn test
Чтобы активировать тесты скорости, используйте -PspeedTests
По умолчанию тест скорости будет выполняться с двумя потоками. Вы можете изменить значение с помощью свойства Java speed.threads
, например -Dspeed.threads=5
, чтобы использовать 5 потоков.
По умолчанию проверка скорости занимает 3 секунды. Вы можете изменить значение с помощью свойства Java speed.duration
, например -Dspeed.duration=10s
на 10 секунд.
Никакая внешняя библиотека не требуется
Требуется OpenJDK или Oracle Java Runtime 1.8 или выше.
Поддержка PKCS#11 версии 2.40.
Поддержка EdDSA Ed25519 (генерация подписи и пары ключей)
Порт из mikma/pkcs11wrapper в этот проект.
Для *SecretKey
вместо этого используйте конструктор ValuedSecretKey(long keyType)
, например, используйте new ValuedSecretKey(PKCS11Constants.CKK_AES)
для AES SecretKey.
Для ECDSAPrivateKey
и ECDSAPublicKey
вместо этого используйте ECPrivateKey
и ECPublicKey
.
iaik.pkcs.pkcs11.objects.Object
переименован в iaik.pkcs.pkcs11.objects.PKCS11Object
.
Token.closeAllSession()
не поддерживается, поскольку он не поддерживается в базовом JNI (поставщик SunPKCS11 JDK). Пожалуйста, управляйте сеансом самостоятельно. Вы можете закрыть один сеанс с помощью Session.closeSession()
.
В отличие от исходной оболочки PKCS#11, мы вызываем Module.initialize()
только один раз для каждого собственного .so/.dll. После вызова Module.finalize(Object)
модуль больше не может быть инициализирован.