повторное использование соединения

Тема в разделе "WASM.CRYPTO", создана пользователем bi0s269, 19 фев 2008.

  1. bi0s269

    bi0s269 New Member

    Публикаций:
    0
    Регистрация:
    2 ноя 2007
    Сообщения:
    68
    есть 2 приложения которые часто связываються по протоколу TCP.
    для установки связи используется трехшаговая x509 аутентификация т.е.
    используется RSA, приложения устанавливают сеансовый ключ, инициализируют HMAC.
    поскольку соединения происходят часто и не на долго то повторение процедуры аутентификации
    нагружает сервера.

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

    Joes New Member

    Публикаций:
    0
    Регистрация:
    5 янв 2008
    Сообщения:
    98
    Как ты определишь второй раз, что оригинальный клиент пересоединился? Разве что по шифрованному каналу какой то секрет передашь.
     
  3. bi0s269

    bi0s269 New Member

    Публикаций:
    0
    Регистрация:
    2 ноя 2007
    Сообщения:
    68
    по IP адресу определяю клиента. посылаю тестовое сообщение. учитывая что трафик шифруется симетричным алгоритом + проверяется HMAC каждого пакета, то из успешного обмена тестовыми сообщениями можно сделать вывод что клиент тот что надо! или я не прав?
     
  4. bi0s269

    bi0s269 New Member

    Публикаций:
    0
    Регистрация:
    2 ноя 2007
    Сообщения:
    68
    может ктото выскажет еще мнения??
    хочу реализовать такую схему в своей программе
    но боюсь что я не учел какойто момент...
     
  5. Joes

    Joes New Member

    Публикаций:
    0
    Регистрация:
    5 янв 2008
    Сообщения:
    98
    Угу, можно сделать вывод что клиент тот, если смог "опознать" тестовое сообщение.
     
  6. bi0s269

    bi0s269 New Member

    Публикаций:
    0
    Регистрация:
    2 ноя 2007
    Сообщения:
    68
    дело в том что для каждого сообщения вычисляется HMAC значение которого зависит от всех предидущих сообщений + от сеансового ключа который устанавливается при процедуре аутентификации. поэтому "левый" клиент не может знать текущий HMAC и ключ из этого делается вывод что этот клиент проходил ранее процедуру аутентификации... хотя может в чемто я и не прав...