Uprość swój przepływ pracy: Wyszukaj miniwebtool.
Dodaj
Strona główna > Matematyka > Zaawansowane działania matematyczne > Kalkulator Potęgowania Modularnego
 

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.

Kalkulator Potęgowania Modularnego
Przykłady:
OBLICZANIE
ab mod n
^
mod

Embed Kalkulator Potęgowania Modularnego Widget

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

🔐
Szyfrowanie RSA
Szyfrowanie i deszyfrowanie wiadomości przy użyciu potęgowania modularnego z iloczynami dużych liczb pierwszych
🤝
Diffie-Hellman
Protokół wymiany kluczy obliczający g^a mod p dla bezpiecznych wspólnych sekretów
Podpisy cyfrowe
DSA, ECDSA i EdDSA opierają się na potęgowaniu modularnym
🧪
Testowanie pierwszości
Testy Fermata i Millera-Rabina używają a^(n-1) mod n do sprawdzania pierwszości
🏆
Programowanie konkurencyjne
Arytmetyka modularna z szybkim potęgowaniem jest niezbędna w zadaniach konkursowych
🔗
Blockchain
Proof-of-work i haszowanie kryptograficzne opierają się na arytmetyce modularnej

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:

Krok 1: Zamień wykładnik \(b\) na postać binarną.
Krok 2: Zainicjuj wynik = 1 (lub = podstawa, jeśli pierwszy bit wynosi 1).
Krok 3: Dla każdego kolejnego bitu: Podnieś do kwadratu wynik (mod n). Jeśli bit wynosi 1, również pomnóż przez podstawę (mod n).
Krok 4: Po przetworzeniu wszystkich bitów, wynik to \(a^b \bmod n\).

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órOpis
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

  1. 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.
  2. 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).
  3. 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.
  4. Kliknij Oblicz: Kalkulator obliczy a^b mod n za pomocą potęgowania binarnego i natychmiast wyświetli wynik.
  5. 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.
  6. 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

Co to jest potęgowanie modularne?
Potęgowanie modularne oblicza (a^b) mod n — podnosi podstawę do wykładnika, a następnie wyznacza resztę z dzielenia przez moduł. Jest to podstawowa operacja w kryptografii klucza publicznego (RSA, Diffie-Hellman, ElGamal) i jest szeroko stosowana w teorii liczb, programowaniu konkurencyjnym i informatyce. Metoda potęgowania binarnego oblicza to efektywnie w czasie O(log b) mnożeń.
Jak działa potęgowanie binarne (potęgowanie przez kwadratowanie)?
Potęgowanie binarne zamienia wykładnik na jego reprezentację binarną, a następnie przetwarza każdy bit od lewej do prawej (lub od prawej do lewej). Dla każdego bitu podnosi aktualny wynik do kwadratu modulo n. Jeśli bit wynosi 1, dodatkowo mnoży wynik przez podstawę modulo n. Zmniejsza to liczbę mnożeń z b−1 (metoda naiwna) do maksymalnie 2×log₂(b), co umożliwia obliczenia z ogromnymi wykładnikami.
Dlaczego potęgowanie modularne jest ważne w kryptografii?
Szyfrowanie RSA oblicza c = m^e mod n dla szyfrowania i m = c^d mod n dla deszyfrowania, gdzie n jest iloczynem dwóch dużych liczb pierwszych, a wykładniki mogą mieć setki cyfr długości. Bez szybkiego potęgowania modularnego operacje te byłyby obliczeniowo niemożliwe. Bezpieczeństwo opiera się na fakcie, że operacja odwrotna (obliczanie logarytmu dyskretnego) jest uważana za obliczeniowo niewykonalną.
Czy podstawa może być ujemna?
Tak, ujemne podstawy są w pełni obsługiwane. Kalkulator najpierw redukuje podstawę modulo n (używając arytmetyki modularnej Pythona, która zawsze zwraca nieujemny wynik dla dodatniego n). Na przykład, (−3)^2 mod 7 = 9 mod 7 = 2. Wyniki ujemne nigdy nie wystąpią, ponieważ redukcja modularna zawsze daje wartość w zakresie [0, n−1].
Co się dzieje, gdy moduł wynosi 1?
Dowolna liczba całkowita modulo 1 równa się 0. Wynika to z faktu, że dzielenie dowolnej liczby całkowitej przez 1 daje tę samą liczbę z resztą 0. Zatem a^b mod 1 = 0 dla wszystkich wartości a i b. Kalkulator traktuje to jako przypadek specjalny.

Cytuj ten materiał, stronę lub narzędzie w następujący sposób:

"Kalkulator Potęgowania Modularnego" na https://MiniWebtool.com/pl/kalkulator-potegowania-modularnego/ 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.

