๊ฐ์
๐SSL์ธ์ฆ์โ
SSL(Secure Sockets Layer) ์ธ์ฆ์๋ ์น์ฌ์ดํธ์ ์ฌ์ฉ์ ๊ฐ์ ๋ฐ์ดํฐ ํต์ ์ ์ํธํํ์ฌ ๋ณด์์ ๊ฐํํ๋ ๋์งํธ ์ธ์ฆ์์ ๋๋ค.
ํ์ฌ๋ TLS(Transport Layer Security) ํ๋กํ ์ฝ์ด ํ์ค์ผ๋ก ์ฌ์ฉ๋์ง๋ง, ์ผ๋ฐ์ ์ผ๋ก "SSL ์ธ์ฆ์"๋ผ๋ ์ฉ์ด๋ฅผ ๊ด์ฉ์ ์ผ๋ก ์ฌ์ฉํ๊ณ ์์ต๋๋ค.
SSL ์ธ์ฆ์๋ฅผ ์ ์ฉํ๋ฉด ์น์ฌ์ดํธ URL์ด https://
๋ก ํ์๋๋ฉฐ, ๋ธ๋ผ์ฐ์ ์์ ์๋ฌผ์ ์์ด์ฝ๐์ด ๋ํ๋ ์์ ํ ์ฐ๊ฒฐ์์ ์๋ฆฝ๋๋ค.
๋ฐ์ดํฐ ๋ณด์, ๊ฐ์ธ์ ๋ณด ๋ณดํธ, ์น์ฌ์ดํธ ์ ๋ขฐ์ฑ ํฅ์์ ํ์์ ์ธ ์์์ด๋ฉฐ
๊ด๋ จ ๋ฒ๋ น์ ๋ฐ๋ผ ๊ฐ์ธ์ ๋ณด๋ฅผ ์ทจ๊ธํ๋ ๋ชจ๋ ์ฌ์ดํธ๋ ๋ณด์์๋ฒ๋ฅผ ๊ตฌ์ถํด์ผ ํฉ๋๋ค.
๐ SSL ์ธ์ฆ์ ๊ตฌ์กฐโ
ํค(Key), ์ธ์ฆ์ (PEM), ์ฒด์ธ์ธ์ฆ์(Chain), ๋ฃจํธ CA ์ธ์ฆ์ (Root CA)
โ
Key (Private Key)
SSL/TLS ์ํธํ์ ํต์ฌ ์์๋ก, ๋ฐ์ดํฐ ์ํธํ ๋ฐ ์ธ์ฆ์ ์๋ช
์ ์ฌ์ฉ๋๋ ๋น๋ฐํค
์ธ์ฆ์๋ฅผ ์ค์นํ ๋ ์๋ฒ(์น ์๋ฒ ๋๋ ์ ํ๋ฆฌ์ผ์ด์
)์๋ง ๋ณด๊ดํด์ผ ํ๋ฉฐ, ์ ๋ ์ธ๋ถ๋ก ๋
ธ์ถ๋๋ฉด ์ ๋จ
๋ณดํต .key ํ์ฅ์๋ฅผ ๊ฐ์ง๋ฉฐ, RSA ๋๋ ECDSA ๋ฐฉ์์ผ๋ก ์์ฑ๋จ
ex)
-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEA...
-----END RSA PRIVATE KEY-----
โ
PEM(Privacy Enhanced Mail - Certificate File)
์๋ช
๋ ๊ณต๊ฐํค(Public Key) ๋ฐ ๋๋ฉ์ธ ์ ๋ณด๊ฐ ํฌํจ๋ ์ธ์ฆ์ ํ์ผ
์๋ฒ์ ์ค์นํ์ฌ ํด๋ผ์ด์ธํธ๊ฐ ๊ฒ์ฆ ํ ์ ์๋๋ก ๊ณต๊ฐ ์ ๊ณต
SSL ์ธ์ฆ์๋ ์ผ๋ฐ์ ์ผ๋ก PEM(Privacy Enhanced Mail) ํ์์ผ๋ก ์ ์ฅ๋๋ฉฐ, .pem, .crt, .cer ๋ฑ์ ํ์ฅ์๋ฅผ ๊ฐ์ง
ex)
-----BEGIN CERTIFICATE-----
MIIGJzC......
-----END CERTIFICATE-----
โ
Chain (์ฒด์ธ ์ธ์ฆ์, Intermediate CA Certificate)
SSL ์ธ์ฆ์๊ฐ ์ต์์ ๋ฃจํธ CA๋ก๋ถํฐ ์ ๋ขฐ์ฑ์ ์ฆ๋ช
๋ฐ๊ธฐ ์ํ ์ฐ๊ฒฐ๊ณ ๋ฆฌ ์ญํ
SSL ์ธ์ฆ์๋ ์ผ๋ฐ์ ์ผ๋ก ์ง์ ๋ฃจํธ CA์์ ๋ฐ๊ธ๋์ง ์๊ณ , ์ค๊ฐ ์ธ์ฆ๊ธฐ๊ด(Intermediate CA)์ ํตํด ๋ฐ๊ธ๋จ
์ฒด์ธ ์ธ์ฆ์๋ฅผ ์ฌ์ฉํ๋ฉด ๋ธ๋ผ์ฐ์ ์ ์๋ฒ ๊ฐ์ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํ ์ ์์
โ
Root CA (Root Certificate Authority)
SSL ์ธ์ฆ์๋ฅผ ๋ฐ๊ธํ๋ ์ต์์ ์ ๋ขฐ ๊ธฐ๊ด์์ ๋ฐํํ๋ ์ธ์ฆ์
๋ฃจํธ CA ์ธ์ฆ์๋ ์ด์ ์ฒด์ (OS)์ ๋ธ๋ผ์ฐ์ ์ ์ฌ์ ์ค์น๋์ด ์ ๋ขฐ ๋ฆฌ์คํธ(Trusted Root Store)์ ํฌํจ๋จ
์ ๋ขฐํ ์ ์๋ ์ธ์ฆ๊ธฐ๊ด(์: Sectigo, DigiCert, GlobalSign, Verisign)์ด ๊ด๋ฆฌ
๐ SSL ์ธ์ฆ์ ์๋ ๊ณผ์
-
ํด๋ผ์ด์ธํธ(๋ธ๋ผ์ฐ์ )๊ฐ ์น์ฌ์ดํธ ์ ์ ์ SSL ์ธ์ฆ์๋ฅผ ์์ฒญ
-
์๋ฒ๋ SSL ์ธ์ฆ์(PEM)์ ์ฒด์ธ ์ธ์ฆ์(Chain)๋ฅผ ํด๋ผ์ด์ธํธ์๊ฒ ์ ๊ณต
-
ํด๋ผ์ด์ธํธ๋ ๊ฐ์ง๊ณ ์๋ ๋ฃจํธ CA๋ฅผ ํ์ธํ์ฌ ์ฒด์ธ(Chain of Trust)์ ๊ฒ์ฆ
-
SSL ํธ๋์ ฐ์ดํฌ๊ฐ ์๋ฃ๋๋ฉด ์์ ํ HTTPS ํต์ ์ด ์์๋จ