Division Theorem — 정수 나눗셈의 기초
암호학의 수학적 토대는 정수론에서 시작된다. Division Theorem은 그 출발점이다 — 임의의 양의 정수를 다른 양의 정수로 나누면, 몫과 나머지가 유일하게 결정된다. 이 단순한 사실이 모듈러 산술, GCD, RSA의 기초가 된다.
- 나누어 떨어짐 (Divisibility): a | b — b = ca인 정수 c가 존재할 때 a가 b를 나눈다
- 나누어 떨어짐의 성질: 선형 결합 성질, 추이 성질
- 소수 (Prime): 1, -1, p, -p만이 약수인 정수 p (p > 1)
- Division Theorem: a, b > 0에 대해 b = qa + r (0 ≤ r < a)을 만족하는 유일한 정수 q, r이 존재한다
앞선 글에서 NP-Complete와 계산 복잡도 이론을 다뤘다. 이 글부터는 암호학의 수학적 기반이 되는 정수론을 살펴본다. Division Theorem은 모듈러 산술과 GCD를 이해하기 위한 출발점이다.
나누어 떨어짐 (Divisibility)
정수 에 대해, 가 성립할 때 (나머지가 0일 때) 가 를 나누어 떨어뜨린다 고 하며, 다음과 같이 표기한다.
| 표현 | 의미 |
|---|---|
| a가 b를 나눈다 (a divides b) | |
| a는 b의 약수(divisor) | b = ca인 정수 c가 존재한다 |
| b는 a의 배수(multiple) | a로 나누어 떨어진다 |
나누어 떨어짐의 성질
임의의 정수 에 대해 다음 성질들이 성립한다.
기본 성질:
선형 결합 성질 (Linear Combination):
증명: , 로 놓으면:
는 정수이므로 .
추이 성질 (Transitivity):
증명: , 이다. 는 정수이므로 .
소수 (Prime)
정수 가 소수(Prime) 이면, 이고 의 약수는 뿐이다.
Division Theorem
양의 정수 a, b에 대해, 다음을 만족하는 유일한 정수 q, r이 존재한다.
b = qa + r (0 ≤ r < a)
q를 몫(quotient), r을 나머지(remainder)라 한다.
어떤 양의 정수든 다른 양의 정수로 나누면, 몫과 나머지가 딱 하나씩 정해진다는 뜻이다. 예를 들어 17을 5로 나누면 몫 3, 나머지 2 — 이 조합은 유일하다. 이 단순한 사실이 모듈러 산술과 RSA 암호의 출발점이다.
증명은 존재성 과 유일성 두 부분으로 나뉜다.
1. 존재성 (Existence)
에서 를 반복해서 빼면 반드시 음수가 된다. 이 되는 최솟값 를 잡으면:
로 정의하면:
| 확인 항목 | 근거 |
|---|---|
| 대입하면 ✓ | |
| 이므로 ✓ | |
| 에서 이므로 ✓ |
따라서 조건을 만족하는 정수 이 존재한다.
2. 유일성 (Uniqueness)
두 쌍 과 가 모두 조건을 만족하고 라 하자.
두 식의 차를 구하면:
이므로 우변은 이상이고 미만이다. 그런데 좌변 는 의 배수이고, 를 만족하는 의 배수는 뿐이다.
결론
- a | b는 b = ca인 정수 c가 존재함을 뜻한다. 나누어 떨어짐은 선형 결합 성질과 추이 성질을 만족한다.
- Division Theorem: 양의 정수 a, b에 대해 b = qa + r (0 ≤ r < a)을 만족하는 유일한 q, r이 존재한다.
- 존재성은 반복 빼기의 최소성 논리로, 유일성은 r₂ - r₁이 a의 배수이면서 a 미만임을 이용한 모순으로 증명한다.
- 이 정리는 모듈러 산술, GCD(유클리드 호제법), RSA 등 암호학 전반의 수학적 기반이 된다.
Greatest Common Divisor — 최대공약수와 유클리드 호제법 — GCD를 대수적으로 정의하고, Division Theorem을 기반으로 한 유클리드 호제법과 확장 유클리드 알고리즘(베주 항등식)을 엄밀하게 증명한다. 서로소의 성질과 GCD 정의의 동치 증명까지 다룬다.