Комментарии 10
Конфигурационный файл у сервиса один, вследствие чего он получился достаточно большим, более 200 строчек.Этот конфигурационный файл на каком нибудь из общепринятых языков? Или собственная разработка или plain text или как вообще он структурирован?
интересна работа с шифрованием, почему не взяли готовые библиотеки для ГОСТ?
Основной упор был на быстродействие и работу с большими файлами. Ни одна из существующих библиотек не могла обеспечить нужной скорости и потребления памяти. Почему мы писали свое решение станет понятнее после прочтения второй части, которая выйдет на следующей неделе
А какие к примеру? OpenSSL? Ну давайте начнем с простого, она не сертифицирована как криптопровайдер, а в законодательстве закреплено использование сертифицированных криптопровайдеров. Ну и обычно ключи идут не в формате пригодном для использования в OpenSSL. Нужно их дополнительно конвертировать.
У Go отличные средства интеграции с С кодом. Зачем вы разделили части? Ну и дополнительно зачем для подписания передается сам файл если для создания подписи достаточно передавать хеш документа?
Хэш вычисляется по ГОСТ алгоритму. Видимо, для этого файл и передается, что хэш функция также написана на С
Я не про загрузку на сервер, а про переброс между go и С частью. Хеш при сохранении можно считать.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Как мы делали универсальный сервис подписания для инфраструктуры Госуслуг на C и GO. Часть 1