[암호학] 3. 기초 대수학
집합 G(≠∅)위에 이항연산 ∗가 정의되어 있고, 즉 임의의 a,b∈G에 대해 a∗b∈G이고, 또한 임의의 a,b,c∈G에 대해 다음의 공리를 만족하면, ⟨G,∗⟩를 군(group)이라 하고, G는 연산 ∗에 대해 군을 이룬다고 한다.
(G1): (a∗b)∗c=a∗(b∗c)
(G2): 적당한 원소 e∈G가 존재해서 모든 a∈G에 대해 다음이 성립한다.a∗e=e∗a=ae를 G의 항등원(identity)이라고 한다.
(G3): 모든 a∈G에 대하여 a′∈G가 존재해서 다음이 성립한다.a∗a′=a′∗a=ea′를 a′를 a의 역원(inverse)이라 하고 a−1로 나타낸다.
교환법칙이 성립하는 군을 아벨군(abelian group)이라고 한다.
군 ⟨G,∗⟩에서 G가 무한집합이면 무한군(infinite group), 유한집합이면 유한군(finite group)이라고 한다. G가 유한군일 때 |G|(G의 원소의 개수)를 군 G의 위수(order)라고 한다.
군에서 혼동의 여지가 없을 때 연산을 생략하고 여러번 연산하는 것을 다음과 같이 나타낸다.an={aa⋯a(n>0)e(n=0)(am)−1(n=−m<0)군 ⟨G,∗⟩에서 G의 부분집합 H(≠∅)가 G의 연산 ∗에 대해 군을 이루면, 즉 ⟨H,∗⟩가 군이면, H를 G의 부분군(subgroup)이라 하고 H≤G 또는 G≥H로 나타낸다.
군 G의 부분집합 H에 대하여 다음은 서로 동치이다.
(a) H는 G의 부분군이다.
(b) a,b∈H이면 ab∈H이고 a−1∈H이다.
(c) a,b∈H이면 ab−1∈H이다.
군 G의 임의의 원소 a∈G에 대하여⟨a⟩={ai|i∈Z}={⋯,a−2,a−1,e,a,a2,⋯}일 때 ⟨a⟩는 군 G의 부분군이고, 이 부분군 ⟨a⟩를 a에 의해 생성된 순환부분군(cycle subgroup)이라고 한다.
군 G의 적당한 원소 a∈G에 대해 G=⟨a⟩이면, G를 순환군(cyclic group)이라 하고, a를 G의 생성원(generator)이라고 한다. G가 유한군일 때 a∈G에 대하여 ar=e를 만족하는 최소의 정수 r을 a의 위수(order)라고 한다.
군 G의 원소 a의 위수가 r일 때 다음이 성립한다.
(a) 임의의 n∈Z에 대하여 an=e이면 r|n이다.
(b) s,t∈Z에 대하여 as=at일 필요충분조건은 s≡t(modr)이다.
(c) 임의의 n∈Z에 대하여 an의 위수는 ngcd(n,r)이다.
(d) gcd(n,r)=1일 필요충분조건은 an의 위수가 r이다.
라그랑주 정리(Lagrange theorem) G가 유한군이면 다음이 성립한다.
(a) G의 임의의 부분군 H에 대하여 |H|는 |G|의 약수이다.
(b) 임의의 a∈G에 대하여 |G|=n일 때 an=e이고 따라서 a의 위수가 r이면 r|n이다.
집합 R에 덧셈 +와 곱셈 ⋅가 다음의 공리를 만족하면, ⟨R,+,⋅⟩을 환(ring)이라고 한다.
(R1): ⟨R,+⟩는 아벨군이다.
(R2): 곱셈에 대해 결합법칙이 성립한다.
(R3): a,b,c∈R일 때 다음이 성립한다.a⋅(b+c)=a⋅b+a⋅c(a+b)⋅c=a⋅c+b⋅c환 R에서의 덧셈에 대한 항등원은 0이다.
환 R이 곱셈에 대한 항등원인 단위원(unity) 1을 가지면 R을 단위원을 갖는 환(ring with unity)이라고 하고, 곱셈에 대해 교환법칙이 성립하면 R을 가환환(commutative ring)이라고 한다. 또한 R이 단위원을 갖는 가환환이고, 덧셈항등원 0을 제외한 모든 원소가 곱셈에 대한 역원을 가지면, 이 환 R을 체(field)라고 한다. 이때 곱셈에 대한 역원을 단원(unit)이라고 한다.
유리수 Q, 실수 R, 복소수 C는 체이다.
2 이상의 정수 n에 대해 Zn={0,1,...,n−1}의 임의의 원소 a,b에 대해 a+b, ab를 다음과 같이 정의하자.a+b=c(c∈Zn)⇔a+b≡c(modn)ab=d(d∈Zn)⇔ab≡d(modn)그러면 Zn은 단위원 1을 갖는 가환환이고, 이 환 Zn을 법 n에 대한 정수환이라고 한다.
가환환 Zn={0,1,...,n−1}에서 a∈Zn가 단원, 즉 곱셈에 대한 역원을 가질 필요충분조건은 gcd(a,n)=1이다.
위 정리로부터 소수 p에 대해 Zp의 0이 아닌 모든 원소들은 단원이고 따라서 Zp는 체이다.
단위원을 갖는 가환환 R의 mn개의 원소 aij(1≤i≤m,1≤j≤n)를 다음과 같이 직사각형 모양으로 나열한 것을 R위의 m×n행렬(matrix)이라고 한다.A=(a11a12⋯a1na21a22⋯a2n⋮⋮⋱⋮am1am2⋯amn)위의 행렬을 간단히 A=(aij)m×n로 나타낸다. 모든 성분이 0인 m×n행렬을 m×n영행렬이라고 하고 이 행렬을 Om×n 또는 간단히 O로 나타낸다.
가환환 R위의 m×n행렬 전체의 집합을 Mm×n(R)로 나타내고 이 집합 위에서 덧셈과 뺄셈, 스칼라곱은 다음과 같이 정의된다.(aij)m×n±(bij)m×n=(aij±bij)m×nα(aij)m×n=(αaij)m×n가환환 R 위의 m×n행렬 A=(aij)m×n과 n×r행렬 B=(bij)n×r에 대해 곱 AB는 다음과 같이 정의되는 m×r행렬이다.AB=(cij)m×r,(cij=n∑k=1aikbkj=ai1b1j+⋯+ainbbj)가환환 R 위의 m×n행렬 A=(ㅁij)m×n에 대해 각 (i,j)성분이 aji인 n×m행렬을 A의 전치(transpose)행렬이라 하고 이것을 AT로 나타낸다. 즉AT=(a11a21⋯an1a12a22⋯an2⋮⋮⋱⋮a1na2n⋯amn)이때 두 m×n행렬 A,B에 대하여(AT)T=A,(A+B)T=AT+BT이고, 또한 m×n행렬 A와 n×r행렬 B에 대해 (AB)T=BTAT이다.
가환환 R위의 n×n행렬을 n차 정사각행렬(square matrix)이라고 하고, 대각선의 모든 성분이 1이고 그 이외의 성분이 모두 0인 정사각행렬을 단위행렬이라고 하고 In으로 나타낸다.
정사각행렬은 행렬합과 행렬곱에 대해 환의 공리를 만족하므로 가환환 R위의 n차 정사각행렬들의 집합을 Mn(R)이라고 하면 Mn(R)은 환이다.
가환환 R위의 정사각행렬 A(≠O)∈Mn(R)에 대해 A−1∈Mn(R)가 존재해서A−1A=AA−1=In이면, A는 정칙행렬(nonsingular matrix), A−1를 A의 역행렬(inverse matrix)이라고 한다.
Mn(R)의 정칙행렬 전체의 집합을 GL(n,R)이라고 하면, GL(n,R)은 곱셈에 대해 군을 이루고, 이것을 n차 일반선형군(general linear group)이라고 한다.
A=(aij)n×n에 대해 A의 행렬식(determinant)을 정의할 수 있고, 2×2행렬에 대해서 다음과 같고,det행렬식은 다음의 성질들을 갖는다.\det I_{n}=1,\,\det AB=(\det A)(\det B)행렬 A=(a_{ij})_{n\times n}의 원소 a_{ij}에 대해 A의 i행과 j열을 제거한 행렬의 행렬식을 a_{ij}에서의 소행렬식(minor)이라고 하고, M_{ij}로 나타낸다. 또한 A_{ij}=(-1)^{i+j}M_{ij}를 a_{ij}의 여인수(cofactor)라 하고, 행렬\text{adj}A=(A_{ij})_{n\times n}^{T}=\det\begin{pmatrix}A_{11}&A_{12}&\cdots&A_{n1}\\A_{12}&A_{22}&\cdots&A_{n2}\\ \vdots&\vdots&\ddots&\vdots\\A_{1n}&A_{2n}&\cdots&A_{nn}\end{pmatrix}를 A의 수반(adjoint)행렬이라고 한다. 이때 다음이 성립한다.A(\text{adj}A)=(\text{adj}A)A=(\det A)I=\begin{pmatrix}\det A&0&\cdots&0\\0&\det A&\cdots&0\\ \vdots&\vdots&\ddots&\vdots\\0&0&\cdots&\det A\end{pmatrix}위의 사실로부터 A가 정칙행렬이기 위한 필요충분조건은 (\text{det}A)^{-1}가 존재하는 것이고, 이때 A^{-1}=(\det A)^{-1}\text{adj}A이다.
A\in M_{2}(R)이 다음과 같으면A=\begin{pmatrix}a&b\\c&d\end{pmatrix}\det A=ad-bc이므로 ad-bc\neq0일 때 역행렬을 갖고, 그 역행렬은 다음과 같다.A^{-1}=\frac{1}{ad-bc}\begin{pmatrix}d&-b\\-c&a\end{pmatrix}참고자료:
암호학과 부호이론, 박승안, 경문사
A First Course in Abstract Algebra 7th edition, Fraleigh, Addison-Wesley
'응용수학 > 암호학' 카테고리의 다른 글
[암호학] 6. 힐 암호, 폴리그-헬만 암호 (0) | 2020.10.14 |
---|---|
[암호학] 5. 아핀 암호, 치환 암호, 비즈네르 암호 (0) | 2020.10.13 |
[암호학] 4. 암호체계 (0) | 2020.10.12 |
[암호학] 2. 기초 정수론(2) (0) | 2020.10.10 |
[암호학] 1. 기초 정수론(1) (0) | 2020.10.09 |