Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ei-grad/sts

Криптографический протокол Station-to-Station
https://github.com/ei-grad/sts

Last synced: 15 days ago
JSON representation

Криптографический протокол Station-to-Station

Awesome Lists containing this project

README

        

Криптографический протокол Station-to-Station
=============================================

Протокол Station-to-Station является двусторонним криптографическим протоколом
формирования общего ключа и взаимной аутентификации сторон.

Кратко, суть протокола можно описать так:

- Сначала производится формирование общего ключа по алгоритму Диффи-Хеллмана

- Затем стороны обмениваются сообщениями, зашифрованными с помощью этого ключа,
в которых содержатся 2 открытых ключа Диффи-Хеллмана (свой и полученный от
партнера), подписанные с помощью секретного ключа отправляющей стороны.

То есть, в протоколе используются две криптосистемы: одна — симметричная, для
шифрования передаваемых сообщений, и одна - ассиметричная, для подписи и
аутентификации сторон.

Можно выделить две формы этого протокола:

1. Базовая версия — параметры DH и публичный ключ партнера переданы обоим
сторонам заранее;

2. Полная версия — стороны обмениваются сертификатами, подписанными доверенной
третьей стороной, в которых содержатся публичные ключи и параметры DH.

О программме
------------

На основе библиотеки OpenSSL реализована базовая версия протокола с
использованием AES и RSA. Ключи и параметры DH должны храниться в формате PEM.

Ссылки
------

1. Authentication and Authenticated Key Exchanges (1992)
Whitfield Diffie, Paul C. Van Oorschot, Michael J. Wiener,
Designs, Codes and Cryptography, Volume 2, 1992
http://www.scs.carleton.ca/~paulv/papers/sts-final.pdf