네트워크보안에센셜 12

Chapter 03. 공개키 암호와 메시지 인증 - 3.3 메시지 인증 코드(2) - 블록암호기반 MAC

오늘은 메시지 인증코드 공부 두 번째 포스팅이다. 오늘 포스팅은 블록암호기반 MAC에 관한 내용이다. 그럼 오늘 포스팅 시작합니다. Chapter 03. 공개키 암호와 메시지 인증 - 3.3 메시지 인증 코드(2) - 블록 암호기반 MAC □ 암호 기반 메시지 인증코드(CMAC) - AES 또는 3DES 용 b : 블록길이( AES : b=128, 3DES : b=64) n : 블록 개수 (n x b = 메시지길이) M_1, M_2, M_3, ..... , M_n : 메시지 블록 ( 메시지 길이가 b의 정수배가 아닐 경우 패딩 비트를 붙임) K : k비트 암호키( AES : k=128 or 192 or 256, 3DES : k = 112 or 168 ) K' : n비트 암호키 T : 메시지 인증코드 (t..

Chapter 03. 공개키 암호와 메시지 인증 - 3.3 메시지 인증 코드(1)

오늘은 HMAC에 대해서 공부를 하였다. 다행히도 HMAC 알고리즘이 머리 아프게 어렵지 않았다. 그래도 하루에 알고리즘 2개를 공부하기는 무리인 것 같아서, 3.3 메시지 인증 코드 단원을 쪼개서 정리하기로 했다. 올해 안에 이 책을 끝내는 것은 아무래도 무리인 듯하다. Chapter 03. 공개키 암호와 메시지 인증 - 3.3 메시지 인증 코드 □ 암호적 해시함수의 장점 DES에 비해 빠르게 실행 가능 코드를 쉽게 구할 수 있음 수출 규제가 없음 -> SHA-1은 비밀키를 사용하지 않으나, 비밀키를 사용하는 HASH함수를 위해서 HMAC이 탄생 -> HMAC은 전송계층 보안(TLS), 안전한 전자 결제(SET) 등 인터넷 프로토콜에서 사용 □ HMAC 설계 목표 (RFC에서 열거) 수정하지 않고 쓸 ..

네트워크보안에센셜Chapter 03. 공개키 암호와 메시지 인증 - 3.2 안전 해시함수(2)

Hash 알고리즘의 수학적 구조와 원리를 이해하는 것은 진짜 너무 어렵다. 100% 이해하기보다는, 일단 어느 정도 알고 넘어가야겠다. 나중에 반복해서 보면 언젠가는 100% 이해할 날도 올 거라고 생각한다. 또한, 실무에서는 해시 알고리즘의 구조를 100% 이해하지 않아도 일하는데 크게 지장은 없다. Chapter 03. 공개키 암호와 메시지 인증 - 3.2 안전 해시함수(2) □ SHA-512 알고리즘의 구조 Step 1. 패딩 비트 붙이기 메시지를 추가하여 총 길이를 896(mod1024)이 되도록 만든다. 메시지 길이가 이미 896(mod1024)라면 1024bit를 추가한다. 그러면 패딩비트의 길이 L은 1≦L≦1024이다. 패딩 비트의 첫 번째 값은 1이고 나머지 비트는 모두 0이다. Step..

Chapter 03. 공개키 암호와 메시지 인증 - 3.2 안전 해시함수(1)

하루에 1개의 소단원씩 끝내는건 도저히 못하겠다. 뒤로 갈수록 점점 더 어렵다. ㅠㅠ 정보보호에서 암호학이 가장 자신있는 분야라고 생각했는데, 암호 챕터가 끝나면 좀 쉬워지지 않을까 하는 기대를 하고 있다. ㅠㅠ 안전 해시함수에 대한 원리를 이해하기 위해서 며칠동안 붙잡고 있었다. 그래서 100%이해한 것 같지는 않지만 어느정도 이해한 내용을 적기로 했다. 그래서 안전해시함수 소단원을 끝내지 못했지만 1/2 포스팅 하겠다. Chapter 03. 공개키 암호와 메시지 인증 - 3.2 안전 해시함수(1) □ 안전 해시함수(Secure Hash Function) ㅇ 메시지 인증, 디지털 서명 등에 활용된다. ㅇ 해시함수의 목적은 파일, 메시지, 데이터블록에 대한 지문(Finger Print)을 생성하는 것이다..

Chapter 03. 공개키 암호와 메시지 인증 - 3.1 메시지 인증 방법

Chapter 02. 대칭 암호와 메시지 기밀성Chapter 03. 공개키 암호와 메시지 인증 - 3.1 메시지 인증 방법 암호를 사용하여 적극적 공격에 대응하는 방법으로 메시지 인증 방법이 있다. 데이터가 인증된다는 말은 데이터가 진짜이고 송신자라고 주장하는 근원지로부터 왔다는 것을 확신할 수 있다는 것을 의미한다. □ 관용 암호를 이용한 인증 메시지가 오류 감지 코드와 순서 번호를 포함하는 방법 - 수신자는 메시지가 변경되지 않고, 순서도 틀리지 않았음을 확신할 수 있다. 타임스탬프를 포함하는 방법 - 메시지가 지나는 동안 소요되는 시간지연 이외에 고의적으로 지연되지 않았음을 확신할 수 있다. □ 메시지 암호화 없이 메시지 인증하기 ㅇ 메시지 암호화 없는 메시지 인증이 필요한 경유 동일한 메시지를 다..

