Ответы пользователя по тегу Криптография
  • Как работает цифровая подпись открытым ключом, что именно шифруется на подписанном файле?

    @res2001
    Developer, ex-admin
    При шифровании файл шифруется публичным ключом, содержащимся в сертификате. Для расшифровки нужен парный приватный ключ. Шифруется весь файл. На выходе процедуры новый файл с зашифрованным содержимым старого файла.
    При подписании файла используется приватный ключ. Приватный ключ в сертификате не содержится. Для проверки подписи у проверяющего должен быть парный приватному ключу сертификат, содержащий публичный ключ. Подпись может добавляться к файлу в конец или может быть в виде отдельного файла (обычно с расширением sig) - открепленная подпись.

    Про DKIM нормальное общее описание есть в вики, в т.ч. указано что конкретно подписывается. Тут подписание идет некоторых полей письма, а не всего письма. Подпись добавляется как одно из полей письма в формате SMTP.
    Ответ написан
    1 комментарий
  • Как и с помощью чего создать защищенный обменник?

    @res2001
    Developer, ex-admin
    Шифровать данные и трафик (канал) вместе нет особого смысла - двойное шифрование сильно безопасности не прибавит. Достаточно будет реализовать один из вариантов шифрования.
    Если сервер "безопасный", т.е. он находится в надежном месте, к нему нет доступа у недоверенных людей, то шифровать данные нет смысла. Используйте ВПН для доступа серверу - весь трафик, передаваемый по ВПН, будет шифрованным. Данные не ограничиваются только файлами - будет шифроваться любой трафик передаваемый по ВПН. Шифрование будет происходить автоматически, пользователю нужно будет только установить ВПН соединение.
    Если сервер не безопасный (например VPS в облаке), то есть смысл шифровать данные, канал при этом может быть открытый. Для шифрования файлов можно использовать что угодно, например архиватор с поддержкой стойкого шифрования, или тот же PGP и т.п. В этом случае от пользователя потребуются дополнительные действия по шифрованию/расшифрованию файлов. А так же нужно организовать и поддерживать инфраструктуру открытых ключей (PKI) для того что бы клиенты могли генерировать ключи.
    Ответ написан
  • С точки зрения закона РФ, правомерно ли использование openssl для ЭЦП и шифрования?

    @res2001
    Developer, ex-admin
    На сколько я знаю существуют сертифицированные версии openssl с ГОСТовскими алгоритмами. На вскидку примеров не приведу, но в свое время находил в инете такую информацию. Гуглите.

    Тут еще вопрос в другом - наша крипта, даже если реализует одни и те же алгоритмы не совместима друг с другом (по крайней мере несколько лет назад эта проблема была). Поэтому вам придется использовать то ПО, которое использует ЦС и ваш контрагент. Боюсь, что выбора практически нет. Хотя, возможно, что-то уже сдвинулось в этом отношении.
    Ответ написан
  • Есть ли альтернативы у CryptoPro?

    @res2001
    Developer, ex-admin
    CryptoPro CSP сам по себе это просто криптопровайдер. Он дает возможность другим средствам использовать ГОСТовую криптографию.
    Для веба нужно еще установить cryptopro browser plug-in, вроде он бесплатный.
    Если нужно шифровать файлы в командной строке, то нужно использовать соответствующую утилиту (cryptcp) - для винды предоставляется за отдельные деньги.
    Для использования пользователями можно юзать КриптоАРМ - графический интерфейс для крипто операций стороннего производителя.
    Или можете использовать CryptoPro CSP в своем приложении - можно использовать CryptoAPI для работы с CryptoPro CSP.
    Ответ написан
    4 комментария
  • Есть ли бесплатное решение для интеграции с криптоАрм?

    @res2001
    Developer, ex-admin
    КриптоАРМ достаточно толковый пользовательский продукт , стоит не больших денег.
    Легко встраивается в проводник, после чего можно из проводника в несколько кликов шфровать/расшифровывать файлы. Так же есть КриптоАРМ SDK, что позволяет встраивать функционал в свои приложения.

    Но КриптоАРМ это не разработка КриптоПро, к КриптоАРМу вы должны отдельно купить КриптоПро CSP.
    Сам по себе КриптоАРМ - это только удобная оболочка для крипто функций.

    В собственном приложении вы можете использовать только функции Microsoft Crypto API и через него использовать криптографию от КриптоПро (и любую другую совместимую) и вам не нужен КриптоАРМ.

    У КриптоПро есть утилита командной строки для выполнения криптографических операций (не бесплатная). С ее помощью и пачкой скриптов можно легко автоматизировать процесс без участия человека.
    Ответ написан
    2 комментария
  • Как преобразовать слово в двоичный код?

    @res2001
    Developer, ex-admin
    Переводить никуда не надо, как я писал выше все и так уже в двоичном представлении хранится.
    Для определения значений битов в байте используйте битовые операции.
    Например:
    (val & 0x80) - вернет истину, если старший бит в val выставлен в 1 и ложь в противном случае.

    Но лучше берите сразу байтами и делайте градацию из 256 цветов :-) тогда значение прочитанного байта будет индексом в массиве цветов. Работать будет значительно быстрее, чем возня с битами. Именно так используется таблица ASCII при выводе текстовой информации на экран.
    Ответ написан
    Комментировать
  • Какие возможные варианты подписи документов онлайн, ЭЦП пользователя, по ГОСТ Р 34.10-2012?

    @res2001
    Developer, ex-admin
    Если вам уже разрабы крипто-библиотеки сказали, что есть ограничения на размер файла, то почему вы думаете, что тут скажут что-то другое?

    Делите файл на куски (можно с помощью архиватора делать многотомные архивы) и подписывайте каждую часть отдельно. Правда на приемной стороне нужно будет это собирать обратно. Если та сторона вам не подконтрольна, то этот вариант отпадает и остается только одно - уменьшать документ до приемлемых размеров.
    Ответ написан
    Комментировать
  • Какие способы защиты от шитпостинга существуют для децентрализованных систем?

    @res2001
    Developer, ex-admin
    Шифрование трафика между участниками чата.
    Ответ написан
    Комментировать
  • Как реализовать сложения последовательности бит по модулю 2^32?

    @res2001
    Developer, ex-admin
    Что в питоне уже xor отключили?
    https://docs.python.org/3/reference/expressions.ht...
    Ответ написан
    Комментировать
  • В чем отличите PGP от OpenSSL?

    @res2001
    Developer, ex-admin
    На сколько я знаю PGP не поддерживает сертификаты X509, а openssl поддерживает ... хотя может уже и поддерживает. Последнюю версию Symantec PGP щупал - 10, на тот момент GPG был вообще какой-то сырой.
    Ответ написан
    Комментировать
  • Использование ЭЦП КриптоПРО?

    @res2001
    Developer, ex-admin
    Наиболее простой путь - это купить утилиту командной строки cryptcp, стоит не дорого.
    Ответ написан
    Комментировать
  • Как безопасно передать openvpn ключи от сервера клиенту, что будет если ключи словят?

    @res2001
    Developer, ex-admin
    Правильно как раз ключи генерировать на клиенте, в центр сертификации передается запрос на сертификат, ЦС возвращает сертификат, клиент передает сертификат на сервер. ЦС и сервер в общем случае это разные сущности, и, если по взрослому, это даже разные организации.
    Ответ написан
    Комментировать
  • Можно ли использовать одну пару ключей и для шифрования и для ЭЦП?

    @res2001
    Developer, ex-admin
    Когда вы шифруете сообщение, то шифруете его на открытом ключе получателя.
    А в случае ЭЦП используется ваш закрытый ключ, т.к. вы ставите свою ЭЦП. Получатель при этом для проверки ЭЦП использует ваш открытый ключ.
    В любом случае, обычно для обмена двух людей, должна быть пара ключей у одного и у другого. Хотя в вырожденном случае - отправка сообщений самому себе, можно обойтись и одним ключом.
    Некоторые СКЗИ имеют разные ключи для ЭЦП и шифрования. Например Верба.
    Ответ написан
    Комментировать
  • Возможные уязвимости в представленном алгоритме обмена между ключом и замком через радиоканал?

    @res2001
    Developer, ex-admin
    Что может помешать любому другому неавторизованному девайсу начать процесс аутентификации? Незнание SALT1,2,3?
    Ответ написан
  • Как зашифровать документ так, чтобы к нему могла обращаться другая программа?

    @res2001
    Developer, ex-admin
    Ваша программа должна сама иметь подобный функционал, сторонними средствами такого не добиться.
    Например, в случае использования зашифрованного архива - при открытии файла из из него, файл будет извлечен во временный каталог, откуда любая другая программа может этот файл взять, пока вы редактируете его в ворде.
    Если вы не программист и не пишите свою программу, то лучший вариант - это использование TrueCrypt или аналогов.
    Ответ написан
    Комментировать
  • Простая программа клиптозащиты файлов?

    @res2001
    Developer, ex-admin
    PGP Desktop от сумантека или бесплатный аналог GPG.
    PGP Desktop можно юзать бесплатный функционал (это как раз шифрование файлов), все остальное платное. Интерфейс прост, самое сложно сгенерировать ключи и обменяться открытыми ключами, сам процесс шифрования/расшифрования делается в 2 клика. Чтоб скачать нужно зарегистрироваться на сайте.
    GPG, когда я его последний раз видел, был не особо "юзер френдли", что сейчас, не знаю.
    Ответ написан
    Комментировать
  • Как безопасно передать пароль?

    @res2001
    Developer, ex-admin
    Можно реализовать что-нибудь типа MSCHAP2, завернутого в SSL с современным алгоритмом хэширования. При обмене сообщениями либо использовать тот же канал SSL, либо в процессе аутентификации вырабатывать ключи шифрования и все сообщения шифровать.
    Ответ написан
    Комментировать