Форум ЗАО "Сигнал-КОМ"

Текущее время: 07 июл 2020, 23:16

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Signal-COM JCP Java + ГОСТ 2012
СообщениеДобавлено: 06 дек 2018, 15:02 

Зарегистрирован: 06 дек 2018, 13:28
Сообщения: 1
Добрый день.
В своем проекте используем Signal-COM JCP версии 3.0.8 (jar). До недавнего времени была настроена корректная интеграция с сторонним сервисом через ГОСТ 2001.
Возникла необходимость перейти с ГОСТ 2001 на ГОСТ 2012. Оперативно и быстро сделать не получилось.
Исходные данные:

1. Файлы, полученные от стороннего сервиса
resources/Test_key/CA/test2012.pem
resources/Test_key/Keys/00000001.key
resources/Test_key/OpenKeys/stend2012.pem
resources/Test_key/ kek.opq, masks.db3, mk.db3 rand.opq

2. Ошибка, получаемая сейчас от стороннего сервиса:
"Неверная подпись сетификата"

3. Есть код, использующий объект SecureRandom:
Код:
SignedDataGenerator generator = new SignedDataGenerator(out);
SecureRandom random = SecureRandom.getInstance("GOST28147PRNG", "SC");
random.setSeed(new String(certsRootPath + ";NonInteractive;").getBytes());
generator.setContentType("1.2.840.113549.1.7.1");
generator.addSigner(new Signer(privateKey, cert, random));
generator.addCertificatesAndCRLs(CertStore.getInstance("Collection", new CollectionCertStoreParameters(certs)));
generator.setDetached(true);
4. Посмотрел содержимое Security.getProviders(), получив такой список:
Код:
Name: SC
Information:
Signal-COM JCP 3.0.8
Service Type: SecureRandom Algorithm GOST28147PRNG
Service Type: KeyStore Algorithm PKCS12
Service Type: KeyStore Algorithm JKS
Service Type: KeyStore Algorithm JCEKS
Service Type: KeyStore Algorithm PFX
Service Type: KeyStore Algorithm PKCS11
Service Type: CertificateFactory Algorithm X.509
Service Type: AlgorithmParameters Algorithm ECGOST3410
Service Type: AlgorithmParameters Algorithm GOST28147
Service Type: AlgorithmParameters Algorithm PKCS12PBE
Service Type: AlgorithmParameterGenerator Algorithm GOST28147
Service Type: KeyAgreement Algorithm DiffieHellman
Service Type: KeyAgreement Algorithm ECDH
Service Type: KeyAgreement Algorithm ECDH-GOST3411KDF
Service Type: KeyAgreement Algorithm ECDH-GOST3411KDF2
Service Type: KeyAgreement Algorithm VKOGOST34102001
Service Type: KeyAgreement Algorithm VKOGOSTR3410-2012-256
Service Type: KeyAgreement Algorithm VKOGOSTR3410-2012-512
Service Type: Cipher Algorithm GOST28147/ECB
Service Type: Cipher Algorithm GOST28147/CNT
Service Type: Cipher Algorithm GOST28147/CFB
Service Type: Cipher Algorithm GOST28147/CBC
Service Type: Cipher Algorithm GOST28147/CFB-SC
Service Type: Cipher Algorithm GOST28147/CFB-CP
Service Type: Cipher Algorithm GOST28147/CNT/Stream
Service Type: Cipher Algorithm GOST28147/CFB/Stream
Service Type: Cipher Algorithm GOST28147/CNT-CP/Stream
Service Type: Cipher Algorithm GOST28147/CFB-CP/Stream
Service Type: Cipher Algorithm GOST28147WRAP2
Service Type: Cipher Algorithm GOST28147WRAP-CP
Service Type: Cipher Algorithm GOST28147WRAP-CP-NONE
Service Type: KeyGenerator Algorithm GOST28147
Service Type: KeyGenerator Algorithm HMACGOST3411
Service Type: KeyGenerator Algorithm MACGOST28147
Service Type: KeyPairGenerator Algorithm DiffieHellman
Service Type: KeyPairGenerator Algorithm ECGOST3410
Service Type: KeyPairGenerator Algorithm PKCS#11
Service Type: KeyPairGenerator Algorithm PKCS#11-GOSTR3410-2012
Service Type: KeyPairGenerator Algorithm GOSTR3410-2012-256
Service Type: KeyPairGenerator Algorithm GOSTR3410-2012-512
Service Type: KeyFactory Algorithm DiffieHellman
Service Type: KeyFactory Algorithm GOST3410
Service Type: KeyFactory Algorithm ECGOST3410
Service Type: KeyFactory Algorithm GOSTR3410-2012-256
Service Type: KeyFactory Algorithm GOSTR3410-2012-512
Service Type: KeyFactory Algorithm PKCS#8
Service Type: KeyFactory Algorithm PKCS#11
Service Type: AlgorithmParameters Algorithm 1.3.6.1.4.1.5849.1.1.3
Service Type: SecretKeyFactory Algorithm GOST28147
Service Type: SecretKeyFactory Algorithm PBEWITHGOST3411ANDGOST28147
Service Type: SecretKeyFactory Algorithm PBES2WITHGOST3411ANDGOST28147
Service Type: Mac Algorithm GOST28147
Service Type: Mac Algorithm GOST28147-CP
Service Type: Mac Algorithm GOST28147-SC
Service Type: Mac Algorithm HmacGOST3411
Service Type: Mac Algorithm HmacGOST3411-CP
Service Type: Mac Algorithm HmacGOST3411-TEST
Service Type: Mac Algorithm HmacGOSTR3411-2012-256
Service Type: Mac Algorithm HmacGOSTR3411-2012-512
Service Type: MessageDigest Algorithm GOST3411
Service Type: MessageDigest Algorithm GOST3411-CP
Service Type: MessageDigest Algorithm GOST3411-TEST
Service Type: MessageDigest Algorithm GOSTR3411-2012-256
Service Type: MessageDigest Algorithm GOSTR3411-2012-512
Service Type: Signature Algorithm GOST3411withECGOST3410
Service Type: Signature Algorithm NONEwithECGOST3410
Service Type: Signature Algorithm GOSTR3411-2012-256withGOSTR3410-2012-256
Service Type: Signature Algorithm GOSTR3411-2012-512withGOSTR3410-2012-512
Service Type: Signature Algorithm NONEwithGOSTR3410-2012-256
Service Type: Signature Algorithm NONEwithGOSTR3410-2012-512
Service Type: CertStore Algorithm Collection
Service Type: CertStore Algorithm LDAP
Service Type: X509Store Algorithm HTTP/CRL
Service Type: CertPathBuilder Algorithm PKIX
Service Type: CertPathValidator Algorithm PKIX
5. privateKey = GOSTR3410-2012-512


Собственно, вопросы:
- Можно ли однозначно утверждать, учитывая ошибку п.2, что подпись сейчас не по ГОСТ 2012?
- Нужно ли вносить какие-то изменения в п.3, что бы осуществить поддержку ГОСТ 2012 и где?
- Нужен ли тут oid, соответствующий ГОСТ 12 с длиной ключа, равной privateKey из п.5?

Буду благодарен за ответы на вопросы и любую полезную информацию, касаемо замены ГОСТ 2001 на ГОСТ 2012


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC+03:00


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB