์์ฑ 2026. 6. 12.ยท์์ 2026. 6. 12.
- Symmetric Encryption
- Message Confidentiality
- Secure Hash Function
- Public Key Encryption
- Encryption (์ํธํ): ๋ฐ์ดํฐ ๋ณดํธ๋ฅผ ์ํด ์ํธํ ํ์
- Confidentiality (๊ธฐ๋ฐ์ฑ) ๋ฐ Integrity (๋ฌด๊ฒฐ์ฑ) ์ ๊ณต ๊ฐ๋ฅ
- Symmetric encryption (๋์นญ ์ํธ) ๋ฐ Asymmetric encryption (๋น๋์นญ ์ํธ)
- Message authentication (๋ฉ์์ง ์ธ์ฆ)
- Integrity๋ ์ ๊ณต ๊ฐ๋ฅํ์ง๋ง, confidentiality๋ ์ ๊ณต ๋ถ๊ฐ
- ์ ์ก๋๊ฑฐ๋ ์ ์ฅ๋ ๋ฐ์ดํฐ์ confidentiality๋ฅผ ์ ๊ณตํ๊ธฐ ์ํ ๋ณดํธ์ ์ธ ๊ธฐ์
- Conventional encryption (๊ด์ฉ ์ํธ) ๋๋ single-key encryption (๋จ์ผํค ์ํธ)๋ผ๊ณ ๋ ํจ
- ์์ ํ ์ฌ์ฉ์ ์ํ ๋ ๊ฐ์ง ์๊ตฌ์ฌํญ:
- ๊ฐ๋ ฅํ ์ํธํ ์๊ณ ๋ฆฌ์ฆ ํ์
- ์ก์ ์์ ์์ ์๋ ์์ ํ ๋ฐฉ์์ผ๋ก secret key (๋น๋ฐํค) ์ฌ๋ณธ์ ํ๋ํ๊ณ ํค๋ฅผ ์์ ํ๊ฒ ์ ์งํด์ผ ํจ
- Public-key encryption (๊ณต๊ฐํค ์ํธ) ์ด์ ์ธ 1970๋
๋๊น์ง ์ ์ผํ ๋์
- ์ฌ์ ํ ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ ๋์
- 5๊ฐ์ง ๊ตฌ์ฑ ์์:
- Plaintext (ํ๋ฌธ)
- Encryption algorithm (์ํธํ ์๊ณ ๋ฆฌ์ฆ)
- Secret key (๋น๋ฐํค)
- Ciphertext (์ํธ๋ฌธ)
- Decryption algorithm (๋ณตํธํ ์๊ณ ๋ฆฌ์ฆ)
- ์ธ ๊ฐ์ง ๋
๋ฆฝ์ ์ธ ์ฐจ์์ผ๋ก ๋ถ๋ฅ๋จ:
- Plaintext๋ฅผ ciphertext๋ก ๋ณํํ๋ ๋ฐ ์ฌ์ฉ๋๋ ์ฐ์ฐ ์ ํ
- Substitution (์นํ): plaintext์ ๊ฐ ์์๊ฐ ๋ค๋ฅธ ์์๋ก ๋งคํ๋จ
- Transposition (์ ์น): plaintext์ ์์๊ฐ ์ฌ๋ฐฐ์ด๋จ
- ์ฌ์ฉ๋๋ ํค์ ์
- ์ก์ ์์ ์์ ์๊ฐ ๋์ผํ ํค ์ฌ์ฉ โ symmetric (๋์นญ)
- ์ก์ ์์ ์์ ์๊ฐ ๊ฐ๊ฐ ๋ค๋ฅธ ํค ์ฌ์ฉ โ asymmetric (๋น๋์นญ)
- Plaintext๊ฐ ์ฒ๋ฆฌ๋๋ ๋ฐฉ์
- Block cipher (๋ธ๋ก ์ํธ): ํ ๋ฒ์ ํ ๋ธ๋ก์ ์์๋ฅผ ์ฒ๋ฆฌ
- Stream cipher (์คํธ๋ฆผ ์ํธ): ์
๋ ฅ ์์๋ฅผ ์ฐ์์ ์ผ๋ก ์ฒ๋ฆฌ
- Cryptanalytic Attack
- ์์กดํ๋ ๊ฒ:
- ์๊ณ ๋ฆฌ์ฆ์ ํน์ฑ
- plaintext์ ์ผ๋ฐ์ ์ธ ํน์ฑ์ ๋ํ ์ผ๋ถ ์ง์
- ์ผ๋ถ plaintext-ciphertext ์ ์ํ
- ์๊ณ ๋ฆฌ์ฆ์ ํน์ฑ์ ์ด์ฉํ์ฌ ํน์ plaintext ๋๋ ์ฌ์ฉ ์ค์ธ ํค๋ฅผ ์ถ๋ก ์๋
- ์ฑ๊ณต ์, ํด๋น ํค๋ก ์ํธํ๋ ๋ชจ๋ ๋ฏธ๋ ๋ฐ ๊ณผ๊ฑฐ ๋ฉ์์ง๊ฐ ์์๋จ
- Brute-Force Attack (์ ์ฌ ๊ณต๊ฒฉ)
- ์ผ๋ถ ciphertext์ ๋ํด ํด๋
๊ฐ๋ฅํ plaintext ๋ฒ์ญ์ด ์ป์ด์ง ๋๊น์ง ๋ชจ๋ ๊ฐ๋ฅํ ํค๋ฅผ ์๋
- ์ฑ๊ณต์ ์ํด ํ๊ท ์ ์ผ๋ก ๋ชจ๋ ๊ฐ๋ฅํ ํค์ ์ ๋ฐ์ ์๋ํด์ผ ํจ
- ๊ณต๊ฒฉ ์ ํ
- Cryptanalyst (์ํธ ๋ถ์๊ฐ)์๊ฒ ์๋ ค์ง ์ ๋ณด
- ์ํธํ๋ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ computationally secure (๊ณ์ฐ์ ์ผ๋ก ์์ )ํจ:
- ์ํธ ํด๋
๋น์ฉ์ด ์ ๋ณด์ ๊ฐ์น๋ฅผ ์ด๊ณผ
- ์ํธ ํด๋
์ ํ์ํ ์๊ฐ์ด ์ ๋ณด์ ์ ํจ ์๋ช
์ ์ด๊ณผ
- ์ผ๋ฐ์ ์ผ๋ก ํด๋
์ ํ์ํ ๋
ธ๋ ฅ์ ์์ ์ถ์ ํ๊ธฐ ๋งค์ฐ ์ด๋ ค์
- Brute-force attack์ ์๊ฐ/๋น์ฉ์ ์ถ์ ๊ฐ๋ฅ
- Brute-Force Attack
- ์ผ๋ถ ciphertext์ ๋ํด ํด๋
๊ฐ๋ฅํ plaintext ๋ฒ์ญ์ด ์ป์ด์ง ๋๊น์ง ๋ชจ๋ ๊ฐ๋ฅํ ํค๋ฅผ ์๋
- ์ฑ๊ณต์ ์ํด ํ๊ท ์ ์ผ๋ก ๋ชจ๋ ๊ฐ๋ฅํ ํค์ ์ ๋ฐ์ ์๋ํด์ผ ํจ
- Average Time Required for Exhaustive Key Search (์ ์ ํค ํ์์ ํ์ํ ํ๊ท ์๊ฐ)
- (10^6 decryptions/ms ๊ฐ์ ์)
- ๊ทธ๋ํ๋ symmetric encryption ์๊ณ ๋ฆฌ์ฆ์ด ๋ชจ๋ ๊ฐ๋ฅํ ํค๋ฅผ ์๋ํ๋ brute-force ๋ฐฉ์์ผ๋ก ๊ณต๊ฒฉ๋ฐ๋๋ค๊ณ ๊ฐ์ ํจ
- ์ธ ๊ฐ์ง ์ ๋ช
๋์นญ ์ํธํ ์๊ณ ๋ฆฌ์ฆ ๋น๊ต
- Symmetric block cipher๋ ๋ค์์ผ๋ก ๊ตฌ์ฑ๋จ:
- A sequence of rounds (๋ผ์ด๋์ ์ฐ์)
- ํค์ ์ํด ์ ์ด๋๋ substitutions ๋ฐ permutations (์นํ ๋ฐ ์์ด)
- ๋งค๊ฐ๋ณ์ ๋ฐ ์ค๊ณ ํน์ง:
- Block size (๋ธ๋ก ํฌ๊ธฐ)
- Key size (ํค ํฌ๊ธฐ)
- Number of rounds (๋ผ์ด๋ ์)
- Subkey generation algorithm (์๋ธํค ์์ฑ ์๊ณ ๋ฆฌ์ฆ)
- Round function (๋ผ์ด๋ ํจ์)
- Fast software encryption/decryption (๋น ๋ฅธ ์ํํธ์จ์ด ์ํธํ/๋ณตํธํ)
- Ease of analysis (๋ถ์์ ์ฉ์ด์ฑ)
- ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋์๋ ์ํธํ ๋ฐฉ์
- FIPS PUB 46
- Data Encryption Algorithm (DEA)๋ผ๊ณ ๋ ํจ
- Feistel network์ ์ฌ์ํ ๋ณํ
- 64-bit plaintext block๊ณผ 56-bit key๋ฅผ ์ฌ์ฉํ์ฌ 64-bit ciphertext block ์์ฑ
- ๊ฐ๋์ ๋ํ ์ฐ๋ ค:
- ์๊ณ ๋ฆฌ์ฆ์ ๋ํ ์ฐ๋ ค
- DES๋ ํ์กดํ๋ ๊ฐ์ฅ ๋ง์ด ์ฐ๊ตฌ๋ ์ํธํ ์๊ณ ๋ฆฌ์ฆ
- 56-bit key์ ์ฌ์ฉ
- Electronic Frontier Foundation (EFF)๋ 1998๋
7์ DES ์ํธํ๋ฅผ ํด๋
ํ๋ค๊ณ ๋ฐํ
- ๊ธฐ๋ณธ DES ์๊ณ ๋ฆฌ์ฆ์ ๋ ๊ฐ ๋๋ ์ธ ๊ฐ์ ๊ณ ์ ํ ํค๋ฅผ ์ฌ์ฉํ์ฌ ์ธ ๋ฒ ๋ฐ๋ณต
- ์ฅ์ :
- 168-bit ํค ๊ธธ์ด๋ DES์ brute-force attack์ ๋ํ ์ทจ์ฝ์ ์ ๊ทน๋ณต
- ๊ธฐ๋ณธ ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ด DES์ ๋์ผ
- ๋จ์ :
- ์๊ณ ๋ฆฌ์ฆ์ด ์ํํธ์จ์ด์์ ๋๋ฆผ
- 64-bit ๋ธ๋ก ํฌ๊ธฐ๋ฅผ ์ฌ์ฉ
- ์ฒ์์๋ ๊ธ์ต ์ ํ๋ฆฌ์ผ์ด์
์์ ์ฌ์ฉ๋จ
- 1999๋
DES FIPS PUB 46-3 ํ์ค์ ํฌํจ
- ์ธ ๊ฐ์ ํค์ ์ธ ๋ฒ์ DES ์คํ์ ์ฌ์ฉ:
- C=E(K3โ,D(K2โ,E(K1โ,P)))
- ๋ณตํธํ๋ ํค๋ฅผ ์ญ์์ผ๋ก ์ฌ์ฉํ์ฌ ๋์ผํ๊ฒ ์ํ
- ๋ ๋ฒ์งธ ๋จ๊ณ์์ ๋ณตํธํ๋ฅผ ์ฌ์ฉํ์ฌ ๊ธฐ์กด DES ์ฌ์ฉ์์์ ํธํ์ฑ ์ ๊ณต
- ์ ํจ 168-bit ํค ๊ธธ์ด, ๋๋ฆฌ์ง๋ง ์์ ํจ
- AES๊ฐ ๊ฒฐ๊ตญ 3DES๋ฅผ ๋์ฒดํ ๊ฒ์
- 3DES๋ฅผ ๋์ฒดํ ํ์์ฑ ๋ฐ์
- 3DES๋ ์ฅ๊ธฐ์ ์ธ ์ฌ์ฉ์ ํฉ๋ฆฌ์ ์ด์ง ์์์
- NIST๋ 1997๋
์๋ก์ด AES๋ฅผ ์ํ ์ ์์ ์์ฒญ
- 3DES์ ๋๋ฑํ๊ฑฐ๋ ๋ ๋์ ๋ณด์ ๊ฐ๋๋ฅผ ๊ฐ์ ธ์ผ ํจ
- ํจ์จ์ฑ์ด ํฌ๊ฒ ํฅ์๋์ด์ผ ํจ
- Symmetric block cipher
- 128-bit ๋ฐ์ดํฐ ๋ฐ 128/192/256-bit ํค
- 2001๋
11์ Rijndael์ ์ ์
- FIPS 197๋ก ๋ฐํ๋จ
- ์ํธํ ์ State์ ๊ฐ ํ์ ๊ฐ๊ฐ 0, 1, 2, 3 ๋ฐ์ดํธ์ฉ ์ผ์ชฝ์ผ๋ก ํ์
- ๋ณตํธํ๋ ๋ฐ๋๋ก ์ํ
- ๊ฐ๋ณ ๋ฐ์ดํธ๋ฅผ ํ ์ด์์ ๋ค๋ฅธ ์ด๋ก ์ด๋์ํค๊ณ ๋ฐ์ดํธ๋ฅผ ์ด์ ๊ฑธ์ณ ๋ถ์ฐ์ํค๊ธฐ ์ํจ
- Mix columns
- ๊ฐ ์ด์ ๋ํด ๊ฐ๋ณ์ ์ผ๋ก ์๋
- ๊ฐ ๋ฐ์ดํธ๋ฅผ ํด๋น ์ด์ ๋ค ๋ฐ์ดํธ ๋ชจ๋์ ํจ์์ธ ์ ๊ฐ์ผ๋ก ๋งคํ
- ์ ํ์ฒด ์์ ๋ฐฉ์ ์์ ์ฌ์ฉ
- ์ด ๋ด ๋ฐ์ดํธ์ ์ข์ ํผํฉ์ ์ ๊ณตํ๊ธฐ ์ํจ
- Add round key
- ๋จ์ํ State๋ฅผ ํ์ฅ๋ ํค์ ๋นํธ๋ค๊ณผ
XOR ์ฐ์ฐ - ๋ผ์ด๋ ํค ํ์ฅ ๋ฐ AES์ ๋ค๋ฅธ ๋จ๊ณ์ ๋ณต์ก์ฑ์ผ๋ก๋ถํฐ ๋ณด์์ฑ ํ๋ณด
- ์ผ๋ฐ์ ์ผ๋ก symmetric encryption์ ๋จ์ผ 64-bit ๋๋ 128-bit ๋ธ๋ก๋ณด๋ค ํฐ ๋ฐ์ดํฐ ๋จ์์ ์ ์ฉ๋จ
- Electronic codebook (ECB) ๋ชจ๋๋ ๋ค์ค ๋ธ๋ก ์ํธํ์ ๋ํ ๊ฐ์ฅ ๊ฐ๋จํ ์ ๊ทผ ๋ฐฉ์
- ๊ฐ plaintext ๋ธ๋ก์ ๋์ผํ ํค๋ฅผ ์ฌ์ฉํ์ฌ ์ํธํ๋จ
- Cryptanalyst๊ฐ plaintext์ ๊ท์น์ฑ์ ์
์ฉํ ์ ์์
- Modes of operation (์ด์ ๋ชจ๋)
- ๊ธด ์ํ์ค์ ๋ํ symmetric block encryption์ ๋ณด์์ ๋์ด๊ธฐ ์ํด ๊ฐ๋ฐ๋ ๋์ ๊ธฐ์
- ECB์ ์ฝ์ ์ ๊ทน๋ณต
- ๊ฐ์ฅ ๊ฐ๋จํ ๋ชจ๋
- Plaintext๋ b ๋นํธ ๋จ์๋ก ์ฒ๋ฆฌ๋๋ฉฐ ๊ฐ ๋ธ๋ก์ ๋์ผํ ํค๋ฅผ ์ฌ์ฉํ์ฌ ์ํธํ๋จ
- ๊ฐ plaintext ๋ธ๋ก์ ๋ํด ๊ณ ์ ํ ciphertext ๊ฐ์ด ์์ผ๋ฏ๋ก "์ฝ๋๋ถ"์ด๋ผ ๋ถ๋ฆผ
- ๋ฐ๋ณต๋๋ plaintext๊ฐ ๋ฐ๋ณต๋๋ ciphertext์์ ๋ณด์ด๊ธฐ ๋๋ฌธ์ ๊ธด ๋ฉ์์ง์ ๋ํด ์์ ํ์ง ์์
- ๋ณด์ ๊ฒฐํจ์ ๊ทน๋ณตํ๊ธฐ ์ํด ๋์ผํ plaintext ๋ธ๋ก์ด ๋ฐ๋ณต๋ ๊ฒฝ์ฐ ๋ค๋ฅธ ciphertext ๋ธ๋ก์ ์์ฑํ๋ ๊ธฐ์ ์ด ํ์
- Block Cipher
- ํ ๋ฒ์ ํ ๋ธ๋ก์ ์์๋ฅผ ์ฒ๋ฆฌ
- ๊ฐ ์
๋ ฅ ๋ธ๋ก์ ๋ํด ์ถ๋ ฅ ๋ธ๋ก์ ์์ฑ
- ํค๋ฅผ ์ฌ์ฌ์ฉํ ์ ์์
- ๋ ์ผ๋ฐ์
- Stream Cipher
- ์
๋ ฅ ์์๋ฅผ ์ฐ์์ ์ผ๋ก ์ฒ๋ฆฌ
- ํ ๋ฒ์ ํ ์์์ฉ ์ถ๋ ฅ์ ์์ฑ
- ์ฃผ์ ์ฅ์ ์ ๊ฑฐ์ ํญ์ ๋ ๋น ๋ฅด๊ณ ํจ์ฌ ์ ์ ์ฝ๋๋ฅผ ์ฌ์ฉํ๋ค๋ ์
- Plaintext๋ฅผ ํ ๋ฒ์ ํ ๋ฐ์ดํธ์ฉ ์ํธํ
- Pseudorandom stream (์์ฌ ๋์ ์คํธ๋ฆผ)์ ์
๋ ฅ ํค๋ฅผ ๋ชจ๋ฅด๋ฉด ์์ธกํ ์ ์๋ ์คํธ๋ฆผ
- ์ค๊ณ ๊ณ ๋ ค ์ฌํญ:
- ์ํธํ ์ํ์ค๋ ๊ธด ์ฃผ๊ธฐ๋ฅผ ๊ฐ์ ธ์ผ ํจ
- Keystream์ ๋์ ์์ฑ์ ๊ทผ์ฌํด์ผ ํจ
- ์ถฉ๋ถํ ๊ธด ํค๋ฅผ ์ฌ์ฉ
- Active attack (๋ฅ๋์ ๊ณต๊ฒฉ)์ผ๋ก๋ถํฐ ๋ณดํธ
- ์์ ๋ ๋ฉ์์ง๊ฐ ์ง์ง์ธ์ง ํ์ธ
- ๋ด์ฉ์ด ๋ณ๊ฒฝ๋์ง ์์์
- ์ ๋ขฐํ ์ ์๋ ์ถ์ฒ๋ก๋ถํฐ ์ด
- ์๊ธฐ์ ์ ํ๊ณ ์ฌ๋ฐ๋ฅธ ์์์
- Conventional encryption ์ฌ์ฉ ๊ฐ๋ฅ
- ์ก์ ์์ ์์ ์๋ง์ด ํค๋ฅผ ๊ณต์
- ๋จ๋ฐฉํฅ ํด์ ํจ์๋ฅผ ์ด์ฉํ ๋ฉ์์ง ์ธ์ฆ
- ์์ ํฌ๊ธฐ์ ๋ฐ์ดํฐ ๋ธ๋ก์ ์ ์ฉ ๊ฐ๋ฅ
- ๊ณ ์ ๊ธธ์ด ์ถ๋ ฅ ์์ฑ
- ์ฃผ์ด์ง x์ ๋ํด H(x) ๊ณ์ฐ์ด ๋น๊ต์ ์ฌ์
- One-way (๋จ๋ฐฉํฅ์ฑ) ๋๋ pre-image resistant (์ญ์ ์ ํญ์ฑ)
- H(x)=h๋ฅผ ๋ง์กฑํ๋ x๋ฅผ ์ฐพ๋ ๊ฒ์ด ๊ณ์ฐ์ ์ผ๋ก ๋ถ๊ฐ๋ฅ
- Second pre-image resistant (์ 2 ์ญ์ ์ ํญ์ฑ) ๋๋ weak collision resistant (์ฝํ ์ถฉ๋ ์ ํญ์ฑ)
- H(y)=H(x)๋ฅผ ๋ง์กฑํ๋ y๎ =x๋ฅผ ์ฐพ๋ ๊ฒ์ด ๊ณ์ฐ์ ์ผ๋ก ๋ถ๊ฐ๋ฅ
- Collision resistant (์ถฉ๋ ์ ํญ์ฑ) ๋๋ strong collision resistance (๊ฐํ ์ถฉ๋ ์ ํญ์ฑ)
- H(x)=H(y)๋ฅผ ๋ง์กฑํ๋ ์์์ ์ (x,y)๋ฅผ ์ฐพ๋ ๊ฒ์ด ๊ณ์ฐ์ ์ผ๋ก ๋ถ๊ฐ๋ฅ
- Secure hash function์ ๊ณต๊ฒฉํ๋ ๋ ๊ฐ์ง ์ ๊ทผ ๋ฐฉ์:
- Cryptanalysis: ์๊ณ ๋ฆฌ์ฆ์ ๋
ผ๋ฆฌ์ ์ฝ์ ์ด์ฉ
- Brute-force attack: ํด์ ํจ์์ ๊ฐ๋๋ ์ ์ ์ผ๋ก ์๊ณ ๋ฆฌ์ฆ์ด ์์ฑํ๋ ํด์ ์ฝ๋์ ๊ธธ์ด์ ์์กด
- SHA๋ ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ ํด์ ์๊ณ ๋ฆฌ์ฆ
- ์ถ๊ฐ์ ์ธ secure hash function ์์ฉ ๋ถ์ผ:
- Passwords (๋น๋ฐ๋ฒํธ): ์ด์ ์ฒด์ ๋ ๋น๋ฐ๋ฒํธ์ ํด์๋ฅผ ์ ์ฅ
- Intrusion detection (์นจ์
ํ์ง): ์์คํ
์ ๊ฐ ํ์ผ์ ๋ํด H(F)๋ฅผ ์ ์ฅํ๊ณ ํด์ ๊ฐ์ ๋ณดํธ
- SHA๋ ๋ณธ๋ NIST์ ์ํด ๊ฐ๋ฐ๋จ
- 1993๋
FIPS 180์ผ๋ก ๋ฐํ๋จ
- 1995๋
SHA-1์ผ๋ก ๊ฐ์ ๋จ
- 160-bit ํด์ ๊ฐ ์์ฑ
- NIST๋ 2002๋
๊ฐ์ ๋ FIPS 180-2๋ฅผ ๋ฐํ
- 3๊ฐ์ง ์ถ๊ฐ ๋ฒ์ ์ SHA ์ถ๊ฐ
- SHA-256, SHA-384, SHA-512
- 256/384/512-bit ํด์ ๊ฐ
- SHA-1๊ณผ ๋์ผํ ๊ธฐ๋ณธ ๊ตฌ์กฐ์ด์ง๋ง ๋ณด์์ฑ์ด ๋ ๋์
- 2005๋
NIST๋ SHA-1 ์น์ธ์ ๋จ๊ณ์ ์ผ๋ก ์ค๋จํ๊ณ 2010๋
๊น์ง ๋ค๋ฅธ SHA ๋ฒ์ ์ ์์กดํ๋ ๊ฒ์ผ๋ก ์ ํํ ์์ฌ๋ฅผ ๋ฐํ
- SHA-1์ ์์ ํ์ง ์์ ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋์ด SHA-2๋ก ๋จ๊ณ์ ์ผ๋ก ๋์ฒด๋จ
- SHA-2๋ ์ด์ ๋ฒ์ ๊ณผ ๋์ผํ ๊ตฌ์กฐ์ ์ํ์ ์ฐ์ฐ์ ๊ณต์ ํ์ฌ ์ฐ๋ ค๋ฅผ ์ผ๊ธฐ
- SHA-2๊ฐ ์ทจ์ฝํด์ง ๊ฒฝ์ฐ ๊ต์ฒด์ ํ์ํ ์๊ฐ ๋๋ฌธ์, NIST๋ 2007๋
SHA-3๋ฅผ ์์ฐํ๊ธฐ ์ํ ๊ฒฝ์์ ๋ฐํ
- ์๊ตฌ์ฌํญ:
- 224, 256, 384, 512 ๋นํธ์ ํด์ ๊ฐ ๊ธธ์ด๋ฅผ ์ง์ํด์ผ ํจ
- ์๊ณ ๋ฆฌ์ฆ์ ์ ์ฒด ๋ฉ์์ง๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ ์ ๋ฉ๋ชจ๋ฆฌ์ ๋ฒํผ๋งํ ํ์ ์์ด ํ ๋ฒ์ ์์ ๋ธ๋ก์ ์ฒ๋ฆฌํด์ผ ํจ
- SHA-2๊ฐ ์ง์ํ๋ ์ฃผ์ ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ํ ์๊ตฌ ์ฌํญ์ ๋ฐ์ํ๋๋ก ์ค๊ณ๋จ
- Digital signatures (๋์งํธ ์๋ช
), hashed message authentication codes (ํด์ ๋ฉ์์ง ์ธ์ฆ ์ฝ๋), key generation (ํค ์์ฑ), pseudorandom number generation (์์ฌ ๋์ ์์ฑ)
- Security (๋ณด์์ฑ)
- ๊ฐ๋๋ ๋ค์ํ ํ์ ํด์ ํฌ๊ธฐ์ preimage resistance ๋ฐ collision resistance ๋ชจ๋์ ๋ํด ์ด๋ก ์ ์ต๋์น์ ๊ฐ๊น์์ผ ํจ
- SHA-2 ํจ์์ ๋ํ ์ ์ฌ์ ์ผ๋ก ์ฑ๊ณต์ ์ธ ๋ชจ๋ ๊ณต๊ฒฉ์ ์ ํญํ๋๋ก ์ค๊ณ๋์ด์ผ ํจ
- Cost (๋น์ฉ)
- ๋ค์ํ ํ๋์จ์ด ํ๋ซํผ์์ ์๊ฐ ๋ฐ ๋ฉ๋ชจ๋ฆฌ ํจ์จ์ ์ด์ด์ผ ํจ
- Algorithm and implementation characteristics (์๊ณ ๋ฆฌ์ฆ ๋ฐ ๊ตฌํ ํน์ฑ)
- ์ ์ฐ์ฑ ๋ฐ ๋จ์์ฑ๊ณผ ๊ฐ์ ํน์ฑ์ ๊ณ ๋ ค
- NIST๋ 2015๋
SHA-3๋ฅผ ๋ฐํ
- ์ํธํ์ ํด์ ์ฝ๋์์ ํ์๋ MAC (๋ฉ์์ง ์ธ์ฆ ์ฝ๋) ๊ฐ๋ฐ์ ๊ด์ฌ์ด ์์์
- ์ํธํ์ ํด์ ํจ์๋ ์ผ๋ฐ์ ์ผ๋ก ๋ ๋น ๋ฅด๊ฒ ์คํ๋จ
- ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฝ๋๊ฐ ๋๋ฆฌ ์ฌ์ฉ ๊ฐ๋ฅํจ
- SHA-1์ secret key์ ์์กดํ์ง ์๊ธฐ ๋๋ฌธ์ MAC์ผ๋ก ์ฌ์ฉ๋๋๋ก ์ค๊ณ๋์ง ์์
- RFC2014๋ก ๋ฐํ๋จ
- IP security (IP ๋ณด์)๋ฅผ ์ํ ์๋ฌด ๊ตฌํ MAC์ผ๋ก ์ ํ๋จ
- Transport Layer Security (TLS) ๋ฐ Secure Electronic Transaction (SET)๊ณผ ๊ฐ์ ๋ค๋ฅธ ์ธํฐ๋ท ํ๋กํ ์ฝ์์ ์ฌ์ฉ๋จ
- ์ฌ์ฉ ๊ฐ๋ฅํ ํด์ ํจ์๋ฅผ ์์ ์์ด ์ฌ์ฉํ๊ธฐ ์ํจ
- ๋ ๋น ๋ฅด๊ฑฐ๋ ๋ ์์ ํ ํด์ ํจ์๊ฐ ๋ฐ๊ฒฌ๋๊ฑฐ๋ ํ์ํ ๊ฒฝ์ฐ ๋ด์ฅ๋ ํด์ ํจ์๋ฅผ ์ฝ๊ฒ ๊ต์ฒดํ ์ ์๋๋ก ํ์ฉ
- ์ฌ๊ฐํ ์ฑ๋ฅ ์ ํ ์์ด ํด์ ํจ์์ ์๋ ์ฑ๋ฅ์ ๋ณด์กด
- ๊ฐ๋จํ ๋ฐฉ์์ผ๋ก ํค๋ฅผ ์ฌ์ฉํ๊ณ ์ฒ๋ฆฌ
- ๋ด์ฅ๋ ํด์ ํจ์์ ๋ํ ํฉ๋ฆฌ์ ์ธ ๊ฐ์ ์ ๊ธฐ๋ฐ์ผ๋ก ํ ์ธ์ฆ ๋ฉ์ปค๋์ฆ์ ๊ฐ๋์ ๋ํ ์ ์ดํด๋ ์ํธํ์ ๋ถ์์ ๊ฐ์ถค
- ๋ณด์์ ๊ธฐ๋ณธ ํด์ ํจ์์ ์ํธํ์ ๊ฐ๋์ ๋ฐ๋ผ ๋ฌ๋ผ์ง
- HMAC์ ๋ํ ์ฑ๊ณต์ ์ธ ๊ณต๊ฒฉ ํ๋ฅ ์ ๋ด์ฅ๋ ํด์ ํจ์์ ๋ํ ๋ค์ ๊ณต๊ฒฉ ์ค ํ๋์ ๋์ผํจ:
- ๊ณต๊ฒฉ์๊ฐ ์์์ ๋น๋ฐ IV๋ฅผ ๊ฐ์ง๊ณ ๋ ์ถ๋ ฅ์ ๊ณ์ฐ
- Brute force key O(2n), ๋๋ birthday attack (์์ผ ๊ณต๊ฒฉ) ์ฌ์ฉ
- ๋๋ ๊ณต๊ฒฉ์๊ฐ IV๊ฐ ์์์ด๊ณ ๋น๋ฐ์ผ ๋๋ ํด์ ํจ์์์ ์ถฉ๋์ ์ฐพ์
- ์ฆ, H(M)=H(Mโฒ)์ธ M๊ณผ Mโฒ์ ์ฐพ์
- Birthday attack O(2n/2)
- 1976๋
Diffie์ Hellman์ ์ํด ๊ณต๊ฐ์ ์ผ๋ก ์ ์๋จ
- ์ํ์ ํจ์์ ๊ธฐ๋ฐ
- Asymmetric
- ๋ ๊ฐ์ ๊ฐ๋ณ ํค ์ฌ์ฉ
- Public key (๊ณต๊ฐํค) ๋ฐ private key (๊ฐ์ธํค)
- Public key๋ ๋ค๋ฅธ ์ฌ๋๋ค์ด ์ฌ์ฉํ๋๋ก ๊ณต๊ฐ๋จ
- ๋ฐฐํฌ๋ฅผ ์ํด ์ด๋ค ํํ์ ํ๋กํ ์ฝ์ด ํ์
- Plaintext
- ์๊ณ ๋ฆฌ์ฆ์ ์
๋ ฅ์ผ๋ก ์ ๊ณต๋๋ ์ฝ์ ์ ์๋ ๋ฉ์์ง ๋๋ ๋ฐ์ดํฐ
- Encryption algorithm
- plaintext์ ๋ณํ์ ์ํ
- Public and private key
- ์ํธํ๋ฅผ ์ํ ํค์ ๋ณตํธํ๋ฅผ ์ํ ํค ํ ์
- Ciphertext
- ์ถ๋ ฅ์ผ๋ก ์์ฑ๋๋ ๋ค์์ธ ๋ฉ์์ง
- Decryption key
- ์๋ณธ plaintext๋ฅผ ์์ฑ
- ๊ณต๊ฐํค ์ํธ ์์คํ
์ ์์ฉ
- ํค ์์ ์์ฑํ๊ธฐ ์ฌ์ (๊ณ์ฐ์ ์ผ๋ก)
- ๊ณต๊ฐํค๋ฅผ ์๋ ์ก์ ์๊ฐ ๋ฉ์์ง๋ฅผ ์ํธํํ๊ธฐ ์ฌ์ (๊ณ์ฐ์ ์ผ๋ก)
- ๊ฐ์ธํค๋ฅผ ์๋ ์์ ์๊ฐ ์ํธ๋ฌธ์ ๋ณตํธํํ๊ธฐ ์ฌ์ (๊ณ์ฐ์ ์ผ๋ก)
- ๊ณต๊ฒฉ์๊ฐ ๊ณต๊ฐํค๋ก๋ถํฐ ๊ฐ์ธํค๋ฅผ ๊ฒฐ์ ํ๊ธฐ ๋ถ๊ฐ๋ฅํจ (๊ณ์ฐ์ ์ผ๋ก)
- ๊ณต๊ฒฉ์๊ฐ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ์๋ณธ ๋ฉ์์ง๋ฅผ ๋ณต๊ตฌํ๊ธฐ ๋ถ๊ฐ๋ฅํจ (๊ณ์ฐ์ ์ผ๋ก)
- ์ด๋ ํค๋ ๊ฐ ์ญํ ์ ์ฌ์ฉํ ์ ์๋ค๋ฉด ์ ์ฉํจ
- RSA (Rivest, Shamir, Adleman)
- 1977๋
๊ฐ๋ฐ
- ๊ฐ์ฅ ๋๋ฆฌ ์ธ์ ๋ฐ๊ณ ๊ตฌํ๋ public-key encryption ์ ๊ทผ ๋ฐฉ์
- Plaintext์ ciphertext๊ฐ ์ด๋ค n์ ๋ํด 0๊ณผ n-1 ์ฌ์ด์ ์ ์์ธ block cipher
- Diffie-Hellman
- Key exchange (ํค ๊ตํ) ์๊ณ ๋ฆฌ์ฆ
- ๋ ์ฌ์ฉ์๊ฐ ๋ฉ์์ง์ ํ์ ๋์นญ ์ํธํ๋ฅผ ์ํ secret key๋ก ์ฌ์ฉํ ์ ์๋ ๊ณต์ ๋น๋ฐ์ ์์ ํ๊ฒ ํฉ์ํ ์ ์๋๋ก ํจ
- ํค ๊ตํ์๋ง ๊ตญํ๋จ
- Digital Signature Standard (DSS)
- SHA-1๊ณผ ํจ๊ป digital signature ๊ธฐ๋ฅ๋ง ์ ๊ณต
- ์ํธํ๋ ํค ๊ตํ์๋ ์ฌ์ฉํ ์ ์์
- Elliptic curve cryptography (ECC)
- RSA์ ์ ์ฌํ ๋ณด์์ฑ์ ๊ฐ์ง๋ฉด์๋ ํจ์ฌ ์์ ํค ์ฌ์ฉ
- 1977๋
MIT์ Rivest, Shamir & Adleman์ ์ํด ๊ฐ๋ฐ
- ๊ฐ์ฅ ์ ์๋ ค์ ธ ์๊ณ ๋๋ฆฌ ์ฌ์ฉ๋๋ public-key ์๊ณ ๋ฆฌ์ฆ
- ์์๋ฅผ ๋ฒ์ผ๋ก ํ๋ ์ ์์ ๊ฑฐ๋ญ์ ๊ณฑ์ ์ฌ์ฉ
- ์ํธํ: C=Memodn
- ๋ณตํธํ: M=Cdmodn=(Me)dmodn=M
- ์ก์ ์์ ์์ ์ ๋ชจ๋ n๊ณผ e์ ๊ฐ์ ์
- ์์ ์๋ง d์ ๊ฐ์ ์
- Public key PU={e,n}์ private key PR={d,n}๋ฅผ ์ฌ์ฉํ๋ public-key encryption ์๊ณ ๋ฆฌ์ฆ
- Brute force
- ๊ฐ๋ฅํ ๋ชจ๋ private key ์๋
- ๋ฐฉ์ด์ฑ
์ ํฐ ํค ๊ณต๊ฐ์ ์ฌ์ฉํ๋ ๊ฒ์ด์ง๋ง, ์ด๋ ์คํ ์๋๋ฅผ ๋ฆ์ถค
- Mathematical attacks (์ํ์ ๊ณต๊ฒฉ)
- ์ฌ๋ฌ ์ ๊ทผ๋ฒ์ด ์์ผ๋ฉฐ, ๋ชจ๋ ๋ ์์์ ๊ณฑ์ ์ธ์๋ถํดํ๋ ๋
ธ๋ ฅ๊ณผ ๋์ผ
- Timing attacks (ํ์ด๋ฐ ๊ณต๊ฒฉ)
- ๋ณตํธํ ์๊ณ ๋ฆฌ์ฆ์ ์คํ ์๊ฐ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง
- ์์ ํ ์์์น ๋ชปํ ๋ฐฉํฅ์์ ์ค๋ฉฐ, ciphertext-only attack (์ํธ๋ฌธ ๋จ๋
๊ณต๊ฒฉ)
- ๋์์ฑ
: ์ผ์ ํ ์ง์ํ ์๊ฐ, ๋ฌด์์ ์ง์ฐ, ๋ธ๋ผ์ธ๋ฉ
- Chosen ciphertext attacks (์ ํ ์ํธ๋ฌธ ๊ณต๊ฒฉ)
- RSA ์๊ณ ๋ฆฌ์ฆ์ ์์ฑ์ ์
์ฉํ๋ ๊ณต๊ฒฉ
- ์ต์ด๋ก ๋ฐํ๋ public-key ์๊ณ ๋ฆฌ์ฆ
- 1976๋
Diffie์ Hellman์ด public key ๊ฐ๋
์ค๋ช
๊ณผ ํจ๊ป ๋ฐํ
- ๋ค์์ ์์ฉ ์ ํ์์ ์ฌ์ฉ๋จ
- ๋ฉ์์ง์ ํ์ ์ํธํ๋ฅผ ์ํด ์ฌ์ฉํ ์ ์๋ secret key๋ฅผ ์์ ํ๊ฒ ๊ตํํ๋ ์ค์ฉ์ ์ธ ๋ฐฉ๋ฒ
- ๋ณด์์ ์ด์ฐ ๋ก๊ทธ ๊ณ์ฐ์ ์ด๋ ค์์ ์์กด
- ์์ q=353
- ์์๊ทผ ฮฑ=3
- A์ B๊ฐ ๊ฐ๊ฐ ์์ ์ ๊ณต๊ฐํค ๊ณ์ฐ
- A๋ YAโ=397mod353=40 ๊ณ์ฐ
- B๋ YBโ=3233mod353=248 ๊ณ์ฐ
- ๊ตํ ํ ๋น๋ฐํค ๊ณ์ฐ:
- A: K=(YBโ)XAโmod353=24897mod353=160
- B: K=(YAโ)XBโmod353=40233mod353=160
- ๊ณต๊ฒฉ์๋ ๋ค์์ ํ์ด์ผ ํจ:
- 3amod353=40 (์ด๋ ค์)
- ์ํ๋ ๋ต์ 97์ด๋ฉฐ, ๊ทธ ํ B์ ๊ฐ์ด ํค๋ฅผ ๊ณ์ฐ
- ๊ณต๊ฒฉ ๊ณผ์ :
- Darth๊ฐ ๊ฐ์ธํค XD1โ & XD2โ์ ๊ทธ๋ค์ ๊ณต๊ฐํค YD1โ & YD2โ๋ฅผ ์์ฑ
- Alice๊ฐ YAโ๋ฅผ Bob์๊ฒ ์ ์ก
- Darth๊ฐ YAโ๋ฅผ ๊ฐ๋ก์ฑ๊ณ YD1โ์ Bob์๊ฒ ์ ์ก. Darth๋ K2โ๋ ๊ณ์ฐ
- Bob์ด YD1โ์ ๋ฐ๊ณ K1โ์ ๊ณ์ฐ
- Bob์ด YBโ๋ฅผ Alice์๊ฒ ์ ์ก (์ฌ๋ผ์ด๋ ์คํ: YBโ์ฌ์ผ ํจ)
- Darth๊ฐ YBโ๋ฅผ ๊ฐ๋ก์ฑ๊ณ YD2โ๋ฅผ Alice์๊ฒ ์ ์ก. Darth๋ K1โ์ ๊ณ์ฐ
- Alice๊ฐ YD2โ๋ฅผ ๋ฐ๊ณ K2โ๋ฅผ ๊ณ์ฐ
- ๋ชจ๋ ํ์ ํต์ ์ด ์์๋จ
- Digital Signature Standard (DSS)
- FIPS PUB 186
- SHA-1 ๋ฐ Digital Signature Algorithm (DSA)์ ์ฌ์ฉ
- 1991๋
์ต์ด ์ ์, 1993๋
๋ณด์ ์ฐ๋ ค๋ก ๊ฐ์ , 1996๋
์ฌ์ํ ๊ฐ์
- ์ํธํ๋ ํค ๊ตํ์ ์ฌ์ฉ๋ ์ ์์
- Digital signature ๊ธฐ๋ฅ๋ง ์ ๊ณตํ๋๋ก ์ค๊ณ๋ ์๊ณ ๋ฆฌ์ฆ ์ฌ์ฉ
- Elliptic-Curve Cryptography (ECC)
- RSA๋ณด๋ค ์์ ๋นํธ ํฌ๊ธฐ๋ก ๋๋ฑํ ๋ณด์ ์ ๊ณต
- IEEE P1363๊ณผ ๊ฐ์ ํ์ค์์ ๋ณผ ์ ์์
- ECC์ ๋ํ ์ ๋ขฐ ์์ค์ ์์ง RSA๋งํผ ๋์ง ์์
- ํ์ ๊ณก์ ์ด๋ผ๋ ์ํ์ ๊ตฌ์กฐ์ ๊ธฐ๋ฐ
- ์ถ์ฒ ๋ฐ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ ์ธ์ฆ์ ์ฌ์ฉ
- Private key๋ก ํด์ ์ฝ๋๋ฅผ ์ํธํํ์ฌ ์์ฑ
- Confidentiality๋ฅผ ์ ๊ณตํ์ง ์์
- ์์ ํ ์ํธํ์ ๊ฒฝ์ฐ์๋ ๋ง์ฐฌ๊ฐ์ง
- ๋ฉ์์ง๋ ๋ณ๊ฒฝ์ผ๋ก๋ถํฐ ์์ ํ์ง๋ง ๋์ฒญ์ผ๋ก๋ถํฐ๋ ์์ ํ์ง ์์
- ๋ฐ์ดํฐ๋ฅผ ๊ตํํ๋ ค๋ ๋ ๋น์ฌ์์๊ฒ ๋ค๋ฅธ ์ฌ๋์ด ํค๋ฅผ ๋ณผ ์ ์๋๋ก ํค๋ฅผ ์ ๋ฌํ๋ ์๋จ
- ๋ ๋น์ฌ์(A์ B)๋ ๋ค์ ๋ฐฉ๋ฒ์ผ๋ก ์ด๋ฅผ ๋ฌ์ฑํ ์ ์์:
- A๊ฐ ํค๋ฅผ ์ ํํ์ฌ B์๊ฒ ๋ฌผ๋ฆฌ์ ์ผ๋ก ์ ๋ฌ
- ์ 3์๊ฐ ํค๋ฅผ ์ ํํ์ฌ A์ B์๊ฒ ๋ฌผ๋ฆฌ์ ์ผ๋ก ์ ๋ฌ
- A์ B๊ฐ ์ด์ ์ ๊ทธ๋ฆฌ๊ณ ์ต๊ทผ์ ํค๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ, ํ์ชฝ์ด ๋ค๋ฅธ ์ชฝ์ ์ด์ ํค๋ก ์ํธํ๋ ์ ํค๋ฅผ ์ ์ก
- A์ B๊ฐ ๊ฐ๊ฐ ์ 3์ C์ ์ํธํ๋ ์ฐ๊ฒฐ์ ๊ฐ์ง๊ณ ์๋ ๊ฒฝ์ฐ, C๊ฐ ์ํธํ๋ ๋งํฌ๋ฅผ ํตํด A์ B์๊ฒ ํค๋ฅผ ์ ๋ฌ
- ๋ณธ๋ MIT์์ ๊ฐ๋ฐ๋จ
- ๊ณต๊ฐ ๋๋ฉ์ธ ๋ฐ ์์ฉ ์ง์ ๋ฒ์ ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅํ ์ํํธ์จ์ด ์ ํธ๋ฆฌํฐ
- ์ธํฐ๋ท ํ์ค์ผ๋ก ๋ฐํ๋์์ผ๋ฉฐ ์๊ฒฉ ์ธ์ฆ์ ์ฌ์ค์ ํ์ค
- ์ ์ฒด์ ์ธ ๋ฐฉ์์ ์ ๋ขฐํ ์ ์๋ ์ 3์ ์ธ์ฆ ์๋น์ค
- ์ฌ์ฉ์๊ฐ ํธ์ถํ๋ ๊ฐ ์๋น์ค์ ๋ํด ์์ ์ ์ ์์ ์ฆ๋ช
ํด์ผ ํ๋ฉฐ, ์๋ฒ๋ ํด๋ผ์ด์ธํธ์๊ฒ ์์ ์ ์ ์์ ์ฆ๋ช
ํด์ผ ํจ
- Client/server ๋ํ์ ๋ณด์์ ๋ํ ๋ค์ํ ์ํ์ ๋์ํ๋๋ก ์ค๊ณ๋จ
- ๋ช
๋ฐฑํ ๋ณด์ ์ํ์ impersonation (๊ฐ์ฅ)
- ์๋ฒ๋ ์๋น์ค๋ฅผ ์์ฒญํ๋ ํด๋ผ์ด์ธํธ์ ์ ์์ ํ์ธํ ์ ์์ด์ผ ํจ
- Clients, application servers, Kerberos server๋ฅผ ํฌํจ
- ์ฌ์ฉ์๋ ์ฒ์์ ์ ์ ํ์ธ์ ์ํด AS (์ธ์ฆ ์๋ฒ)์ ํ์
- AS๋ ์ ์์ ํ์ธํ ๋ค์ ์ ๋ณด๋ฅผ application server (์์ฉ ํ๋ก๊ทธ๋จ ์๋ฒ)์ ์ ๋ฌํ๊ณ , ์๋ฒ๋ ํด๋ผ์ด์ธํธ๋ก๋ถํฐ ์๋น์ค ์์ฒญ์ ์๋ฝ
- Authentication Server (AS) ์ฌ์ฉ
- ํด๋ผ์ด์ธํธ๊ฐ ๋คํธ์ํฌ๋ฅผ ํตํด AS์๊ฒ ์ฌ์ฉ์์ ๋น๋ฐ๋ฒํธ๋ฅผ ๋ณด๋ด๋ฉด ์๋๋ฐฉ์ด ๋น๋ฐ๋ฒํธ๋ฅผ ๊ด์ฐฐํ ์ ์์
- ์๋๋ฐฉ์ด AS๋ฅผ ๊ฐ์ฅํ์ฌ ์๋ชป๋ ๊ฒ์ฆ์ ๋ณด๋ผ ์ ์์
- ์ด๋ฅผ ์์ ํ ๋ฐฉ์์ผ๋ก ์ํํ ๋ฐฉ๋ฒ์ ์ฐพ์์ผ ํจ
- Kerberos ํ๊ฒฝ์ ๋ค์์ผ๋ก ๊ตฌ์ฑ๋จ:
- Kerberos server
- ์๋ฒ์ ๋ฑ๋ก๋ ๋ค์์ clients
- ์๋ฒ์ ํค๋ฅผ ๊ณต์ ํ๋ ๋ค์์ application servers
- ์ด๋ฅผ realm (์์ญ)์ด๋ผ๊ณ ํจ
- ๋ค๋ฅธ ๊ด๋ฆฌ ์กฐ์ง ํ์ ํด๋ผ์ด์ธํธ ๋ฐ ์๋ฒ ๋คํธ์ํฌ๋ ์ผ๋ฐ์ ์ผ๋ก ๋ค๋ฅธ realm์ ๊ตฌ์ฑ
- ์ฌ๋ฌ realm์ด ์๋ ๊ฒฝ์ฐ:
- ๊ทธ๋ค์ Kerberos ์๋ฒ๋ secret key๋ฅผ ๊ณต์ ํด์ผ ํ๋ฉฐ, ๋ค๋ฅธ realm์ Kerberos ์๋ฒ๊ฐ ์ฌ์ฉ์๋ฅผ ์ธ์ฆํ๋ ๊ฒ์ ์ ๋ขฐํด์ผ ํจ
- ๋ ๋ฒ์งธ realm์ ์ฐธ์ฌ ์๋ฒ๋ค๋ ์ฒซ ๋ฒ์งธ realm์ Kerberos ์๋ฒ๋ฅผ ์ ๋ขฐํ ์ํฅ์ด ์์ด์ผ ํจ
- ๋๊ท๋ชจ client-server ์ค์น์์ ๋ณผ ์ ์์
- Kerberos๊ฐ ๋๊ท๋ชจ ํ๊ฒฝ์ ์ฑ๋ฅ์ ๋ฏธ์น๋ ์ํฅ:
- ์์คํ
์ด ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌ์ฑ๋์๋ค๋ฉด ๊ฑฐ์ ์์
- ํฐ์ผ์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ์ฌ ํธ๋ํฝ์ ์ค์
- ๋๊ท๋ชจ Kerberos ๋ณด์์ Kerberos ์๋ฒ๋ฅผ ๋ณ๋์ ๊ฒฉ๋ฆฌ๋ ๋จธ์ ์ ๋ฐฐ์นํจ์ผ๋ก์จ ๊ฐ์ฅ ์ ๋ณด์ฅ๋จ
- ์ฌ๋ฌ realm์ ๋๊ธฐ๋ ์ฑ๋ฅ ๊ด๋ จ์ด ์๋ ๊ด๋ฆฌ์ ์ธ ๊ฒ์
- ์ธ์ฆ์๋ ๋ค์์ผ๋ก ๊ตฌ์ฑ๋จ:
- Public key์ ํค ์์ ์์ User ID
- ์ ๋ขฐํ ์ ์๋ ์ 3์์ ์ํด ์๋ช
๋จ
- ์ผ๋ฐ์ ์ผ๋ก ์ 3์๋ ์ฌ์ฉ์ ์ปค๋ฎค๋ํฐ(์: ์ ๋ถ ๊ธฐ๊ด ๋๋ ๊ธ์ต ๊ธฐ๊ด)๊ฐ ์ ๋ขฐํ๋ CA (์ธ์ฆ ๊ธฐ๊ด)
- ์ฌ์ฉ์๋ ์์ ์ ๊ณต๊ฐํค๋ฅผ ๊ธฐ๊ด์ ์์ ํ ๋ฐฉ์์ผ๋ก ์ ์ํ๊ณ ์ธ์ฆ์๋ฅผ ๋ฐ์ ์ ์์
- ๊ทธ ํ ์ฌ์ฉ์๋ ์ธ์ฆ์๋ฅผ ๊ฒ์ํ ์ ์์
- ์ด ์ฌ์ฉ์์ ๊ณต๊ฐํค๊ฐ ํ์ํ ์ฌ๋์ ๋๊ตฌ๋ ์ธ์ฆ์๋ฅผ ์ป๊ณ ์ฒจ๋ถ๋ ์ ๋ขฐํ ์ ์๋ ์๋ช
์ ํตํด ์ ํจํ์ง ํ์ธํ ์ ์์
- Public-key certificates ์์์ ๋ํ ๋ณดํธ์ ์ผ๋ก ์ธ์ ๋ ํ์ค
- CCITT X.500 ๋๋ ํฐ๋ฆฌ ์๋น์ค ํ์ค์ ์ผ๋ถ
- Public-key crypto ๋ฐ digital signatures ์ฌ์ฉ
- IPsec, SSL, SET, S/MIME ๋ฑ ๋คํธ์ํฌ ๋ณด์ ์์ฉ ํ๋ก๊ทธ๋จ์์ ๋๋ฆฌ ์ฌ์ฉ๋จ
- ์๊ณ ๋ฆฌ์ฆ์ ํ์คํ๋์ง ์์์ง๋ง RSA๊ฐ ๊ถ์ฅ๋จ
- Registration (๋ฑ๋ก)
- Initialization (์ด๊ธฐํ)
- Certification (์ธ์ฆ)
- Key pair recovery (ํค ์ ๋ณต๊ตฌ)
- Key pair update (ํค ์ ๊ฐฑ์ )
- Revocation request (ํ์ง ์์ฒญ)
- Cross certification (๊ต์ฐจ ์ธ์ฆ)
- ํ๋ ์ํธ ์ด์ ์ rotor machine (ํ์ ๊ธฐ)์ด ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ product cipher (๊ณฑ ์ํธ)์์
- ์ 2์ฐจ ์ธ๊ณ๋์ ์์ ๋๋ฆฌ ์ฌ์ฉ๋จ
- ๋
์ผ Enigma, ์ฐํฉ๊ตฐ Hagelin, ์ผ๋ณธ Purple
- ๋งค์ฐ ๋ณต์กํ๊ณ ๊ฐ๋ณ์ ์ธ substitution cipher๋ฅผ ๊ตฌํ
- ๊ฐ๊ฐ ํ๋์ ์นํ์ ์ ๊ณตํ๋ ์ผ๋ จ์ ์ค๋ฆฐ๋๋ฅผ ์ฌ์ฉํ์ผ๋ฉฐ, ๊ฐ ๊ธ์๊ฐ ์ํธํ๋ ํ ํ์ ํ๊ณ ๋ณ๊ฒฝ๋จ
- 3๊ฐ์ ์ค๋ฆฐ๋๋ก 263=17576๊ฐ์ ์ํ๋ฒณ์ ๊ฐ์ง
- ๋ค์ค ์ํธํ ๋จ๊ณ
- Substitution cipher์ transposition cipher ๋ชจ๋ ์ฌ์ฉ
- ๊ธฐ๋ณธ ์๋ฆฌ
- ๋
๋ฆฝ์ ์ผ๋ก ํ์ ํ๋ ์ค๋ฆฐ๋ ์ธํธ
- ๊ฐ ์ค๋ฆฐ๋์ ์ ๊ธฐ ํ์ค๊ฐ ์ธํธ๋ฅผ ๋ฐ๋ผ ํ๋ฆ
- ๊ฐ ์ค๋ฆฐ๋์๋ 26๊ฐ์ ์
๋ ฅ ํ๊ณผ 26๊ฐ์ ์ถ๋ ฅ ํ์ด ์์
- ๊ฐ ์
๋ ฅ๊ณผ ์ถ๋ ฅ์ ์ํ๋ฒณ ๋ฌธ์์ ์ฐ๊ด์ํจ๋ค๋ฉด
- ๋จ์ผ ์ค๋ฆฐ๋๋ monoalphabetic substitution (๋จ์ผ์นํ ์ํธ)์ ์ ์
- ํค๋ฅผ ๋๋ฅด๋ฉด ์ค๋ฆฐ๋๊ฐ ํ ์์น ํ์
- ๋ด๋ถ ์ฐ๊ฒฐ์ด ๊ทธ์ ๋ฐ๋ผ ์ด๋
- ๋ฐ๋ผ์ ๋ค๋ฅธ monoalphabetic substitution cipher๊ฐ ์ ์๋จ
- 26 ๊ธ์ ํ์ ์ค๋ฆฐ๋๋ ์ด๊ธฐ ์ํ๋ก ๋์์ด
- ์ฃผ๊ธฐ๊ฐ 26์ธ polyalphabetic permutation (๋ค์ค์นํ ์์ด) ์๊ณ ๋ฆฌ์ฆ
- ํ ์ค๋ฆฐ๋์ ์ถ๋ ฅ์ด ๋ค์ ์ค๋ฆฐ๋์ ์
๋ ฅ์ ์ฐ๊ฒฐ๋จ
- ๊ฐ์ฅ ๋ฐ๊นฅ์ชฝ ์ค๋ฆฐ๋๋ ๊ฐ ํค ์
๋ ฅ๋ง๋ค ํ ํ ์์น ํ์
- ๋ฐ๊นฅ์ชฝ ์ค๋ฆฐ๋๊ฐ ํ ๋ฐํด ์์ ํ ํ์ ํ ๋๋ง๋ค ์ค๊ฐ ์ค๋ฆฐ๋๊ฐ ํ ํ ์์น ํ์
- ์ค๊ฐ ์ค๋ฆฐ๋๊ฐ ํ ๋ฐํด ์์ ํ ํ์ ํ ๋๋ง๋ค ์์ชฝ ์ค๋ฆฐ๋๊ฐ ํ ํ ์์น ํ์
- 26ร26ร26=17,576