[암호학] 12. 갈루아 체
체의 원소가 유한개이면, 그 체를 유한체(finite field)라고 한다.
체 F의 단위원(곱셈항등원) 1에 대하여n1=1+1+⋯+1⏟n개=0인 양의 정수 n이 존재할 때, 이러한 양의 정수 중 최소인 n을 체 F의 표수(characteristic)라 하고 charF로 나타내다.
위의 조건을 만족하는 양의 정수 n이 존재하지 않으면 charF=0으로 나타내고, 체 F를 표수가 0인 체라고 한다.
체 F의 표수가 p이면, p는 소수이고 모든 a∈F에 대하여 다음이 성립한다.pa=a+a+⋯+a⏟p개=0임의의 소수 p에 대하여 charZp=p이고,charZ=charQ=charR=charC=0이다.
체 F가 표수가 0인 체이면, 체 F는 유리수 체 Q와 동일한 부분체를 포함하고, 체 F가 유한체이면, 적당한 소수 p에 대하여 F의 표수는 p이고, F는 체 Zp와 동일한 부분체를 포함하며 적당한 양의 정수 n에 대하여 |F|=pn이다. 역으로 임의의 소수 p와 양의 정수 n에 대하여 pn개의 원소로 이루어진 유한체가 존재하고 이러한 유한체는 유일하다.
체 F의 원소 a0,a1,...,an과 부정원(indeterminate) x로 구성된 식f(x)=anxn+⋯+a1x+a0를 체 F위의 다항식(polynomial)이라고 하고, 이때 n을 f(x)의 차수(degree)라고 하고 degf(x)=n으로 나타낸다. 체 F위의 다항식 전체의 집합을 F[x]로 나타낸다. 즉F[x]={anxn+⋯+a1x+a0|a0,a1,...,an∈F,n∈N∪{0}}F[x]는 체 F위의 벡터공간이고 단위원을 가진 환이다. 가환환 F[x]를 체 F위의 다항식 환(polynomial ring)이라고 한다.
단위원을 가진 환 R의 덧셈 부분군 N이 모든 a,b∈R에 대하여aN⊂N,Nb⊂N이면, N을 환 R의 아이디얼(ideal)이라고 한다.
체 F위의 1차 이상의 다항식 f(x)가 자기보다 차수가 낮은 두 다항식의 곱으로 인수분해되지 않는 다항식을 기약다항식(irreducible polynomial)이라고 한다.
다항식 f(x)∈F[x]와 α∈F에 대하여 f(α)=0이면, α를 다항식 f(x)의 근(zero 또는 root)이라고 한다.
다항식 f(x)가 근을 갖지 않으면 f(x)는 기약다항식이다.
체 F와 E에 대해 F≤E이면, E를 F의 확대체(extension field)라고 한다.
크로네커 정리(Kronecker theorem). F를 체, f(x)∈F[x]라 하자. 그러면 F의 확대체 E와 α∈E가 존재해서 f(α)=0이다.
실수체 R위에서 p(x)=x2+1은 기약이므로 p(x)는 R에서 근을 갖지 않는다. 크로네커 정리로부터 i가 존재해서 p(i)=0, 즉 i2=−1인 i가 존재한다.a+bi(a,b∈R)과 같은 수를 복소수라 하고 이러한 수 전체의 집합을 C로 나타낸다. 즉C={a+bi|a,b∈R}이때(a+bi)+(c+di)=(a+c)+(b+d)i(a+bi)(c+di)=(ac−bd)+(ab+bd)i이므로 C는 덧셈과 곱셈에 대해 체를 이룬다. 복소수체 C를 R위의 벡터공간으로 보면 C는 {1,i}를 기저로 갖는 벡터공간이다.
임의의 소수 p와 양의 정수 n에 대하여 q=pn이라고 할 때 위와 같은 방법으로 체 Zp로부터 q개의 원소로 이루어진 갈루아 체(Galois field) GF(q)를 만들 수 있다.
실제로 체 Zp위의 적당한 n차 기약다항식p(x)=xn+cn−1xn−1+⋯+c1x+c0(c0,c1,...,cn−1∈Zp)에 대하여 p(α)=0인 원소 α를 도입해ξ=a0+a1α+⋯+an−1αn−1(a0,a1,...,an−1∈Zp)와 같은 원소 전체의 집합을 GF(q)로 나타내자. 즉GF(q)={a0+a1α+⋯+an−1αn−1|a0,a1,...,an−1∈Zp}이때 α는 다항식 p(x)의 근이므로 다음이 성립한다.αn+cn−1αn−1+⋯+c1α+c0=0αn=−c0−c1α−⋯−cn−1αn−1집합 GF(q)의 임의의 두 원소ξ=a0+a1α+⋯+an−1αn−1η=b0+b1α+⋯+bn−1αn−1에 대하여 ξ와 η의 합을ξ+η=(a0+b0)+(a1+b1)α+⋯+(an−1+bn−1)αn−1곱을ξη=(a0+a1α+⋯+anαn−1)(b0+b1α+⋯+bn−1αn−1)=d0+d1α+⋯+dn−1αn−1(dk=k∑l=1albk−l)이라 하자. 이와 같이 GF(q)위에 덧셈과 곱셈을 정의하면 GF(q)는 이 두 연산에 대해 체가 된다. 또한 GF(p)⊂GF(q)이고 GF(q)를 GF(p)위의 벡터공간으로 볼 수 있고 즉,GF(q)={a0+a1α+⋯+an−1αn−1|a0,a1,...,an−1∈GF(p)}다음이 성립한다.a0+a1α+⋯+an−1αn−1=0⇔a0=a1=⋯=an−1=0따라서 체 GF(q)를 GF(p)={0,1,...,p−1}위의 벡터공간으로 생각하면, GF(q)는 {1,α,...,αn−1}를 기저로 갖는 n차원 벡터공간이다.
*체 E가 체 F의 차수가 n인 유한확대체이고 F의 원소의 개수가 p이면, E는 pn개의 원소를 갖는다.
GF(2)={0,1}위에서 2차 다항식 p(x)=x2+x+1은 기약다항식이다. α를 p(x)의 근이라고 하면GF(22)={a0+a1α|a0,a1∈GF(2)}={0,1,α,1+α}이고α2+α+1=0,α2=−α−1이다. 갈루아 체 GF(22)에 대해 GF(22)∗=GF(22)−{0}이라 할 때GF(22)={1,α,α2},α3=1이므로 곱셈군 GF(22)∗는 α를 생성원으로 갖는 순환군이다.
임의의 소수 p와 양의 정수 n에 대하여 q=pn이라 하자. 갈루아 체 GF(q)에서 임의의 두 원소 ξ,η에 대해 다음이 성립한다.
(1) charGF(q)=p이고 따라서 pξ=0
(2) (ξ+η)p=ξp+ηp, (−ξ)p=−ξp, (ξη)p=ξpηp
(3) 모든 a∈GF(p)=Zp에 대하여 ap=a이다.
(4) 체 GF(p)위의 다항식 f(x)에 대하여 ξ가 f(x)의 근이면, ξp도 f(x)의 근이다.
증명:
(1) GF(q)에서 1∈GF(p)⊂GF(q)이므로 p⋅1=0이고 따라서 GF(q)의 표수는 p이므로 pξ=0이다.
(2) 임의의 ξ,η∈GF(q)에 대하여(\xi+\eta)^{p}=\xi^{p}+\binom{p}{1}\xi^{p-1}\eta+\cdots+\binom{p}{p-1}\xi\eta^{p-1}+\eta^{p}이고\binom{p}{1},\,...,\,\binom{p}{p-1}은 모두 p의 배수이므로, (1)에 의해 (\xi+\eta)^{p}=\xi^{p}+\eta^{p}이다. p가 홀수 소수이면 (-\xi)^{p}=-\xi^{p}이고 p=2이면(-\xi)^{p}=(-\xi)^{2}=\xi^{2}=-\xi^{2}이고 (1)에 의해 \xi^{2}=-\xi^{2}이므로 (-\xi)^{2}=(-\xi)^{2}=-\xi^{p}이다. 분명히 (\xi\eta)^{p}=\xi^{p}\eta^{p}이다.
(3) (2)에 의해 a\in GF(p)에 대하여 다음이 성립한다.a^{p}=(\underbrace{1+\cdots+1}_{a개})^{p}=1^{p}+\cdots+1^{p}=1+\cdots+1=a(4) 다항식 f(x)=a_{n}x^{n}+a_{n-1}x^{n-1}+\cdots+a_{1}x+a_{0}에 대하여 f(\xi)=0이면, 위의 (2), (3)에 의해 다음의 결과를 얻는다.\begin{align*}0&=\{f(\xi)\}^{p}=(a_{n}\xi^{n}+a_{n-1}\xi^{n-1}+\cdots+a_{1}\xi+a_{0})^{p}\\&=a_{n}^{p}(\xi^{p})^{n}+a_{n-1}^{p}(\xi^{p})^{n-1}+\cdots+a_{1}^{p}\xi^{p}+a_{0}^{p}\\&=a_{n}(\xi^{p})^{n}+a_{n-1}(\xi^{p})^{n-1}+\cdots+a_{1}\xi^{p}+a_{0}\\&=f(\xi^{p})\end{align*}임의의 소수 p와 양의 정수 n에 대하여 q=p^{n}이라 하자. 갈루아 체 GF(q)의 곱셈군 GF(q)^{*}=GF(q)-\{0\}는 위수가 q-1인 순환군이다.
한 원소 \alpha\in GF(q)의 위수가 q-1일 때 즉,GF(q)^{*}=\langle\alpha\rangle=\{1,\,\alpha,\,\alpha^{2},\,...,\,\alpha^{q-2}\},\,\alpha^{q-1}=1일 때 \alpha를 갈루아 체 GF(q)의 원시원소(primitive element)라고 한다.
GF(q)^{*}=\langle \alpha^{i}\rangle일 필요충분조건은 \text{gcd}(i,\,q-1)=1이므로 a^{i}가 체 GF(q)의 원시원소일 필요충분조건은 \text{gcd}(i,\,p-1)=1이다. 따라서 갈루아 체 GF(q)에는 \phi(q-1)개의 원시원소가 존재한다. 임의의 정수 i에 대하여(\alpha^{i})^{q-1}=(\alpha^{q-1})^{i}=1^{i}=1,\,(\alpha^{i})^{q}=(\alpha^{q})^{i}=\alpha^{i}이므로 GF(q)^{*}의 각 원소의 위수는 q-1의 약수이고 GF(q)^{*}의 원소는 x^{q-1}-1의 근이므로 따라서 GF(q)는 다항식 f(x)=x(x^{q-1}-1)=x^{q}-x의 근 전체의 집합이다.
임의의 소수 p와 양의 정수 n에 대하여 q=p^{n}이라 하자. 갈루아 체 GF(q)의 원소 \xi에 대하여 다음의 세 조건을 만족하는 체 GF(p)위의 다항식 g(x)를 체 GF(p)위의 \xi의 최소다항식(minimum polynomial)이라고 한다.
(i) \text{deg}g(x)\geq0
(ii) g(\xi)=0
(iii) 다항식 f(x)\in GF(p)[x]에 대하여 f(\xi)=0일 필요충분조건은 g(x)가 f(x)의 인수, 즉 g(x)|f(x)이다.
갈루아 체 GF(q)의 원시원소 \alpha의 체 GF(p)위에서의 최소다항식 p(x)를 체 GF(p)위의 원시다항식(primitive polynomial)이라고 한다.
최소다항식은 정의에 의해 n차 이하의 기약다항식(\because\,\xi\in GF(p))이고, 원시다항식은 체 GF(p)위의 n차 기약다항식이다.
임의의 소수 p와 양의 정수 n에 대하여 q=p^{n}이라 하자. 갈루아 체 GF(q)의 원소 \xi의 체 GF(p)위의 최소다항식을 g(x)라고 하면 다음이 성립한다.
(1) g(x)는 체 GF(p)위에서 x^{q-1}-1의 약수이다.
(2) \xi^{p}는 g(x)의 근이고 \xi^{p}의 최소다항식은 g(x)이다.
임의의 소수 p와 양의 정수 m에 대하여 q=p^{n}라 하고 갈루아 체 GF(q)의 원시원소 \alpha에 대해 p(x)를 p(\alpha)=0인 체 GF(p)위의 n차 원시다항식이라 하자. 그러면 다음이 성립한다.
(1) p(x)는 체 GF(p)위에서 x^{q-1}-1의 약수이다.
(2) 체 GF(q)에서 p(x)는 n개의 서로 다른 근\alpha,\,\alpha^{p},\,\alpha^{p^{2}},\,...,\,\alpha^{p^{n-1}}을 갖고, 이들은 GF(q)의 원시원소이며 그 최소다항식은 p(x)이다. 그리고 체 GF(p)위의 n차 원시다항식은 \displaystyle\frac{\phi(q-1)}{n}개 존재한다.
참고자료:
암호학과 부호이론, 박승안, 경문사
A First Course in Abstract Algebra, Fraleigh, Addison-Wesley
'응용수학 > 암호학' 카테고리의 다른 글
[암호학] 13. 갈루아 체를 이용한 암호체계 (0) | 2020.10.21 |
---|---|
[암호학] 11. 영지식 증명(2) (0) | 2020.10.19 |
[암호학] 10. 영지식 증명(1. 2차잉여, 르장드르 기호) (0) | 2020.10.18 |
[암호학] 9. 엘 가말 암호 (0) | 2020.10.17 |
[암호학] 8. RSA 암호체계 (0) | 2020.10.16 |