Linux system

์•”ํ˜ธํ™”๋ž€ ๋ฌด์—‡์ผ๊นŒ

NENGIN 2024. 2. 15. 17:43

1. ์•”ํ˜ธํ™”(Encryption)

์ค‘์š”ํ•œ ์ •๋ณด๋ฅผ ๋ณดํ˜ธํ•˜๊ธฐ ์œ„ํ•ด ์ฝ๊ธฐ ์–ด๋ ค์šด ๊ฐ’์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ธฐ์ˆ ์ด๋‹ค.

์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ด์šฉํ•˜์—ฌ ํ‰๋ฌธ → ์•”ํ˜ธ๋ฌธ์œผ๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค.

์•”ํ˜ธ๋ฌธ → ํ‰๋ฌธ์œผ๋กœ ์ „ํ™˜ํ•˜๋Š” ๊ณผ์ •์€ ๋ณตํ˜ธํ™”(Decryption)์ด๋ผ ํ•œ๋‹ค.

 

 

2. ์•”ํ˜ธํ™” ๋ฐฉ์‹

 

๋‹จ๋ฐฉํ–ฅ (One-way Encryption)

ํ•œ ๋ฐฉํ–ฅ์œผ๋กœ ์•”ํ˜ธํ™”๋ฅผ ํ•œ๋‹ค. = ์•”ํ˜ธํ™”๋Š” ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ๋ณตํ˜ธํ™”๋Š” ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

ํ‰๋ฌธ → ์•”ํ˜ธ๋ฌธ (O)

์•”ํ˜ธ๋ฌธ → ํ‰๋ฌธ (X)

 

์–‘๋ฐฉํ–ฅ (Two-way Encryption)

์–‘๋ฐฉํ–ฅ์œผ๋กœ ์•”ํ˜ธํ™”์™€ ๋ณตํ˜ธํ™”๊ฐ€ ์ด๋ฃจ์–ด์ง€๋Š” ๋ฐฉ์‹์ด๋‹ค.

 

(1) ๋Œ€์นญ ์•”ํ˜ธํ™” ๋ฐฉ์‹

  • ์•”ํ˜ธํ™”ํ‚ค = ๋ณตํ˜ธํ™”ํ‚ค
  • ์•”ํ˜ธํ™”ํ‚ค์™€ ๋ณตํ˜ธํ™”ํ‚ค๊ฐ€ ๋™์ผํ•˜๋‹ค.
  • ์•”ํ˜ธํ‚ค ์ „๋‹ฌ ๊ณผ์ •์—์„œ ๋…ธ์ถœ์šฐ๋ ค๊ฐ€ ์žˆ๋‹ค.
  • ์ข…๋ฅ˜
    • ๋น„๋ฐ€ํ‚ค(Secret key)
    • ๊ณต์œ ํ‚ค(Shared key)
    • ๋Œ€์นญํ‚ค(Symmetric key) ๋“ฑ..

(2) ๋น„๋Œ€์นญ ์•”ํ˜ธํ™” ๋ฐฉ์‹

  • ์•”ํ˜ธํ™”ํ‚ค ≠ ๋ณตํ˜ธํ™”ํ‚ค
  • ์•”ํ˜ธํ™”ํ‚ค์™€ ๋ณตํ˜ธํ™”ํ‚ค๊ฐ€ ๋™์ผํ•˜์ง€ ์•Š๋‹ค.
  • ํ‚ค ์Œ(key pair)์œผ๋กœ 2๊ฐœ์˜ ํ‚ค๊ฐ€ ์กด์žฌํ•œ๋‹ค.
    • ๊ณต๊ฐœํ‚ค(Public key = kP) : ๋ˆ„๊ตฌ๋‚˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ‚ค
    • ์‚ฌ์„คํ‚ค(private key = kp) : ์†Œ์œ ์ž๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ‚ค
  • ์ข…๋ฅ˜
    • RSA
    • Diffie-Hellman : ๋Œ€์นญํ‚ค๋ฅผ ๋น„๋Œ€์นญ ์•”ํ˜ธํ™” ํ•˜์—ฌ ํ‚ค๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๋ฐฉ์‹

(3) Hybrid ์•”ํ˜ธํ™” ๋ฐฉ์‹

  • ๋น„๋Œ€์นญํ˜• + ๋Œ€์นญํ˜• ์žฅ์ ์„ ํ•ฉ์นœ ๊ฒƒ์ด๋‹ค.
  • ๋Œ€์นญํ‚ค๋ฅผ ๋ฐฐ์†กํ•  ๋•Œ ๋…ธ์ถœ ์šฐ๋ ค๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋Œ€์นญํ‚ค๋ฅผ ์ˆ˜์‹ ์ž์˜ ๊ณต๊ฐœํ‚ค๋กœ ์•”ํ˜ธํ™”๋ฅผ ํ•˜๊ณ  ๋ณด๋‚ธ๋‹ค. 
  • ์ˆ˜์‹ ์ž๋Š” ์ž์‹ ์˜ ์‚ฌ์„คํ‚ค๋กœ ๊ณต๊ฐœํ‚ค๋ฅผ ๋ณตํ˜ธํ™” ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋Œ€์นญํ‚ค์˜ ๋‹จ์ ์„ ๋น„๋Œ€์นญํ˜• ์•”ํ˜ธํ™” ๋ฐฉ์‹์œผ๋กœ ๋ณด์•ˆํ•œ ์•”ํ˜ธํ™” ๋ฐฉ์‹์ด๋‹ค.