Cryptology Academy · Урок

Подписи в реальном мире: подпись кода и электронной почты

Изучите S/MIME, PGP и способы подписания программного обеспечения для распространения

Урок 4 из 413 шагов

«Подписи в реальном мире: подпись кода и электронной почты» — бесплатный урок Cryptology Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cryptology Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cryptology Academy содержит 4 уроков всего.

Добро пожаловать

Цифровые подписи защищают распространение программного обеспечения и электронную почту. В этом уроке мы подробно разберём, как на практике работают подписание кода и подписание электронной почты.

Подписание кода в macOS

Сертификаты Apple для разработчиков содержат открытый ключ RSA/ECDSA. Xcode подписывает каждое приложение: signature = Sign(SHA256(app_bundle), dev_private_key). macOS Gatekeeper проверяет подпись перед запуском.

Authenticode в Windows

Windows Authenticode подписывает исполняемые файлы PE. Подпись встраивается в двоичный файл. Перед выполнением Windows проверяет цепочку подписей относительно хранилища доверенных корневых сертификатов Microsoft.

Подписание APK (Android)

Приложения Android подписываются с помощью хранилища ключей разработчика. Подпись APK v2/v3 охватывает весь файл. Google Play требует использования Play App Signing — Google хранит ключи загрузки и подписи.

Подписание пакетов npm

npm теперь поддерживает аттестации происхождения: каждый пакет содержит подписанное GitHub Actions OIDC утверждение о происхождении SLSA. Проверяется конвейер сборки, а не только личность издателя.

Подписанные коммиты Git

git config --global user.signingkey YOUR_KEY_ID git commit -S -m 'signed commit' Подписанные коммиты содержат подпись PGP/GPG хеша коммита. GitHub показывает значок «Verified».

Подписание электронной почты S/MIME

S/MIME подписывает электронные письма с помощью сертификатов X.509 от CA (Comodo, DigiCert и других). Outlook и Apple Mail автоматически проверяют подписи. Подпись охватывает заголовки и тело письма.

PGP/GPG для электронной почты

PGP использует сеть доверия вместо CA. Создайте пару ключей и загрузите открытый ключ на сервер ключей. Получатели получают Ваш ключ и проверяют подпись. Этот подход широко используется в сообществах открытого кода.

Аутентификация электронной почты DKIM

DKIM подписывает заголовки исходящих писем закрытым ключом домена. Открытый ключ публикуется в DNS (записи TXT). Получающие серверы проверяют подпись, чтобы обнаружить подделку отправителя.

Подписи обновлений программного обеспечения

Пакеты обновлений ОС содержат манифест, подписанный поставщиком. Перед применением: загрузите манифест, проверьте подпись, вычислите хеш каждого файла и сравните его с манифестом. Любое несовпадение — отклонить пакет.

Подписание образов Docker: Cosign

Sigstore/Cosign подписывает образы контейнеров ключами ECDSA, хранящимися в облачной системе KMS. Подписи хранятся в реестрах OCI. Контроллеры допуска Kubernetes могут требовать подписанные образы.

Быстрая проверка

Что DKIM проверяет в электронном письме?

Итоги

Подписание кода и электронной почты повсеместно опирается на цифровые подписи. Далее мы изучим PKI и центры сертификации — инфраструктуру доверия, лежащую в основе всего этого.
Можно начать бесплатно

Изучай Cryptology Academy с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
67
Уроки
261

Часто задаваемые вопросы

Урок «Подписи в реальном мире: подпись кода и электронной почты» бесплатный?

Да — полный текст урока «Подписи в реальном мире: подпись кода и электронной почты» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cryptology Academy, подпишись на CoddyKit PRO. Курс Cryptology Academy содержит 4 уроков всего.

Чему я научусь в уроке «Подписи в реальном мире: подпись кода и электронной почты»?

Изучите S/MIME, PGP и способы подписания программного обеспечения для распространения Ты практикуешь Cryptology Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Cryptology Academy?

Предыдущий опыт не требуется. Cryptology Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Подписи в реальном мире: подпись кода и электронной почты»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Cryptology Academy?

Да. Каждый урок Cryptology Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Что такое цифровая подпись
  2. Подписи RSA: создание и проверка
  3. Схемы подписей DSA и ECDSA
  4. Подписи в реальном мире: подпись кода и электронной почты
← Назад к Cryptology Academy