소수와 합성수 (Prime and Composite Numbers)

수학
한 줄 정의: 소수는 1과 자기 자신만을 약수로 갖는 1보다 큰 자연수이고, 합성수는 그 외에 다른 약수를 하나 이상 더 갖는 자연수입니다.

쉽게 풀면

사탕 7개를 친구들에게 남김없이 똑같이 나눠주려고 합니다. 1명에게 다 주거나 7명에게 1개씩 주는 것 말고는 딱 떨어지게 나눌 방법이 없습니다. 이렇게 "1과 자기 자신"으로만 나누어떨어지는 수가 바로 소수(2, 3, 5, 7, 11...)입니다. 반면 사탕 12개는 2명, 3명, 4명, 6명에게도 똑같이 나눠줄 수 있는데, 이런 수를 합성수라고 합니다. 즉 합성수는 소수 몇 개를 곱해서 만들어낼 수 있는 수이고(12 = 2×2×3), 이렇게 소수들의 곱으로 쪼개는 것을 소인수분해라고 합니다.

왜 중요한가

소수는 정수론의 가장 근본적인 연구 대상이자, 암호학에서 안전한 암호체계를 설계하는 데 핵심 재료로 쓰입니다. 큰 수를 소인수분해하기 어렵다는 성질을 이용한 공개키 암호 방식이 대표적이며, 수학 교육 분야에서도 소수·합성수 개념 이해가 이후 배우는 약수·배수, 분수 연산의 토대가 되기 때문에 초중등 수학교육 연구에서 자주 다루어집니다.

논문에서는 이렇게 쓰입니다

"중학교 1학년 학생 120명을 대상으로 소수와 합성수 개념에 대한 이해도를 사전-사후 검사로 측정한 결과, 소인수분해 성취도가 유의하게 향상되었다."

이 문장은 소수·합성수·소인수분해가 그 자체로 연구 대상이 되는 수학 교육 논문의 예시로, 학생들이 이 기초 개념을 얼마나 잘 이해하는지를 측정하고 있다는 뜻입니다.

"제안된 암호 알고리즘은 큰 합성수를 두 소수의 곱으로 분해하기 어렵다는 성질에 기반하여 안전성을 확보한다."

정보보안 분야에서는 소인수분해의 계산적 어려움을 암호체계의 안전성 근거로 사용하는 경우가 많습니다.

"1부터 N까지의 소수를 판별하기 위해 에라토스테네스의 체 알고리즘을 구현하고 시간 복잡도를 분석하였다."

전산학 논문에서는 소수를 찾거나 판별하는 알고리즘 자체의 효율성을 비교·분석하는 대상으로 다루기도 합니다.

조금 더 깊게 보면

모든 자연수는 소수들의 곱으로 유일하게 나타낼 수 있다는 산술의 기본정리가 소인수분해의 이론적 근거이며, 이 성질 덕분에 최대공약수·최소공배수 계산이나 암호학의 여러 알고리즘이 성립합니다. 실제 계산에서는 수가 커질수록 소인수분해가 급격히 어려워지는 반면 소수 판별 자체는 상대적으로 효율적인 알고리즘이 알려져 있어, 이 비대칭성이 여러 암호 프로토콜 설계의 바탕이 됩니다.

주의할 점

1은 소수도 합성수도 아닙니다. 소수의 정의가 "약수가 정확히 2개(1과 자기 자신)"인 수인데, 1은 약수가 1개뿐이라 이 조건에 맞지 않기 때문입니다. 소인수분해는 이후 최대공약수와 최소공배수를 구하는 데도 기초가 됩니다.

관련 용어