현대 암호학 42

[현대 암호학] 05-4. CFB 모드

4. CFB 모드 CFB(Cipher FeedBack) 모드 암호화/복호화 CFB 모드 Cipher FeedBack 모드(암호 피드백 모드) -> 피드백(FeedBack): 암호화 입력의 사용 의미 CFB 모드에서는 1단계 앞의 암호문 블록을 암호알고리즘의 입력으로 사용 (조건) * IV 필요하다. * 패딩 처리할 필요가 없다. E(IV) XOR P = C1 E(C1) XOR P = C2 CFB(Cipher Block Chaing) 모드의 암호화 CFB(Cipher FeedBack) 모드의 복호화 초기화 벡터(IV) 최초의 암호문 블록을 만들어낼 때는 1단계 앞의 출력이 존재하지 않으므로 대신에 IV를 사용 CBC(Cipher Block Chaing) 모드와 CFB(Cipher FeedBack) 모드 비..

현대 암호학 2021.06.23

[현대 암호학] 05-3. CBC 모드

3. CBC 모드 CBC(Cipher Block Chaing) 모드란? Cipher Block Chaining Mode(암호 블록 연쇄 모드) 암호문 블록을 마치 체인처럼 연결시키기 때문에 붙여진 이름 CBC 모드에서는 1단계 앞에서 수행되어 결과로 출력된 암호문 블록에 평문 블록을 XOR 하고 나서 암호화를 수행 각각의 암호문 블록은 단지 현재 평문블록 뿐만 아니라 그 이전의 평문 블록들의 영향도 받게 된다. (조건) 암호화 시스템 측 * IV 필요하다. * 패딩(padding) 처리 해주어야 한다. (조건) 복호화 시스템 측 * 복호화 시스템이 알고 있어야 하는 값: => IV 값(암호화 할때 사용했던) => padding 값(암호화 할때 사용했던) => 암호화 키(암호화 할때 사용했던) CBC 모드..

현대 암호학 2021.06.23

[현대 암호학] 05 -2. ECB 모드

2. ECB 모드 ECB 모드란? 전자 부호표 모드(Electric CodeBook Mode) 평문 블록을 암호화한 것이 그대로 암호문 블록 패딩(Padding) * 마지막 평문 블록이 블록 길이에 미치지 못할 경우에 추가하여 블록 길이가 되도록 맞춘다. 안전하지 않다. ECB 모드에 의한 암호화 ECB 모드에 의한 복호화 ECB 모드에 대한 공격 예 어느 은행의 송금 의뢰 데이터가 다음 3개의 블록으로 구성 블록1 = 송금자의 은행계좌번호(from) 블록2 = 송금처의 은행계좌번호(to) 블록3 = 송금액 송금 의뢰 데이터를 받은 은행은 지정된 금액을 송금자로 부터 송금처의 계좌로 이동 (예) A-5374의 계좌로부터 B-6671의 계좌로 1억원을 송금한다. (a) A-5374의 계좌로 부터 B-667..

현대 암호학 2021.06.23

[현대 암호학] 05. 블록 암호 모드

1. 블록 암호 모드 블록 암호와 스트림 암호 블록 암호(Block Cipher) 어느 특정 비트 수의 "집합(Block)"을 한번에 처리하는 암호 알고리즘 블록(Block)의 비트 수와 블록 길이(Block Length) DES or 3DES의 블록 길이는 64비트(8 bytes) DES: 64비트 평문, 64비트 암호문 AES: 블록길이는 128비트(16 bytes), 192비트(24 bytes), 256비트(32 bytes) 스트림 암호(Stream Cipher) 스트림 암호는 데이터의 흐름(Stream)을 순차적으로 처리해가는 암호 알고리즘 1비트, 8비트, 또는 32비트 등의 단위로 암호화와 복호화 블록 암호 모드(Block Cipher Mode)란 긴 평문을 블록으로 나누어 암호화 각 블록에 ..

현대 암호학 2021.06.23

[현대 암호학] 04. 실습(2)

[실습] gpg CMD 이용한 파일 암호화/복호화(AES 256) gpg 명령어를 이용한 파일 암호화/복호화(AES 256 알고리즘 사용) 사용 시스템 kali PGP versus GPG(GNU PG) - https://namu.wiki/w/PGP PGP Symantec PGP(상용): http://www.symantec.com/encryption 1991년 필 지머먼(Phil Zimmermann)이라는 프로그래머가 개발한 전자우편 암호화 프로그램과 그 파생작들을 말한다. 이메일 내용 자체를 암호화하여 오로지 보내는 사람과 받는 사람만이 그 원문(Plain Text)을 알 수 있도록 하는 암호화 방식을 말한다. GPG(GNU PG) GnuPG(오픈소스) : https://www.gnupg.org GPG가..

