[25년 03차 / 문제풀이] 암호화 알고리즘
개념
☐ 개인키 암호화 기법 (Private Key Encryption)
● 개인 키 암호화 기법의 다른 명칭 : 대칭 암호 기법, 단일키 암호화 기법, 비밀키 암호화 기
● 개인 키 암호화 기법의 특징
- 동일한 키로 데이터를 암호화하고 복호화함
- 비밀키는 제 3자에게 노출시키지 않고 데이터베이스 사용 권한이 있는 사용자만 나누어 가짐
- 사용되는 키의 개수 : n(n-1) / 2 (n : 암호화 대상의 개수)
- 실행 속도가 빠르기 때문에 다양한 암호의 핵심 함수로 사용될 수 있음
● 개인 키 암호화, 복호화 방법 : 전위 기법, 대체 기법, 대수 기법, 합성 기법
● 개인 키 암호화 기법의 종류
- 블록 암호화 방식 : 한 번에 하나의 데이터 블록을 암호화하는 방식 - DES, SEED, AES, ARIA, IDEA
- 스트림 암호화 방식 : 평문과 동일한 길이의 스트림을 생성하여 비트 단위로 비트,바이트,단어들을 순차적으로 암호화하는 방식 - LFSR, RC4
☐ 공개키 암호화 기법(Public Key Encryption)
● 공개키 암호화 기법의 다른 명칭 : 비대칭 암호 기법
● 공개키 암호화 기법의 개념 : 서로 다른 키로 데이터를 암호화하고 복호화함
● 공개키 암호화 기법의 특징
- 데이터를 암호화할 때 사용하는 키(공개 키, Public Key)는 데이터베이스 사용자에게 공개하고 복호화할 때 키(비밀 키, Secret Key)는 관리자가 비밀리에 관리하는 방법
- 공개 키 암호화 기법에서 암호화 대상이 n개일 때 사용되는 키의 개수는 2n
- 자신만이 보관하는 비밀키를 이용하여 인증, 전자서명 등에 적용이 가능
● 공개키 암호화 기법의 종류 : RSA(Rivest Shamir Adleman) 기법
☐ 양방향 알고리즘
● SEED
- 1999년 한국인터넷진흥원(KISA)에서 개발한 블록 암호화 알고리즘
- 블록 크기 : 128비트
- 키 길이에 따라 128, 256으로 분류됨
● ARIA(Academy, Research Institute, Agency)
- 2004년 국가정보원과 산학연협회가 개발한 블록 암호화 알고리즘
- 학계, 연구기관, 정부의 영문 앞 글자로 구성됨
- 블록 크기 : 128비트
- 키 길이에 따라 128, 192, 256으로 분류됨
● DES(Data Encryption Standard)
- 1975년 미국 NBS에서 발표한 개인키 암호화 알고리즘
- DES를 3번 적용하여 보안을 더욱 강화한 3DES(Triple DES)도 있음
- 블록 크기 : 64비트
- 키 길이는 56비트
● AES(Advanced Encryption Standard)
- 2001년 미국 표준 기술 연구소(NST)에서 발표한 개인키 암호화 알고리즘
- DES의 한계를 느낀 NST에서 공모한 후 발표
- 블록 크기 : 128비트
- 키 길이에 따라 128, 192, 256으로 분류됨
● RSA(Rivest Shamir Adleman)
- 1978년 MIT의 라이베스트, 샤미르, 애들먼에 의해 제안된 공개키 암호화 알고리즘
- 큰 숫자를 소인수분해 하기 어렵다는 것에 기반하여 만들어짐
- 공개키와 비밀키를 사용하는데, 여기서 키란 메시지를 열고 잠그는 상수를 의미함
● ECC(Eliptic Curve Cryptography)
- 1985년 RSA 암호 방식의 대안으로 제안됨
- 이산대수 문제를 타원 곡선으로 옮겨 기밀성과 효율성을 높인 암호화 알고리즘
● Rabin
- 1979년 미하엘 라빈이 제안
- 소인수 분해의 어려움에 안전성의 근거를 둔 암호화 알고리즘
☐ 해시(Hash)
● 해시의 개념 : 잉의의 길이의 입력 데이터나 메시지를 고정된 길이의 값이나 키로 변환하는 것
● 해시의 특징
- 해시 알고리즘 : 해시 함수
- 해시 함수로 변환된 값이나 키 : 해시값, 해시키
- 데이터의 암호화, 무결성 검증을 위해 사용될 뿐만 아니라 정보보호의 다양한 분야에서 활용됨
● 해시 함수의 종류
- SHA 시리즈
+ 1993년 미국 국가안보국(NAS)이 처음 설계했으며, 미국 국립표준기술연구소(NST)에 의해 발표됨
+ 초기 개발된 SHA-0 이후 SHA-1이 발표되었고, 다시 SHA-2라고 불리는 SHA-224, SHA-256, SHA-384, SHA-512가 발표됨
- MD4
+ 1990년 R.Rivest에 의해 개발됨
+ MD5의 초기버전
+ 데이터 무결성 검증, 파일의 동일성 검증, 블록체인에 사용
+ 두 개의 서로 다른 입력이 동일한 해시값을 생성하는 충돌 공격에 취약
- MD5
+ 1991년 R.Rivest가 MD4를 대체하기 위해 고안한 암호화 해시 함수
+ 블록 크기 : 512비트
+ 키 길이 : 128비트
- N-NASH
+ 1989년 일본의 전신전화주식회사(NTT)에서 발표한 암호화 해시 함수
+ 블록 크기, 키 길이 : 128비트
- SNEFRU
+ 1990년 R.C.Merkle가 발표한 해시 함수
+ 32비트 프로세서에서 구현을 용이하게 할 목적으로 개발됨
+ 블록 크기 : 512비트
+ 키 길이에 따라 128과 256으로 분류됨
☐ 해싱 함수(Hashing Function)
● 제산법(Division) : 레코드 키(K)를 해시표(Hash Table)의 크기보다 큰 수 중에서 가장 작은 소수(Prime, Q)로 나눈 나머지를 홈 주소로 삼는 방식, h(K) = K mod Q
● 제곱법(Mid-Square) : 레코드 키 값(K)을 제곱한 후 그 중간 부분의 값을 홈 주소로 삼는 방식
● 폴딩법(Folding) : 레코드 키 값(K)을 여러 부분으로 나눈 후 각 부분의 값을 더하거나 XOR(배타적 논리합)한 값을 홈 주소로 삼는 방식
● 기수 변환법(Radix) : 키 숫자의 진수를 다른 진수로 변환시켜 주소 크기를 초과한 높은 자릿수는 절단하고, 이를 다시 주소 범위에 맞게 조정하는 방법
● 대수적 코딩법(Algebraic Coding) : 키 값을 이루고 있는 각 자리의 비트 수를 한 다항식의 계수로 간주하고, 이 다항식을 해시표의 크기에 의해 정의된 다항식으로 나누어 얻은 나머지 다항식의 계수를 홈 주소로 삼는 방식
● 숫자 분석법(Digit Analysis) : 계수 분석법, 키 값을 이루는 숫자의 분포를 분석하여 비교적 고른 자리를 필요한 만큼 택해서 홈 주소로 삼는 방식
● 무작위법(Randaom) : 난수(Random Number)를 발생시켜 나온 값을 홈 주소로 삼는 방식
문제
☐ 개인키 암호화 기법 (Private Key Encryption)
2020년-2회 85번. 블록 암호화 방식이 아닌 것은?
① DES
② RC4
③ AES
④ SEED
정답 : 2
입력 답 : 3
2021년-1차 97번. 스트림 암호화 방식의 설명으로 옳지 않은 것은?
① 비트/바이트/단어들을 순차적으로 암호화한다.
② 해쉬 함수를 이용한 해쉬 암호화 방식을 사용한다.
③ RC4는 스트림 암호화 방식에 해당한다.
④ 대칭키 암호화 방식이다.
정답 : 2
입력 답 : 4
2021년-2차 95번. 암호화 키와 복호화 키가 동일한 암호화 알고리즘은?
① RSA
② AES
③ DSA
④ ECC
정답 : 2
입력 답 : 1
2022년-1차 95번. DES는 몇 비트의 암호화 알고리즘인가?
① 8
② 24
③ 64
④ 132
정답 : 3
입력 답 : 1
2022년-2차 93번. 대칭 암호 알고리즘과 비대칭 암호 알고리즘에 대한 설명으로 틀린 것은?
① 대칭 암호 알고리즘은 비교적 실행 속도가 빠르기 때문에 다양한 암호의 핵심 함수로 사용될 수 있다.
② 대칭 암호 알고리즘은 비밀키 전달을 위한 키 교환이 필요하지 않아 암호화 및 복호화의 속도가 빠르다.
③ 비대칭 암호 알고리즘은 자신만이 보관하는 비밀키를 이용하여 인증, 전자서명 등에 적용이 가능하다.
④ 대표적인 대칭키 암호 알고리즘으로는 AES, IDEA 등이 있다.
정답 : 2
입력 답 : 4
☐ 공개키 암호화 기법(Public Key Encryption)
2022년-2차 93번. 대칭 암호 알고리즘과 비대칭 암호 알고리즘에 대한 설명으로 틀린 것은?
① 대칭 암호 알고리즘은 비교적 실행 속도가 빠르기 때문에 다양한 암호의 핵심 함수로 사용될 수 있다.
② 대칭 암호 알고리즘은 비밀키 전달을 위한 키 교환이 필요하지 않아 암호화 및 복호화의 속도가 빠르다.
③ 비대칭 암호 알고리즘은 자신만이 보관하는 비밀키를 이용하여 인증, 전자서명 등에 적용이 가능하다.
④ 대표적인 대칭키 암호 알고리즘으로는 AES, IDEA 등이 있다.
정답 : 2
입력 답 : 4
☐ 양방향 알고리즘
2022년-1차 95번. DES는 몇 비트의 암호화 알고리즘인가?
① 8
② 24
③ 64
④ 132
정답 : 3
입력 답 : 1
☐ 해시(Hash)
2021년-1차 86번. 다음 암호 알고리즘 중 성격이 다른 하나는?
① MD4
② MD5
③ SHA-1
④ AES
정답 : 4
입력 답 : 3
2021년-2차 99번. 해쉬(Hash) 기법에 대한 설명으로 틀린 것은?
① 임의의 길이의 입력 데이터를 받아 고정된 길이의 해쉬 값으로 변환한다.
② 주로 공개키 암호화 방식에서 키 생성을 위해 사용한다.
③ 대표적인 해쉬 알고리즘으로 HAVAL, SHA-1 등이 있다.
④ 해쉬 함수는 일방향 함수(One-way function)이다.
정답 : 2
입력 답 : 4
☐ 해싱 함수(Hashing Function)
2020년-3차 38번. 해싱 함수 중 레코드 키를 여러 부분으로 나누고, 나눈 부분의 각 숫자를 더하거나 XOR한 값을 홈 주소로 사용하는 방식은?
① 제산법
② 폴딩법
③ 기수변환법
④ 숫자분석법
정답 : 2
입력 답 : 3
2021년-1차 35번. 해싱 함수(Hashing Function)의 종류가 아닌 것은?
① 제곱법(mid-square)
② 숫자분석법(digit analysis)
③ 개방주소법(open addressing)
④ 제산법(division)
정답 : 3
입력 답 : 4