Стоит ли хранить публичный ключ в хранилище X.509 для задачи верификации цифровой подписи? Публичный и приватный RSA-ключи я генерирую при помощи консольной openssl:# генерю приватный ключ openssl genrsa -out my.pem 1024 # преобразую в pkcs8 чтобы прочитать из Джавы openssl pkcs8 -topk8 -nocrypt -inform PEM -outform DER -in my.pem -out my.pk8 # выделяю публичный ключ openssl rsa -in my.pem -pubout -out my.pub
Публичный ключ при этом получается в «контейнере» X.509. После отрезания хидера с футером, я его вполне успешно читаю:def keySpec = new X509EncodedKeySpec (encodedKey); def keyFactory = KeyFactory.getInstance("RSA"); return keyFactory.generatePublic(keySpec);
Это уместно, использовать для верификации публичный ключ в «контейнере» X.509? Или есть более подходящие решения? Ведь создавался он для сетевых нужд, с отзывом сертификатов и т.п…