1. 주요 개념
평문
암호문
원문
암호화
복호화
키
암호화 시스템, 암호 기법
암호화 알고리즘
복호화 알고리즘
☆해시함수 : 임의의 길이 데이터 입력 -> 고정된 짧은 길이의 문자열 출력하는 함수
-입력데이터가 한 비트라도 변경되면, 완전히 다른 값이 출력됨
-암호학적으로 안전한 해시 함수의 특징?
#충동저항성(collision resistance) : 동일한 해시 값 가질때 , 이를 가진 서로 다른 메세지 쌍 찾기 어려움
#일방향성 (irrerversible) : 함수 결과 값으로 대응하는 입력 값 계산 어려움
#해시 활용 분야
-암호 환경에서 데이터의 무결성 검증 및 메시지 인증 필요할 때
-통신환경에서 체크섬과 같이 에러 탐지에 사용 (통신환경에서의 해시 == 체크섬)
-해시와 체크섬 차이? 충동저항성 & 일방향성의 정도 차이
암호 알고리즘 및 키 길이
#전수조사공격(bruteforce Attack) : 공격자가 키 길이 내 모든 조합을 생성해 모두 시험해보면서 복호화 시도
-> 공격자의 컴퓨터 성능에 따라 얼마나 빨리 찾을 수 있을지 달라짐
2. 암호 알고리즘 분류
@대칭키 알고리즘 = 비밀키 알고리즘 (symmetric)
-스트림 암호 ; RC4
-블록 암호 ; DES, AES, IDEA, RC5, RC6 등
multi bytes = block (남는 부분 padding 작업 <- dumu data 이용)
=> key 1개, 속도 빠름
@비대칭키 알고리즘 = 공개키 알고리즘 (asymmetric)
ex) RSA
=> key 2개
@하이브리브 알고리즘 = 대칭키(메세지 자체 암호화) + 비대칭키 (키 전달)
#kerckhoffs principle
: 암호 알고리즘의 안전성이 암호 알고리즘 설계 자체의 비밀성에 의존하면 안됨! 키의 비밀성에 의존해야 함
(=암호 알고리즘을 알아도 키를 모르면 복호화 불가)
3. 암호화 데이터의 해석
컴퓨터에서는 모든 것이 숫자 <- 글자를 사전에 약속한 형태로 표현!
=> #아스키코드
ASCII는 영문 알파벳을 사용하는 대표적인 문자 인코딩
아스키는 컴퓨터와 통신 장비를 비롯한 문자를 사용하는 많은 장치에서 사용됨
대부분의 문자 인코딩이 아스키에 기초를 두고 있음!
아스키는 7비트 인코딩
33개의 출력 불가능한 제어 문자 + 공백을 비롯한 95개의 출력 가능한 문자들로
=> 총 128개
출력 가능한 문자 : 52개의 영문 알파벳 대소문자 + 10개의 숫자 + 32개의 특수 문자 + 그리고 하나의 공백 문자
+)유니코드, UTF-8
https://ko.wikipedia.org/wiki/ASCII
ASCII - 위키백과, 우리 모두의 백과사전
1972 프린터 사용 설명서에 개시된 아스키 코드 차트표 미국정보교환표준부호(영어: American Standard Code for Information Interchange), 또는 줄여서 ASCII( , 아스키)는 영문 알파벳을 사용하는 대표적인 문자
ko.wikipedia.org
4. XOR : eXclusive OR
-프로그래밍 언어에서는 ^ 로 표시
-인코딩/암호화의 기반 (교환법칙, 결합법칙, 항등원 존재)
-★연산 특징 : 연산 두 번 적용 -> 원래대로 복원 됨 == 역원이 자기 자신과 같음!(->대칭키의 요소가 됨)
A ^ B ^ B = A
-덧셈 뺄셈 대신 XOR을 사용하는 이유?
덧셈, 뺄셈 : 역원 존재(역원이 자기 자신이 아님) / Carry propagation (자리 올림수 존재 -> 연산 중간에 추가 bit 공간 필요)
XOR 위 문제점 없음 ; 자기 자신이 역원 / Carry propagation 없기 때문에 연간 내내 비트 고정
5. DES(Data Encryption Standard)

라운드 함수의 역할 = 확산(Diffusion) + 혼돈(Confusion)
확산 : 평문이 한 비트라도 바뀌면 암호문도 한 비트 이상 바뀜
혼돈: 암호문과 키의 관계 숨김 -> 키가 한 비트라도 바뀌면 암호문 바뀜
s-box : 확산 효과 + 혼돈 효과

