모듈러 연산은 나머지를 구하는 연산이다. (16 나누기 3은 몫이 5이고 나머지가 1이다. 16 = 3 * 5 + 1) 으로 표현한다. 프로그래밍에서는 퍼센트(%)로 표현하기도 한다.
더 예시를 들어보면, , 등이 있다.
계속 연산하다 보면 연산을 했을 때 항상 결과는 0 ~ n - 1 사이의 값을 갖는다. 이 결과값들을 집합 으로 나타내고 이 집합을 잉여류라고 한다.
모듈러 연산 중 합동(Congruence)이라는 특징이 있다.
이고 으로 결과값이 같을 때 으로 표현할 수 있다.
유명한 암호화 알고리즘 중 하나인 RSA 알고리즘에 모듈러 연산이 쓰인다.
그리고 이 있다고 하자. 그리고 와 서로소이고 를 만족하는 를 선택한다. 그러면 는 공개키가 된다. 를 만족하는 d가 있다면 는 개인키가 된다.
이를 해킹하려면 값을 알아야되는데 모듈러의 합동 성질때문에 한번에 예측하기가 어려워진다.