[9. 소프트웨어 개발 보안 구축] 암호 알고리즘

soojung·2023년 9월 29일
0

정보처리기사 실기

목록 보기
3/14
post-thumbnail

💡 암호 알고리즘

중요 정보를 보호하기 위해 평문을 암호화된 문장으로 만드는 절차 또는 방법 / img 출처 (stream, block 반대)

💡 개인키 암호화 (대칭키, 비밀키, 단일키)

동일한 키로 데이터를 암/복호화 하는 암호화 기법
(+) : 암복호화 속도 빠름 / (-) : 관리할 키 많음

1) Stream 방식

평문과 동일한 길이의 스트림 생성하여, 비트 단위로 암호화
ex) LFSR / RC4 / TKIP

  • TKIP (Temporal Key Integrity Protocol, 임시 키 무결성 프로토콜) : 무선랜 보안에 사용된 WEP 취약성 보완한 데이터 보안 프로토콜
    • 암호 알고리즘의 입력 키 길이를 128로 늘리고 패킷당 키 할당, 키값 재설정 등 키 관리 방식 개선

2) Block 방식

한 번에 하나의 데이터 블록을 암호화 하는 방식
ex) DES, SEED, AES, ARIA, IDEA, Skipjack

  • SEED - KISA가 개발 / 블록 크기 128bit / 키 길이에 따라 128,256으로 분류
  • ARIA - 국가정보원, 산학연협회가 개발
  • DES (데이터 암호화 표준) - 미국 NBS가 발표
    • 블록 크기 64 bit / 키 길이 56 bit / 16회 라운드 / DES 3번 적용하여 보안 더욱 강화한 3DES 존재
  • AES (고급 암호화 표준) - 미국 NIST 발표, DES 한계 느낌
    • 블록 크기 128 bit / 키 길이에 따라 AES-128, 192, 256로 분류
  • IDEA (국제 데이터 암호화 알고리즘) - 스위스의 라이,메시가 개발한 PES 개선
    • 블록 크기 64 bit / 키 길이 128 bit
  • Skipjack - 국가 안전 보장국(NSA) 개발, IC칩 내장 (클리퍼 칩)
    • 블록 크기 64 bit / 키 길이 80 bit
    • 주로 음성 통신 장비에 삽입되어 음성 데이터 암호화

💡 공개키 암호화 (비대칭키)

암호화 시 공개키 (사용자 공개) & 복호화 시 비밀키 (관리자 관리)
(+) : 관리할 키 적음 / (-) : 암복호화 속도 느림
ex) RSA

  • RSA - MIT 3명에 의해 제안 / 큰 숫자를 소인수분해 하기 어렵다는 것을 기반

💡 해시 (Hash)

임의의 길이의 입력 데이터나 메시지를 고정된 길이의 값이나 키로 변환하는 것

  • 해시 알고리즘 = 해시 함수
  • 해시 함수로 변환된 값이나 키 = 해시값 or 해시키
  • 데이터의 암호화 & 무결성 검증 / 정보보호의 다양한 분야에서 활용
  • SHA시리즈 - 미국 NSA 설계, 미국 NIST 발표 / SHA-0,1,2,224,256,384,512
  • MD5 (메시지 다이제스트 알고리즘 5) - MD4 대체위해 고안 / 블록 크기 512 bit, 키 길이 128 bit
  • N-NASH - 일본 NTT 발표 / 블록 크기, 키 길이 128 bit
  • SNEFRU - 32 비트 프로세서에 구현을 용이하게 할 목적
profile
( 발을 힘차게 뻗으며 😎 )

0개의 댓글