Chapter 02. 대칭 암호와 메시지 기밀성 - 복습문제

원래 계획은 매 단원이 끝날 때마다 복습 문제와 연습문제를 푸는 것이었는데, 연습문제는 너무 어려워서 못 풀 것 같다. (사실 노력도 안 해봤지만, 올해 안에 진도를 빼는 것을 목표로 하는데, 연습문제에 시간을 들이기가 어려울 것 같다.) 그래서 복습문제만이라도 풀어보기로 했다. 네트워크 보안 에센셜(Network Security Essential, William Stallings 저, 이재광/전태일 공역, 생능출판사) p.100 02. 대칭암호와 메시지 기밀성 - 복습 문제 2.1 대칭 암호의 핵심적 요소는 무엇인가? 평문 암호 알고리즘 비밀 키 암호문 복호 알고리즘 2.2 대칭키 암호 알고리즘에 사용되는 두 가지 기본적 기능은 무엇인가? 강한 암호 알고리즘 송신자와 수신자는 비밀키를 안전하게 획득하고..

Chapter 02. 대칭 암호와 메시지 기밀성 - 2.5 암호 블록 운용 모드

Chapter 02. 대칭 암호와 메시지 기밀성 2.5 스트림 암호와 RC4 블록 암호를 다양한 응용에 사용하기 위해 NIST에서는 5가지 운용 모드를 정의하였다. 이 5가지 운용모드는 모든 대칭 블록 암호에 적용이 가능한다. □ 전자 코드북 모드(ECB) 한 번에 b비트 크기의 블록으로 쪼갠다 동일한 키로 각 블록을 암호화한다. 암호 블록 - 평문 블록이 1:1 매칭 된다. 같은 평문 블록이 나타나면 동일한 암호문이 생성기 때문에 긴 메시지에는 안전하지 않다. 메시지에 b비트의 배수를 주기로 반복되는 요소가 있다면 쉽게 해독이 가능하다 => 같은 평문이 반복되더라도 동일하지 않은 암호 블록을 생성하는 기술이 필요하다. □ 암호 블록 체인 모드(CBC) 현재의 평문 블록과 바로 직전의 암호 블록을 XOR..

Chapter 02. 대칭 암호와 메시지 기밀서 - 2.4 스트림 암호와 RC4

Chapter 02. 대칭 암호와 메시지 기밀성 2.4 스트림암호와 RC4 □ 스트림 암호 구조 ㅇ 전형적인 스트림 암호는 한 번에 평문 1Byte(8bit)씩 암호화 의사 랜덤 바이트 생성기에 하나의 키(K)를 입력으로 사용한다. 의사 랜덤 바이트 생성기는 랜덤 함수 키스트림(k)을 생성한다. 평문 메시지는 생성된 키스트림과 한 바이트 씩 XOR 연산된다. [Example] (평문) 11010100 ⊕ (키스트림) 01001010 = (암호문) 10011110 (암호문)10011110 ⊕ (키스트림) 01001010 = (평문) 11010100 ㅇ 스트림 암호 설계 시 고려사항 암호열의 주기*가 길어야 한다. 키스트림은 반드시 진성랜덤스트림의 특성에 가능하면 근사하도록 해야 한다. 키 길이는 충분히 길..

2.2 대칭 암호 알고리즘, 2.3 랜덤넘버와 의사랜덤넘버

2.2 대칭 암호 알고리즘 □ DES (DEA 알고리즘) o 블록 길이 64bit, 키 길이 56bit, 16라운드, 16개의 서브키로 구성 o 강도 : DES암호 알고리즘은 오랜 시간 동안 약점을 찾지 못했으나, 키 기이가 56bit라서 깰 수 있다. - EFF가 만든 DES Cracker에서 전수공격으로 DES 깨짐 -> 128bit 키를 사용하면 전수공격에도 깨지지 않는 알고리즘이 됨 □ 3DES o 3개의 키를 사용하고 DES 알고리즘을 세 번 사용하는데 암호-복호-암호(EDE) 순서를 따른다. -> C=E(K3, D(K2, E(K1, P))) o 복호화는 단순히 키의 순서만 바꿔서 적용한다. -> P = D(K1, E(K2, D(K1, C))) o 3DES는 56bit의 키 3개로 168의 키 ..

Chapter 02. 대칭 암호와 메시지 기밀성 - 2.1 대칭 암호 원리

Chapter 02. 대칭 암호와 메시지 기밀성 - 2.1 대칭 암호 원리 * 대칭 암호 = 관용 암호 = 비밀키 암호 = 단일 키 암호 2.1 대칭 암호 원리 □ 대칭 암호에 대한 두가지 필수사항 공격자가 깰 수 없는 강한 알고리즘(암호문, 평문을 공격자가 가지고 있더라도 키를 알 수 없어야 함) 송신자와 수신자가 안전한 방법을 통하여 키를 공유하여야 함 □ 대칭키 암호 시스템의 특성 1. 평문을 암호문으로 전환하는 데 사용되는 연산 유형 두 가지 일반적 유형으로 대체와 치환이 있다. 이 두가지 연산을 통해 정보가 손실되지 않아야 한다. (연산을 역으로 수행할 수 있어야 한다.) 2. 동일한 키를 사용( 암호화 키 = 복호화 키) 암호화 키와 복호화 키가 일치하지 않는다면 비대칭 암호(=공개키 암호)라..