Сделай это безопасным! Alek Silverstone Спецвыпуск: Хакер, номер #058, стр. 058-072-9 Теперь сам сформируй запрос на получение сертификата для personal.rsa и выдай сертификат. Теперь можно устанавливать соединение. Запустим два терминала. В первом наберем: openssl s_server –cert server.cert –key server.rsa –CAfile CA.cert –state –accept 31337 Эта команда откроет 31337-й порт и будет ждать коннекта. Параметр –state заставляет выводить все стадии протокола, о которых я говорил в разделе "Протокол SSL". Во второй терминалке наберем: openssl s_client –cert personal.cert -key personal.rsa –CAfile CA.cert –state –connect 127.0.0.1:31337 Вуаля! Соединение установлено, теперь можно отправлять сообщения – все они будут шифроваться (убедиться в этом можно указав параметр –debug). Обрати внимание на последнюю строчку: если там написано 0 (ok), значит, сертификат верен. На самом деле s_client и s_cerver используются только для проверки. Но, как ни крути, защищенный чат тет-а-тет мы получили :). Прежде чем переходить к практике, советую разобраться с теорией ;). Помни, что разработка криптографических средств регламентируется законами РФ. Более подробно об OpenSSL смотри в статье Тохи "101 прием работы с OpenSSL" в Х #02/2005. Если будешь использовать чужие реализации, то не забывай обновлять их - ошибки реализации выявляются не так уж редко. Подспорьем для изучения этой темы станет хорошая книжка. Только выбирай с умом :). Тщательно проверяй свои протоколы. Возможно, стоит поискать информацию по BAN-логике. |