Inne powiązane narzędzia:

Zaawansowane działania matematyczne:

Polecane narzędzia:

Kalkulator Kompatybilności MiłosnejKalkulator znaków słońca, księżyca i ascendentu 🌞🌙✨Kalkulator Znaku WenusGenerator Prawda czy WyzwanieKalkulator kompatybilności znaków KsiężycaLosowy generator zwierzątKalkulator przedziału ufności dla proporcjiLosowy Generator GrupRozdzielacz obrazówLosowy Generator Drabinki TurniejowejSortować alfabetyczniePrzelicznik stóp na metryGenerator losowych słów angielskichLosowy selektor filmówKalkulator Liczby ImieniaGenerator wykreślanekGenerator kodu Morse'aKonwerter ułamkowy czasuLosowy generator przedmiotówLosowanie listyMagiczna Kula 8Kalkulator PrzeciwprostokątnejKalkulator numerów aniołaKalkulator Obwodu ElipsyKalkulator testu chi-kwadratGenerator krzyżówekGenerator Losowych Urodzin⏱️ Kalkulator GodzinKalkulator prędkości jazdy na rowerzeKonwerter Radianów na StopnieRozdzielacz AudioKalkulator znaku księżycowegowyszukiwanie-adresu-MACKalkulator Dnia Roku - Który Dzień Roku Jest Dzisiaj?Kalkulator pochodnych cząstkowychKalkulator ciąży u psaKalkulator inflacji w USAZaawansowany analizator kompatybilności znaków zodiakuPrzelicznik cm na stopy i caleSelektor liczb losowychGenerator numerów loteriiGenerator losowej godzinyKalkulator liczby ścieżek życiaGenerator Losowych PosiłkówGenerator Rozkładu GaussaKonwerter szesnastkowy na dziesiętnyStatystyki Kanału YouTubeKalkulator nachylenia i stopniaKalkulator Czasu TrwaniaKalkulator podwójnych całekAnalizator adresów MACGenerator losowych kart kredytowychJaki jest mój szczęśliwy numer?Kalkulator przedawkowania kofeinyLosowy Generator KolorówCyfrowy Kalkulator DuszyGenerator losowych datKonwerter stóp i cali na centymetryKalkulator Zarobków na TikTokuRzut kostkąKalkulator schodówKonwerter gramów na funtyKalkulator Dokładnego Testu FisheraKalkulator BinarnySortuj LiczbyKalkulator zarobków YouTubeGenerator losowych krajówGenerator Małego Tekstu ⁽ᶜᵒᵖʸ ⁿ ᵖᵃˢᵗᵉ⁾Konwerter liczb rzymskichNotatnik OnlineKonwerter Czasu na DziesiętnyJaki jest mój zachodni znak zodiaku?Kalkulator Długości ŁukuKalkulator Prawa CosinusówKalkulator Wspolczynnika KorelacjiLooper MP3Kalkulator Numerów MistrzowskichLicznik Sylab📅 Kalkulator DatyKalkulator EBITDAKalkulator rozkładu dwumianowegoKalkulator ułamka zwykłego na dziesiętnyKalkulator ilości cyfrGenerator losowych ciągówKalkulator Trójkąta ProstokątnegoLosowy Selektor NazwKalkulator pochodnychKonwerter HTML na tekstGenerator szablonu rozwinięcia stożkaKalkulator kołowyKalkulator Względnego Odchylenia StandardowegoLista Lat PrzestępnychKalkulator CałekKalkulator współczynnika zmiennościKonwerter HEX na CMYKKonwerter Rozmiaru PierścionkaNazwij generator losowyWalidator XMLDetektor treści AIKalkulator Żwiru, Piasku i ZiemiKalkulator Wagi StaliKalkulator Momentu Dokręcania ŚrubKalkulator przepływu w rurachKalkulator Obciążenia BelkiKonwerter Dolar ZłotoKalkulator Prawdopodobieństwa OpcjiKalkulator Splitu AkcjiKalkulator ESPPKalkulator Odsetek za Zwłokę na FakturzeKalkulator Stawki Godzinowej FreelanceraKalkulator Leasing vs ZakupZaawansowany Kalkulator Podziału NapiwkuGenerator Listy PakowaniaKalkulator Jet LagKalkulator Budżetu PodróżyKalkulator Odległości LotuKalkulator Strat CiepłaKalkulator Kosztu Wytwarzania Energii ElektrycznejKalkulator Zużycia WodyKalkulator Kosztów Energii Urządzeń DomowychKalkulator Audytu Energetycznego DomuKalkulator ROI SolarnegoKalkulator Paneli SłonecznychKalkulator Kompostu (Stosunek C:N)Kalkulator Nawozu do TrawnikaKalkulator Dat PrzymrozkówKalkulator Ziemi do Podwyższonej GrządkiKalkulator Nawozu NPKKalkulator Wskaźnika Kiełkowania NasionKalkulator Bitrate WideoTranspozytor Tonacji MuzycznejLicznik BPM przez StukanieKalkulator rozmiaru pliku zdjęciaKalkulator Megapiksele na Rozmiar WydrukuKalkulator Współczynnika KadrowaniaKalkulator Trójkąta EkspozycjiKalkulator Zdolności Holowania PojazduKalkulator Leasingu SamochoduKalkulator 0–60 i Ćwierć MiliKalkulator Czasu Ładowania EVKalkulator Zasięgu EVKalkulator Spalania PaliwaKonwerter Rozmiarów UbrańWymiary Formatów PapieruKonwerter Jednostki AstronomicznejKonwerter Zużycia PaliwaKonwerter Szybkości Transferu DanychKonwerter Momentu Obrotowego (Nm, ft-lb, kgf-cm)Generator Tekstu PrzekreślonegoWizualizator Białych ZnakówKalkulator Czasu CzytaniaKalkulator Czasu WystąpieniaLicznik AkapitówLicznik ZdańKonwerter Tekstu na Binarny/Hex/ASCIIGenerator Obrazów Zastępczych Lorem PicsumGenerator Pliku .envGenerator komend GitKonwerter Kodów Kolorów (Wszystkie Formaty)Generator i Weryfikator Hashy BcryptGenerator JWTGenerator CSS GridKalkulator Całkowania NumerycznegoKalkulator Transformaty ZKalkulator Szybkiej Transformaty Fouriera (FFT)Kalkulator Iloczynu TensorowegoKalkulator Wykładniczej MacierzyKalkulator Postaci Normalnej JordanaKalkulator Pierścieni i CiałKalkulator Rzędu w Teorii GrupSolver Układów Równań RóżniczkowychKalkulator Równania BernoulliegoKalkulator Metody EuleraKreślarka Pola Kierunków i NachyleńSolver Równań Różniczkowych Drugiego RzęduSolver Równań Różniczkowych Pierwszego RzęduSolver Problemu Stabilnych MałżeństwKalkulator Przepływu w Sieci (Maksymalny Przepływ)Walidator Grafu PlanarnegoSprawdzanie Ścieżki HamiltonaSolver Problemu Komiwojażera (TSP)Solver Programowania LiniowegoKalkulator Włączeń i WyłączeńSolver Zależności RekurencyjnychKalkulator Macierzy SąsiedztwaKalkulator Sortowania TopologicznegoKalkulator Kolorowania GrafówSymulator Bramek LogicznychSolver Tablicy Karnaugha (K-Map)Upraszczacz Algebry Boole’aKalkulator Funkcji PodziałuKalkulator Pierwiastka CyfrowegoSprawdzacz Liczb FibonacciegoKalkulator ułamków egipskichKalkulator Funkcji MöbiusaWeryfikator Hipotezy GoldbachaTest Liczb Pierwszych Mersenne’aWyszukiwarka Liczb Pierwszych BliźniaczychSprawdzacz Liczb ZaprzyjaźnionychSprawdzacz Liczb DoskonałychKalkulator Potęgowania ModularnegoKalkulator Permutacji z PowtórzeniamiKalkulator Wielkości EfektuKalkulator Ryzyka WzględnegoKalkulator Ilorazu SzansKalkulator Tabeli KontyngencjiKalkulator Korelacji Rangowej SpearmanaKalkulator Rozkładu BetaKalkulator Rozkładu WeibullaKalkulator Rozkładu WykładniczegoKalkulator Rozkładu GeometrycznegoKalkulator Rozkładu Ujemnego DwumianowegoKalkulator Rozkładu HipergeometrycznegoKalkulator Testu F i Rozkładu FKalkulator Twierdzenia BayesaKalkulator Wielomianu CharakterystycznegoKalkulator Potęgi MacierzyKalkulator Dekompozycji CholeskiegoKalkulator Rozkładu QRKalkulator Diagonalizacji MacierzyKalkulator Wzory CrameraKalkulator Przestrzeni KolumnowejNull Space CalculatorKalkulator Kąta Między WektoramiKalkulator Wektora JednostkowegoKalkulator Długości WektoraKalkulator Iloczynu WektorowegoKalkulator Iloczynu SkalarnegoKalkulator Mnożenia MacierzyKalkulator Macierzy OdwrotnejKalkulator RREF (Postać Schodkowa Zredukowana)Kalkulator Metody NewtonaKalkulator Macierzy JakobianuKalkulator Całki PowierzchniowejKalkulator Całki KrzywoliniowejKalkulator RotacjiKalkulator DywergencjiKalkulator Gradientu WielozmiennowyKalkulator Optymalizacji (Rachunek Różniczkowy)Kalkulator Pochodnych PowiązanychKalkulator Chwilowego Tempa ZmianKalkulator Średniego Tempa ZmianKalkulator Sumy Szeregów NieskończonychKalkulator Testu Zbieżności SzeregówKalkulator Szeregów PotęgowychKalkulator Szeregu MaclaurinaKalkulator Reguły L'HospitalaKalkulator Całki NiewłaściwejKalkulator Reguły SimpsonaKalkulator Reguły TrapezówKalkulator Sumy RiemannaKreślarz Krzywych ParametrycznychKalkulator Powierzchni ObrotowejKalkulator Objętości Bryły ObrotowejKalkulator Odległości Geometria WspółrzędnychKalkulator Wzoru HeronaKalkulator Stycznej do OkręguKalkulator Dwusiecznej KątaKalkulator Okręgu WpisanegoKalkulator Okręgu OpisanegoKalkulator Odległości OrtodromicznejKalkulator Odległości 3DKalkulator TorusaKalkulator Ściętego StożkaKalkulator Pola Wielokąta NieregularnegoKalkulator Wielokąta ForemnegoIdentyfikator Przekroju StożkowegoKalkulator HiperboliKalkulator ParaboliKalkulator Rozwinięcia DwumianowegoGenerator Trójkąta PascalaKalkulator Notacji Iloczynowej (Notacja Pi)Kalkulator Notacji Sigma (Sumowanie)Kalkulator Twierdzenia o Pierwiastkach WymiernychKalkulator Reguły Znaków KartezjuszaKalkulator Linii Równoległych i ProstopadłychKalkulator Równania ProstejKonwerter Postaci Ogólnej na KierunkowąKalkulator Formy Punkt-NachylenieRozwiązywacz Układu Równań NieliniowychRozwiązywanie Równań WymiernychRozwiązywanie Równań LiterowychRozwiązywacz Równań TrygonometrycznychRozwiązywanie Równań WykładniczychKalkulator Równań LogarytmicznychKalkulator Równania Czwartego StopniaKalkulator Równania SześciennegoKalkulator SzacowaniaKonwerter Liczby na UłamekGenerator Liczenia ze SkokiemKalkulator Ceny JednostkowejKalkulator Funkcji Sufitu i PodłogiKalkulator Wartości BezwzględnejWyszukiwarka Wzorców LiczbowychGenerator Wykresu Wartości PozycyjnejKalkulator Kolejności Działań PEMDASKalkulator Dodawania i Odejmowania PisemnegoKalkulator Mnożenia PisemnegoGenerator Tabliczki Mnożenia🎮 Konwerter Waluty Gry🎲 Kalkulator Prawdopodobieństwa Dropu🎰 Kalkulator Pity Gacha⚔️ Kalkulator DPS🎮 Konwerter Czułości Gier❄️ Kalkulator Dnia Śnieżnego🚚 Kalkulator Kosztów Przeprowadzki🔍 Sprawdzacz Plagiatu📷 OCR / Obraz na Tekst📈 Kreator Wykresów Liniowych🥧 Kreator Wykresów Kołowych📊 Kreator Wykresów Słupkowych🔊 Generator Tonów🖱️ Licznik Kliknięć⬛ Kalkulator Proporcji Ekranu🌍 Kalkulator Śladu Węglowego👙 Kalkulator Rozmiaru BiustonoszaKalkulator Rozmiaru OponKalkulator Kosztów Paliwa💧 Kalkulator Punktu Rosy🌡️ Kalkulator Indeksu Cieplnego🌬️ Kalkulator Odczuwalnej Temperatury Wiatru⏰ Budzik Online⏰ Kalkulator Karty Czasu Pracy📅 Kalkulator Różnicy Dat🕐 Konwerter Czasu Wojskowego⏱️ Stoper Online⏱️ Timer Odliczania🌐 Konwerter Stref CzasowychKalkulator DywanówKalkulator Muru OporowegoKalkulator Doboru HVACKalkulator IzolacjiKalkulator Kostki BrukowejKalkulator ZbrojeniaKalkulator DrewnaKalkulator PowierzchniKalkulator Mnożenia KrzyżowegoKalkulator Podsumowania Pięciu LiczbKalkulator PercentylaKalkulator Rozkładu NormalnegoKalkulator Wartości pKalkulator ProporcjiKalkulator Uzupełniania KwadratuKalkulator ZaokrąglaniaKalkulator Dzielenia PisemnegoLicznik Znaków Twitter/XLosowanie komentarzy YouTubeEkstraktor tagów YouTubePobieracz Miniatur YouTubeLosowy Generator Postaci RPG