* Modular multiplicative inverse * @param {Number} a - A coefficient * @param {Number} m - Modulos value * @return {Number} Return modular multiplicative inverse of coefficient a and modulos m
(a, m)
| 24 | * @return {Number} Return modular multiplicative inverse of coefficient a and modulos m |
| 25 | */ |
| 26 | function inverseMod(a, m) { |
| 27 | for (let x = 1; x < m; x++) { |
| 28 | if (mod(a * x, m) === 1) return x |
| 29 | } |
| 30 | } |
| 31 | |
| 32 | /** |
| 33 | * Argument validation |