Cyfrowy podpis powstaje poprzez poddanie częsci tekstu wiadomości, którą chcemy podpisać działaniu specjalnej funkcji mieszającej, w wyniku której generowany jest skrót wiadomości. Skrót ten ma postać krótkiego kodu właściwego tylko danemu fragmentowi tekstu.
Następnie skrót zostaje zaszyfrowany – podpisany kluczem prywatnym nadawcy. To właśnie ta postać danych umieszczona w dokumencie funkcjonuje jako elektroniczny podpis.
Z jednej strony gwarantuje, iż dokument nie został zmodyfikowany (funkcja mieszająca daje ten sam rezultat), z drugiej – że nikt nie podszył się pod nadawcę (ponieważ daje się odczytać tylko jej kluczem publicznym). Na koniec program zapisuje podpisaną wersję pliku, która zwiera informację o programie podpisującym oraz znaczniki końca i początku podpisanego pliku.
Weryfikacja podpisu przez adresata wymaga uruchomienia specjalnego oprogramowania, które odszyfrowuje zhaszowaną wartość podpisu za pomocą publicznego klucza nadawcy. Program ten oblicza dla pliku wartość tej samej funkcji haszującej, która została użyta przez nadawcę. Obliczona w ten sposób wartość funkcji haszującej jest porównywana z odszyfrowaną wcześniej wartością funkcji haszującej. Jeżeli obie wartości są identyczne, to program informuje o autentyczności podpisu nadawcy.
Cyfrowy podpis powstaje w oparciu o kryptografię niesymetryczną i może służyć do:
- potwierdzania nadawcy dokumentu (upewnienia się, że nikt się pod niego nie podszywa)
- upewnienia się, co do integralności dokumentu (czy nie był przez nikogo modyfikowany po drodze)
- zidentyfikowania nadawcy (nie może się wyprzeć autorstwa dokumentu)



