Цифровият подпис или схемата за цифров подпис е вид асиметрична криптография. За съобщения, изпратени по несигурен канал, добро изпълнение на алгоритъма за цифров подпис е това, което кара получателя да вярва, че съобщението е изпратено от заявения подател, и да се довери на съобщението.

Цифровите подписи са равностойни на традиционните саморъчни подписи в много отношения; правилно въведените цифрови подписи са по-трудни за копиране от саморъчните. Цифровият подпис се реализира с помощта на криптографията. Цифровите подписи могат да осигурят и потвърждение, което означава, че подписващият не може успешно да твърди, че не е подписал дадено съобщение, като същевременно твърди, че частният му ключ остава в тайна. Цифровите подписи се използват редовно в САЩ, европейските страни и Индия както в държавните, така и в частните служби. В Индия сертификатът, наречен Digital Signing Certificate (DSC), се използва широко за електронно подаване на документи, свързани с бизнеса, за подаване на данъчни декларации и др.

Цифровите подписи често се използват за реализиране на електронни подписи - по-широк термин, който се отнася до всички електронни данни, които имат значение на подпис, но не всички електронни подписи използват цифрови подписи. В някои държави, включително в САЩ, и в Европейския съюз електронните подписи могат да имат правно значение. В Индия електронният подпис няма правно значение, но цифровият подпис има правна валидност и се счита за правно валиден подпис съгласно Закона за информационните технологии от 2000 г.

Как работи цифровият подпис

На високо ниво цифровият подпис комбинира хеш-функция и асиметрична криптография (криптография с публичен и частен ключ). Основните стъпки са:

  • Генериране на ключове: подписващият създава двойка ключове — частен (секретен) и публичен. Частният ключ се пази в тайна; публичният се разпространява.
  • Хеширане: преди подписване документът (или съобщението) се обработва чрез криптографска хеш-функция (напр. SHA-256) и се получава кратък фиксиран по размер хеш (съвкупност от данни).
  • Подписване: частният ключ криптира (или преобразува) този хеш, получавайки цифров подпис. Целта е да се подпише самият хеш, а не целия документ (за ефективност).
  • Проверка: получателят използва публичния ключ на изпращача, за да разгърне подписа (възстанови хеша). Той също така пресмята хеша на полученото съобщение и сравнява двата хеша. Ако съвпадат и сертификатът е валиден, подписът е автентичен и документът не е променян.

Кои компоненти гарантират доверието

  • Сертификат на публичния ключ: издава се от удостоверяващ орган (CA) и свързва публичния ключ със самоличността на притежателя (име, имейл, организация и т.н.).
  • Инфраструктура за публични ключове (PKI): включва CA, центрове за регистрация, списъци за отзоваване (CRL) и протоколи като OCSP за проверка на статуса на сертификатите.
  • Времеви марки (timestamps): добавени към подписа, позволяват да се докаже кога точно е направен подписът и помагат за дългосрочна валидност, дори след изтичане на сертификата.

Алгоритми и стандарти

Често използвани алгоритми за цифрови подписи: RSA, DSA, ECDSA и модерни варианти като Ed25519. Хеш-функции: семейства SHA-2 и SHA-3. Популярни формати и стандарти за подписване и обмен:

  • CMS/PKCS#7 (Cryptographic Message Syntax) — за електронни подписи и криптографски съобщения.
  • XMLDSig — за подписване на XML документи.
  • PAdES — стандарт за подписване на PDF файлове.
  • JWS (JSON Web Signature) — за подписване на JSON обекти и уеб приложения.

Правна валидност и категории подписи

Важно е да се прави разлика между термини:

  • Електронен подпис — широк термин за всякакви електронни данни, които указват съгласие или идентичност (напр. сканиран подпис, отметка в чекбокс).
  • Цифров подпис — криптографски механизъм, който често осигурява по-висока степен на сигурност и автентикация.

В различните юрисдикции законодателството третира подписите по различен начин. Например:

  • В Европейския съюз регламентът eIDAS дефинира три нива: електронен подпис, усъвършенстван електронен подпис (AdES) и квалифициран електронен подпис (QES). QES има еквивалентна сила на ръчен подпис при спазване на изискванията.
  • В САЩ правната рамка за електронни подписи включва ESIGN и UETA, които признават електронни подписи при определени условия.
  • В Индия цифровият подпис е признат и регулиран чрез Закона за информационните технологии (IT Act) от 2000 г.; сертификатът Digital Signing Certificate (DSC) се използва широко.

Приложения и сценарии на използване

  • Електронно управление и подаване на документи (данъчни декларации, обществени поръчки).
  • Електронни договори и юридически споразумения.
  • Подписване на софтуер (code signing) и актуализации, за да се гарантира автентичност на източника.
  • Защита на имейл комуникация (S/MIME) и обмен на документи (PDF подписи).
  • Банкови транзакции, цифрови фактури и електронни документи в бизнеса.

Проблеми, ограничения и добри практики

Цифровите подписи осигуряват силна защита, но зависят от правилната имплементация и управление на ключовете. Основни рискове и препоръки:

  • Проблем с частния ключ: ако частният ключ бъде компрометиран, подписите могат да бъдат фалшифицирани. Използвайте хардуерни токени, смарт карти или HSM (Hardware Security Module) и подсигурете резервиране и процедури за отзоваване.
  • Отзоваване на сертификати: проверявайте статус чрез CRL или OCSP преди да приемете подпис.
  • Актуални алгоритми: използвайте съвременни алгоритми и адекватни дължини на ключовете; следете развитието на квантовите компютри и бъдещи изисквания за квантово-устойчиви алгоритми.
  • Времеви марки и дългосрочна валидност: при критични документи добавяйте надеждни времеви марки и внедрявайте механизми за дългосрочна валидация (LTV).
  • Ясни политики и процедури: организации трябва да имат политика за управление на ключове, издаване и отзоваване на сертификати и обучение за служителите.

Как да проверите цифров подпис

  • Уверете се, че удостоверяващият орган (CA) е доверен и сертификатът води до доверен корен (trust anchor).
  • Проверете дали сертификатът не е изтекъл и не е отзован (CRL/OCSP).
  • Потвърдете, че хешът, възстановен от подписа, съвпада с хеша на полученото съдържание.
  • За юридическа употреба убедете се, че подписът отговаря на изискванията на приложимото законодателство (напр. QES по eIDAS).

Цифровите подписи са мощен инструмент за осигуряване на автентичност, цялост и немалимитуемост на електронни данни. При правилна употреба и поддържане на надеждна PKI инфраструктура те значително улесняват дигиталните процеси и повишават доверието в електронния обмен на информация.