https://developer-mac.tistory.com/52
기초 암호학(1) - DES
블록체인을 공부하면서 dApp을 만들어보고 비트코인이 어떤 방식으로 트랜잭션이 될까라는 부분부터 시작했었다. 그런데 기초 암호학 지식이 없는 상태이다보니 이해하는데 상당한 시간이 걸렸
developer-mac.tistory.com
DES 문제점 : 소프트웨어 형태로 구현시 성능 느려짐(비트 단위로 변환 연산이 많기 때문에)
-> AES 등장
6. AES
: 고급 암호화 표준(Advanced Encryption Standard) - DES를 대체한 암호 알고리즘.
암호화와 복호화 과정에서 동일한 키를 사용하는 대칭키 알고리즘.
DES에 비해서 키 사이즈가 자유로움 -> 가변 길이의 블록 & 키 사용 가능 (128bit, 192bit, 256bit)
https://www.crocus.co.kr/1230
AES 암호 알고리즘(Advanced Encryption Standard)
1. AES 암호 알고리즘(Advanced Encryption Standard)이란? 고급 암호화 표준(Advanced Encryption Standard)이라고 불리는 AES 암호 알고리즘은 DES를 대체한 암호 알고리즘이며 암호화와 복호화 과정에서 동일..
www.crocus.co.kr
7. RSA
:공개키 암호 알고리즘(비대칭키 암호 알고리즘)
소인수 분해 알고리즘과 밀접한 관련!
#방식
A가 B에게 정보를 보내기 위해서,
1) B ->(공개키) A : B는 공개키와 개인키 생성, 공개키만 A에게 보낸다.
2) A ->(정보) B : A는 B로 부터 받은 공개키를 이용하여 정보 암호화를 진행한다. 이후 A가 암호화된 정보를 B에게 보낸다.
3) B는 암호화된 정보를 받고 개인키를 이용해 암호를 해독한다.
#RSA 전자서명
암호화 과정 = 상대방의 공개키로 암호문을 만듦
전자서명 과정 = 자신의 개인키로 서명 만듦 (개인키로 먼저 암호화하고 공개키로 복호화)
[암호학] 비대칭키 암호 - RSA (공개키 암호시스템)
비대칭키 RSA 암호 시스템 1. 개요 (1) 개념 RSA는 공개키 암호 알고리즘 중의 하나이며, 세계적으로 사실상의 표준이다. 인수분해 문제 해결의 높은 난이도를 이용한 가장 대표적인 공개키 암호 알
yjshin.tistory.com
8. Diffi - Hellman 키 교환
: 키 교환(key exchange) 알고리즘 - 대칭키를 공유하는데 사용 (암호화나 서명을 위한 것 X)
상대방의 공개키 +(계산)+ 나의 개인키 => 비밀키 도출됨 ; 이산 대수 문제 방식 이용
나와 상대방은 비밀키를 사용하여 데이터를 암호화한 후 전달하면 됨!
-> 도청 가능해도 통신 당사자만이 알 수 있는 비밀키 만들기 때문에 공격자는 키 도출 불가
디피 헬만 알고리즘(Diffie-Hellman Algorithm)
목차 1. 디피 헬만 알고리즘(Diffie-Hellman Algorithm)이란? 2. 디피 헬만 알고리즘(Diffie-Hellman Algorithm) 동작 원리 3. 디피 헬만 알고리즘 취약점 4. 디피 헬만을 2048 bit로 바꿔야 하는 이유 1. 디피 헬..
www.crocus.co.kr
9. 링크 암호화 vs 종단간 암호화
| 링크 암호화 | 종단간 암호화 |
| 물리적 계층, 데이터 링크 계층에서 모든 정보 암호화 | 애플리케이션 계층에서 사용자 정보만 암호화 (헤더, 트레일러, 라우팅 정보 암호화X) |
| 트래픽 분석 공격 어려움 | 사용자 정보는 기밀성 보장 가능. but 트래픽 분석은 가능 |
| 중간 노드에서 데이터 평문으로 노출됨 (다양한 보안서비스 제공 불가 - 모든 노드가 암호화 장비 갖추기 어려움) |
중간 노드에서도 데이터가 암호문으로 존재 (사용자 인증과 같은 높은 수준의 보안서비스 제공 가능) |
| 온라인 암호화 | 오프라인 암호화 |
| ISP나 통신업자가 암호화 | 사용자가 암호화 |
https://epicuros.tistory.com/7
[정보보안기사 요약] 암호학 개요 > 링크 암호화, 종단간 암호화
안녕하세요. 에피입니다. 오늘은 링크 암호화, 종단간 암호화에 대해 알아볼게요. ■ 링크 암호화 (Link Encryption) 링크 암호화는 데이터 링크 또는 물리적 계층에서 모든 정보를 암호화해요! 네트
epicuros.tistory.com
링크 암호화와 종단간 암호화
링크 암호화(KT 올레Wifi를 떠올리자) 올레wifi는 전국 곳곳에 설치되있고 대규모 설비를 쉽게 통제하기 위해 공식화된 틀이 필요하고(user-transparent), 온라인으로 암호화하고 있다. 한편으로는 보안
kgu3405.tistory.com
'스터디 > 해킹실습2' 카테고리의 다른 글
| [취약점 분석] 버퍼 오버플로우, Linux basics (0) | 2021.11.21 |
|---|---|
| [운영체제 보안] 컴퓨터 아키텍처 및 운영체제, 커널 아키텍처, 인터럽트, 시스템 콜, 프로세스, 보안 아키텍처, 리눅스 보안 (0) | 2021.11.01 |
| [네트워크 보안] Dos 공격, Spoofing 공격 (0) | 2021.10.10 |
| [네트워크보안] HTTP, cookie, caching, DNS, soket programming (0) | 2021.10.03 |
| [네트워크보안] 네트워크 개요, 어플리케이션 네트워크 (0) | 2021.09.21 |