줴림이 공부하줴림
[정보처리기사 실기] Ⅸ. 소프트웨어 개발 보안 구축 (2) 본문
인증 관련 기술
구분 | 설명 |
SSO (Single Sign On) |
커버로스에서 사용되는 기술 한 번의 인증 과정으로 여러 컴퓨터 상의 자원을 이용할 수 있도록 해주는 인증 기술 |
커버로스 (Kerberos) |
1980년대 중반 MIT의 Athena 프로젝트의 일환으로 개발됨 클라이언트/서버 모델에서 동작하고 대칭 키 암호기법에 바탕을 둔 티켓 기반의 프로토콜 |
OAuth | 사용자가 비밀번호를 제공하지 않고 다른 웹 사이트나 애플리케이션의 접근 권한을 부여할 수 있게 하는 개방형 표준 기술 외부 계정(Naver, Kakaotalk 등)을 기반으로 토큰을 이용하여 간편하게 회원가입 및 로그인 가능하게 해줌 |
암호 알고리즘
데이터의 무결성 및 기밀성 확보를 위해 정보를 쉽게 해독할 수 없는 형태로 변환하는 기법
주요 용어
- 평문(Plain/Plaintext): 암호화되기 전의 원본 메시지
- 암호문(Cipher/Ciphertext): 암호화가 적용된 메시지
- 암호화(Encrypt/Encryption/Encoding): 평문을 암호문으로 바꾸는 작업
- 복호화(Decrypt/Decryption/Decoding): 암호문을 평문으로 바꾸는 작업
- 키(Key): 적절한 암호화를 위해 사용하는 값
- 치환 암호=대치 암호(Substitution Cipher): 비트, 문자 또는 문자의 블록을 다른 비트, 문자 또는 블록으로 대체하는 방법
- 전치 암호(Transposition Cipher): 비트, 문자 또는 블록이 원래 의미를 감추도록 자리바꿈 등을 이용하여 재배열하는 방법
양방향 방식
1. 대칭 키 암호 방식 (= 비밀키 암호 방식)
- 암호화와 복호화에 같은 암호 키를 쓰는 알고리즘
- 비밀키 전달을 위한 키 교환이 필요함
- 암호화 및 복호화 속도가 빠름
방식 | 설명 |
블록 암호 방식 | 긴 평문을 암호화하기 위해 고정 길이의 블록으로 암호화하는 블록 암호 알고리즘을 반복하는 방법 ex) DES, AES, SEED |
스트림 암호 방식 | 매우 긴 주기의 난수열을 발생시켜 평문과 더불어 암호문을 생성하는 방식 비트/바이트/단어들을 순차적으로 암호화 ex) RC4 |
2. 비대칭 키 암호 방식 (= 공개키 암호 방식)
- 사전에 비밀키를 나눠 가지지 않은 사용자들이 안전하게 통신하는 방식
- 공개키와 개인 키 존재
- 공개키: 누구나 알 수 있으며, 보안 타협 없이 공개적으로 배포 가능
- 개인키: 키의 소유자만이 알 수 있어야 함
- 공개키로 암호화된 메시지는 반드시 개인 키로 복호화해야 함
- ex) RSA, ECC, Elgamal, 디피-헬만 등
구분 | 대칭 키 암호 방식 | 비대칭 키 암호 방식 |
키 | 대칭 키 (비밀 키) | 비대칭 키 (공개키, 개인키) |
키의 관계 | 암호화 키 = 복호화 키 | 암호화 키 ≠ 복호화 키 |
키 개수 | n(n-1)/2 | 2n |
암호 알고리즘 | 공개 | 공개 |
장점 | 계산 속도가 빠름 | 암호화 키 사전 공유 불필요 관리해야 할 키 개수가 적음 |
단점 | 키의 분배 및 관리의 어려움 기밀성만 보장 |
계산 속도 느림 |
알고리즘 | DES, AES, SEED | 디피-헬만, RSA |
일방향 방식 (해시 암호 방식)
임의 길이의 정보를 입력받아, 고정된 길이의 암호문(해시값)을 출력하는 암호 방식
해시 함수(Hash Function)
- 임의의 길이를 갖는 임의의 데이터를 고정된 길이의 데이터로 매핑하는 단방향 함수
- 해시 함수를 이용한 해시 알고리즘: 일방향 암호 방식
- 해시 함수가 적용된 정보는 복호화가 불가능함
방식 | 설명 |
MAC (Message Authentication Code) |
메시지와 비밀 키를 사용하여 생성된 인증 코드 메시지의 정당성을 검증하기 위해 메시지와 함께 전송되는 값 메시지의 무결성과 송신자의 인증을 보장 |
MDC (Modification Detection Code) |
메시지에서 고정된 길이의 해시 값을 생성하는 함수 수신자는 받은 데이터로부터 새로운 MDC를 생성하여 송신자에게 받은 MDC와 비교하여 해당 메시지가 변경되지 않았음을 보장하는 값 메시지의 무결성 보장 |
'Study > Engineer Information Processing' 카테고리의 다른 글
[정보처리기사 실기] Ⅸ. 소프트웨어 개발 보안 구축 (1) (0) | 2025.04.30 |
---|---|
[정보처리기사 실기] Ⅷ. 서버 프로그램 구현 (2) (0) | 2025.04.29 |
[정보처리기사 실기] Ⅷ. 서버 프로그램 구현 (1) (0) | 2025.04.28 |
[정보처리기사 실기] Ⅶ. SQL 응용 (1) (0) | 2025.04.26 |
[정보처리기사 실기] Ⅵ. 프로그래밍 언어 활용 (3) (1) | 2025.04.25 |