Экспорт логики KeyStore / PrivateKey в JavaScript - PullRequest
0 голосов
/ 06 февраля 2019

У меня есть сертификат на моем веб-сервере, который создает носитель авторизации , используемый для отправки REST API от FE к BE в заголовке авторизации.

Теперь я хочу создать этот носитель авторизации намаленький JS проект (без узла) только для целей DEV, поэтому мне не нужно запускать Java-программу.

Как я могу реализовать то, что делает хранилище ключей или симулировать в моем коде js?Мне нужно извлечь закрытый ключ / подпись и преобразовать мои данные с извлеченной подписью из моего JKS-файла и использовать его для генерации моего токена на предъявителя, например:

    myKeyStore.load(myByteArrayInputStream, myPassword.toCharArray());
    myPrivateKeyEntry = (KeyStore.PrivateKeyEntry) myKeyStore.getEntry(alias, new KeyStore.PasswordProtection(myPpassword.toCharArray()));
    myPrivateKey: PrivateKey = myPrivateKeyEntry.getPrivateKey();

А потом:

    Signature myPrivateSignature = Signature.getInstance("xxx");
    myPrivateSignature.initSign(myPrivateKey);
    myPrivateSignature.update(data.getBytes());
    mySign = myPrivateSignature.sign();

    return Base64.encodeBase64URLSafeString(mySign);
...