Попробую кратко описать механизьм... Ключи создаются так, что при кодировании одним из них(например закрытым "private") данные можно расшифорвать вторымключем(например открытым "public"). Соответсственно сервер когда посылает данные клиенту шифрует их privat (закрытым) ключем, клиент получив данные расшифровует их public (открытым) ключем. потом происходит обратная процедура. Клиен при передаче данных кодирует их своим public-ключем, а сервер декодирует своим private-ключем. вот и все..
Открытый ключ сервер посылает клиенту в начале сессии, если его не было у клиента или он устарел..
Это в кратце, что б понят сам принцип ...
|