Фон: Я унаследовал встроенную систему на основе Linux, содержащую прокси-сервер SMTP и некоторые сумасшедшие ограничения, с которыми мне просто нужно жить. Он находится между SMTP-клиентом и сервером. Когда клиент SMTP подключается, прокси открывает соединение с сервером и передает данные клиента на сервер после обработки «на лету».Нашей электронной почты шифрование/подпись
Задача: мне нужно подписать и/или шифрование электронной почты на своем пути к серверу, используя стандартные методы ИПК и форматы S/MIME (см RFC2311, например). У меня есть доступ ко всем требуемым открытым ключам из соответствующих сертификатов.
дурацких ограничений (пожалуйста, просто принять их, так как они далеко за пределами моего контроля) :
- Я не могу хранить электронную почту; он должен должен быть обработан на лету.
- Я могу сделать шифрование локально с использованием открытых ключей, но я не могу получить доступ к закрытым ключам напрямую, что означает, что цифровая подпись должна выполняться «подписывающим устройством» через 9600 бит/с.
- Типичные сообщения электронной почты: десятки или сотни МБ. (Почтовый сервер и получатели могут обрабатывать эти размеры, единственная проблема - неприемлемая задержка при подписании.)
- Любой новый код должен быть быть в C, но это приемлемо, например, для передачи данных на стойку, (например нет временных файлов).
- Доставка в течение 14-21 дней.
Вопросы:
- Я надеялся найти утилиту с открытым исходным кодом или библиотеку, которая будет генерировать соответствующие заголовки MIME и шифровать/подписывать сгусток данных, но я не нашел что на Sourceforge, код Google, и т. д. Вы использовали тот, который вы могли бы порекомендовать?
- Я отчаянно надеялся найти RFC, который говорит, что допустимо хэш 100 Мбайт данных, а затем подписать хеш, поскольку это уменьшит узкое место 9600 бит/с. Но опять же, не повезло. Существует ли стандартная «ярлык» (RFC?), Совместимая с типичными почтовыми клиентами?
Спасибо за ваши мысли.
Спасибо, кафе, за ваше четкое и полное описание _exactly_, что мне нужно. Я смущен, чтобы сказать, что, знакомый с OpenSSL для управления сертификатами, я не думал проверять возможности S/MIME. Хотел бы я предложить +5! –