Статус: Активный участник
Группы: Участники
Зарегистрирован: 22.10.2015(UTC) Сообщений: 42 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Moscow
|
Код:
FINER: RETURN java.util.Collections$2@19839755
ноя 09, 2015 3:55:38 PM ru.CryptoPro.JCP.KeyStore.JCPKeyStore engineIsKeyEntry
FINER: ENTRY 40831728-1e8a-4986-b7fd-19ddd92c1618
ноя 09, 2015 3:55:38 PM ru.CryptoPro.JCP.KeyStore.JCPKeyStore engineIsKeyEntry
FINER: RETURN true
ноя 09, 2015 3:55:38 PM ru.CryptoPro.JCP.KeyStore.JCPKeyStore engineGetKey
FINER: ENTRY 40831728-1e8a-4986-b7fd-19ddd92c1618 ***
FINER: RETURN
ноя 09, 2015 3:55:38 PM ru.CryptoPro.JCP.tools.AbstractLicense checkSerialHash
FINE: Check license without company name: true
ноя 09, 2015 3:55:38 PM ru.CryptoPro.JCP.KeyStore.JCPKeyStore engineGetKey
FINE: THROW
java.security.UnrecoverableKeyException: Password is not needed.
at ru.CryptoPro.JCP.KeyStore.t.f(Unknown Source)
at ru.CryptoPro.JCP.KeyStore.t.e(Unknown Source)
at ru.CryptoPro.JCP.KeyStore.t.a(Unknown Source)
at ru.CryptoPro.JCP.KeyStore.ContainerStore.engineGetKey(Unknown Source)
at ru.CryptoPro.JCP.KeyStore.JCPKeyStore.engineGetKey(Unknown Source)
at java.security.KeyStore.getKey(KeyStore.java:792)
at ru.CryptoPro.ssl.n.<init>(Unknown Source)
at ru.CryptoPro.ssl.KeyManagerFactoryImpl.engineInit(Unknown Source)
at javax.net.ssl.KeyManagerFactory.init(KeyManagerFactory.java:259)
at test.SSLSocketClient.buildKeyManager(SSLSocketClient.java:83)
at test.SSLSocketClient.main(SSLSocketClient.java:41)
ноя 09, 2015 3:55:38 PM ru.CryptoPro.ssl.n <init>
FINE:
ноя 09, 2015 3:55:38 PM ru.CryptoPro.ssl.n <init>
FINE:
------
ноя 09, 2015 3:55:38 PM ru.CryptoPro.JCP.pref.JCPPref get
CONFIG: System Preference Node: /ru/CryptoPro/JCP/KeyStore/HDImage.HDImageStore_class_default=${user.home}\Local Settings\Application Data\Crypto Pro
ноя 09, 2015 3:55:38 PM ru.CryptoPro.ssl.n <init>
WARNING: %% No appropriate keys for handshake
PATH: C:\Users\DVKuzmin\Local Settings\Application Data\Crypto Pro
ноя 09, 2015 3:55:38 PM ru.CryptoPro.JCP.pref.JCPPref getInt
CONFIG: User Preference Node: /ru/CryptoPro/ssl.Session_cache_size_default=20
ноя 09, 2015 3:55:38 PM ru.CryptoPro.JCP.pref.JCPPref getInt
CONFIG: User Preference Node: /ru/CryptoPro/ssl.Session_time_default=24
ноя 09, 2015 3:55:38 PM ru.CryptoPro.JCP.pref.JCPPref getInt
CONFIG: User Preference Node: /ru/CryptoPro/ssl.Session_cache_size_default=20
ноя 09, 2015 3:55:38 PM ru.CryptoPro.JCP.pref.JCPPref getInt
CONFIG: User Preference Node: /ru/CryptoPro/ssl.Session_time_default=24
ноя 09, 2015 3:55:38 PM ru.CryptoPro.ssl.SSLContextImpl engineInit
FINER: SSLContext engineInit
а как он сначала видит алиас 40831728-1e8a-4986-b7fd-19ddd92c1618 ,а потом ломается и говорит WARNING: %% No appropriate keys for handshake Отредактировано пользователем 9 ноября 2015 г. 15:55:48(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,005 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 715 раз в 675 постах
|
Автор: vavilon.rus ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) потом делаю init у SSLContext
А дальше? передаете пароль в KeyManagerFactory? В ссылке, в лог есть 40831728-1e8a-4986-b7fd-19ddd92c1618, это он? |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 22.10.2015(UTC) Сообщений: 42 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Moscow
|
Вот код Код:
public static void main(String[] args) throws NoSuchAlgorithmException, NoSuchProviderException {
System.out.println(" == config == ");
System.setProperty("com.sun.security.enableCRLDP", "true");
System.setProperty("com.ibm.security.enableCRLDP", "true");
System.setProperty("javax.net.ssl.supportGVO", "true");
System.setProperty("javax.net.debug", "all");
KeyStore trustStore = buildTrustStore();
TrustManager[] tms = buildTrustManager(trustStore);
KeyStore keyStore = buildKeyStore();
KeyManager[] km = buildKeyManager(keyStore);
SSLSocketFactory sslFactory = buildSSLSocketFactory(tms);
System.out.println(" == begin == ");
Service service = CloudAPI.create(CloudAPI.WSDL_LOCATION, CloudAPI.SERVICE);
CloudAPISoap soap = service.getPort(CloudAPISoap.class);
configClient(sslFactory, soap);
List list = soap.beginAuth();
CreateKeyOut a = soap.createKey(new CreateKeyIn());
System.out.println(" == end == ");
}
private static void configClient(SSLSocketFactory sslFactory, CloudAPISoap soap) {
Client client = ClientProxy.getClient(soap);
HTTPConduit http = (HTTPConduit) client.getConduit();
buildHTTPConduit(http);
http.setTlsClientParameters(createTlsClientParameters(sslFactory));
client.getInInterceptors().add(new LoggingInInterceptor());
client.getOutInterceptors().add(new LoggingOutInterceptor());
}
private static SSLSocketFactory buildSSLSocketFactory(TrustManager[] tms) throws NoSuchAlgorithmException, NoSuchProviderException {
SSLContext sc = SSLContext.getInstance("GostTLS");
try {
sc.init(null, tms, SecureRandom.getInstance("CPRandom", "JCP"));
} catch (KeyManagementException e) {
e.printStackTrace();
}
return sc.getSocketFactory();
}
private static KeyManager[] buildKeyManager(KeyStore keyStore) throws NoSuchAlgorithmException {
KeyManagerFactory kmf = KeyManagerFactory.getInstance("GostX509");
try {
kmf.init(keyStore, "123".toCharArray());
} catch (KeyStoreException e) {
e.printStackTrace();
} catch (UnrecoverableKeyException e) {
e.printStackTrace();
}
return kmf.getKeyManagers();
}
private static KeyStore buildKeyStore() throws NoSuchProviderException, NoSuchAlgorithmException {
KeyStore keyStore = null;
try {
keyStore = KeyStore.getInstance("HDImageStore", "JCP");
keyStore.load(null, null);
// keyStore.load(new FileInputStream("e:\\store17"), "123".toCharArray());
} catch (KeyStoreException e) {
e.printStackTrace();
} catch (CertificateException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return keyStore;
}
private static TrustManager[] buildTrustManager(KeyStore trustStore) throws NoSuchAlgorithmException {
TrustManagerFactory tmf = TrustManagerFactory.getInstance("GostX509");
try {
tmf.init(trustStore);
} catch (KeyStoreException e) {
e.printStackTrace();
}
return tmf.getTrustManagers();
}
private static KeyStore buildTrustStore() throws NoSuchAlgorithmException {
KeyStore trustStore = null;
try {
trustStore = KeyStore.getInstance("HDImageStore");
trustStore.load(new FileInputStream("e:\\store17"), "123".toCharArray());
} catch (KeyStoreException e) {
e.printStackTrace();
} catch (CertificateException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return trustStore;
}
private static void buildHTTPConduit(HTTPConduit http) {
http.getClient().setAutoRedirect(true);
http.getClient().setConnection(ConnectionType.KEEP_ALIVE);
http.getClient().setConnectionTimeout(3600000);
}
private static TLSClientParameters createTlsClientParameters(SSLSocketFactory sslFactory) {
TLSClientParameters tlsClientParameters = new TLSClientParameters();
tlsClientParameters.setSecureSocketProtocol("GostTLS");
tlsClientParameters.setDisableCNCheck(true);
tlsClientParameters.setCertAlias("40831728-1e8a-4986-b7fd-19ddd92c1618");
tlsClientParameters.setCipherSuites(Arrays.asList("TLS_CIPHER_94", "TLS_CIPHER_2001", "TLS_CIPHER_2012", "SSL3_CK_GVO_KB2", "SSL3_CK_GVO"));
tlsClientParameters.setSSLSocketFactory(sslFactory);
return tlsClientParameters;
}
Отредактировано пользователем 9 ноября 2015 г. 16:00:49(UTC)
| Причина: Не указана
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 22.10.2015(UTC) Сообщений: 42 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Moscow
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 22.10.2015(UTC) Сообщений: 42 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Moscow
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,005 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 715 раз в 675 постах
|
Если ключ 40831728-1e8a-4986-b7fd-19ddd92c1618, то он есть в логах. Странно, что сертификат клиента не был запрошен (нет, например, cert authorities от сервера). |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 22.10.2015(UTC) Сообщений: 42 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Moscow
|
С стороны сервиса стоит IIS сервер который ожидает от моего сервиса сертификат.
Я могу как то сам, без запроса с их стороны, послать сертификат ?
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close