9. 소프트웨어 개발 보안 구축 - Chap 1. 소프트웨어 개발 보안 설계(2)
IX. 소프트웨어 개발 보안 구축
Chapter 1. 소프트웨어 개발보안 설계
- 1. 소프트웨어 개발보안 설계(2)
* 암호 알고리즘 : 데이터의 무결성 및 기밀성 확보를 위해 정보를 쉽게 해독할 수 없는
형태로 변환하는 기법
ㅣ-양방향 -> 대칭키 - DES, SEED
ㅣ -> 비대칭키 -RSA, ...
ㅣ- 일방향 -> 해시
1) 암호 알고리즘 방식 => 대 비 해
대칭키 / 비대칭키 / 해시
2) 대칭키 암호방식 : 암호화와 복호화에 같은 암호키를 쓰는 알고리즘
*블록 암호 방식 - 긴 평문 블록으로 쪼개서-> DES(현재 사용X) , SEED
*스트링 암호 방식 - 매우 긴 난수열 발생, 평문과 함께 암호문 생성 -> RC4
*대칭 키 암호화 알고리즘 종류
DES(1975년, 미 연방 표준국) / SEED(1999년, 한국) /
AES(2001년, 미국, 한 라운드는 4가지 계층) / ARIA (아카데미, 연구기관, 정부 의 영문 앞자)
3) 비 대칭키 암호 방식(공개키 암호 방식) : 사전에 개인 키를 나눠 가지지 않은 사용자들이
안전하게 통신하는 방식 ( 암호화와 복호화에 다른 암호키를 쓰는 알고리즘)
->RSA, 디피 펠만 , ECC , Elgamal
*비대칭 키 암호화 알고리즘 종류
디피-헬만(공개키, 최초의 비밀키 교환 프로토콜, 이산대수 어려움 근간) /
RSA(수학교수 3명 이름 앞글자, 큰 인수의 곱 소인수분해) /
ECC(타원곡선 군, 이산대수 어려움 근간) /
엘가멜(Elgamal)(이산대수 어려움 근간, RSA와 유사하게 전자서명, 데이터 암복호화 함께 가능)
4) 일방향 암호 방식(해시 암호 방식)
: 임의 길이의 정보를 입력받아, 고정된 길이의 암호문(해시값)을 출력하는 암호방식
-> MDS, SHA-1, SHA-2(현재는 이것만 씀)
*해시 암호화 알고리즘 종류
MD5(1991년. MD4 개선) / SHA-1(1993년, DSA에서 사용, 현재 사용X)/
SHA-256,384,512 (AES, 출력길이 늘림) / HAS-160(국내표준서명 , KCDSA)
*MAC : 키를 사용하는 메시지 인증 코드(Message Authentication Code)로
메세지의 무결성과 송진자의 인증 보장 -> HMAC, NMAC
*MDC : 키를 사용하지 않는 변경 감지 코드(Modification Detection Code)로
메세지의 무결성을 보장 ->MD5, SHA
5) IPSec 개념
: IP계층(3계층)에서 무결성과 인증을 보장하는 인증 헤더(AH)와
기밀성을 보장하는 암호화(ESP)를 이용한 IP 보안 프로토콜
=터널링 기법 이용해서 두 네트워크 간 연결을 하는 전용회선
* SSL/TLS
* 개인정보보호법령 => 개망신
개인정보 보호법 / 정보통신망 법 / 신용정보법
*SecureSDLC 모델/방법론 (출제가능성!)
seven touch point : best practice(모범사례)
MS-SDL : 마이크로소프트사 2004년 이후 자사
OWASP CLASP : 개념, 역할기반, 활동평가, 활동구현, 취약성 관점 등