Поскажите, как бы вы решили такую задачу без openssl, сертификатов, RSA и тп. (md5, sha1, и тп использовать можно)
Есть клиент и сервер. Клиенту необходимо скачать файл, и убедиться что он пришел от нужного сервера, не побился и не был подменен.
Соответственно клиент должен знать некий сферический открытый ключ сервера, а сервер передавать вместе с файлом некий ЭЦП.
Предположим код клиента доступен для чтения, поэтому нельзя использовать нечто вроде эцп=md5(md5(file)+открытый ключ), потому что подделать эцп для любого файла будет просто.
Если брать что то вроде эцп=md5(md5(file)+закрытый ключ), то непонятно как проверять его на клиенте, не передавая закрытый ключ.
Язык программирования не важен, просто интересно реально ли такое сделать (генерить открытый, закрытый ключ и эцп), не велосепедя RSA какой-нибудь.