μνΈνλ λμ§νΈ μλμ μ€μν 보μ κΈ°μ μ€ νλμ΄λ€. μ€λμ μνΈνμ κ΄λ ¨λ λ€μν κ°λ κ³Ό μ©μ΄μ λν΄ μμλ³΄κ³ , κ·Έ μ€μμ±μ μ€λͺ νκ³ μ νλ€.
κΈ°λ³Έ κ°λ
μνΈμμ μ¬μ©νλ μ΄λ¦
- μ¨λ¦¬μ€μ λ°₯(Alice and Bob): μ¨λ¦¬μ€λ λ©μμ§λ₯Ό μ μ‘νκ³ λ°₯μ μμ νλ λͺ¨λΈμ μ¬μ©νλ€.
- μ΄λΈ(Eve): μμ΄λ‘ λμ²μ(eavesdropper)λ₯Ό μλ―Ένλ©°, μκ·Ήμ μΈ κ³΅κ²©μλ₯Ό λ»νλ€. ν΅μ μ λμ²νμ§λ§ μμ μ λͺ»νλ€.
- 맬λ‘리(Mallory): μ μλ₯Ό κ°μ§(malicious) 곡격μλ₯Ό μλ―Ένλ€. λ©μμ§λ₯Ό μμ νκ³ , μμ μ λ©μμ§λ‘ λ체νκ±°λ μ΄μ μ λ©μμ§λ₯Ό μ¬μ μ‘ν μ μλ λ₯λ ₯μ΄ μλ€.
- νΈλ νΈ(Trent): μ λ’°ν μ μλ μ€μ¬μ(trusted arbitrator)μ΄λ©°, μ€λ¦½μ μΈ μμΉμ μλ μ 3μμ΄λ€. μ¬μ©λλ νλ‘ν μ½μ λ°λΌ μν μ΄ λ¬λΌμ§λ€.
- λΉ ν°(Victor): μλλ κ±°λλ ν΅μ μ΄ μ€μ λ‘ λ°μνμμ κ²μ¦ν λ λ±μ₯νλ€.
μ‘μ μ, μμ μ, λμ²μ
- μ‘μ μ: μ 보λ₯Ό 보λ΄λ μ¬λμ μλ―Ένλ€.
- μμ μ: κ·Έ μ 보λ₯Ό λ°λ μ¬λμ μλ―Ένλ€.
- λ©μμ§: μ‘μ λ μ 보λ₯Ό μ΄μΉνλ€.
- λμ²μ: λ©μμ§κ° μ μ‘λλ λμ€μ μ μμ μΈ μλλ‘ λͺ°λ μ½λ μ¬λμ μλ―Ένλ€.
μνΈνμ 볡νΈν
- νλ¬Έ(plaintext): μνΈννκΈ° μ μ λ©μμ§λ₯Ό μλ―Ένλ€.
- μνΈλ¬Έ(ciphertext): μνΈνν νμ λ©μμ§λ₯Ό μλ―Ένλ€.
- 볡νΈν(decrypt): μνΈλ¬Έμ μλμ νλ¬ΈμΌλ‘ λ°κΎΈλ κ³Όμ μ μλ―Ένλ€. λμ²μκ° μνΈλ¬Έμ μ»λλΌλ 볡νΈν κΈ°μ μ΄ μλ€λ©΄ λ΄μ©μ μ μ μλ€.
μνΈμ κΈ°λ°μ±
μνΈ(cryptography)λΌλ κΈ°μ μ ν΅ν΄ κΈ°λ°μ±(confidentiality)μ μ μ§νλ€.
ν΄λ
- μνΈ ν΄λ (cryptanalysis): μ λΉν μμ μ μΈμ μ¬λμ΄ μνΈλ¬ΈμΌλ‘λΆν° νλ¬Έμ 볡μνλ €κ³ μλνλ νμλ₯Ό μλ―Ένλ€.
- μνΈ ν΄λ μ(cryptanalyst): μνΈ ν΄λ μ μλνλ μ¬λμ μλ―Ένλ€.
μνΈνμ 볡νΈνμ κΈ°νΈ νν
μνΈ μμ€ν μ μμ
- νλ¬Έ(plaintext)
- μνΈλ¬Έ(ciphertext)
- μνΈ/λ³΅νΈ μκ³ λ¦¬μ¦(encryption/decryption algorithm)
- ν€(key)
μνΈ μμ€ν μ κΈ°νΈ νν
- M, P: νλ¬Έ
- C: μνΈλ¬Έ
- E: μνΈ μκ³ λ¦¬μ¦
- D: λ³΅νΈ μκ³ λ¦¬μ¦
- K: ν€
- C=EK(P)C = E_K(P) : νλ¬Έ Pλ₯Ό ν€ Kλ₯Ό μ΄μ©νμ¬ μνΈν(E)νμ¬ μνΈλ¬Έ Cλ₯Ό μ»λλ€.
- P=DK(C)P = D_K(C) : μνΈλ¬Έ Cλ₯Ό ν€ Kλ₯Ό μ΄μ©νμ¬ λ³΅νΈν(D)νμ¬ νλ¬Έ Pλ₯Ό μ»λλ€.
λμΉ μνΈμ κ³΅κ° ν€ μνΈ
μνΈ μκ³ λ¦¬μ¦
- μκ³ λ¦¬μ¦(algorithm): 볡μ‘ν λ¬Έμ λ₯Ό νκΈ° μν κ³Όμ μ μλ―Ένλ€.
- μνΈν μκ³ λ¦¬μ¦: νλ¬Έμ μνΈλ¬ΈμΌλ‘ λ§λλ μ μ°¨, μνΈν κ³Όμ μ μλ―Ένλ€.
ν€
ν€λ 2μ§μ μ΄λ‘ ννλλ€. 2μ§μλ‘ μ΄λ£¨μ΄μ§ νλ¬Έμ λΉλ° μ λ³΄μΈ 2μ§μλ‘ μ΄λ£¨μ΄μ§ ν€λ₯Ό μ λΉν μ μ©νμ¬ 2μ§μλ‘ λ μνΈλ¬Έμ λ§λ€μ΄λ΄λ κ³Όμ μ μλ―Ένλ€. μνΈν ν λλ 볡νΈν ν λλ λ°λμ ν€κ° νμνλ€.
λμΉ μνΈμ λΉλμΉ μνΈ
- λμΉ μνΈ(symmetric cryptography): μνΈν ν λ ν€μ 볡νΈν ν λ μ¬μ©νλ ν€κ° λμΌν μνΈ μκ³ λ¦¬μ¦ λ°©μμ μλ―Ένλ€.
- λΉλμΉ μνΈ(asymmetric cryptography): μνΈν ν λ ν€μ 볡νΈν ν λ μ¬μ©νλ ν€κ° μλ‘ λ€λ₯Έ μνΈ μκ³ λ¦¬μ¦ λ°©μμ μλ―Ένλ€. μ‘, μμ μκ° κ°κ° ν μμ ν€λ₯Ό κ°μ§κ³ μκ³ , κ·Έ ν€λ₯Ό 곡κ°ν€μ κ°μΈν€(λΉλ°ν€)λΌκ³ νλ€.
- 곡κ°ν€ μνΈ(public-key cryptography): λΉλμΉ μνΈλ₯Ό μλ―Ένλ€.
νμ΄λΈλ¦¬λ μνΈ μμ€ν
- νμ΄λΈλ¦¬λ μνΈ μμ€ν (hybrid cryptography system): λμΉ μνΈμ κ³΅κ° ν€ μνΈλ₯Ό μ‘°ν©ν μνΈ λ°©μμ μλ―Ένλ€.
κ·Έ λ°μ μνΈ κΈ°μ
μΌλ°©ν₯ ν΄μ ν¨μ
- μ 보λ μννΈμ¨μ΄λ₯Ό 곡κ°μ μΌλ‘ μ 곡ν λ λ³κ²½λμ§ μμμμ νμΈν μ μλλ‘ νλ‘κ·Έλ¨ μ 곡μλ νλ‘κ·Έλ¨μ 곡κ°ν¨κ³Ό λμμ κ·Έ νλ‘κ·Έλ¨μ ν΄μ κ°μ 곡κ°νλ κ²½μ°κ° μλ€.
- μννΈμ¨μ΄λ₯Ό λ€μ΄λ°μ μ¬λμ λ€μ΄λ°μ νμΌμ ν΄μ κ°μ κ³μ°νκ³ , 곡κ°λ ν΄μ κ°κ³Ό λΉκ΅νμ¬ νλ‘κ·Έλ¨ λ³κ²½μ μ 무λ₯Ό νμΈνλ€.
- μ΄ ν΄μ κ°μ μΌλ°©ν₯ ν΄μ ν¨μ(one-way hash function)λ‘ κ³μ°νλ€.
- ν΄μ κ°μ μνΈνμ κ²μ¬ν©(cryptographic checksum), μ§λ¬Έ(fingerprint), λ©μμ§ λ€μ΄μ μ€νΈ(message digest)λΌκ³ λ λΆλ₯Έλ€. μ΄λ₯Ό ν΅ν΄ 무결μ±μ νμΈν μ μλ€.
λ©μμ§ μΈμ¦ μ½λ
λ©μμ§κ° μμν ν΅μ μλλ‘λΆν° μ¨ κ²μμ νμΈνκΈ° μν΄ μ¬μ©νλ€. 무결μ±κ³Ό μΈμ¦μ μ 곡νλ μνΈ κΈ°μ μ΄λ€.
λμ§νΈ μλͺ
- λΆμΈ(repudiation): μμ μ΄ νλ ν΅μ μ¬μ€μ λμ€μ λΆμΈνλ νμλ₯Ό μλ―Ένλ€.
- μ΄λ₯Ό λ°©μ§νκΈ° μν κΈ°μ μ΄ λμ§νΈ μλͺ (digital signature)μ΄λ€. λμ§νΈ μλͺ μ κ²μ¦(verify)νμ¬ νμΈνλ€.
μμ¬ λμ μμ±κΈ°
- μμ¬ λμ μμ±κΈ°(pseudo random number generator; PRNG): λμμ΄μ μμ±νλ μκ³ λ¦¬μ¦μ΄λ€.
- ν€ μμ±(Key generation): λ¨ ν λ²μ ν΅μ μλ§ μ¬μ©ν ν€(μΈμ ν€, Session Key)λ₯Ό μμ±νλ λ° μ¬μ©ν μ μλ€.
- λμ μμ± μκ³ λ¦¬μ¦μ΄ μ·¨μ½νλ©΄ ν€ μΆμΈ‘μ΄ μ¬μμ Έ ν΅μ μ κΈ°λ°μ±μ΄ μμλ μνμ΄ μλ€.
μνΈνμμ λꡬμμ
λμΉ μνΈ, κ³΅κ° ν€ μνΈ, μΌλ°©ν₯ ν΄μ ν¨μ, λ©μμ§ μΈμ¦ μ½λ, λμ§νΈ μλͺ , μμ¬ λμ μμ±κΈ°. μ΄ 6κ°μ§ κΈ°μ μ ν©ν΄μ μνΈνμμ λꡬ μμ(cryptographer’s toolbox)λΌκ³ λΆλ₯Έλ€.
μ€ν κ°λ Έκ·ΈλΌνΌμ λμ§νΈ μν°λ§νΉ
- μ€ν κ°λ Έκ·ΈλΌνΌ(steganography): λ©μμ§μ μ‘΄μ¬ μ체λ₯Ό μ¨κΈ°λ κΈ°λ²μ μλ―Ένλ€.
- λμ§νΈ μν°λ§νΉ(digital watermarking): νμΌ μ€μ μ μκΆμλ ꡬμ μμ μ 보λ₯Ό μ§μ΄λ£λ κΈ°μ μ μλ―Ένλ€. μ΅κ·Όμλ λμ§νΈ μν°λ§νΉ κΈ°μ μ μ€ν κ°λ Έκ·ΈλΌνΌκ° μ¬μ©λλ€.
μνΈμ 보μ μμ
- λΉλ° μκ³ λ¦¬μ¦μ μ¬μ©ν μ§ λ§ κ²
- μνΈ μκ³ λ¦¬μ¦μ λΉλ°μ λ°λμ νλ‘λλ€.
- κ°ν μνΈ μκ³ λ¦¬μ¦μ λ§λλ κ²μ λ§€μ° μ΄λ ΅λ€.
- μ½ν μνΈλ μνΈννμ§ μλ κ²λ³΄λ€ μννλ€
- μ¬μ©μκ° ‘μνΈ’λΌλ λ§λ‘ ‘μλͺ»λ μμ¬’μ νκΈ° λλ¬Έμ λ μννλ€.
- μ΄λ€ μνΈλΌλ μΈμ κ°λ ν΄λ
λλ€
- μκ°μ΄ λ§μ΄ 걸리λλΌλ λͺ¨λ ν€λ₯Ό νλλ λΉ μ§μμ΄ μλν΄ λ³΄λ©΄ μΈμ κ°λ λ°λμ ν΄λ λκΈ° λλ¬Έμ΄λ€.
- μνΈλ 보μμ μμ£Ό μμ λΆλΆμ΄λ€
- μ¬ν곡ν 곡격(social engineering attack) λ±μ μν΄, μνΈν μ΄μ μ νλ¬ΈμΌλ‘ μλν μ μλ€.
- μ¬ν곡ν 곡격μ μ: νΌμ±(phishing), νΈλ‘μ΄λͺ©λ§(Trojan Horse), ν€λ‘κ±°(keylogger).
μνΈνμ κ΄λ ¨λ κ°λ κ³Ό κΈ°μ μ μ΄ν΄νλ κ²μ μ¬μ΄λ² 보μμμ λ§€μ° μ€μνλ€. μ΄λ¬ν μ§μμ λ°νμΌλ‘ μ°λ¦¬λ λ μμ ν λμ§νΈ νκ²½μ ꡬμΆν μ μλ€. μνΈνλ 보μμ μΌλΆμ΄λ©°, κ·Έ μ체λ‘λ μλ²½νμ§ μμ§λ§, λ€λ₯Έ 보μ μ‘°μΉλ€κ³Ό ν¨κ» μ¬μ©λ λ ν° ν¨κ³Όλ₯Ό λ°ννλ€. μνΈμ 보μμ λν μ§μμ μΈ κ΄μ¬κ³Ό νμ΅μ ν΅ν΄ μ°λ¦¬λ λμ± μμ ν μ¬μ΄λ² μΈμμ λ§λ€μ΄ λκ° μ μλ€.
'π μνΈν & μΈμ¦ > μνΈν κ°λ ' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
μ¬μ΄λ² μΈμμμ 보μκ³Ό 보νΈ: μ°¨μ΄μ κ³Ό μ€μμ± (1) | 2024.06.14 |
---|