Реализовано 2 приложения: клиент и сервер. Сервер берет сообщение, вычисляет его хэш (с помощью CRC64) и шифрует хэш алгоритмом RSA. После отправляет клиенту само сообщение, цифровую подпись и ключи для расшифрования. Клиент расшифровывает цифровую подпись, вычисляет хэш из сообщения и сравнивает их. Если они совпадают, цифровая подпись принимается. Язык исполнения С#, реализовано на сокетах.
ВАЖНО! Все алгоритмы реализованы самостоятельно! Встроенные криптографические функции языка С# НЕ использовались!