본문 바로가기

암호학3

정수론(암호학) 정수론(Number theory): 수학의 한 분야로, 정수와 관련된 다양한 성질을 다루는 학문이다. 암호학에서는 특정 값을 나누는 나머지 연산이 높은 비중을 차지한다. 큰 지수를 가진 거듭제곱을 특정 값을 나눈 나머지 게산을 하는 연산, Python에서 pow 함수와 동일한 기능을 기능을 담당하는 연산은 대부분의 암호 체계나 전자 서명에서 사용된다. 최대공약수(GCD): 둘 이상의 주어진 수들에 대하여 공약수, 즉 모든 주어진 수들의 공통의 약수인 수들 중에서 가장 큰 값을 의미한다. 84와 102의 최대 공약수를 구해보자.84 = 2^2 x 3 x 7 이고, 102 = 2 x 3 x 17 이다. 각 소수 별로 공통된 더 작은 지수 만을 모아서 2 x 3 = 6임을 알 수 있다. 하지만, 이와 같은 방.. 2024. 6. 21.
현대 암호 현대의 암호 시스템은 2가지 성질을 따른다.혼돈(Confusion) : 암호문에서 평문의 특성을 알아내기 힘든 성질이다.확산(Diffusion) : 평문의 작은 변화가 암호문의 큰 변화로 이어지는 성질이다.케르크호프스의 원리 : 키를 제외한 시스템의 다른 모든 내용이 알려지더라도 암호체계는 안전해야 한다. 대칭키 암호 시스템(Symmetric key cryptosystem) : 송/수신자가 같은 키를 통해 암/복호화 하는 시스템이다. 2가지로 나뉜다.블록 암호(Block Cipher) : 평문을 정해진 크기의 블록 단위로 암호화하는 방식이다. 평문의 크기가 블록 크기의 배수가 아니여서 블록으로 균등하게 쪼갤 수 없으면, 평문 뒤에 데이터를 추가하는 패팅(Padding)을 수행한다.ex) AES, DES .. 2024. 6. 18.
고전 암호 고전 암호: 컴퓨터와 같은 고성능 연산 장치가 발명되기 전에 비교적 간단한 기계와 손 등으로 암/복호화를 수행하던 암호이다. 고전 암호는 일반적으로 2가지 방법으로 설계된다.치환(substitution) : 평문의 문자를 다른 문자로 바꾸는 것전치(transposition) : 평문 문자들의 위치를 바꾸는 것 치환 암호단일 문자 치환 암호 : 평문의 각 문자를 약속된 다른 문자로 치환하는 암호이며, 일대일 대응 관계이다.카이사르 암호 : 평문의 각 알파벳을 정해진 횟수만큼 다음 순서에 해당하는 알파벳으로 치환 평문 B는 오른쪽으로 3번 밀어내는 암호화 방식으로 E로 암호화 되며, E는 왼쪽으로 3번 밀어내는 방식으로     복호화 된다. (단, 'Z' 알파벳 다음은 'A'이다.) 여기서, 알파벳을 밀어낸.. 2024. 6. 18.