중간자 공격(Meet-in-the-Middle Attack)
·
암호
중간자 공격(MITM Attack) 주어진 평문(P)와 암호문(C)에 대하여, 암호키 key1, key2를 찾는 공격 - 평문(P)를 가능한 모든 key1으로 암호화하여 테이블에 저장 - 암호문(C)를 가능한 모든 key2로 복호화하여 저장해둔 테이블에서 찾는다. ex) TC20의 공격 (기지평문 공격) - TC20: 블록크기 = 키크기 = 32비트 - 주어진 평문, 암호문으로 암호키를 찾는 공격 TC20_lib.py #------------------------- # TC20 - Toy Cipher #------------------------- Sbox = [ 0x63, 0x7C, 0x77, 0x7B, 0xF2, 0x6B, 0x6F, 0xC5, 0x30, 0x01, 0x67, 0x2B, 0xFE, 0..
암호키 전수조사(Exhaustive Key Search)
·
암호
암호키 전수조사(Exhaustive Key Search) - 모든 키를 시도해보는 방법으로 공격 - 암호키의 크기가 작은 경우만 가능 ex) TC20의 공격 (기지평문 공격) - TC20: 블록크기 = 키크기 = 32비트 - 주어진 평문, 암호문으로 암호키를 찾는 공격 - 공격 알고리즘 # 2^32가지 암호키 모두를 대입하여 평문을 암호화 # 주어진 암호문과 같은 것이 나오면 올바른 암호키 후보로 선택 # False alarm 확률: 1/(2^32) (잘못된 키가 암호키 후보가 될 확률) TC20_lib.py #------------------------- # TC20 - Toy Cipher #------------------------- Sbox = [ 0x63, 0x7C, 0x77, 0x7B, 0xF..