μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- μλ°
- ν°μ€ν 리μ±λ¦°μ§
- μ»΄ν¨ν°κ³Όν
- νλ‘κ·Έλλ°
- μ±
- μΉνμ΄μ§λ§λ€κΈ°
- 리μ‘νΈ
- νμ΄μ¬
- database
- Python
- μ€λΈμ
- μν
- Kλ°°ν°λ¦¬
- λΌνλΌμ€μλ§λ
- μλ°μ€ν¬λ¦½νΈ
- html
- λ§μΌλ΄κ°μΈμμλ€μμ°λ€λ©΄
- λ°μν
- λ°μ΄ν°λ² μ΄μ€
- μΉνΌλΈλ¦¬μ±
- JavaScript
- Java
- Kλ°°ν°λ¦¬λ 볼루μ
- κΉλ―Έκ²½μλ§νμμ
- λ μ
- κ°λ°
- μ€λΌν΄
- css
- μ½λ©
- ComputerScience
- Today
- Total
JiYoung Dev π₯
[μνΈν] PKI(Public Key Infrastructure)μ μ΄ν΄ - (1) λ³Έλ¬Έ
μνΈνμ PKIμ λν κΈ°λ° μ§μμ μ΅ν κΈ°νκ° μμ΄μ νμ΅ν λ΄μ©μ λ°νμΌλ‘ μ 리νμμ΅λλ€. μ¬λ¬ λ¬Έμ, λΈλ‘κ·Έ κΈ λ±μ ν΅ν΄ νμ΅ν μλ£λ‘ μλͺ»λ λΆλΆμ΄ μμ μ μμ΅λλ€. μμλ κ°λ¨νκ² μ 보보μμ λν΄ μμλ³΄κ³ , μνΈνμ λ°©λ²κ³Ό μ΄λ₯Ό κΈ°λ°μΌλ‘ν PKIμ ꡬ쑰(μΈμ¦μ, μ μμλͺ )μ λν΄ μμλ³΄κ² μ΅λλ€.
μ 보 보μ(Information Security)λ?
μΈν°λ·μμ μμΉν κ²°κ³Ό μ 보 보νΈ, μ 보 보μμ λ°λ‘ ꡬλ³νκΈ°λ νλ κ² κ°μΌλ μ λ κ°λ΅νκ² μλμ λ΄μ©μΌλ‘ μ 리νμμ΅λλ€.
μ 보μ μμ§, κ°κ³΅, μ μ₯, κ²μ, μ‘μ , μμ μ€ λ°μνλ
μ 보μ νΌμ, λ³μ‘°, μ μΆ λ±μ λ°©μ§νκΈ° μν κ΄λ¦¬μ , κΈ°μ μ λ°©λ²
κ°λ¨ν μ 보λ₯Ό μ¬λ¬κ°μ§ μνμΌλ‘λΆν° 보νΈνλ κ²μ΄λΌ ν μ μμ΅λλ€.
μ 보 보μ(Information Security)μ λͺ©ν
μ 보λ₯Ό 보μμλ μ΅μ’ μ μΈ λͺ©νκ° μμ΅λλ€. μ΄λ ν λͺ©νλ₯Ό μ§ν₯νλλμ λ°λΌ μ 보 보μμ μν κ΄λ¦¬μ , κΈ°μ μ λ°©λ²μ΄ λ¬λΌμ§λλ€.
1. κΈ°λ°μ±(Confidentiality)
μΈκ°λ μ¬μ©μλ§μ΄ μ 보 μμ°μ μ κ·Όμ΄ κ°λ₯
κΆνμ΄ μλ μ¬μ©μλ§μ΄ μ 보λ₯Ό μ¬μ©ν μ μμ
μ μ‘λλ λ°μ΄ν°μ λΉλ° 보μ₯
2. 무결μ±(Integrity)
κΆνμ κ°μ§ μ¬μ©μκ° μΈκ°ν λ°©λ²μΌλ‘λ§ μ 보λ₯Ό λ³κ²½ν μ μμ
μ μ‘λλ μ λ³΄κ° μ‘°μλμ§ μμμ 보μ₯
3. κ°μ©μ±(Availability)
νμν μμ μ μ 보 μμ°μ λν μ κ·Όμ΄ κ°λ₯νλλ‘ ν¨
4. μ¬μ©μ μΈμ¦(Authentication)
μ 보 λλ μ¬μ©μ μ격 μ¦λͺ μ μ λ’°μ± νμΈ
5. λΆμΈλ°©μ§(Non-Repudiation)
μ¬μ©μκ° μ΄μ μ μ½μ λλ μμ μ λΆμΈνμ§ λͺ»νλλ‘ ν¨
μ 보λ₯Ό λ³΄λΈ μ¬λμ΄ λμ€μ μ 보λ₯Ό 보λλ€λ κ²μ λΆμΈνμ§ λͺ»νλλ‘ ν¨
νκ°λ μ¬μ©μλ§μ΄ λ°μ΄ν°μ μ κ·Όν μ μλ κΈ°λ°μ±μ λμΉν€/λΉλμΉν€ μνΈνλ₯Ό ν΅ν΄ λ¬μ±ν μ μκ³ , Hash ν¨μλ₯Ό ν΅ν΄ μλ €μ§ Hash μκ³ λ¦¬μ¦μΌλ‘ μλ³Έ λ°μ΄ν°λ₯Ό ν΄μ±ν κ°κ³Ό μ‘μ μλ‘λΆν° μ λ¬λ°μ ν΄μ κ²°κ³Όλ₯Ό λΉκ΅νμ¬ κ°μ΄ λμΌνμ§λ₯Ό ν΅ν΄ μ 보μ 무결μ±μ νμΈν μ μμ΅λλ€. λν, μ μ μλͺ μ ν΅ν΄ μ¬μ©μλ₯Ό μΈμ¦ν μ μμ΅λλ€.
μ¬λ¬ μλ£λ₯Ό ν΅ν΄ 곡λΆλ₯Ό ν λ μμ μ©μ΄κ° λ§μ΄ λ±μ₯νμμ΅λλ€. λ°λΌμ μνΈνμ κ΄λ ¨ν 곡λΆλ₯Ό νμ λ€λ©΄ μμ μ©μ΄μ λν΄ μμ§ν΄ λλ νΈμ΄ 곡λΆνλ λ° λμμ΄ λλ¦¬λΌ μκ°ν©λλ€.
μ 보 보μμ νΉμ±
1. μ 보 보μμ 100% μλ²½νκ² λ¬μ±ν μ μλ€.
2. μ 보 보μ λμ± μ μ€μΉμ νμμ±μ νμ ν μ μλ€.
3. μ 보 보μ λμ± μ ν¨κ³Όμ±μ μ€ν¨μ¨μ μν΄ μΈ‘μ λλ€.
4. 2κ°μ§ μ΄μμ λμ± μ λμμ μ¬μ©νλ©΄ μνμ ν¬κ² μ€μΌ μ μλ€.
μνΈν(Encryption)λ?
μ΄μ λΆν° 본격μ μΌλ‘ μνΈνμ λν λ΄μ©μ΄ νλμ© λ±μ₯ν©λλ€. λ¨Όμ μνΈνλ 무μμΈμ§ κ°λ¨ν μ΄ν΄λ³΄κ² μ΅λλ€.
μνΈ μκ³ λ¦¬μ¦(μνμ ν¨μ)μ ν€μ μ‘°ν©μ ν΅ν΄ νλ¬Έμ μνΈλ¬ΈμΌλ‘ λ³ννλ κΈ°μ
μνΈνλ, μ 보λ₯Ό 보νΈνλ λ°©μ μ€ νλλ‘, 보νΈνκ³ μ νλ λ°μ΄ν°λ₯Ό μνμ ν¨μμ ν€μ μ‘°ν©μΌλ‘ ν΄λ νμ§ λͺ»νλ μνΈλ¬ΈμΌλ‘ λ³ννμ¬ ν€λ₯Ό κ°μ§μλ§μ΄ μνΈλ¬Έμ 볡νΈνν΄ λ°μ΄ν°λ₯Ό λ³Ό μ μλλ‘ ν©λλ€.
κ΄λ ¨ μ©μ΄
- νλ¬Έ(Plain-text) : μνΈν νκ³ μ νλ λ¬Έμ₯
- μνΈλ¬Έ(Cipher-text) : νλ¬Έμ μνΈν μκ³ λ¦¬μ¦κ³Ό ν€λ₯Ό μ΄μ©νμ¬ μνΈνν λ¬Έμ₯
- ν€(Key) : μνΈν μκ³ λ¦¬μ¦μ 맀κ°λ³μ
- 볡νΈν(Decryption) : 볡νΈν ν€λ₯Ό μ΄μ©νμ¬ μλμ νλ¬ΈμΌλ‘ λ³νμν€λ κ³Όμ
- μνΈ μκ³ λ¦¬μ¦(Encryption Algorithm) : μνΈνμ 볡νΈνμ μ΄μ©λλ μκ³ λ¦¬μ¦
μνΈν(Encryption)μ λΆλ₯
μλμ κ·Έλ¦Όκ³Ό κ°μ΄ μνΈνλ ν¬κ² λ¨λ°©ν₯ μνΈνμ μλ°©ν₯ μνΈνλ‘ κ΅¬λΆν μ μμ΅λλ€.
λ¨λ°©ν₯ μνΈνλ μνΈνλ§ κ°λ₯νκ³ , 볡νΈνλ λΆκ°λ₯ν λ°©μμ λ°νλ©° ν΄μλ₯Ό ν΅ν΄ ꡬνν©λλ€.
μλ°©ν₯ μνΈνλ μνΈνμ 볡νΈνκ° λͺ¨λ κ°λ₯ν λ°©μμΌλ‘ λμΉν€ μνΈν, λΉλμΉν€(곡κ°ν€) μνΈν λ°©μμ΄ μ¬μ©λ©λλ€.
λ¨λ°©ν₯ μνΈν
μμμ μ€λͺ νλ―μ΄ λ¨λ°©ν₯ μνΈνλ νλ¬Έμ μνΈλ¬ΈμΌλ‘ λ°κΎΈλ μνΈνλ κ°λ₯νμ§λ§, μνΈλ¬Έμ νλ¬ΈμΌλ‘ λ°κΎΈλ 볡νΈνλ λΆκ°λ₯ν μνΈν λ°©μμ λ§ν©λλ€. λ¨λ°©ν₯ μνΈνμ κ²½μ° λ¨ 1bitλ§ λ°λμ΄λ λ€λ₯Έ μνΈλ¬Έμ΄ λκΈ° λλ¬Έμ λ°μ΄ν°κ° λ³μ‘°λμ§ μμμμ μ¦λͺ νλ 무결μ±μ λνλΌ λ μ¬μ©μ΄ λ©λλ€.
λ¨λ°©ν₯ μνΈνλ ν΄μ(Hash)λ₯Ό ν΅ν΄ ꡬνμ΄ λλλ°, ν΄μ(Hash)λ μμμ κΈΈμ΄μ λ°μ΄ν°λ₯Ό μ λ ₯λ°μ μΌμ ν κΈΈμ΄μ λ°μ΄ν°λ‘ λ³νμμΌμ£Όλ ν¨μλ₯Ό λ»ν©λλ€.
ν΄μλ μ΄λ€ κΈΈμ΄μ λ¬Έμμ΄μ΄λ λμΌν κΈΈμ΄μ λ°μ΄ν°λ‘ λ³νμμΌμ€λ€λ κ²μ΄ κ°μ₯ ν° νΉμ§μ λλ€.
μ΄ λ¨λ°©ν₯ μνΈνλ λ€μ keyλ₯Ό μ¬μ©νλ μνλμ λ°λΌ MDCμ MACλ‘ κ΅¬λΆλ©λλ€.
MDC(Modification Detection Code)
MDCλ key μμ΄ Hashλ§ μ¬μ©νλ λ¨λ°©ν₯ μνΈν λ°©μμΌλ‘ λ©μμ§μ λ³κ²½μ΄ μΌμ΄λ¬λμ§ λ¬΄κ²°μ± νμΈμ μν΄ μ£Όλ‘ μ¬μ©λ©λλ€. Keyκ°μ΄ μμΌλ―λ‘ μΆμ²λ₯Ό νμΈν μ μκ³ , μ£Όμ μκ³ λ¦¬μ¦μΌλ‘λ MD5μ SHAκ° μμ΅λλ€.
MD5(Message Digest Algorithm 5)
1. λ©μμ§λ₯Ό 512λΉνΈλ‘ λ λΈλ‘μΌλ‘ λλκ³ , 128λΉνΈ λ€μ΄μ μ€νΈ(ν΄μκ°)λ₯Ό μΆλ ₯
2. μ λ ₯ λ©μμ§ κΈΈμ΄ μ νμ΄ μμ
3. νμ¬ MD5 μκ³ λ¦¬μ¦μ 보μ κ΄λ ¨ μ©λλ‘ κΆμ₯νμ§ μμ
SHA(Secure Hash Algorithm)
1. MD4μ κΈ°μ΄
2. SHA-1 : ν΄μκ°μΌλ‘ 160λΉνΈλ₯Ό μΆλ ₯, μΆ©λ λ°μμΌλ‘ μ μ°¨μ μΌλ‘ μ§μ μ€λ¨
*** ν΄μ μΆ©λ : μλ‘ λ€λ₯Έ λ κ°μ μ λ ₯κ°μ λνμ¬ λμΌν μΆλ ₯κ°μ λ΄λ μν©
3. SHA-2 : ν΄μκ°μ΄ κ°κ° 256, 384, 512λΉνΈμΈ 3κ°μ μλ‘μ΄ SHA λ²μ (SHA-256, SHA-384, SHA-512)
- μ‘μ μλ μμ μμκ² μλ¬Έκ³Ό ν΄μ κ²°κ³Όλ₯Ό μ λ¬
- μμ μλ μ‘μ μμ κ°μ ν΄μ μκ³ λ¦¬μ¦μΌλ‘ μλ¬Έμ ν΄μ±νκ³ , μ΄ ν΄μ±ν κ²°κ³Όκ°κ³Ό μ‘μ μλ‘λΆν° λ°μ ν΄μ κ²°κ³Όκ° κ°μμ§ μ¬λΆλ₯Ό νλ¨νμ¬ λ¬΄κ²°μ±μ κ²μ¦
MAC(Message Authentication Code)
MDCμ λ¬λ¦¬ MACλ μ‘μ μμ μμ μκ° κ³΅μ νλ keyλ₯Ό ν΅ν΄ 무결μ±κ³Ό ν¨κ» μ‘μ μ μΈμ¦μ μνν μ μμ΅λλ€.
- μ‘μ μμ μμ μλ λ³λμ μ±λμ ν΅ν΄ key 곡μ
- μ‘μ μλ keyλ₯Ό μ΄μ©ν΄ μλ¬Έμ ν΄μνκ³ μλ¬Έκ³Ό ν΄μ κ²°κ³Όλ₯Ό μμ μμκ² μ λ¬
- μμ μλ μ‘μ μλ‘λΆν° μ λ¬λ°μ μλ¬Έμ 곡μ λ keyλ‘ ν΄μνκ³ ,
- μ‘μ μλ‘λΆν° λ°μ ν΄μ κ²°κ³Όμ μμ μ΄ ν΄μν κ²°κ³Όμ κ°μμ§ μ¬λΆλ₯Ό νλ¨νμ¬ λ¬΄κ²°μ±μ κ²μ¦νκ³ μΈμ¦λ μ¬μ©μλ‘λΆν° μ‘μ λμμμ 보μ₯ν μ μμ
MACμ μ£Όμ μκ³ λ¦¬μ¦μΌλ‘ HMACμ΄ μλλ°, HMACμ OTPμμ μ¬μ©λλ μκ³ λ¦¬μ¦μΌλ‘ λ€μ λΈλ‘κ·Έμμ OTPꡬνμ λν λ΄μ©μ ν¬μ€ν νλ©΄μ μμΈνκ² νμ΄λ΄λ³΄λλ‘ νκ² μ΅λλ€.
μλ°©ν₯ μνΈν
μλ°©ν₯ μνΈνλ μνΈνλ λ°μ΄ν°μ λν 볡νΈνκ° κ°λ₯ν μνΈνλ°©μμΌλ‘ λμΉν€ μνΈν λ°©μκ³Ό λΉλμΉν€(곡κ°ν€) μνΈν λ°©μμ΄ μμ΅λλ€.
λμΉν€ μνΈν λ°©μμ μνΈν ν€μ 볡νΈν ν€κ° λμΌν λ°©μμΌλ‘ μ£Όμ μκ³ λ¦¬μ¦μΌλ‘ DES, SEED, ARIA, AES λ±μ΄ μμ΅λλ€. λμΉν€ μνΈν λ°©μμ λΉ λ₯΄μ§λ§ μ‘μ μμ μμ μκ° ν€λ₯Ό 곡μ νλ κ³Όμ μμ ν€λ₯Ό νμ·¨λΉν μ μλ€λ μνμ΄ μ‘΄μ¬ν©λλ€. μ΄λ¬ν ν€ νμ·¨ λ°©μ§λ₯Ό μν΄ λ±μ₯ν κ°λ μ΄ λΉλμΉν€(곡κ°ν€) μνΈν λ°©μμ λλ€.
λΉλμΉν€ νΉμ 곡κ°ν€ μνΈν λ°©μμ μνΈν ν€μ 볡νΈν ν€κ° μλ‘ λ€λ₯Έ λ°©μμΌλ‘ μ£Όλ‘ μνΈνμλ 곡κ°ν€λ₯Ό μ¬μ©νκ³ λ³΅νΈνμλ λΉλ°ν€λ₯Ό μ¬μ©νλ λ°©μμ λλ€.(μλ‘ λ°λκ° λ μλ μμ΅λλ€.) μ£Όμ μκ³ λ¦¬μ¦μΌλ‘λ RSA, ECC λ±μ΄ μμ΅λλ€.
λΉλμΉ μνΈν λ°©μμ λμΉν€ μνΈν λ°©μλ³΄λ€ μ΄λ €μ΄ μκ³ λ¦¬μ¦μ μ¬μ©ν¨μΌλ‘μ¨ λ³΄μμ κ°νν ννΈ, μ°μ° μλκ° λ리λ€λ λ¨μ μ κ°μ§κ³ μμ΅λλ€.
μΈν°λ· ν΅μ μμμ μνΈν λ°©μ
λ§μ½μ ν΄λΌμ΄μΈνΈμ μλ²κ° ν΅μ μμ 보μμ μν΄ λΉλμΉν€ μνΈν λ°©μμ μ¬μ©νλ€λ©΄ μ΄λ»κ² λ κΉμ?
λ°μ΄ν° κ΅νμ μν΄ ν΄λΌμ΄μΈνΈμ μλ² λͺ¨λ ν€ μμ μμ±ν κ²μ΄κ³ , ν΄λΌμ΄μΈνΈμ 곡κ°ν€, μλ²μ 곡κ°ν€λ₯Ό μλ‘ κ³΅μ νμ¬ λ°μ΄ν°λ₯Ό μ£Όκ³ λ°κ² λ κ²μ λλ€.
κ·Έλ¬λ μ΄λ¬ν λ°©μμ λ°μ΄ν°κ° μ μ°¨ μ»€μ§ κ²½μ° μ°μ° μλκ° λλ €μ§κ³ , ν€ μ μμ± μμ²΄κ° μμμ΄ λ§μ΄ λλ λ°©μμ΄λ―λ‘ λΉν¨μ¨μ μΈ λ°©λ²μ΄ λ©λλ€.
κ·Έλμ μ λ¬Έκ°λ€μ λμΉν€μ λΉλμΉν€ μνΈν λ°©μμ μ΄λ»κ² νλ©΄ ν¨μ¨μ μΌλ‘ μ μ¬μ©ν μ μμκΉνλ μκ°μμ λμ¨ κ²μ΄ λ°λ‘ 'λμΉν€λ₯Ό λΉλμΉν€μ 곡κ°ν€λ‘ μνΈννλ λ°©μ'μ λλ€.
ν΄λΌμ΄μΈνΈμ λ°μ΄ν°λ λμΉν€λ‘ μνΈννκ³ , ν΄λΌμ΄μΈνΈμ λμΉν€λ₯Ό μλ²μ 곡κ°ν€λ‘ μνΈννμ¬ private keyλ₯Ό μμ ν μλ²λ§μ΄ μνΈνλ ν΄λΌμ΄μΈνΈμ λμΉν€λ₯Ό 볡νΈνμ λ°μ΄ν°λ₯Ό 볡νΈννλ λ°©μμ λλ€. μ΄λ¬ν λ°©μμ ν΅μ μ ν λλ§λ€ μμ±λλ keyλΌκ³ ν΄μ session keyλΌκ³ λ νλ©° μ΄λ¬ν λ°©μμ IKE(Internet Key Exchange)λΌκ³ ν©λλ€.
κ·Έλ¬λ μ¬κΈ°μ ν κ°μ§μ λ¬Έμ κ° λ λ°μν©λλ€.
λ°λ‘ μ΄ μλ²κ° μ 곡νλ 곡κ°ν€κ° μ§μ§ μλ²κ° μ 곡νλ 곡κ°ν€μΈμ§ μ¦λͺ ν μ μλκ°μ λλ€.
μ΄λ¬ν λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ κ³΅κ°ν€λ₯Ό λ―Ώμ μ μλ μ 3μλ₯Ό ν΅ν΄ 곡κ°ν€μ μμ μλ₯Ό μ¦λͺ νλ λ°©μμΈ PKIκ° λ±μ₯ν κ²μ λλ€.
μκ° κ΄κ³μ ν¬μ€ν μ μ¬κΈ°κΉμ§ μμ±νκ³ λ€μ ν¬μ€ν μμ PKIμ μ μμλͺ , μΈμ¦μμ λν λ΄μ©μ μμΈν λ΄λλ‘ νκ² μ΅λλ€. ν΄λΉ λ΄μ©μ μ΄ν΄νλλ°μλ λλνκ°λ°μλμ μ νλΈ κ°μκ° λ§μ λμμ΄ λμμ΅λλ€. μλ λ§ν¬ λ¨κ²¨λμν λ κ΄μ¬μμΌμ λΆλ€μ 보μλκ±Έ μΆμ²ν©λλ€.(μ λ£μ λλ€)
λλνκ°λ°μ 보μ κΈ°μ΄ κ°μ
μ°Έκ³ μλ£
'Study > 보μ' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
SHA-256λ₯Ό μ¬μ©ν λ¬Έμμ΄ μνΈν μμ - Java (0) | 2023.12.14 |
---|---|
OTPμ λμ μ리, HOTPμ TOTP μ΄ν΄νκΈ° (0) | 2023.12.13 |
[μνΈν] PKI(Public Key Infrastructure)μ μ΄ν΄ - (2) PKI, μΈμ¦μ, μ μμλͺ (0) | 2023.12.12 |