Tool to compute modular power. Modular Exponentiation (or power modulo) is the result of the calculus a^b mod n. It is often used in informatics and cryptography.

dCode is free and its tools are a valuable help in games, puzzles and problems to solve every day! You have a problem, an idea for a project, a specific need and dCode can not (yet) help you? You need custom development? Contact-me!

Tool to compute modular power. Modular Exponentiation (or power modulo) is the result of the calculus a^b mod n. It is often used in informatics and cryptography.

Answers to Questions

How to calculate a raised to power b modulo n?

It consists in an exponentiation followed by a modulus, but it exists optimized algorithms with big numbers to return a fast result without having to actually perform the calculation (called fast, thanks to mathematical simplifications).

Example: $$ 12^{34} \equiv 16 \mod 56 $$

The word power indicates the name of the operation, and exponent to indicate the operand.

What it the algorithm of powmod?

There are several algorithms, here is the shortest one in pseudocode:// pseudocode function powmod(base b, exponent e, modulus m) if m = 1 then return 0 var c := 1 for var a from 1 to e c := (c * b) mod m end for return c

How to solve for exponent with base and modulo?

This calculation is known as the discrete logarithm problem. Some solutions can be found by brute force but there is no trivial general solution.

Why modular exponentiation is limited to integers?

Calculus uses exponent and modulos that are generally defined over the natural number domain set N. It is possible to use rational numbers but it is not handled here.

Ask a new question

Source code

dCode retains ownership of the source code of the script Modular Exponentiation online. Except explicit open source licence (indicated Creative Commons / free), any algorithm, applet, snippet, software (converter, solver, encryption / decryption, encoding / decoding, ciphering / deciphering, translator), or any function (convert, solve, decrypt, encrypt, decipher, cipher, decode, code, translate) written in any informatic langauge (PHP, Java, C#, Python, Javascript, Matlab, etc.) which dCode owns rights will not be given for free. So if you need to download the online Modular Exponentiation script for offline use, check contact page !