Russian Qt Forum
Ноябрь 24, 2024, 00:50 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: SSL генерация сертификата и ключа  (Прочитано 5134 раз)
kibsoft
Хакер
*****
Offline Offline

Сообщений: 625


Просмотр профиля WWW
« : Январь 27, 2010, 16:20 »

Прочитал документацию, но не могу понять:
Код:
serverSocket->setPrivateKey("server.pem");
serverSocket->setLocalCertificate("server.pem");
Откуда брать эти файлы? С помощью OpenSSL генерировать?
Если можно, опишите пожалуйста кратко, что нужно для установления соединения через QSslSocket.
Записан

http://kibsoft.ru - Download the Qt Media Encoding Library here

The apps that were written using QtMEL:
http://srecorder.com - Screen recording software
kibsoft
Хакер
*****
Offline Offline

Сообщений: 625


Просмотр профиля WWW
« Ответ #1 : Январь 27, 2010, 16:42 »

Нашел на сайте нокии как делать Улыбающийся
http://doc.trolltech.com/solutions/4/qtsslsocket/sslguide.html
Записан

http://kibsoft.ru - Download the Qt Media Encoding Library here

The apps that were written using QtMEL:
http://srecorder.com - Screen recording software
kibsoft
Хакер
*****
Offline Offline

Сообщений: 625


Просмотр профиля WWW
« Ответ #2 : Январь 27, 2010, 21:58 »

Не буду создавать новую тему, а задам вопросы прямо здесь.
Есть чат с выделенным сервером, разумно ли использовать SSL соединение между сервером и клиентом?
2) сертификат и ключ одни на всех клиентов?
3) Использование самоподписного сертификата безопасно?
Записан

http://kibsoft.ru - Download the Qt Media Encoding Library here

The apps that were written using QtMEL:
http://srecorder.com - Screen recording software
kibsoft
Хакер
*****
Offline Offline

Сообщений: 625


Просмотр профиля WWW
« Ответ #3 : Январь 28, 2010, 01:15 »

Я тут один тусуюсь в этой теме) Вот отвечаю себе(может кому еще пригодится):
1)разумно, даже нужно, чтобы защитить информацию от перехвата
2)да, сертификат и ключ генерируются на хост(сайт) и применяются для всех клиентов
3)В принципе безопасно, но только для тестовых целей...или например для локальной сети..

Столкнулся с проблемой - клиент не хотел принимать сертификат, т.к. он самоподписной(self-signed), решается вызовом ignoreSslErrors () или ignoreSslErrors ( const QList<QSslError> & errors ).
Для второго случая в мануале такой коммент:
Цитировать
This is an overloaded function.

This method tells QSslSocket to ignore only the errors given in errors.

Note that you can set the expected certificate in the SSL error: If, for instance, you want to connect to a server that uses a self-signed certificate, consider the following snippet:

 QList<QSslCertificate> cert = QSslCertificate::fromPath(QLatin1String("server-certificate.pem"));
 QSslError error(QSslError::SelfSignedCertificate, cert.at(0));
 QList<QSslError> expectedSslErrors;
 expectedSslErrors.append(error);

 QSslSocket socket;
 socket.ignoreSslErrors(expectedSslErrors);
 socket.connectToHostEncrypted("server.tld", 443);
Multiple calls to this function will replace the list of errors that were passed in previous calls. You can clear the list of errors you want to ignore by calling this function with an empty list.

This function was introduced in Qt 4.6.

See also sslErrors().
Записан

http://kibsoft.ru - Download the Qt Media Encoding Library here

The apps that were written using QtMEL:
http://srecorder.com - Screen recording software
zeonET
Гость
« Ответ #4 : Май 19, 2010, 18:11 »

спасибо, помогла ваша тема и то что вы сами здесь тусовались Подмигивающий
а то я уже начал что-то химичить с помощью
Цитировать
KeyMan
A tool for managing keys, certificates, certificate revocation lists (CRLs), and the respective repositories for storing and retrieving these items.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.049 секунд. Запросов: 23.