Elliptic Curve Diffie-Hellman Algorithm (ECDH Algorithm) 타원 곡선 디피-헬만 알고리즘 - 타원 곡선의 성질을 이용하여 키를 분배하거나 전자서명을 생성한다. Mechanism (원리) - 타원 곡선을 이용한 암호화 방식의 메커니즘은 아래와 같다. Elliptic Curve \(E : y^2 = x^3 + ax + b \; (\mathrm{mod} \; p)\) 1. 타원 위를 지나는 점 \(P_1=(x_1, y_1), P_2=(x_2, y_2)\) 를 구한다. 2. \(P_3 = P_1 + P_2 = (x_3, y_3)\) 를 구한다. 이 때, 타원 위의 점들의 합은 아래와 같이 계산된다. \(x_3 = m^2 - x_1 - x_2 \; (\mathrm{mod..
Diffie-Hellman Key Exchange Algorithm (DH) 디피-헬만 키 교환 알고리즘 - Discrete Logarithms(이산 로그) 기반 공개키 분배 메커니즘이며, 암호화 메커니즘이 아니다. - 두 명의 사용자가 메시지 암호화에 사용될 비밀키를 안전하게 교환하는 것을 목표로 한다. Mechanism (원리) Value Description \(p, g\) - Public Values (공개된 값) \(x\) - \(A\)의 Private Key \(g^x \; \mathrm{mod} \; p\) - \(A\)가 \(B\)에게 전송하는 값 \(y\) - \(B\)의 Private Key \(g^y \; \mathrm{mod} \; p\) - \(B\)가 \(A\)에게 전송하는 값 ..
Public Key Cryptography (Asymmetric Cryptography) 공개키 암호 방식 (비대칭 암호 방식) - Encryption에 사용되는, 모두에게 공개된 Public Key(공개키)와 Decryption에 사용되는, 허가된 사용자에게만 주어지는 Private Key(비밀키)를 통해 암호화/복호화하는 암호 체계이다. - Confidentiality(기밀성)와 Authentication(인증)을 제공한다. Asymmetric Cryptography Mechanisms (비대칭 암호 방식의 메커니즘) - 비대칭 암호 방식 메커니즘은 아래와 같다. Crypto based on Factoring (인수분해 기반 암호화 방식) Crypto based on Discrete Logarithm..
Block Ciphers 블록 암호 - Random Permutation을 이용한 암호화 메커니즘이다. (Fixed Size Input ↔ Fixed Size Output) - Keyed-Invertible Function을 통해 암호화/복호화한다. - 스트림 암호와 달리, 암호 전송 중 Block이 누락되면 복원할 수 없다. - 아래는 대표적인 블록 암호 체계들이다. DES Triple DES (3DES) AES IDEA Blowfish RC6 Serpent SEED - 아래는 블록 암호 체계의 운영 방법들이다. ECB Mode CBC Mode CTR Mode CFB Mode OFB Mode GCM Mode Principles of Block Ciphers (블록 암호의 지향점) - 블록 암호 체계의 ..
Stream Ciphers 스트림 암호 \(\mathrm{Plaintext} \; \oplus \; \mathrm{Random \; Number} \; \to \; \mathrm{Ciphertext}\) - 여기서 Random Number는 암호화 과정에서 Key 역할(Key String)을 한다. - Plaintext, Random Number, Ciphertext 모두 8-bits Binary Code이다. - \(\oplus\)는 XOR 연산을 의미한다. - 연속적으로 입력되는 Plaintext(Data)와 크기가 같은 Pseudo Random Number(Key String)와 XOR 연산을 취해 Byte 단위로 암호화한다. - Computer의 Deterministic한 성질로 인해 Comput..