Статус: Участник
Группы: Участники
Зарегистрирован: 07.04.2011(UTC) Сообщений: 29 Откуда: Москва
|
Добрый день!
Может быть кто-то мне подскажет, почему ключи в КриптоПро несериализуемые?
При попытке сериализации объекта класса GostPrivateKey вылезает исключение
java.io.NotSerializableException: ru.CryptoPro.JCP.Key.PrivateKeySpec at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156) at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509) at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
При этом, стоит заметить, что джавовские классы java.security.KeyPair, java.security.PrivateKey и java.security.PublicKey все сериализуемые.
Это какая-то забота о безопасности? В чем она заключается, собственно?
Ну и в связи с этим вопрос. Как хранить ключи вне хранилища КриптоПро? Я могу их сохранить при помощи метода getEncoded, но как мне потом воссоздать объект GostPrivateKey из byte[]?
Спасибо.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 09.10.2008(UTC) Сообщений: 181
|
Это забота о безопасности. Сериализация специально запрещена и getEncoded() везвращает null. Секретные ключи JCP можно хранить только в хранилищах JCP. Запрещено хранение секретных ключей в одном файле, например в хранилище типа JKS.
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close