Podpis elektroniczny

Szyfrowanie z kluczem publicznym i podpis elektroniczny - Algorytmy: zakres rozszerzony (Python)

Podpis działa odwrotnie: właściciel **podpisuje** wiadomość kluczem prywatnym (s = m^d mod n), a każdy może **sprawdzić** podpis kluczem publicznym (s^e mod n musi dać m). Podpisu nie podrobi nikt, kto nie zna d, a zmiana wiadomości po podpisaniu wychodzi przy sprawdzeniu. W praktyce podpisuje się skrót wiadomości.

e, d, n = 17, 2753, 3233
message = 1234
signature = pow(message, d, n)
print("podpis:", signature)
print("podpis poprawny:", pow(signature, e, n) == message)
print("zmieniona wiadomość:", pow(signature, e, n) == 1235)

Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.

Wszystkie lekcje kursu Algorytmy: zakres rozszerzony·Zaloguj się, aby zapisać postęp na koncie.