🌐 DA

Modulo-beregner

Modulær addition, subtraktion, multiplikation, eksponentiering, invers. Lær modulære operationer, der bruges i RSA-kryptografi.

Basal modulo Modulær addition Modulær subtraktion Modulær multiplikation Modulær eksponentiering Modulær invers
GUIDE

Laes mere

01

Grundlæggende om modulo-operationen

Modulo-operationen (a mod m) er resten, når a divideres med m. Eksempel: 17 mod 5 = 2. Bruges dagligt i klokkeberegninger (24-timers format) og ugedagsberegninger. Vigtig i programmering til omslutning af array-indekser og hash-funktioner.

02

Modulær addition og multiplikation

Modulær addition: (a + b) mod m. Modulær multiplikation: (a × b) mod m. For at undgå overflow i beregninger med store tal skal du tage modulo ved hvert trin. Eksempel: (12 + 8) mod 5 = 20 mod 5 = 0.

03

Modulær eksponentiering - Hurtig beregning

Når du beregner a^b mod m, bliver tallene hurtigt for store ved direkte eksponentiering. Med den hurtige eksponentieringsalgoritme, som bruger divide-and-conquer, kan beregningen klares på O(log b) tid. Kernoperation i RSA-kryptering.

04

Modulær invers - Udvidede Euklidiske algoritme

Den modulære invers er x, så (a × x) mod m = 1. Findes kun, når a og m er indbyrdes primiske. Beregnes på O(log m) tid med den udvidede Euklidiske algoritme. Bruges i dekryptering og brøkberegninger.

05

RSA-kryptografi og modulære operationer

RSA er et kryptosystem med offentlig nøgle baseret på modulær eksponentiering og invers. Kryptering: c = m^e mod n, dekryptering: m = c^d mod n. Bygger på, at det er svært at faktorisere n, produktet af to store primtal.

Ofte stillede sporgsmal

Hvad sker der, når jeg beregner modulo med et negativt tal?
Konventionerne for negativ modulo varierer mellem sprog, men denne beregner følger den matematiske definition, hvor resultatet altid er mellem 0 og m-1. Eksempel: -7 mod 5 = 3.
Hvad hvis jeg indtaster 0 som modulus (m)?
Division med nul er ikke defineret, så en modulus på 0 kan ikke beregnes. Modulus m skal være et positivt heltal.
Hvornår findes der ikke en modulær invers?
En modulær invers findes kun, når a og m er indbyrdes primiske, altså når deres største fælles divisor er 1. Hvis både a og m for eksempel er lige, findes der ingen invers.
Hvorfor er en hurtig algoritme nødvendig til modulær eksponentiering?
Når eksponenten vokser, bliver a^b astronomisk stor, og direkte beregning bliver upraktisk. Hurtig eksponentiering (divide-and-conquer) anvender modulo ved hvert trin for at holde tallene små og beregner resultatet i O(log b) tid.
Hvor bruges modulær aritmetik i praksis?
Den driver bucket-indeksering i hash-tabeller, cyklisk planlægning (ugedage, klokkeslæt), kryptering/dekryptering i RSA og andre systemer med offentlig nøgle samt kontrol af checksummer som ISBN-kontrol.