4를 31로 바꾼 암호, 다시 4로 돌아오는 이유

작은 수로 RSA의 거듭제곱·나머지 계산을 확인해요. 가상 메시지 4를 33으로 나눈 나머지 체계에서 31로 바꾸고, 다른 지수로 계산해 원래 숫자로 되돌립니다.

밝은 책상의 노트북과 빈 격자

이미지: AI 생성 · 수학 이야기

암호문은 계산하기 쉽지만 원문을 되찾는 규칙은 따로 가진다는 공개키 암호의 아이디어를 작은 수로 살펴봅시다. 이 글은 실제 통신에 쓰는 암호가 아니라 거듭제곱과 나머지를 손으로 확인하는 RSA의 축소 계산이에요. 메시지 m은 0부터 32까지의 정수라고 정해요.

3×11=33을 나누는 수로 사용해요. 두 소수의 값에서 (3−1)(11−1)=20을 구하고, 지수 e=3과 d=7을 골라요. 두 지수의 곱 21은 20으로 나누었을 때 나머지가 1입니다. 암호화는 m의 세제곱을 33으로 나눈 나머지를 기록하는 규칙이에요.

m=4를 넣으면 4³=64이고, 64를 33으로 나눈 나머지는 31이므로 암호문 c=31입니다. 복호화는 이 c의 일곱제곱을 같은 33으로 나눈 나머지를 구하는 규칙이에요.

317≡(−2)7=−128≡4(mod33)31^7\equiv(-2)^7=-128\equiv4\pmod{33}

마지막 나머지가 4인 까닭은 −128=−4×33+4이기 때문이에요. 이 메시지의 왕복 계산이 확인돼요. 큰 정수를 그대로 전개하지 않고 중간 단계에서 나머지로 바꾸어도 같은 결과를 얻어요. 작은 33의 인수는 누구나 쉽게 찾으므로 비밀 통신의 안전성을 보인 예는 아니에요. 서로 짝이 되는 두 계산을 확인하는 데 목적이 있어요.

참고한 수학 개념: Plus · Maths in a minute: Cryptography.

이 글의 생활 상황과 계산 예시는 수학 이야기에서 새로 구성했습니다.

이 글 공유하기

개인정보 및 방문 통계 안내