Kalkulator Potęgowania Modularnego
Obliczaj potęgowanie modularne a^b mod n efektywnie, używając algorytmu binarnego potęgowania (szybkiego potęgowania). Wprowadź podstawę, wykładnik i moduł, aby uzyskać natychmiastowe wyniki z rozbiciem krok po kroku na metodę potęgowania i mnożenia, wizualizację rozkładu binarnego oraz kontekst kryptograficzny.
Blokada reklam uniemożliwia wyświetlanie reklam
MiniWebtool jest darmowy dzięki reklamom. Jeśli to narzędzie Ci pomogło, wesprzyj nas przez Premium (bez reklam + szybciej) albo dodaj MiniWebtool.com do wyjątków i odśwież stronę.
- Albo przejdź na Premium (bez reklam)
- Zezwól na reklamy dla MiniWebtool.com, potem odśwież
O Kalkulator Potęgowania Modularnego
Kalkulator potęgowania modularnego oblicza \(a^b \bmod n\) — podnosząc podstawę \(a\) do wykładnika \(b\) i wyznaczając resztę z dzielenia przez moduł \(n\). Wykorzystuje on algorytm potęgowania binarnego (zwany również szybkim potęgowaniem lub potęgowaniem przez kwadratowanie), który redukuje operację z \(O(b)\) mnożeń do zaledwie \(O(\log b)\). Jest to ten sam algorytm, który jest stosowany w rzeczywistych implementacjach kryptograficznych, takich jak RSA, Diffie-Hellman i ElGamal.
Zastosowania potęgowania modularnego
Jak działa algorytm potęgowania binarnego
Kluczową obserwacją jest to, że każdy wykładnik możemy rozłożyć na sumę potęg liczby 2, korzystając z jego reprezentacji binarnej. Na przykład, \(b = 13 = 1101_2 = 2^3 + 2^2 + 2^0\), więc \(a^{13} = a^{8} \times a^{4} \times a^{1}\).
Algorytm przetwarza cyfry binarne wykładnika od lewej do prawej:
Pseudokod
function modpow(base, exp, mod):
result = 1
base = base mod mod
while exp > 0:
if exp is odd: // bit wynosi 1
result = (result × base) mod mod
exp = exp >> 1 // przesunięcie w prawo (dzielenie przez 2)
base = (base × base) mod mod
return result
Kluczowe wzory
| Właściwość | Wzór | Opis |
|---|---|---|
| Potęgowanie modularne | \(a^b \bmod n\) | Reszta z dzielenia a^b przez n |
| Małe Twierdzenie Fermata | \(a^{p-1} \equiv 1 \pmod{p}\) | Dla liczby pierwszej p i nwd(a,p)=1 |
| Twierdzenie Eulera | \(a^{\phi(n)} \equiv 1 \pmod{n}\) | Dla nwd(a,n)=1, gdzie φ to funkcja Eulera |
| Złożoność metody binarnej | \(O(\log b)\) mnożeń | Maksymalnie 2·log₂(b) mnożeń modularnych |
| Szyfrowanie RSA | \(c = m^e \bmod n\) | Szyfrowanie wiadomości m kluczem publicznym (e, n) |
| Deszyfrowanie RSA | \(m = c^d \bmod n\) | Deszyfrowanie szyfrogramu c kluczem prywatnym d |
Jak korzystać z kalkulatora potęgowania modularnego
- Wprowadź podstawę (a): Jest to liczba, którą chcesz podnieść do potęgi. Może być dodatnia lub ujemna. Na przykład wpisz 7, aby obliczyć 7^256 mod 13.
- Wprowadź wykładnik (b): Musi to być nieujemna liczba całkowita. Reprezentuje potęgę. W zastosowaniach kryptograficznych może być bardzo duży (kalkulator obsługuje do 10^18).
- Wprowadź moduł (n): Musi to być dodatnia liczba całkowita. Jest to liczba, przez którą dzielisz, aby otrzymać resztę. W RSA jest to zazwyczaj iloczyn dwóch dużych liczb pierwszych.
- Kliknij Oblicz: Kalkulator obliczy a^b mod n za pomocą potęgowania binarnego i natychmiast wyświetli wynik.
- Obejrzyj animację: Naciśnij Odtwórz, aby zobaczyć, jak algorytm potęgowania binarnego wykonuje się krok po kroku. Każdy bit wykładnika jest przetwarzany po kolei, pokazując, czy algorytm wykonuje kwadratowanie, czy kwadratowanie i mnożenie.
- Przejrzyj śledzenie: Tabela krok po kroku pokazuje każde obliczenie pośrednie, a porównanie wydajności pokazuje, o ile szybsze jest potęgowanie binarne w porównaniu z naiwnym, powtarzanym mnożeniem.
Dlaczego potęgowanie binarne jest szybkie
Rozważmy obliczenie \(2^{1000} \bmod 13\). Naiwne podejście wymagałoby 999 mnożeń. Potęgowanie binarne zamienia 1000 na postać binarną (1111101000), która ma 10 bitów. Wymaga maksymalnie 9 potęgowań do kwadratu plus kilka mnożeń dla każdego bitu „1” — łącznie około 15 operacji. To o około 98,5% mniej operacji. W przypadku wykładników o skali kryptograficznej z setkami cyfr różnica jest astronomiczna: metoda binarna zajmuje tysiące operacji, podczas gdy metoda naiwna wymagałaby więcej operacji niż jest atomów we wszechświecie.
FAQ
Cytuj ten materiał, stronę lub narzędzie w następujący sposób:
"Kalkulator Potęgowania Modularnego" na https://MiniWebtool.com/pl// z MiniWebtool, https://MiniWebtool.com/
autor: zespół miniwebtool. Aktualizacja: 2026-04-16
Możesz także wypróbować nasz AI Rozwiązywacz Matematyczny GPT, aby rozwiązywać swoje problemy matematyczne poprzez pytania i odpowiedzi w języku naturalnym.