현대 암호학 2021.06.23

[현대 암호학] 04. 실습(1)

[실습] ccrypt CMD 이용한 파일 암호화/복호화(AES) 사용 시스템 칼리리눅스(KaliLinux) ccrypt 명령어 기본 사용법 (암호화) # ccrypt file1.txt (# ccrypt -e file1.txt) file1.txt.cpt (확 인) # ccrypt -c file1.txt.cpt (복호화) # ccrypt -d file1.txt.cpt ① ccrypt 패키지 설치 # apt-get update (# apt update) # apt-cache search ccrypt (# apt list ccrypt, # apt search ccrypt) # apt-get -y install ccrypt (# apt -y install ccrypt) ② ccrypt 사용법 확인 ccrypt 명..

현대 암호학 2021.06.23

[현대 암호학] 04-6. AES - Rijindael

6. AES - Rijindael Rijndael 이란? 벨기에 연구자 Joan Daemen과 Vincent Rijmen이 설계한 블록 암호알고리즘 블록 길이 : 128비트 키의 비트 길이: 128비트(16 bytes), 192비트(24 bytes), 256비트(32 bytes) Rijndael 암호화/복호화 SPN 구조 = (혼돈)Confusion + (확산)Diffusion SPN 구조는 Substitution Layer와 Permutation Layer 이용하여 Confustion과 Diffusion을 만족시켜는 암호다. (http://reinliebe.tistory.com/76) SPN(Substitution-Permutation Network) 구조 - 복수의 라운드(round)로 구성(10~1..

현대 암호학 2021.06.22

[현대 암호학] 04-5. AES 선정 과정

5. AES 선정 과정 AES 란? AES(Advanced Encryption Standard) DES를 대신한 새로운 표준 대칭 암호 알고리즘 AES의 후보로서 다수의 대칭 암호 알고리즘을 제안했지만, 그중에서 Rijndael 이라는 대칭 암호 알고리즘이 2000년에 AES로서 선정 AES 선정 과정 NIST(National Institute of Standard and Technology)에서 공모 경쟁방식에 의한 표준화 제한 없이 무료로 이용 ANSI C와 Java에 의한 구현 암호해독에 대한 강도의 평가 암호 알고리즘 설계 규격과 프로그램 공개 AES 최종 후보 및 선정 1차 심사 통과: 15개 CAST256, Crypton, DEAL, DFC, E2, Frog, HPC, LOKI97, Magen..

현대 암호학 2021.06.22

[현대 암호학] 04-4. 트리플 DES

4. 트리플 DES란? Triple DES = TDES(T-DES) = 3DES = DES3 트리플 DES(Triple-DES) DES는 전사공격으로 현실적인 시간내에 해독 DES를 대신할 블록 암호가 필요 이를 위해 개발된 것이 트리플 DES DES보다 강력하도록 DES를 3단 겹치게 한 암호 알고리즘 트리플 DES(Triple-DES) 암호화 TDES * DES-EDE2 (E: Encryption, D: Decryption) * DES-EDE3 E: Encryption, D: Decryption 트리플 DES 종류 DES 모든 키에 같은 비트열을 사용 DES-EDE2 키1과 키3에 같은 키를 사용하고 키2에 다른 키를 사용 EDE는 암호화(Encryption) -> 복호화(Decryption) -> ..

현대 암호학 2021.06.22

[현대 암호학] 04-3. DES

3. DES 란? 대칭 암호 * 블록 암호 : DES/3DES, AES * 스트림 암호 비대칭 암호 * 공개키 암호 * 공개키 서명 해시 암호 DES(Data Encryption Standard)란? DES/3DES(TDES) => AES 1) 대칭/비대칭, 대칭키/비밀키 대칭(Symmetric) 암호 알고리즘 비대칭(Asymmetric) 암호 알고리즘 비공개키 암호 알고리즘 공개키 암호 알고리즘 대칭키(Symmetric Key) 비대칭키(Asymmetric Key) = 비밀키(Secret Key)/공유키 공개키(Public Key)/개인키(Private Key) DES 알고리즘은 암호문을 작성할 때 사용하는 암호키와 암호문을 해독할 때 사용하는 해독키가 같다. 따라서, 이 키는 절대로 외부에 유출되지 ..

현대 암호학 2021.06.22