Статус: Участник
Группы: Участники
Зарегистрирован: 05.08.2011(UTC) Сообщений: 13
|
Здравствуйте, Пытаясь использовать КриптоПро JCP совместно с WS-Security (wss4j) натолкнулся на проблемы сериализации ключей. В данном посте говорится о том, что GostPrivateKey не может быть сериализован, что вполне понятно. При этом GostPublicKey сериализуется успешно, что тоже понятно, а вот GostSecretKey уже несериализуем. В это же время в Java во время шифрования во всех известных реализациях WS-Security активно используется метод SecretKey.getEncoded(). Скажите, есть ли возможность сделать SecretKey сериализуемым?
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 03.05.2011(UTC) Сообщений: 45
|
Нет такой возможности. Наши закрытые ключи несериализуемые и их методы getEncoded возвращают null. А какая стоит задача?
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 05.08.2011(UTC) Сообщений: 13
|
Необходимо организовать взаимодействие Java-приложения с .NET веб-сервисом (WCF), в котором используется WS-Security совместно с КриптоПро Sharpei и ГОСТ-овскими алгоритмами шифрования и подписи.
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 05.08.2011(UTC) Сообщений: 13
|
Немного изучив проблему, выяснилось, что сериализованные ключи нужны в основном для того, чтобы можно было посчитать хэш от них. Подскажите, нарушит ли безопасность добавление метода getDigest() в классы ключей? Например, Код:GostSecretKey key = getGostSecretKey();
byte[] sha1Digest = key.getDigest("SHA1");
byte[] md5Digest = key.getDigest("MD5");
Еще подскажите, плиз, планируется ли добавить в КриптоПро JCP поддержку алгоритмов urn:ietf:params:xml:ns:cpxmlsec:algorithms:kw-cp и urn:ietf:params:xml:ns:cpxmlsec:algorithms:hmac-gostr3411?
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 03.05.2011(UTC) Сообщений: 45
|
Алгоритмы реализованы. Как выработать сеансовый ключ, можно посмотреть в примере CMS_Samples\CMSSignAndEncrypt
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 05.08.2011(UTC) Сообщений: 13
|
Спасибо за наводку! Поскажите еще по такому вопросу, можно ли использовать urn:ietf:params:xml:ns:cpxmlsec:algorithms:hmac-gostr3411 с xml-security? Из примера отсюда, SignatureMethod может выглядеть так Код:<dsig:SignatureMethod dsig:Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:hmac-gostr3411">
<cpxmlsec:ParametersR3411>urn:oid:1.2.643.2.2.30.1</cpxmlsec:ParametersR3411>
</dsig:SignatureMethod>
Если попытаться в примере xmlSign\XMLSignDoc заменить алгоритм подписи на urn:ietf:params:xml:ns:cpxmlsec:algorithms:hmac-gostr3411, то имеем Код:org.apache.xml.security.signature.XMLSignatureException: The requested algorithm urn:ietf:params:xml:ns:cpxmlsec:algorithms:hmac-gostr3411 does not exist. Original Message was: null
Original Exception was java.lang.NullPointerException
at org.apache.xml.security.algorithms.SignatureAlgorithm.buildSigner(Unknown Source)
at org.apache.xml.security.algorithms.SignatureAlgorithm.getInstanceForSigning(Unknown Source)
at org.apache.xml.security.algorithms.SignatureAlgorithm.initializeAlgorithm(Unknown Source)
at org.apache.xml.security.algorithms.SignatureAlgorithm.initSign(Unknown Source)
at org.apache.xml.security.signature.XMLSignature.sign(Unknown Source)
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 02.12.2011(UTC) Сообщений: 12
|
Возвращаюсь к теме - а с подписью как быть?
WSS4J требует секретного ключа в чистом виде...
SSecSignature sign = new WSSecSignature(); sign.setDigestAlgo(ru.CryptoPro.JCPxml.Consts.URN_GOST_DIGEST); sign.setSignatureAlgorithm(ru.CryptoPro.JCPxml.Consts.URN_GOST_SIGN); sign.setX509Certificate((X509Certificate)cert); sign.setSecretKey(privateKey.getEncoded());
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 24.11.2009(UTC) Сообщений: 965 Откуда: Crypto-Pro
Сказал(а) «Спасибо»: 3 раз Поблагодарили: 174 раз в 152 постах
|
Насчет wss4j ответил в соседней ветке. По запросу на мою почту вышлю пример. (cross at cryptopro.ru) |
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 24.11.2009(UTC) Сообщений: 965 Откуда: Crypto-Pro
Сказал(а) «Спасибо»: 3 раз Поблагодарили: 174 раз в 152 постах
|
|
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close