Я просто хочу создать vapid-ключи для веб-push.Мой код такой:
Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());
GenerateKeyHandler generateKeyHandler = new GenerateKeyHandler(new GenerateKeyCommand());
KeyPair vapidKeys = generateKeyHandler.generateKeyPair();
ECPublicKey publicKey = (ECPublicKey) vapidKeys.getPublic();
ECPrivateKey privateKey = (ECPrivateKey) vapidKeys.getPrivate();
byte[] encodedPublicKey = Utils.encode(publicKey);
byte[] encodedPrivateKey = Utils.encode(privateKey);
String publicVapidKey = Base64Encoder.encodeUrl(encodedPublicKey);
String privateVapidKey = Base64Encoder.encodeUrl(encodedPrivateKey);
Этот код работает на моей локальной машине, но никогда не работает на сервере.Я добавил BouncyCastleProvider class в jre политику безопасности, но ничего не изменилось.Я получаю сообщение об ошибке, подобное этому
parameter object not a ECParameterSpec
JDK версия -> 1.8.0_171
BouncyCastyle Version -> org.bouncycastle: bcprov-jdk15on: 1.61
Я пробовал использовать более старую версию JDK и более старую версию bouncycastyle, но все равно у меня появляется такая ошибка.
Как я могу исправить эту проблему?